华为设备MSTP

一、MSTP核心理论

1. 基本概念
  • MSTP定义:MSTP(Multiple Spanning Tree Protocol)是一种基于实例的生成树协议,支持多个生成树实例(MSTI),每个实例对应一组VLAN,实现不同VLAN流量的负载均衡。与STP/RSTP不同,MSTP通过划分域(Region)和实例(Instance)优化网络资源使用123。

  • 兼容性:兼容STP和RSTP,支持跨厂商设备互通(需配置标准协议)47。

2. 核心组件
  • MST域(Region):由多台交换机组成,需配置相同的域名(Region Name)、修订级别(Revision Level)和VLAN-实例映射表15。

  • 实例(MSTI):每个实例独立计算生成树,一个实例可包含多个VLAN,但一个VLAN只能属于一个实例。默认所有VLAN映射到实例0(CIST)26。

  • 总根与域根

    • 总根(CIST Root):全局唯一,即实例0的根桥,负责跨域生成树的整体拓扑1。

    • 域根(MSTI Root):每个实例在域内的根桥,独立选举1。

3. 端口角色与状态
  • 端口角色

    • 根端口(Root Port):到根桥路径开销最小的端口。

    • 指定端口(Designated Port):向下游发送BPDU的端口。

    • 边缘端口(Edge Port):连接终端设备,不参与生成树计算25。

  • 端口状态:仅三种状态------转发(Forwarding)、学习(Learning)、阻塞(Discarding)35。


拓扑展示

二、MSTP配置步骤

1. 基础配置
  • 配置MST域

    复制代码
    <Huawei> system-view
    [Huawei] stp region-configuration
    [Huawei-mst-region] region-name RG1            # 配置域名
    [Huawei-mst-region] instance 1 vlan 2 to 10    # 实例1映射VLAN2-10
    [Huawei-mst-region] active region-configuration # 激活配置
  • 设置根桥与备份根桥

    复制代码
    [SwitchA] stp instance 1 root primary          # 实例1主根
    [SwitchB] stp instance 1 root secondary        # 实例1备根
2. 路径开销调整
  • 调整端口在不同实例中的开销值,控制阻塞端口选择:

    复制代码
    [SwitchC] interface GigabitEthernet1/0/2
    [SwitchC-GigabitEthernet1/0/2] stp instance 2 cost 20000
3. 启用保护功能
  • BPDU保护:防止边缘端口接收恶意BPDU:

    复制代码
    [SwitchC] stp bpdu-protection
  • 根保护:维持指定端口角色,防止非法根桥抢占:

    复制代码
    [SwitchA-GigabitEthernet1/0/1] stp root-protection
  • 环路保护:处理单向链路故障,避免阻塞端口误转发35。


详细设备配置信息

