目录
一、RSTP对STP的改进
1、端口角色的变化
RSTP中的端口角色有RP端口、DP端口、AP端口、BP端口和边缘端口,其中AP端口为RP端口的备份,BP端口为DP端口的备份。
BP端口:在共享网络中,当端口收到和自身桥ID相同的BPDU报文时,该端口即为BP端口,BP端口切换为DP端口仍需要2倍的Forward-delay时间。
2、端口状态的变化
RSTP中的端口状态有discarding、learning和Forwarding。
3、新增快速收敛机制
(1)PA机制
(2)根端口的快速切换
(3)边缘端口机制
4、新增保护机制
(1)BPDU保护
BPDU保护是为了防止恶意攻击边缘端口,因为边缘端口在收到BPDU报文时会切换为普通端口,配置了BPDU保护的边缘端口在收到了BPDU报文后会置为shut-down状态,默认不会自动恢复,可以通过配置状态检测计时器来实现在特定时间内未在收到BPDU报文后自动恢复。
(2)根保护
根保护是防止根桥位置发生改变,一般配置在DP端口上,使DP端口角色不再发生改变,DP端口在收到更优的BPDU报文时会置为discarding状态,在2倍的Forward-delay时间内未在收到BPDU报文则恢复。
(3)环路保护
环路保护是为了防止网络链路拥塞或单向链路故障造成网络环路,一般配置在RP或AP端口上。
(4)TC防护
TC防护是防止恶意的TC报文导致交换机频繁清空自己的MAC表项。
5、BPDU报文处理方式的改变
(1)RSTP中所有交换机都会发送BPDU报文,而无需等待根桥的BPDU报文。
(2)RSTP中的BPDU报文的生存时间为6秒。
(3)端口在6秒内未收到BPDU报文,会重新进行角色的计算。
(4)阻塞端口在收到次优的BPDU报文后会立即回应更优的BPDU报文。
二、RSTP的PA机制协商过程
——必要条件:必须在点到点链路上。
(1)如上游设备和下游设备之间新增一条链路。
(2)设备之间相互发送P置位的BPDU报文,设备收到后计算出端口角色,上游设备端口为DP端口,下游设备端口为RP端口。
(3)下游设备开始进行同步,除已置为discarding状态的端口及边缘端口外将其他端口置为discarding状态,同步完成后,将RP端口置为Forwarding状态,然后回应一个A置位的BPDU报文给上游设备。
(4)上游设备收到后,将DP端口置为Forwarding状态,此上游设备和下游设备间的PA协商机制就完成了,下游设备还会和其他下游设备进行PA协商机制,直到计算到网络边缘。
三、RSTP的拓扑变化流程
——拓扑变化触发条件:非边缘端口切换到Forwarding状态。
(1)设备感知到拓扑发生变化,启动一个计时器4秒,在4秒内清空状态发生变化的端口学到的mac地址,同时会向其他端口发送TC BPDU报文。
(2)其他设备收到后,会将除接收到该报文的端口的其他端口学到的MAC地址清空,同样启动一个计时器4秒,然后向其他端口发送TC BPDU报文,最终TC BPDU报文会在全网泛洪。
四、RSTP中边缘端口的特性
1、边缘端口可以立即进入转发状态。
2、边缘端口状态发生变化不会引起拓扑发生改变。
3、边缘端口在收到BPDU报文后会切换为普通端口。
4、边缘端口也会发送BPDU报文,目的是为了检测环路。
五、RSTP的不足
RSTP中所有vlan都共享一颗生成树,不能按vlan来阻塞冗余链路,所有vlan报文都沿一颗生成树进行转发,无法实现流量的负载分担。