设为首页 收藏本站
查看: 2080|回复: 6

[经验分享] CCNP之RSTP 快速生成树协议

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2013-10-15 09:35:55 | 显示全部楼层 |阅读模式
本文主要介绍RSTP协议,STP相关的算法和细节在本文中不再涉及。虽然这种分割的做法不利于产生全局的观念,但通过对RSTP改进点的详细介绍,将会使你对该协议有一个更深刻的认识。
继IEEE 802.1D定义了STP标准后,IEEE又推出了802.1w这个草案作为802.1D的补充,并定义了RSTP标准。在新版本的802.1D(2004)中已经接纳了RSTP标准,取代了原来的STP。
RSTP保留了STP的大部分算法和计时器,只在一些细节上做了改进。但这些改进相当关键,极大的提升了STP的性能,使其能满足如今低延时高可靠性的网络要求。后续诞生的MSTP,单个实例中的算法和RSTP几乎一模一样。可以说从STP发展到RSTP的这套算法,是整个生成树协议的精髓。
[url=]1RSTP[/url]的改进[url=]1.1BPDU[/url]的变化 20091116_878010_image004_655245_97665_0.jpg
[url=]图1 RSTP/STP BPDU[/url]的区别
RSTP的BPDU被称作RST BPDU①,和STP Config BPDU的主要区别在协议版本号,BPDU类型和Flags字段。RSTP中没有了TCN和TCA报文,在拓扑结构变化时只发送TC报文。对拓扑结构变化的详细描述请参考1.5。
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
TCA
Reserved
TC
[url=]图2 STP[/url]的Flags字段

Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
TCA
Agreement
Forwarding
Learning
Port role
Proposal
TC

TCA=Topology Change Acknowledgement
TC = Topology Change
Port role =00 Unknown
01 Alternate / Backup
10 Root
11 Designated

[url=]图3 RSTP[/url]的Flags字段
RSTP的Flags字段增加了端口属性和状态,Bit1和Bit6两个字段在1.4中会提及,用于点到点链路端口的快速迁移。常见的几种Flags需要记住,2c(Forwarding,Designated),0e(Designated,Proposal),6c(Agreement,Forwarding,Designated),2d(Forwarding,Designated,TC)。
运行STP的设备会丢弃收到的RST BPDU,目前RSTP交换机都提供STP兼容模式,运行在STP兼容模式的端口会发送和接收Config BPDU,表现的特性也和STP类似。
[url=]1.2端口角色的变化[/url]RSTP对STP的端口角色进行了细分,增加了几种端口:Alternate Port,Backup Port,Edge Port。
Alternate Port是交换机根端口的备份,当根端口发生故障时,它可以迅速替代成为新的根端口并进入Forwarding状态。
Backup Port是被本交换机端口抑制的端口,虽然它名为Backup,却无法起到真正的备份作用。指定端口Down掉以后,Backup Port并不能马上变成新的指定端口并Forwarding。
Edge Port是管理员根据实际需要配置的一种指定端口,用以连接PC或不需要运行STP的下游交换机。管理员需要保证该端口下游不存在环路,Edge Port能够直接进入Forwarding状态。实际应用中为了避免有人恶意攻击,需要开启BPDU Guard功能,一旦收到BPDU,端口被自动shut down,需要管理员手动恢复。
20091116_878011_image005_655245_97665_0.png
[url=]图4 RSTP[/url]各端口角色
[url=]1.3端口状态的变化[/url]原STP的几种阻塞状态,在表现上没有任何区别,RSTP中做了改进,只保留了三种端口状态。

STP Port State
RSTP Port State
Disabled
Discarding
Blocking
Discarding
Listening
Discarding
Learning
Learning
Forwarding
Forwarding
表1 STP和RSTP的端口角色

