本节介绍的内容包括: 1、STP 2、RSTP 3、MSTP 4、三种生成树协议的比较
本章主要介绍MSTP协议的产生背景。下一章介绍MSTP的基本概念,包括MSTP的网络层次,region,MSTI,端口角色和端口状态。
IEEE于1998年发布的802.1D标准定义了STP(Spanning Tree Protocol)。 STP是数据链路层的管理协议,用于二层网络的环路检测和预防。STP可阻塞二层网络中的冗余链路,将网络修剪成树状,达到消除环路的目的。 但是,STP拓扑收敛速度慢,即使是边缘端口也必须等待30秒的时间延迟,端口才能迁移到转发状态。
IEEE于2001年发布的802.1W标准定义了RSTP(Rapid Spanning Tree Protocol)。 RSTP在STP基础上进行了改进,实现了网络拓扑快速收敛。 但RSTP和STP还存在同一个缺陷:由于局域网内所有的VLAN共享一棵生成树,因此无法在VLAN间实现数据流量的负载均衡,还有可能造成部分VLAN内的报文无法转发。
例如:如图所示,在局域网内应用RSTP,生成树结构在图中用虚线表示,SwitchF为根交换机。SwitchB和SwitchE之间、SwitchA和SwitchD之间的链路被阻塞,除了图中标注了“VLAN2”或“VLAN3”的链路允许对应的VLAN报文通过外,其它链路均不允许VLAN2、VLAN3的报文通过。 Host A和Host B同属于VLAN2,由于SwitchB和SwitchE之间的链路被阻塞,SwitchC和SwitchF之间的链路又不允许VLAN2的报文通过,因此Host A和Host B之间无法互相通讯。
IEEE于2002年发布的802.1S标准定义了MSTP(Multiple Spanning Tree Algorithm and Protocol)。 MSTP兼容STP和RSTP,并且可以弥补STP和RSTP的缺陷。MSTP既可以快速收敛,同时还提供了数据转发的多个冗余路径,在数据转发过程中实现VLAN数据的负载均衡。 MSTP把一个交换网络划分成多个域,每个域内形成多棵生成树,生成树之间彼此独立。每棵生成树叫做一个多生成树实例MSTI(Multiple Spanning Tree Instance),每个域叫做一个MST域。 MSTP通过设置VLAN映射表(即VLAN和MSTI的对应关系表),把VLAN和MSTI联系起来。
每个VLAN只能对应一个MSTI,即同一VLAN的数据只能在一个MSTI中传输;而一个MSTI可能对应多个VLAN。 现将MSTP应用于上图中的局域网,应用后生成MSTI如下所示。
经计算最终生成两棵生成树: 1、MSTI1以SwitchD为根交换机,转发VLAN2的报文。 2、MSTI2以SwitchF为根交换机,转发VLAN3的报文。 这样所有VLAN内部可以互通,同时不同VLAN的报文沿不同的路径转发,实现了负载分担。