一、RSTP/STP的缺陷与不足
前面我们学习了RSTP对于STP的一些优化与快速收敛机制。但在划分VLAN的网络中运行RSTP/STP,局域网内所有的VLAN共享一棵生成树,被阻塞后的链路将不承载任何流量,无法在VLAN间实现数据流量的负载均衡,导致链路带宽利用率、设备资源利用率较低。
示例1:
在网络中存在两个VLAN,网关分别在不同设备上,二层网络通过RSTP进行互联,端口配置Trunk模式允许VLAN 10 20通过,SW3作为根桥会导致PC和PC2都流经根桥,SW5的预备端口被逻辑关闭,PC1的流量:SW5-->SW3-->AR1;PC2的流量:SW5-->SW3-->SW4-->AR2,出现次优路径。
优点:RSTP优化了收敛机制与BPDU保护功能,实现快速收敛。
不足:RSTP实际上与VLAN无关,在单个生成树情况下会导致链路闲置以及次优路径。
STP/RSTP维护单个生成树,设备互联必定会逻辑关闭其中一个端口,导致流量从另外路径流出,而且如图导致次优路径。
二、多生成树协议概述
为了弥补RSTP/STP的缺陷,IEEE于2002年发布的802.1S标准定义了MSTP(Multiple Spanning Tree Protocol,多生成树协议)。MSTP兼容STP和RSTP,通过建立多棵无环路的树,解决广播风暴并实现冗余备份,既可以快速收敛,又提供了数据转发的多个冗余路径,在数据转发过程中实现VLAN数据的负载均衡。
MSTP可以将一个或多个VLAN映射到一个Instance(实例),再基于Instance计算生成树,映射到同一个Instance的VLAN共享同一棵生成树。
MSTP计算方式与RSTP/STP类似,基于多实例生成树,基于VLAN映射,因为日常使用VLAN技术较广泛,实现不同VLAN路径不同,冗余备份和负载分担。
三、MSTP基本概念
3.1 MST Region
MSTP网络层次:MSTP把一个交换网络划分成多个域,每个域内形成多棵生成树,生成树之间彼此独立。
MST Region(Multiple Spanning Tree Region,多生成树域),也可简称MST域:
-
由交换网络中的多台交换设备以及它们之间的网段所构成。 -
一个局域网可以存在多个MST域,各MST域之间在物理上直接或间接相连。用户可以通过MSTP配置命令把多台交换设备划分在同一个MST域内。 -
MSTP网络中包含1个或多个MST域,每个MST域中包含一个或多个多生成树实例。
同一个MST域的设备具有下列特点:
-
都启动了MSTP。 -
具有相同的域名。 -
具有相同的VLAN到生成树实例映射配置。 -
具有相同的MSTP修订级别配置。
如果确定都使用MSTP,则二层交换网络都启用MSTP协议,则形成了一个MST域。
3.2 MSTI
MSTI(Multiple Spanning Tree Instance,多生成树实例):一个MST域内可以生成多棵生成树,每棵生成树都称为一个MSTI。MSTI使用Instance ID标识,华为设备取值为0~4094。
VLAN映射表:MST域的属性,描述了VLAN和MSTI之间的映射关系。如图所示的MST Region 4的VLAN映射有:
-
VLAN1映射到MSTI 1 -
VLAN2映射到MSTI 2 -
其余VLAN映射到MSTI 3
在一个MST域内可以创建多个实例,不同实例映射到不同VLAN,就是VLAN流量可以实现负载均衡等功能。
3.3 CST
CST(Common Spanning Tree,公共生成树):
-
是连接交换网络内所有MST域的一棵生成树。 -
如果把每个MST域看作是一个节点,CST就是这些节点通过生成树协议计算生成的一棵生成树。 -
如图深蓝色粗线条连接各个域构成CST。
多个MST域的核心主干网络构成。
3.4 IST
IST(Internal Spanning Tree,内部生成树) 是各MST域内的一棵生成树。IST是一个特殊的MSTI,MSTI的Instance ID为0。如图所示的MST Region 4,黑色细线条在域中连接该域的所有交换设备构成IST。
IST就是各个域内的内部生成树,不包括核心互联的链路。
3.5 CIST
CIST(Common and Internal Spanning Tree,公共和内部生成树),通过生成树协议计算生成的,连接一个交换网络内所有交换设备的单生成树。如图所示,所有MST域的IST加上CST就构成一棵完整的生成树,即CIST。
就是CST+IST构成整个MST域内的生成树连接。
3.6 SST
SST(Single Spanning Tree,单生成树),运行生成树协议的交换设备只能属于一个生成树。MST域中只有一个交换设备,这个交换设备构成单生成树。如图所示的MST Region 3,该域中的唯一的交换设备构成SST。
一个MST域里只有一台交换机构成MSTP网络。
3.7 总根,域根和主桥
因为MSTP是基于多域多实例,因此有总根、区域根桥、主桥。
总根(CIST Root)是CIST的根桥,如图中SW1。
域根(Regional Root):
-
分为IST域根和MSTI域根。 -
IST域根,在MST域中IST生成树中距离总根最近的交换设备是IST域根,如图中SW2、SW3、SW4。 -
MSTI域根是每个多生成树实例的树根。
主桥(Master Bridge)是IST Master,它是域内距离总根最近的交换设备,如图中SW1、SW2、SW3、SW4 。如果总根在MST域中,则总根为该域的主桥。
简单就是在整个MST域有个总根,在每个MSTI域里面也有域内的根和主桥,各个域桥连接到总根桥。
角色 | 说明 |
---|---|
MST域 | 交换网络被划分成多个域,一个MST域内可以包含一台或多台交换机,同属于一个MST域的交换机必须配置相同的域名、相同的修订级别、以及相同的VLAN映射表 |
MSTI | 基于Instance的生成树 |
VLAN映射表 | VLAN和MSTI之间的映射关系 |
CST | 公共生成树,连接所有MST域的一棵生成树 |
IST | 内部生成树,MST域内Instance ID为0的一棵生成树 |
CIST | 公共和内部生成树,连接一个交换网络内所有交换设备的生成树 |
SST | 单生成树,MST域内只有一台交换设备,且该设备只属于一棵生成树 |
总根 | CIST的根桥 |
IST域根 | MST域中,IST距离总根最近的交换设备 |
MSTI域根 | MSTI的根桥 |
主桥 | 距离总根最近的交换设备,包括:总根和IST域根 |
总结:STP和RSTP都只会生成一颗生成树,就可能出现链路浪费和次优路径。为了解决这些问题出现了多实例生成树,MSTP基于域、实例、VLAN映射来实现,能够实现VLAN流量的负载分担和提高链路可用性。
本文由 mdnice 多平台发布