引言
由上一期我们可知,STP的不足已经很明显,具体体现在以下方面。
1.STP的listening,learning,block状态都没有本质上的区别,都不收发数据相反多个状态会浪费网络资源、
2.STP太过于以来定时器,BPDU表老化时间20s,listening到block30s,都会占用大量的时间
所以说推出了STP更新版,Rapid STP,快速生成数协议。
与STP比较
端口状态
由于STP的listening,learning,block三个状态本质都是不收发数据,现减去俩个,保留一个就可以了。
discarding | 丢弃状态 | 不收发数据也不学习MAC地址 |
learning | 学习状态 | 不收发数据但学习MAC地址 |
forwarding | 转发状态 | 收发数据且学习MAC地址 |
端口角色
对比与STP新增加了替代端口、备份端口,算上原本 的指定端口和源端口共四种类型。
端口 | 作用 |
根端口 | 协商后用于接受BPDU的端口 |
指定端口 | 协商后用于发送BPDU的端口 |
替代端口 | 替代端口可以简单地理解为根端口的备份,它是非根桥收到了其他设备发送的BPDU后被阻塞的端口。如果设备的根端口发生故障,替代端口可以成为新的根端口,加快了网络的收敛过程。 |
备份端口 | 备份端口是指交换机由于收到了自己发送的BPDU从而被阻塞的端口。如果一台交换机有多个端口接入同一个网段,并且这些端口中有一个被选举为该网段的指定端口,那么这些端口中的其他端口都将被选举为备份端口。 |
收敛机制
边缘接口
介绍:与portfast类似,连接终端设备的接口直接进入转发状态
P/A机制
介绍:RSTP在选举的过程中加入了P/A机制(确认机制),P/A机制要求两台交换设备之间链路必须是点对点的全双工模式,其目的是使端口尽快进入Forwarding状态。其中P为peoposal(建议),A是agreement(同意)
具体过程:
1.双发互发Proposal置位的BPDU,并把发送P消息的端口变成指定口,注意(接口处在Discarding状态)
2.双方通过协商的报文分出谁是指定端口,谁是根端口。(双发处于Discarding状态)
3.SWB开始进行端口状态同步,将交换机上除边缘端口外的所有端口全部置为Discarding状态,以保证DP端口进入Forwarding时没有环路存在。
4.SWB准备好了,给SWA回复一个Agreement置位的BPDU报文给SWA,自己先进入forwarding状态
5.SWA接受报文,端口进入forwarding状态
BPDU处理
与STP不同之处,一个在于STP的类型不同,另一个则在flag标签里面的,rstp由于有P/A机制,所以说多了agreement和proposal的报文信息。
拓扑变更
直连拓扑变更
STP分析:LSW1的listening---learning---forwarding 30s
P/A机制:秒级时间类完成
非直连拓扑变更
STP分析:LSW2的路由表老化20s + LSW1的listening---learning---forwarding 30s 共 50s
P/A机制:LSW2无老化时间,快熟发送更新后的BPDU,秒级时间类完成
边缘端口
STP分析: LSW1的listening---learning---forwarding 30s
P/A机制:边缘端口,秒级时间类完成
STP兼容
介绍;RSTP接收到STP报文的接口会切换至STP模式,STP设备移除后,设备连接STP的接口依旧保持运行STP,需手动修改
配置
思科
ASW4(config)#spanning-tree mode rapid-pvst
华为华三
[SW1]stp mode rstp
[SW3-Ethernet0/0/3]stp edged-port enable
尾言
想必大家也对MSTP有一定的了解,大家可以对比STP协议去理解俩者的不同和改进之处。理解MSTP的体现“快”的地方
本人网络小白一枚,如有问题,逻辑不清楚,望大佬们指出。也希望还有问题的兄弟们在评论区留言,我会及时回复大家。