MSTP 多实例负载分担
两台汇聚互为备份又想分担流量时,MSTP 多实例是最常见的做法:实例 1 让 SW-A 当根、实例 2 让 SW-B 当根,再把业务 VLAN 分别映射到两个实例,不同 VLAN 的流量就会走不同的上行链路。前提是 VLAN 与实例的映射关系必须两端一致。
基本信息
| 适用设备 | MSTP 组网的汇聚层,支持 MSTP 的交换机 |
|---|---|
| 华为/H3C 命令 | stp instance N root primary 或 secondary |
| 思科命令 | spanning-tree mst N root primary 或 secondary |
| 命令实质 | 通过设置桥优先级影响选举,不是新机制 |
| 映射要求 | VLAN 与实例的映射两端必须一致 |
| 验证 | display stp instance N brief、show spanning-tree mst N |
典型使用场景
- 双汇聚互备并做流量分担(园区核心最常见的用法)
- 替换单台汇聚设备时的根桥规划
- 大二层网络中缓解单条上行链路拥塞
- 割接时临时调整实例根桥以引导流量走向
- 验收:确认各实例的根端口方向符合设计预期
华为 VRP
华为 VRP
! SW-A:实例 1 主根、实例 2 备根
[SW-A] stp instance 1 root primary
[SW-A] stp instance 2 root secondary
! SW-B 相反配置
[SW-B] stp instance 1 root secondary
[SW-B] stp instance 2 root primary
<SW-A> display stp instance 1 brief # 验证根端口方向思科 IOS
思科 IOS
SW-A(config)# spanning-tree mst 1 root primary
SW-A(config)# spanning-tree mst 2 root secondary
SW-A(config)# spanning-tree mst configuration
SW-A(config-mst)# instance 1 vlan 10,20
SW-A# show spanning-tree mst 1 | include RootH3C Comware
H3C Comware
[SW-A] stp instance 1 root primary
[SW-A] stp instance 2 root secondary
[SW-A] stp region-configuration
[SW-A-mst-region] instance 1 vlan 10 20
<SW-A> display stp instance 2 briefroot primary 的实质
| 厂商 | 命令 | 实际效果 |
|---|---|---|
| 华为 VRP | stp instance 1 root primary | 主根通常对应最低优先级(0) |
| H3C Comware | stp instance 1 root primary | 与华为规则类似,主根优先级最低 |
| 思科 IOS | spanning-tree mst 1 root primary | 默认按「比现根再低」的方式设置,相对保守 |
| 通用替代做法 | 直接指定优先级数值 | 跨厂场景下最可控、最容易核对 |
同一个实例上两台设备都配 root primary:优先级相同,最后靠 MAC 比较决胜负,根桥落在谁身上不可控。必须一台配主根、另一台配备根。
只配了根桥而忘记把业务 VLAN 映射到对应实例,流量不会有任何差异——负载分担等于没做。映射关系两端都要一致,否则会出现 VLAN 走错路径甚至绕行。
验收多实例负载分担:先看两台汇聚各自实例的根端口方向是否相反,再用接口流量统计确认两条上行链路上都有实际流量经过。