bash 复制代码
[SW1]vlan batch 10 20
[SW1]inter g0/0/20
[SW1-GigabitEthernet0/0/20]port link-type trunk
[SW1-GigabitEthernet0/0/20]port trunk allow-pass vlan all
[SW1-GigabitEthernet0/0/20]inter g0/0/1
[SW1-GigabitEthernet0/0/1]port link-type trunk
[SW1-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[SW1-GigabitEthernet0/0/1]quit
[SW1]inter g0/0/3
[SW1-GigabitEthernet0/0/3]port link-type trunk
[SW1-GigabitEthernet0/0/3]port trunk allow-pass vlan all
[Sw1-GigabitEthernet0/0/3]quit
[sw1]stp enable
[sw1]stp instance 1 root primary
[sw1]stp instance 2 root secondary
[sw1]stp mode mstp
[sw1]stp region-configuration
[sw1-mst-region]region-name RG1
[sw1-mst-region]instance 1 vlan 10
[sw1-mst-region]instance 2 vlan 20
[sw1-mst-region]active region-configuratio
配置网关根据实际情况配置
bash 复制代码
[SW2]vlan batch 10 20
[SW2]inter g0/0/20
[SW2-GigabitEthernet0/0/20]port link-type trunk
[SW2-GigabitEthernet0/0/20]port trunk allow-pass vlan all
[SW2-GigabitEthernet0/0/20]inter g0/0/1
[SW2-GigabitEthernet0/0/1]port link-type trunk
[SW2-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[SW2-GigabitEthernet0/0/1]quit
[SW2]inter g0/0/2
[SW2-GigabitEthernet0/0/2]port link-type trunk
[SW2-GigabitEthernet0/0/2]port trunk allow-pass vlan all
[Sw2-GigabitEthernet0/0/2]quit
[sw2]stp enable
[sw2]stp instance 2 root primary
[sw2]stp instance 1 root secondary
[sw2]stp mode mstp
[sw1]stp region-configuration
[sw2-mst-region]region-name RG1
[sw2-mst-region]instance 1 vlan 10
[sw2-mst-region]instance 2 vlan 20
[sw2-mst-region]active region-configuratio
配置网关根据实际情况配置
bash 复制代码
[SW3]vlan batch 10 20
[SW3]inter g0/0/20
[SW3-GigabitEthernet0/0/20]port link-type trunk
[SW3-GigabitEthernet0/0/20]port trunk allow-pass vlan all
[SW3-GigabitEthernet0/0/20]inter g0/0/1
[SW3-GigabitEthernet0/0/1]port link-type trunk
[SW3-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[SW3-GigabitEthernet0/0/1]quit
[SW3]inter g0/0/3
[SW3-GigabitEthernet0/0/3]port link-type trunk
[SW3-GigabitEthernet0/0/3]port trunk allow-pass vlan all
[Sw3-GigabitEthernet0/0/3]quit
[SW3]inter g0/0/24
[sw3-GigabitEthernet0/0/24]port link-type access
[sw3-GigabitEthernet0/0/24]port default vlan 10
[sw3]stp enable
[sw3]stp mode mstp
[sw3]stp region-configuration
[sw3-mst-region]region-name RG1
[sw3-mst-region]instance 1 vlan 10
[sw3-mst-region]instance 2 vlan 20
[sw3-mst-region]active region-configuratio
配置网关根据实际情况配置
bash 复制代码
[SW4]vlan batch 10 20
[SW4]inter g0/0/20
[SW4-GigabitEthernet0/0/20]port link-type trunk
[SW4-GigabitEthernet0/0/20]port trunk allow-pass vlan all
[SW4-GigabitEthernet0/0/20]inter g0/0/4
[SW4-GigabitEthernet0/0/4]port link-type trunk
[SW4-GigabitEthernet0/0/4]port trunk allow-pass vlan all
[SW4-GigabitEthernet0/0/4]quit
[SW4]inter g0/0/3
[SW4-GigabitEthernet0/0/3]port link-type trunk
[SW4-GigabitEthernet0/0/3]port trunk allow-pass vlan all
[Sw4-GigabitEthernet0/0/3]quit
[SW4]inter g0/0/24
[sw4-GigabitEthernet0/0/24]port link-type access
[sw4-GigabitEthernet0/0/24]port default vlan 20
[sw4]stp enable
[sw4]stp mode mstp
[sw4-stp region-configuration
[sw4-mst-region]region-name RG1
[sw4-mst-region]instance 1 vlan 10
[sw4-mst-region]instance 2 vlan 20
[sw4-mst-region]active region-configuratio
[sw4]interface GigabitEthernet0/0/1
[SW4-GigabitEthernet0/0/1] stp instance 1 cost 200000
[SW4]inter g0/0/3
[SW4-GigabitEthernet0/0/3] stp instance 2 cost 200000
[SW4]inter g0/0/4
[sw3-GigabitEthernet0/0/4]stp edged-port enable
配置网关根据实际情况配置

三、注意事项与优化

  1. 实例数量限制:单设备最多支持65个实例,实例过多会增加协议报文长度和CPU负载7。

  2. 配置顺序:需先完成VLAN、端口类型等基本配置,再启用MSTP,避免网络震荡7。

  3. 版本兼容性:部分设备(如S5731-L)不支持命令行配置,需通过中心交换机下发7。

  4. CAR调整:多进程或多实例场景需手动放大STP报文CPCAR值,避免协议报文被丢弃7。


四、实际应用场景

1. 负载均衡
  • 通过划分不同实例,将VLAN流量分配到不同链路。例如,VLAN10流量走左链路,VLAN20流量走右链路,实现带宽利用率最大化68。
2. 多域组网
  • 在复杂网络中划分多个MST域,通过公共链路(如Eth-Trunk)连接各域,结合根保护和环路保护增强可靠性46。
3. 混合协议环境
  • 与STP/RSTP设备互通时,需确保域边缘端口正确处理BPDU报文,避免拓扑计算冲突47。

五、验证与调试

  • 查看MSTP状态

    复制代码
    display stp brief          # 端口角色与状态
    display stp region-configuration # 域配置信息
  • 抓包分析:在关键端口抓取BPDU报文,验证实例计算是否正确

相关推荐
乘云数字DATABUFF3 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--5 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森5 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
anyup5 天前
来简单聊聊鸿蒙开发,万元奖金的事~
前端·华为·harmonyos
Avan_菜菜6 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB7 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
XIAOHEZIcode8 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220709 天前
如何搭建本地yum源(上)
运维
大树8812 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠12 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql