RSTP原理与配置

简介: RSTP原理与配置

端口角色

根端口

指定端口

替代端口   根端口的备份接口

备份端口   指定端口的备份接口

替代端口(Alternate)是根端口的备份接口,由于收到了其他设备所发送的BPDU从而被堵塞的端口。如果设备的根端口发生故障,那么替代端口直接成为新的根端口。

备份端口(Backup)是指定端口的备份接口,由于收到了自己所发送的BPDU从而被阻塞的接口。如果一个交换机的多个接口接入同一个网段,并且有一个接口选举成该网段的指定端口,那么这些接口中的其他接口将会被选举为备份接口。

注:一台设备如果是非根桥,那么它有且只能有一个根接口,但是该设备可以没有替代端口,也可以有,如果有,可以存在一个或多个。当设备的根端口出现故障,最优的替代端口将成为新的根端口。

端口状态

Discarding状态:不转发用户流量也不学习MAC地址;

Learning状态:不转发用户流量但是学习MAC地址;

Forwarding状态:既转发用户流量又学习MAC地址。

BPDU

  1. 在STP中的Flag字段中,STP只使用了TCA和TC置位,而RSTP在STP的基础上,使用了剩余的6个bit位。
  • Aggreement(同意)及Proposal(提议)比特位用于RSTP的P/A机制,该机制大大提升了RSTP的收敛速度。
  • Port Role(端口角色),用于标识RST BPDU发送端口的端口角色,01表示根端口,10表示替代端口,11表示指定端口,00保留使用。
  • Forwarding(转发)和Learing(学习)用于标识该RST BPDU发送端口的端口状态。
  1. 在RSTP中,无论是根桥还是非根桥都会按照Hello time时间发送配置BPDU,而不像STP,只有根桥会发送配置BPDU。
  2. 在RSTP超时时间,不再像STP那样,配置BPDU20S的老化时间。而RSTP的配置BPDU老化时间,是Hello time×3,也就是默认6秒的老化时间,比STP减少了14秒。在华为设备中,有一个系数默认为3,BPDU老化时间是Hello time×3×3 ,多了一个系数,也就是说,在华为设备中,BPDU默认老化时间是18S。
  3. 在STP中,当指定接口接收到次优BPDU时,它将立即发送自己的BPDU,而对于非指定接口,需要等20S老化时间,再重新计算新的BPDU,并发送出去,会导致20S的老化时间。而RSTP,无论端口角色,只要收到次优BPDU,便立即发送自己的BPDU,使RSTP收敛速度更快。

快速收敛机制

如果网络中一个根端口失效,那么网络中最优的Alternate端口将成为根端口,直接进入Forwarding状态。因为通过这个Alternate端口连接的网段上必然有个指定端口可以通往根桥。

如果网络中一指定端口失效,那么网络中最优的Backup端口将成为指定端口,直接进入Forwarding状态。因为Backup端口作为指定端口的备份,提供了另一条从根桥到相应网段的备份通路。

边缘端口不参与RSTP计算,可以由Discarding直接进入Forwarding状态。边缘端口如果接收到BPDU,会丧失边缘端口特性,重新进行生成树计算,选举端口角色,可能会造成临时环路。

边缘端口特性:

  • 边缘端口变成转发状态不需要经历30秒。
  • RSTP接口进入到转发状态,算作拓扑变化,而边缘端口进入到转发状态,不算做拓扑变化。
  • 且拓扑变化不会导致边缘端口的MAC地址被删除。
  • PA协商时,边缘端口不会被阻塞。

P/A协商机制

当两台交换机之间新增了一条链路,这两台交换机的角色肯定是指定端口和根端口。

P/A协商成功的前提

DP和RP端口处于丢弃状态;DP对端端口是RP;

