一、前言
MSTP 的全称是多生成树协议(Multiple Spanning Tree Protocol),它是目前最完美而且兼容性最好的公有生成树协议。
本文将介绍一些生成树相关的知识以及如何在思科交换机上使用 MSTP。
二、知识普及
2.1 传统生成树协议的缺陷
我们都知道,公有的 STP 和 RSTP 都只能在一台交换机上创建一个生成树实例(这个实例叫做 CST,即公用生成树)。
虽然这样可以节省交换机的系统资源,但由于冗余链路是完全不转发数据的,所以会造成严重的带宽浪费。
针对这一点,思科开发了 PVST+ 和 Rapid-PVST+ 两款私有的生成树协议。这两款生成树协议会为每一个 VLAN 创建一个生成树实例,每个 VLAN 也都会有自己独立的根桥。
这样做虽然不会浪费带宽资源,但是生成树实例数会随着 VLAN 数的的增加而增加。当交换机存在大量 VLAN 时,大量的系统资源都会被浪费在生成树的计算上。并且,PVST+ 和 Rapid-PVST+ 都只能用在思科设备上,兼容性差。
2.2 MSTP 简介
MSTP 是 IEEE 基于 RSTP,结合 Rapid-PVST+ 的优点开发的公有生成树协议。
MSTP 最大的特点是可以根据实际需要创建任意多个生成树实例,并且每个生成树实例都可以跟一个或多个 VLAN 绑定。
MSTP 完全消除了传统生成树协议的缺陷,并且还是公有协议。所以 MSTP 是目前主流的生成树协议。
MSTP 有域的概念,它可将整个运行 MSTP 的网络分为多个不同的域。域间使用的是公共生成树(CST),域内使用的是内部生成树(IST)。在公共生成树(CST)中,每个域都可看作是一台逻辑交换机,且不同域间只能通过实例 0
进行互操作。
MSTP 的架构如下图:

不过多域 MSTP 一般很少使用,基本上只用于支持 MSTP 的交换机与不支持 MSTP 交换机的互操作。
如果想让所有交换机都处在同一个域中,必须满足以下几点:
1. 所有交换机的域名必须相同。
2. 所有交换机的修订版本必须相同。
3. 所有交换机 VLAN 到实例的映射必须相同。
在默认情况下,交换机的所有 VLAN 都会被映射到实例 0
中。并且实例 0
不可被删除。
三、网络拓扑图及说明

如图,整网有 6 台交换机。现在要求 Switch1 做 VLAN 10、20、30 的根桥,Switch2 做 VLAN 40、50、60 的根桥。整网使用单域的 MSTP,域名为 cisco
,修订版本为 1
。
下面只讲与 MSTP 相关的配置。
四、配置方法
4.1 Switch1
进入 MSTP 配置模式:
Switch1(config)#spanning-tree mst configuration
设置域名为 cisco
:
Switch