华为Mate30■「实战」华为MSTP原理及案例配置详解


MSTP简介
多生成树协议MSTP(Multiple Spanning Tree Protocol)是IEEE 802.1s中提出的一种STP和VLAN结合使用的新协议 , 简单说来 , STP/RSTP是基于端口的 , 而MSTP是基于实例的 。 它既继承了RSTP端口快速迁移的优点 , 又解决了RSTP中不同VLAN必须运行在同一棵生成树上的问题 。
域和实例
与STP/RSTP相比 , MSTP中引入了“实例”(Instance)和“域”(Region) 的概念 。
所谓“实例”就是多个VLAN的一个集合 。 使用的时候可以把多个相同业务的VLAN映射到某一个实例中 。 MSTP拓扑计算以实例为维度 , 各个实例独立破环 。 通过VLAN和实例的映射 , 可以实现在这些实例上实现负载均衡 。 缺省情况下 , 所有的VLAN都映射到实例0上 。 除实例0外的其他实例叫做多生成树实例 。
所谓“域” , 由域名、修订级别、VLAN与实例的映射关系(mapping of VIDs to spanning trees)组成 。 每个域内所有交换机都要有相同的MST域配置 , 也就是说多台交换机域中的三个配置完全相同时 , 才属于同一个域 。 缺省情况下 , 域名就是交换机的桥MAC地址 , 修订级别等于0 , 所有的VLAN都映射到实例0上 。
MSTP生成树分为4种:

  1. CIST(Common Internal Spanning Tree) , 即公共与内部生成树 。 CIST由CST和IST组成 。
  2. CST(Common Spanning Tree)连接交换网络内所有MST域的一棵生成树 。
  3. IST(Internal Spanning Tree)各个MST域内的一棵生成树 。
  4. SST(Single Spanning Tree)运行STP或RSTP的交换设备只能属于一个生成树或者MST域中只有一个交换设备 , 这个交换设备构成单生成树 。

域根和总根
总根是一个全局概念 , 对于所有互连的运行STP/RSTP/MSTP的交换机只能有一个总根 , 也即是实例0的根 。 如上图所示 , A0的CIST Root就是总根 。
域根是一个局部概念 , 是相对于某个域的某个实例而言的 。 也就是说每个域内的每个实例都有一个域根 , 所以每个域所包含的域根数目与实例个数相关 。
Master端口和域边缘端口
华为Mate30■「实战」华为MSTP原理及案例配置详解
本文插图
Master端口:Master端口是MST域的所有边界端口中 , 到达总根具有最小开销的端口 , 也就是连接MST域到总根的端口 , 位于整个域到总根的最短路径上 。 Master端口在CIST上的角色是Root Port 。
域边缘端口:是连接不同MST域的端口 , 位于MST域的边缘 。 一个域中可以有多个域边缘端口 。
MSTP生成树计算
CIST生成树的计算CIST生成树计算中 , 通过7个维度的比较 , 最终把环形组网裁剪为树形组网 。 7个维度是{ 根交换设备ID , 外部路径开销 , 域根ID , 内部路径开销 , 指定交换设备ID , 指定端口ID , 接收端口ID } 。
CIST生成树计算过程 , 可以分为3步:
  1. 网络中的设备发送接收BPDU报文 , 在经过比较配置消息后 , 在整个网络中选择一个优先级最高的交换机作为CIST的树根 。
  2. 在每个MST域内MSTP通过计算生成IST
  3. MSTP将每个MST域作为单台交换机对待 , 通过计算在MST域间生成CST 。

MSTI的计算MSTI生成树计算中 , 通过5个维度的比较 , 最终把环形组网裁剪为树形组网 。 5个维度是{ 域根ID , 内部路径开销 , 指定交换设备ID , 指定端口ID , 接收端口ID } 。
在MST域内 , MSTP根据VLAN和生成树实例的映射关系 , 针对不同的VLAN生成不同的生成树实例 。 每棵生成树独立进行计算 , 计算原则与STP/RSTP计算生成树的相同 。
使用注意事项:
绑定实例的VLAN , 必须已经创建 , 并且接口已经加入指定VLAN 。 通过命令“display stp brief”查看端口状态时 , 只会显示使能STP且UP的端口 。


推荐阅读