通信人家园
标题:
生成树协议(STP)
[查看完整版帖子]
[打印本页]
时间:
2010-11-15 22:43
作者:
asinzy
标题:
生成树协议(STP)
生成树协议
---STP
的作用
STP
的全称是
spanning-tree protocol,STP
协议是一个二层的链路管理协议,它在提供链路冗余的同时防止网络产生环路。
STP
协议
(Spanningtree protocol)
的本质就是实现在交换网络中链路的备份和负载的分担
.stp
是生成树协议
,
主要功能是从拓扑中清除第
2
层环路
生成树(STP)的作用:
在实际的网络环境中,物理环路可以提高网络的可靠性,当一条物理线路断掉的 时候,另外一条线路仍然可以传输数据。但是,在交换的网络中,当交换机接收到一个目的地址未知的数据帧时,交换机会将这个数据帧广播出去,这样,在存在物理环路的交换网络中,就会产生双向的广播环,甚至产生广播风暴,导致交换机资源耗尽而宕机。这样就产生了一个矛盾,需要物理环路来提高网络的可靠性,而环 路又有可能产生广播风暴,怎样才能两全其美呢? STP(Spanning Tree Protocol,
生成树协议
),就是用来解决这个矛盾的。STP协议在逻辑上断开网络的环路,防止广播风暴产生,而一旦正在使用的线路出现故障,被逻辑上断开的线路又会恢复畅通,继续传输数据。
2010-11-15 22:43 上传
下载附件
(32.12 KB)
一
.STP
增强特性
:
传统的
802.1d
标准的
STP,
有一些缺陷
,
比如当一个交换机检测到链路发生故障
,
再到网络重新收敛的时候
,
至少要等
50
秒的时间
(
转发延迟
+BPDU
最大生存周期
).
当一个端工作站
,
比如
PC
或服务器
,
插到交换机某个端口后
,
该端口同样会经历
STP
的一些状态
,
比如监听和学习
.
但是端工作站不会引起层
2
环路
,
因此
,
对于接端工做站的端口
,
没必要经历这相对漫长的
STP
收敛时间
.
因此
CISCO
提出了
Port Fast
这一特性
.
启用该特性的端口无需经历转发延迟可以直接进入转发状态
,
减少收敛时间
.
该特性类似
802.1w
标准里的边缘端口
(EP):
在启用这种特性的时候
,
必须保证该端口连接的是端工作站
,
而不是交换机或者集线器等网络设备
,
否则会引起环路问题
.
另外
,
如果在该端口启用了语音
VLAN,
那么
Port /---
全局启用
Port Fast
特性
---/
Switch(config-if)#spanning-tree portfast [trunk] /---
基于接口的启用
PortFast
特性
---/
Switch(config-if)#spanning-tree portfast disable /---
禁用
Port Fast
特性
---/
注意
,
如果要在
trunk
端口启用该特性
,
先要确保该
trunk
端口不会引起环路
.
另外一种减少
STP
收敛时间的技术是
UplinkFast
特性
:
当交换机
A
检测到链路
L2
出故障后
,
会立刻切换到
L3,
从而跳过
STP
的监听和学习阶段
(
转发延迟
),
节约近
30
秒的时间达到快速收敛
.
另外要注意的是
,
如果配置了
VLAN
的优先级
,
那么不能启用该特性
.
因为该特性是对所有
VLAN
生效而不是针对某一个
VLAN
生效
.
一旦启用该特性后
,
交换机的网桥优先级自动被设置为
49152;
如果你的链路开销小于
3000,
那么开销将自动增大为
3000(
如果大于
3000
则不会
).
该举动的意图是防止交换机
(
如上图里的交换机
A)
成为根桥
.
配置方式如下
:
Switch(config)#spanning-tree uplinkfast [max-update-rate pps] /---
全局启用
Uplink Fast---/
可选参数值的范围是
0-32000,
默认每秒
150
个包
,
值越低收敛越慢
.
如果照上图里
,
当链路
L1
出故障后
,Uplink Fast
特性就不能弥补该缺点
.
因此出现了
Backbone Fast
特性
:
当交换机
C
通过下级
BPDU
信息
(inferior BPDU)
检测到
L1
出故障后
,
由于
L1
不是它到根桥的直连链路
.
因此
,
交换机
C
会发送根链路查询信息
(RLQ).
当收到
RLQ
的应答后
,
交换机
C
将自己原本处于堵塞状态的端口立即设置为转发状态
(
把最大生存周期的
20
秒给老化掉
),
为
B
提供一条到根桥的替代路径
.
但要经过转发延迟
,
也就是大约
30
的时间
.
一旦启用该特性
,
必须在所有的交换几上都使用
.
但如果此时新增加一个交换机进来
,
该交换机也会发送下级
BPDU
信息声称自己想成为根桥
(
野心够大啊
).
不过其他交换机会忽略该下级
BPDU,
并且交换机
B
会告诉它
A
才是根桥
:
配置方式
:
Switch(config)#spanning-tree backbonefast /---
全局启用
Backbone /---
在启用了
PortFast
特性的端口上启用
BPDU Guard---/
Switch(config-if)#spanning-tree bpduguard enable /---
在不启用
PortFast
特性的情况下启用
BPDU Guard---/
而
BPDU Filtering
特性和
BPDU Guard
特性非常类似
.
通过使用
BPDU Filtering,
将能够防止交换机在启用了
PortFast
特性的端口上发送
BPDU
给主机
:
如果全局配置了
BPDU /---
在启用了
PortFast
特性的端口上启用
BPDU Filtering---/
Switch(config-if)#spanning-tree bpdufilter enable /---
在不启用
PortFast
特性的情况下启用
BPDU Filtering---/
一般层
2
网络的
SP
可能会有多条达到客户网络的连接
.
为了防止客户交换机偶然成为根桥
,
可以在连接到客户交换机的端口上使用
Root Guard
特性来避免这一问题的发生
.
如果
STP
偶然选出客户交换机的某个端口做为根端口
(RP),
那么
Root Guard
特性将把该端口设置为
root-inconsistent
状态
(
堵塞
)
来防止客户交换机成为根桥
:
配置
Root /---
启用
RootGuard
特性
---/
注意
,Root Guard
和
Loop Guard
特性不可同时使用
,
也不要在启用了
Uplink Fast
特性的端口上启用该特性
.
该特性一旦配置后
,
对所有
VLAN
都生效
.
另外
,
也可以使用
LoopGuard
技术替代端口
(AP)
或
RP
由于单向链路的故障问题成为指定端口
(DP):
交换机
A
做为根桥
,
由于交换机
B
和
C
之间发生单向链路故障
,C
将不能从
B
那里接收到
BPDU.
如果没有启用该特性
,
那么交换机
C
在最大生存周期
(Max Age)
计时器超时之后
,
交换机
C
上的堵塞端口将转换到监听状态
,
并最终会在
30
秒之后转换到转发状态
.
当交换机
C
的原先处于堵塞状态的端口进入到转发状态的时候
,
交换机
B
上原先的
DP
还处于转发状态
,
而一个桥接网段上只能有一个
DP,
因此就产生了环路
.
如果启用了
Loop Guard
特性之后
,
当最大生存周期超时之后
,
交换机
C
上的堵塞端口将过渡到
loop-inconsistent
状态
(
堵塞
),
处于该状态的端口不能传递任何流量
.
因此就不会产生层
2
环路
.
配置
Loop Guard:
Switch(config)#spanning-tree loopguard default /---
启用
LoopGuard
特性
---/
注意
,Loop Guard
和
Root Guard
特性不可同时使用
.
NAT——NetworkAddress Translation
(地址转换)
地址转换,又称地址代理,用来实现私有网络地址与公有网络地址之间的转换。内部网络的主机可以通过该功能访问网外资源;为内部主机提供了
“
隐私
”
(
privacy
)保护。
附件:
生成树STD.jpg
(2010-11-15 22:43, 32.12 KB) / 下载次数 2
https://www.txrjy.com/forum.php?mod=attachment&aid=MTE1MzY2fDQ5MjE4NjFjfDE3MzI2NTQyMTR8MHww
时间:
2010-11-16 10:51
作者:
hzpasj
谢谢LZ分享,希望可以分享更多的资料,加油
时间:
2010-11-16 16:44
作者:
lance7340
分支树协议是CCNA中重要的考点呢
通信人家园 (https://www.txrjy.com/)
Powered by C114