这几天直播的NA课闫老师给大家讲了生成树的工作原理,相信大家对STP的工作原理有了基本的理解。

但是生成树的版本这么多,如果在企业里, 混合使用不同版本的STP,大家有没有想过, 这些不同版本的STP之间兼容性是如何的呢?

先说一下STP有哪些版本:

CST【802.1D】、RSTP【802.1W】、PVST 【思科私有】、MSTP【802.1S】

下面分别介绍各版本的运行过程 :CST——Common Spanning TreeCST的协议号有802.1D,如果交换机运行在CST的模式下,不管交换机中有多少个VLAN,所有的流量都会走相同的路径 。RSTP——Rapid Spanning Tree Protocol RSTP称为快速生成树,协议号有802.1W;在运行CST时,接口的状态有blocking listening disabled learning forwarding几种状态,其中blocking listening disabled状态是不发送数据的,在RSTP中,RSTP将这三种状态归为一个状态,那就是discarding状态,所以在RSTP中,接口的状态只有三种,分别是discarding learning forwarding; 在CST模式中,如果根交换机失效了,需要等待50S的时间才可以启用block端口;而RSTP只需要6S的时间便可以发现根交换机失效,一旦发现根交换机失效,会立刻启用discarding端口。PVST ——Per-vlan Spanning Tree plus PVST 是cisco私有的协议,之前有一个PVST,但由于PVST只支持ISL的trunk,为了扩展PVST支持IEEE 802.1Q,所以开发出了PVST 协议;PVST 是基于CST运行的,运行PVST 的交换机会对每个VLAN进行一次STP计算,并且每个VLAN的STP信息是单独保存的;PVST 会在每个VLAN进行不同的STP计算,称为STP 实例(instance)。所以可以控制每个VLAN流量走不同的路径。PVST 最多只支持128个实例 。Rapid PVST Rapid PVST 就是具有RSTP特性的PVST MSTP——Mutiple Spanning Tree ProtocolMSTP的协议号有802.1S,因为在交换机存在多个VLAN时,CST将所有的VLAN的流量放在单链路上进行传输,而PVST 可以为每一个VLAN进行不同的STP运算,可以控制每个VLAN的流量的走向,但是如果交换机存在多个VLAN,PVST为每个VLAN运行一个STP实例,这样会对交换机的负载会过大;在这些VLAN中,有些VLAN是走相同的路径的,为了节省设备资源的开销,可以将这些走相同路径的VLAN放到一个实例中,而交换机就可以为多个VLAN只维护这一个STP实例即可MSTP就是为了将要进行相同STP运算的VLAN映射到一个STP实例中,从而节省交换机资源的开销。MSTP是运行在RSTP基础上的协议,所有它也具有RSTP快速收敛的特性;RSTP是随着MSTP的开启而开启的;但MSTP最多只支持64个STP实例,但每个实例中的VLAN数量是没有限制的;默认情况下,所有VLAN都属于实例0中。MSTP还需要通过分区域管理,即region,交换机要在同一个region中进行相同的stp运算,必须region name和region number一致;一个VLAN只能映射到一个实例,一个网络可以存在多个MSTP revision,便于各自独立。

各版本之间的兼容性

RSTP与STP的兼容性 RSTP可以兼容STP,但是此时会丧失快速收敛等RSTP优势。

当⼀个⽹段⾥既有运⾏STP的交换设备⼜有运⾏RSTP的交换设备,STP交换设备会忽略RSTP BPDU;

运⾏RSTP的交换设备在某端⼝上接收到运⾏STP的交换设备发出的配置BPDU,在两 个Hello Time时间之后,便把⾃⼰的端⼝转换到STP⼯作模式,发送配置BPDU,从⽽实现了 互相兼容。

在华为技术有限公司的数据通信设备上可以配置运⾏STP的交换设备被撤离⽹络后,运⾏ RSTP的交换设备上与之相连的端⼝可迁移回到原来的RSTP⼯作模式。

总结如下:

1、MSTP-RSTP-STP 这样从上向下的兼容顺序兼容,不能从STP向 MSTP兼容。

2、当同⼀⽹段的两台设备分别运⾏STP、RSTP时,STP会丢弃RSTP发过来的BPDU,RSTP 收到STP发送过来的BPDU等待2个Hello time时间⾃动由RSTP模式切换为STP模式。当设备 STP设备移⾛,RSTP设备不会⾃动切换模式,需要通过执⾏MCheck操作,使其恢复RSTP模 式。

MSTP对STP和RSTP的改进

RSTP在STP基础上进⾏了改进,实现了⽹络拓扑快速收敛。但RSTP和STP还存在同⼀ 个缺陷:由于局域⽹内所有的VLAN共享⼀棵⽣成树,因此⽆法在VLAN间实现数据流量的负 载均衡,链路被阻塞后将不承载任何流量,还有可能造成部分VLAN的报⽂⽆法转发。

为了弥补STP和RSTP的缺陷,IEEE于2002年发布的802.1s标准定义了MSTP(多实例 ⽣成树)协议。该协议兼容STP以及RSTP。MSTP引⼊了域的概念,可以将⼀个⼤型交换⽹络划分成多个MST域(多⽣成树域)。每个域叫做⼀个MST域(MST Region:Multiple Spanning Tree Region)。

MSTP把⼀个交换⽹络划分成多个域,每个域内形成多棵⽣成树,⽣成树之间彼此独⽴。每棵 ⽣成树叫做⼀个多⽣成树实例MSTI(), 该协议不是基于VLAN,⽽是基于Instance(实例)运⾏的。

所谓Instance,也即⼀个或多个VLAN的集合。可以将⼀个或多个VLAN映射到⼀个 Instance,然后MSTP基于该Instance计算⽣成树。基于Instance计算出的⽣成树被称为 MSTI(Multiple Spanning Tree Instance,多⽣成树实例),映射到同⼀个Instance的 VLAN共享⼀颗⽣成树。可以针对MSTI进⾏主根桥,次根桥,接⼝优先级或cost等相关配置。然后, 在每⼀个MST域中的兼容性, ⼜回归到RSTP与STP的兼容性,

STP中定义的配置BPDU、RSTP中定义的RST BPDU、MSTP中定义的MST BPDU。

版本

类型

名称

0

0x00

配置BPDU

0

0x80

TCN BPDU

2

0x02

RST BPDU

3

0x02

MST BPDU

最后

太阁老师的个人微信

添加太阁老师个人微信领取:太阁免费视频资料、NA综合实验配置文件拓扑图及模拟器、太阁独家实验手册、网工必读书籍等

stp用什么打开(STP的各种版本以及各版本之间的兼容性)(1)

,