且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

BPDU Timers

更新时间:2022-08-22 09:55:06

BPDU 包中有几个与时间相关的字段:
 Bytes  Field
 2  Protocol ID
 1  Version
 1  Message Type
 1  Flags
 8  Root ID
 4  Cost of Path
 8  Bridge ID
 2  Port ID
 2  Message Age
 2  Maximum Time
 2  Hello time
 2  Forward Delay
 
这些时间字段是为了防环机制存在的,同时也决定了链路出现问题后,冗余链路启用,以至于整个拓扑收敛完成,达到稳定状态的时间。
 
这三个timers影响了STP的性能以及状态改变。
 
hello time:这个值决定了BPDU发送间隔,默认每2秒一次,可在1-10秒内取值。
 
forward delay:决定了listening与learning状态之间的切换时间,默认为15秒,可在4-30秒内取值
 
max age:控制一台交换机所能保存BPDU信息的最长时间,默认为20秒,可在6-40秒内取值
 
两种情况下,端口状态会由blocking向listening状态转变:
 
1、一台交换机的所有端口初始情况下均处于blocking状态,当它启动时,会将自已看作整个拓扑中的root bridge,所有的端口随之转入listening state。
 
2、一段时间内(20秒max age)交换机未收到其它交换机发来的BPDU包,会将自已端口转为listening状态。
 
在listening 状态下,端口可以send and receive BPDU包,但是无用户数据发送。在这个状态下,要做三件事:
1、elect root bridge
2、elect root port
3、elect designate port
 
所有处于root 或 designate state下的端口经过15秒的forward delay时间,将切换到learning状态,这个时候端口可以学习MAC地址,生成MAC地址表。但是也不能转发用户数据。
 
再经过15秒,剩余的处于root 和 designate 状态下的端口进入正常转发状态,即forwarding state,以便转发用户数据.









本文转自 ciscodocu51CTO博客,原文链接:http://blog.51cto.com/ciscodocu/52846,如需转载请自行联系原作者