STP
一、Stp的基本概念
1、桥ID BID
桥ID一共64bit,包含16bit的桥优先级和48bit的桥Mac地址
2、根桥
网络中拥有最小桥ID的交换机将成为根桥
3、开销与根路径开销(RPC)
4、接口ID
二、Stp的基本操作过程
1、在交换机网络中选举一个根桥
①桥ID最小的交换机将成为根桥
②BPDU(网桥协议数据单元)
③根桥的地位是可抢占性的
2、在每个非根桥上选举一个根接口
①根接口实际上是非根桥上所有接口中收到最优BPDU的接口,可以简单的将其理解为交换机在stp树上“朝向”根桥的接口
②在stp收敛完成之后,根桥依然会周期性的向网络中发送BPDU,而非根桥则会周期性的在自己的根接口收到BPDU,并沿着stp树向下游转发
3、在每个网段选举一个指定接口
指定接口负责向该网段发送BPDU
4、阻塞剩余接口,打破二层环路
被阻塞的接口既不会接收也不会转发业务数据,另外该接口不会发送BPDU,但是会持续侦听BPDU,以便感知网络拓扑的变更情况
三、Stp报文
1、stp的BPDU有两种类型:配置BPDU和TCN BPDU
2、配置BPDU是stp进行拓扑计算的关键,缺省以2s为周期发送
3、TCN BPDU
①用于在网络拓扑发生变化时向根桥通知变化的发生,从而促使全网的交换机尽快老化自己的Mac地址表项,以便适应新的网络拓扑
②TCN BPDU需要从发现拓扑变更的交换机传递到根桥,而该交换机与根桥之间可能隔着多台交换机,感知到拓扑变化的交换机会从其根接口发送TCN BPDU,也就是朝着根桥的方向发送TCN BPDU,该报文会一跳一跳的向上游传递,直至到达根桥
4.配置BPDU
①“标志”字段中TCA比特位被设置为1的配置BPDU
当一台交换机收到从下游发送上来的TCN BPDU后,需使用“标志”字段中TCA比特位被设置为1的配置BPDU回应对方并向自己的上游发送TCN BPDU
②“标志”字段中TC比特位被设置为1的配置BPDU
根桥收到TCN BPDU后,它向网络中泛洪“标志”字段中TC比特位被设置为1的配置BPDU,网络中的交换机收到该配置BPDU后,会立即将其Mac地址表的老化时间从原有的值调整为一个较小的值,使Mac地址表能够尽快刷新,以便适应新的拓扑
四、Stp的时间参数
1、hello time(hello时间)
运行了stp的交换机发送配置BPDU的时间间隔,缺省为2s
2、Forward delay(转发延迟)
运行了stp的接口从侦听到学习状态,或者从学习进入转发状态的延迟时间,缺省为15s
3、Max age(最大生存空间)
BPDU的最大生存空间,也被称为BPDU的老化时间,缺省为20s
五、BPDU的比较规则
1、最小的根桥ID
2、最小的RPC
3、最小的网桥ID
4、最小的接口ID
六、Stp的接口状态
1、禁用(disable):该接口不能收发BPDU,也不能收发业务数据帧
2、阻塞(blocking):该接口被stp阻塞。处于阻塞状态的接口不能发送BPDU,但是会持续侦听BPDU,而且不能收发业务数据帧,也不会进行Mac地址学习
3、侦听(listening):当接口处于该状态时,表明stp初步认定该接口为根接口或指定接口,但接口依然处于stp计算的过程中,此时接口可以收发BPDU,但是不能收发业务数据帧,也不会进行Mac地址学习
4、学习(learning):当接口处于该状态时,会侦听业务数据帧(但不进行转发数据帧),并且在收到业务数据帧后进行Mac地址学习
5、转发(forwarding):处于该状态的接口可以正常的收发业务数据帧,也会进行BPDU处理。接口的角色需是根接口或指定接口才能进行转发状态
#侦听到学习的15s原因:在stp的收敛过程中,BPDU泛洪到全网是需要一定时间的,stp完成全网拓扑计算同样需要时间,因此接口在侦听状态停留的15s将给予stp充分的时间进行全网拓扑计算,避免网络中出现临时的环路
#学习到转发的15s原因:由于此时交换机在接口上并未学习到任何Mac地址,因此如果接口从侦听状态立即进入转发状态的话,就有可能在短时间内导致网络中出现不必要的数据帧泛洪现象
RSTP
一、RSTP接口角色
1、RSTP在stp的基础上增加了两种接口角色,他们是替代(Alternate)接口和备份(backup)接口,因此在RSTP中有四种接口角色:根接口、指定接口、替代接口、备份接口
2、替代接口(AP)可以简单的理解为根接口(RP)的备份
3、备份接口(BP)可以简单的理解为指定接口(DP)的冗余
二、RSTP接口状态
Stp的接口状态 | RSTP的接口状态 |
禁用(disable) | 丢弃(discarding) |
阻塞(blocking) | |
侦听(listening) | |
学习(learning) | 学习(learning) |
转发(forwarding) | 转发(forwarding) |
三、边缘接口(edge port)
1、边缘接口缺省不参与生成树计算,当边缘接口被激活后,它可以立即切换到转发状态并开始收发业务数据流量,而不用经历转发延迟时间,因此工作效率大大提升了。另外,边缘接口的关闭或激活并不会触发RSTP拓扑变更
2、一个接口被配置为边缘接口后,该接口依然会周期性发送BPDU
3、在交换机的接口上激活BPDU过滤功能后,该接口将不再发送BPDU,而当其收到BPDU时,也会直接忽略
四、P/A机制
1、在选举完根桥后,根桥发送P置位的BPDU
2、非根桥将本地的非边缘端口全部阻塞,进行同步变量
3、非根桥发送A置位的BPDU给根桥
4、根桥在收到A置位的BPDU后立即进入Forwarding状态
五、保护功能
1、BPDU保护
当交换机激活该功能后,如果边缘端口收到BPDU,则交换机会立即把接口关闭,同时触发告警
2、根保护
根保护只有在指定接口上激活才能有效。当激活了根保护功能的指定接口收到更优的BPDU时,它将忽略这些BPDU,并立即将接口切换到丢弃状态。如果接口不再收到更优的BPDU,则一段时间后(30s),它将自动恢复到转发状态
3、TC-BPDU泛洪保护
现象:交换机短时间内收到大量TC-BPDU报文
在单位时间内,交换设备处理TC-BPDU报文的次数可配置,设备只会处理阈值指定的次数
MSTP
概念
1、生成树不是基于vlan运行的,而是基于instance(实例)运行的
2、一个instance可以包含多个vlan,但是一个vlan只能映射到一个instance
3、一个MST域可以包含多台交换机,同属一个MST域内的交换机必须配置相同的域名、相同的修订级别以及相同的instance与把vlan之间的映射关系