注:Learning状态不转发流量,只学习MAC。
[url=]1.4端口快速迁移[/url]STP中任何最终能进入Forwarding状态的端口都至少需要经过2×Forwarding Time才能转发流量。这种保守的设计可以保证不产生环路,但显然不够聪明,RSTP对此做了一系列改进。
[url=]1.4.1根端口的快速迁移[/url]假如设备上旧的根端口不再有可能重新转发数据,新的根端口可以立刻迁移到Forwarding状态,Alternate端口的快速迁移就符合这个条件。
假如设备上旧的根端口还有可能重新转发数据,此时它必然是一个指定端口,指定端口的快速迁移请参考1.4.2。
点到点以太网链路②上,根端口总能快速迁移到Forwarding状态。
[url=]1.4.2指定端口的快速迁移[/url]1.被配置为边缘端口的指定端口可以无条件的快速迁移到Forwarding状态。
2.在点到点以太网链路上,指定端口可以和对端通过握手协商的方式进行快速迁移。双方设备必须满足如下状态机:
1.proposing. 指定端口处于discarding或learning状态的时候,会设置该变量。向下游交换机传递Proposal flag被置位的RST BPDU。
2.proposed. 当收到指定端口发来的proposal BPDU的时候,该变量设置。该变量指示本网段上的指定端口希望尽快的进入forwarding状态。
3.sync. 当proposed被设置以后,收到proposal的根端口会依次为自己的其他端口设置sync变量。将所有不是Edge port的指定端口转为discarding状态。
4.synced. 当端口完成转到discarding后, 会设置自己的synced。Alternate、Backup 和边缘端口会马上设置该变量。根端口监视其他端口的synced,当所有其他端口的synced全被设置,根端口会设置自己的synced,然后传回RST BPDU,其中Agreement flag被设置。
5.agreed. 当指定端口接收到一个RST BPDU的时候,如果该BPDU中的agreement flag被置位且端口角色字段是“根端口”,该变量被设置。当agreed被设置的时候,指定端口马上转入forwarding状态。
2004版的802.1D对P/A握手的状态机做了稍许改进,把synced拆分成synced和agree两个状态机,并不再要求只有根端口能设置该状态,Alternate和Backup端口也可以设置该状态,并发送aggreement flag置位的BPDU,加速了这种情况下上游指定端口的快速迁移。

图5 P/A协商机制
[url=]1.5拓扑结构变化[/url]RSTP判断拓扑结构变化的标准是:非边缘端口的端口进入Forwarding状态。发现变化的交换机会做以下工作:
1.为所有非边缘端口的其他端口启动一个计时器TC While Timer(2倍的hello time)
2.清空这些端口上的MAC地址;
3.在TC While Timer有效期内,这些端口向外发送TC位置1的BPDU。
其他交换机接收到TC RSTP BPDU,作如下变化:
1.清空除收到TC端口以外的所有端口的MAC地址
2.在所有的端口和根端口上启动TC While Timer,并发送TC报文。然后在这段时间内,这些端口也向外发送TC。

[url=]图6 RSTP[/url]的TC泛洪
和STP不同的是,RSTP没有单独的TCN和TCA报文,都用TC位置位的RST BPDU来替代;TC报文的泛洪也由STP的根桥泛洪改为逐级泛洪;收到TC报文的交换机直接刷新端口MAC,不用再等待1个Forwarding Timer。
802.1w和2004版的802.1D还提到一种可选的能进一步优化的情况:
当根端口发生故障,Alternate端口替代成为新的根端口后,学习在原根端口的MAC地址可以迁移(复制)到新的根端口,使转发路径迅速切换。
[url=]1.6对[/url]inferior BPDU处理STP中指定端口收到inferior BPDU会马上把端口保存的更优的BPDU发送出去,但对非指定端口不会做同样处理。RSTP中不管是否是指定端口,收到inferior BPDU都会马上发送本地更优的BPDU给对端。
如图,如果A,B中的链路down了,STP和RSTP各会如何处理(假设优先级A<b<c)。[ font][="" color][="" p][p="28," null,="" center]
[p=28," left][color="rgb(85," 对[="" url]inferior="" bpdu的处理[="" bpdu。但cp2不会回应更优的bpdu,直到maxage="20s" cp2上保存的原bp2的bpdu超时,cp2才发送新的以a为根的bpdu。b接收到后,承认a为根。再经过30s,bp2进入转发状态。一共经历50s的时间。[="" bpdu会上发送本端口更新后的更优bpdu。cp2变为指定端口后有2种处理方式,一种为保持forwarding状态不变,另一种变成discarding,由于是点到点链路,都能迅速迁移到forwarding,拓扑瞬间收敛。[="" p]
说明:
①RST BPDU:
BPDU Type共有三种:0x00,Config BPDU;0x80,TCN;0x02,RST BPDU&MST BPDU(RST BPDU的Version ID为2,MST BPDU的Version ID为3)
②点到点以太网链路:
某端口在所属的共享以太网上的对端只有一台设备,这样的以太网被认为是点到点的。

</b

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-9832-1-1.html 上篇帖子: CCNA(二)cisco三层模型 下篇帖子: CCNA学习指南记录 CCNP

尚未签到

发表于 2013-10-15 09:58:18 | 显示全部楼层
解释就是掩饰,掩饰就是编故事!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-10-15 15:27:34 | 显示全部楼层
人生自古谁无死,啊个拉屎不用纸!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-10-15 21:21:53 | 显示全部楼层
我是个凑数的。。。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-10-16 12:08:40 | 显示全部楼层
学习了,不错,讲的太有道理了

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-10-16 22:44:39 | 显示全部楼层
人生自古谁无死,啊个拉屎不用纸!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-10-17 02:54:03 | 显示全部楼层
走过了年少,脚起了水泡

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表