当前位置: 首页 > ops >正文

MSTP技术

一、STP/RSTP 的局限性

STP(生成树协议)和 RSTP(快速生成树协议)存在一些明显的局限,主要包括:

  • 所有 VLAN 共享一颗生成树,这导致无法实现不同 VLAN 在多条 Trunk 链路上的负载分担。例如,当网络中有 VLAN1~VLAN100 时,若某条链路被阻塞,可能导致 VLAN1~VLAN50 或 VLAN51~VLAN100 的通信中断。
  • 可能出现次优二层路径,比如在 VLAN3 的通信中,数据传输路径可能不是最优的,影响网络效率。

二、MSTP 的基本概念及优势

1. MSTP 的定义

MSTP(多生成树协议)是基于实例计算多颗生成树的协议,实例间可实现负载分担,其标准协议为 IEEE802.1s。简单来说,就是可以为不同的 VLAN 组(实例)创建不同的生成树,让不同 VLAN 的流量走不同路径,提高链路利用率。

2. MST 域

MST 域是拥有相同 MST 配置标识的网桥构成的集合,配置标识包括三个部分:

  • 域名;
  • 配置修订号;
  • VLAN 与实例映射关系。

例如,Region1 可能将 VLAN2 映射到 Instance2,VLAN4 映射到 Instance4;Region2 可能将 VLAN4 映射到 Instance4,VLAN5 映射到 Instance5,不同域的映射关系可不同。

3. 关键概念

  • MSTI(多生成树实例):每个实例对应特定的 VLAN,可独立计算生成树拓扑。比如 VLAN3 可映射到 Instance3,VLAN5 可映射到 Instance5,其他 VLAN 映射到 IST(内部生成树)。
  • 端口角色:包括 Master 端口等,其他端口角色定义和 RSTP 相同。Master 端口是 IST 根桥在 CIST(公共内部生成树)上的根端口。

三、MSTP 工作原理

1. BPDU 格式

MSTP 的 BPDU 包含两部分:

  • RST BPDU 字段:包括 Protocol ID、CIST Root ID 等参数;
  • MST 专有字段:包括 Version3 Length、MST Configuration ID 等。

2. 优先级向量

  • CIST 优先级向量:格式为 {RootID: ERPC: RRootID: IRPC: DesignateBridgeID: DesignatePortID: RcvPortID},比较原则是 “最小最优”,按顺序比较各参数。比如先比总根 ID,总根 ID 小的更优;若相同,再比外部路径开销,以此类推。
  • MSTI 优先级向量:格式为 {RRootID: IRPC: DesignateBridgeID: DesignatePortID: RcvPortID},同样按 “最小最优” 比较,先比 MSTI 域根 ID。

3. 计算方法

MSTP的计算是打包在一起同步计算的,在报文中包含多个信息,先查CIST配置信息,如果域配置相同,则需要计算IST(MSTI的计算参数是包含在IST BPDU中一起计算的,也就是每个实例的线路)和CST,如果域配置不同,则只计算CST

举例:当 SWA 向 SWB 发送 BPDU 时,SWB 会先检查专有字段中的 “域名” 和 “VLAN 映射”:如果和自己的配置一致,就认为是同一域,可协同计算 MSTI;如果不一致,则视为不同域,仅通过 CST 通信。

  • CST(公共生成树)/IST 的计算和 RSTP 类似;
  • MSTI 的计算仅限于区域内,且其计算参数包含在 IST BPDU 中,与 IST 计算同步完成。

四、MSTP 兼容性

  • MSTP 与 RSTP 互操作时,RSTP 桥会将 MSTP 域看作一个桥 ID 为域根 ID 的 RSTP 桥,实例 0 用于与 STP/RSTP 对接。
  • MSTP 的工作模式有三种,具体如下:
    • STP 模式:只能和 STP 交换机交互,仅收发配置 BPDU;
    • RSTP 模式:运行 RSTP,若检测到相邻交换机为 STP 模式,则切换为 STP;
    • MSTP 模式:运行 MSTP,可兼容 RSTP 和 STP 模式。

五、典型配置案例

以单域多实例组网为例,配置步骤如下:

  1. 配置 MST 域参数:如 SWA 的配置,包括启用 MSTP、设置域名为 RegionA、修订号为 1,将 VLAN2-10 映射到 Instance1,VLAN11-20 映射到 Instance2,并设置实例优先级。
  2. 设置端口:配置点到点链路和边缘端口,例如 SWC 的 E1/0/2 和 E1/0/3 设为边缘端口。
  3. 验证配置:通过display stp brief命令查看端口状态,如 SWA 的 Instance1 中 E1/0/12 和 E1/0/15 为转发状态,SWC 的 Instance1 中 E1/0/12 为根端口(转发状态)。

六、保护机制

1. BPDU 保护

启用后,若边缘端口收到配置消息,MSTP 会将这些端口关闭,防止边缘端口受攻击导致拓扑变动。配置命令为[H3C] stp bpdu-protection在MSTP中,边缘端口意外接入一个交换机时,会触发边缘端口保护机制,端口会被关闭,只能由管理员来开启

2. 根桥保护

对于设置了根保护的端口,若收到某实例优先级更高的配置消息,该端口会变为指定端口并进入侦听状态,不再转发报文。配置命令为[H3C-Ethernet1/0/1] stp root-protection

3. 环路保护

配置后,若端口收不到上游设备的 BPDU 报文,该端口在所有实例中均处于 Discarding 状态,防止环路产生。配置命令为[H3C-Ethernet1/0/1] stp loop-protection

4. TC 保护

设置设备在 10 秒内收到 TC-BPDU 后,地址表项删除操作的最多次数,避免频繁删除给设备带来负担。

http://www.xdnf.cn/news/15967.html

相关文章:

  • 4.组合式API知识点(2)
  • 微算法科技(NASDAQ: MLGO)探索优化量子纠错算法,提升量子算法准确性
  • Unity之C# 脚本与Unity Visual Scripting 交互
  • linux初识网络及UDP简单程序
  • 如何给手机充电才不伤电池?
  • css3地球转动模型(动态数据)
  • 快手视觉算法面试30问全景精解
  • spring事务?
  • uniapp 报错 Not found ... at view.umd.min.js:1的问题
  • Vue3 学习教程,从入门到精通,Vue3 循环语句(`v-for`)语法知识点与案例详解(13)
  • 渗透第2次作业
  • 学习游戏制作记录(战斗系统简述以及击中效果)7.22
  • Mixed Content错误:“mixed block“ 问题
  • Kotlin 中的单例模式(Singleton)与对象声明
  • SpringBoot+Mybatis+MySQL+Vue+ElementUI前后端分离版:权限管理(三)
  • Android开发:Java与Kotlin深度对比
  • 用ffmpeg 进行视频的拼接
  • ni-app 对鸿蒙的支持现状
  • Redis的五大基本数据类型
  • 有关Spring的总结
  • 【每日算法】专题十七_多源 BFS
  • React基础(1)
  • 【HarmonyOS】ArkUI - 声明式开发范式
  • 空间曲线正交投影及其距离计算的理论与实践
  • Anaconda 路径精简后暴露 python 及工具到环境变量的配置记录 [二]
  • 苍穹外卖Day5
  • JAVA+AI教程-第三天
  • 使用Python绘制专业柱状图:Matplotlib完全指南
  • 原型与原型链
  • 三大工厂设计模式