SW1和SW2通过交互BPDU报文,选举为SW1的DP连接SW2的RP。这两个接口都为丢弃状态。

  1. SW1的指定端口向交换机2发送P置位的BPDU。
  2. SW2收到后,将自己所有的非边缘端口全部阻塞,然后回复SW1,它这里不存在任何环路,SW1可以切换到转发状态。
  3. SW2知道自己没有任何环路,于是切换到转发状态,给SW1发送A置位的BPDU。
  4. SW1收到后,立即切换到转发状态。P/A机制协商完成。

拓扑变更机制

当一个非边缘端口进入到Forwoading状态,就是拓扑变化。

  1. 当交换机检测到拓扑变化,会开启计时器(TC While Timer)(Hello ×2),在这个时间,会清除交换机所有端口上学习到的MAC地址(边缘端口除外。)
  2. 在计时器时间内由非边缘端口向外发送RST BPDU,其中TC置位。
  3. 其他交换机收到后,除了边缘端口和接收到该BPDU的接口,会清除其他接口下学习到BPDU。然后也启动计时器,向其他交换机发送。
  4. 最终TC置位的RST BPDU会在全网泛洪。

保护功能

BPDU保护

当边缘端口被误接了交换机,会导致边缘端口变成普通端口,影响网络。配置BPDU保护功能后,当边缘端口收到BPDU后会自动error down。BPDU保护只能配在边缘端口生效。

根桥保护

启用根保护后的指定端口,端口角色只能是指定端口,不能改变。

当一台优先级更高的根桥交换机接入进来,肯定会抢占原来的根桥,那么根桥会发生变化,为了防止这一现象,会启用根保护。启用根保护的指定端口收到更高优先级的RST BPDU时,端口会进入Discarding状态,如果没有继续收到后,会在30S后进入Forwarding状态。根保护只能配在指定端口上。

这张图

如果这个DP口设置为根保护,那么当1和3的链路断开,这个端口角色依然是DP,没办法转换端口。

运行快速生成树的交换机上,如果要在指定端口启用根端口保护功能,尽量在根桥上的指定端口启用。如果在非根桥的指定端口开启保护,当网络的链路故障时,无法正常切换端口角色。

环路保护

当出现单向故障时,交换机长时间收不到根桥发来的BPDU,会认为出现故障,此时AP会代替RP,RP转换成DP,进入转发状态,此时网络中没有阻塞端口,会出现环路。当启用环路保护后,如果长时间收不到BPDU,会把AP或RP切换成Discarding状态。环路保护只能配在阻塞端口和根端口。

防TC BPDU保护

当有恶意发送TC 置位的BPDU时,会导致交换机频繁删除MAC地址表,这时启用防TC BPDU攻击保护,交换机会在一定的单位时间内,处理一定次数的TC BPDU,对于超出的TC BPDU,则会在之后一段时间再处理。

案例分析

当1和2之间链路断开后,2认为自己是根桥,发送次优BPDU给3,3收到后,立刻发送更优的BPDU(1发来的BPDU),2收到后,发现自己不是最优的,把DP转换成RP,3的AP转换成DP。此时2的RP和3的DP都是丢弃状态,进行P/A协商。网络完成恢复。

相关文章
|
5月前
|
运维 负载均衡 算法
|
4月前
|
网络协议
|
6月前
|
网络虚拟化
MSTP原理与配置
MSTP原理与配置
|
7月前
|
安全 数据中心 C++
|
7月前
|
负载均衡 网络协议 网络虚拟化
RSTP 和 PVST 之间的区别
【4月更文挑战第11天】
256 2
|
7月前
|
负载均衡 网络协议 安全
【计算机网络】虚拟路由冗余(VRRP)协议原理与配置
【计算机网络】虚拟路由冗余(VRRP)协议原理与配置
245 0
stp的基础配置
stp的基础配置
98 0
|
网络协议 数据安全/隐私保护
PPPoE 的 基础配置及原理
PPPoE 的 基础配置及原理
231 0
RSTP原理与配置整理和汇总
RSTP原理与配置整理和汇总
357 0