生成树协议 STP / RSTP / MSTP

举报
知孤云出岫 发表于 2025/08/20 14:02:46 2025/08/20
【摘要】 📘 生成树协议 STP / RSTP / MSTP ✅ 一、引言与背景 🎯 环路的危害:冗余链路提升可靠性,但易造成二层环路。引发问题包括:广播风暴(Broadcast Storm)MAC地址漂移网络收敛失败与设备宕机 🛠 解决方案:生成树协议(STP)自动识别拓扑中的环路并阻塞冗余端口 → 构建树型无环结构;RSTP:快速收敛版本;MSTP/VBST:解决VLAN负载均衡问题。 ✅...

📘 生成树协议 STP / RSTP / MSTP


✅ 一、引言与背景

🎯 环路的危害:

  • 冗余链路提升可靠性,但易造成二层环路

  • 引发问题包括:

    • 广播风暴(Broadcast Storm)
    • MAC地址漂移
    • 网络收敛失败与设备宕机

🛠 解决方案:生成树协议(STP)

  • 自动识别拓扑中的环路并阻塞冗余端口 → 构建树型无环结构
  • RSTP:快速收敛版本;
  • MSTP/VBST:解决VLAN负载均衡问题。

✅ 二、STP 基本概念与核心机制

概念 含义
BID Bridge ID:桥优先级 + MAC,共64位,唯一识别交换机
根桥 BID最小者成为“树根”,所有设备计算到其路径
Cost 到达根桥的链路开销,带宽越高 Cost 越小
RPC Root Path Cost,累积路径开销
Port ID 4位优先级 + 12位端口号
BPDU 生成树报文,用于交换拓扑信息,有 Configuration BPDU 和 TCN BPDU 两种

📐 BPDU 比较优先级:

  1. 根桥 ID 最小
  2. RPC 最小
  3. 网桥 ID 最小
  4. 端口 ID 最小

✅ 三、STP 拓扑计算流程(四步)

步骤 内容说明
① 选举根桥 所有设备广播自己的BID,选出最小者
② 选根接口 非根桥选择路径最优的接口作为朝向根桥的端口(RP)
③ 选指定接口 每段链路选出唯一负责转发的指定端口(DP)
④ 阻塞其他接口 非RP、非DP端口进入阻塞状态,打破环路

✅ 四、STP 接口状态五种(+ 迁移流程)

状态 说明
Disabled 接口Down,未参与STP
Blocking 不转发、不学习,仅侦听BPDU
Listening 接收BPDU,不转发、不学习MAC
Learning 学习MAC地址,不转发流量
Forwarding 正常转发业务流量

📶 典型收敛延迟:Listening(15s)+ Learning(15s)= 30s


✅ 五、RSTP 改进点(IEEE 802.1w)

改进点 描述
快速收敛 移除被动计时器机制,链路故障可毫秒级切换
新增端口角色 Alternate、Backup,用于快速切换
状态简化 只保留 Discarding / Learning / Forwarding 三种
边缘端口支持 直接进入 Forwarding 状态,无需等待
BPDU机制优化 配置BPDU双向确认,可加快拓扑变化响应

✅ 六、MSTP 与 VBST 多生成树机制

协议 特点
VBST 华为私有协议,每个VLAN单独生成树
MSTP 多个VLAN可映射到同一个 MST 实例,实现负载均衡与收敛加快

✅ MSTP术语:

  • MSTI(MST实例):多个 VLAN 的集合
  • CIST:兼容其他 STP 协议的统一树
  • 优点:节省资源 / 支持分担链路负载 / 提高效率

✅ 七、STP 配置命令(华为)

# 启用 STP
[Huawei] stp enable

# 设置工作模式:stp / rstp / mstp
[Huawei] stp mode rstp

# 设置为根桥 / 备份根桥
[Huawei] stp root primary
[Huawei] stp root secondary

# 自定义桥优先级(数值越小越优先)
[Huawei] stp priority 0

# 修改接口cost与port优先级
[Huawei-GE0/0/1] stp cost 20
[Huawei-GE0/0/1] stp priority 128

✅ 八、典型案例分析

案例:三交换机组网 STP消除环路

# SW1:设为根桥
[SW1] stp enable
[SW1] stp priority 0

# SW2:正常启用
[SW2] stp enable

# SW3:查看状态
<SW3> display stp brief

结果:SW3 的 GE0/0/22 显示为 ALTE DISCARDING,即阻塞状态。


✅ 九、拓扑变化响应机制

故障类型 恢复机制说明
根桥故障 触发重新选举,50s 内恢复(STP)
直连链路故障 替代端口替换RP,约30s恢复
非直连链路故障 需重新学习路径,最长约50s
MAC表漂移问题 触发TCN BPDU,更新MAC表

✅ 十、本章总结要点

模块 要点精华
STP核心角色 根桥、根接口、指定接口、非指定接口
接口状态迁移 由阻塞 → 侦听 → 学习 → 转发
收敛慢的问题 RSTP可改进、MSTP/VBST支持负载均衡
配置建议 主干链路设置Trunk,适当提升优先级
协议选择 小网可用STP,中大网建议用RSTP/MSTP

🧪 生成树协议(STP/RSTP/MSTP)


✅ 一、选择题(每题2分)

1. 以下哪个不是生成树协议的主要目的?
   A. 防止二层环路
   B. 实现VLAN间通信
   C. 减少广播风暴
   D. 维护无环拓扑结构
   ✅ **答案:B**

2.STP中,用于选举根桥的字段是:
   A. MAC地址
   B. 路由ID
   C. Bridge IDBIDD. 优先级值
   ✅ **答案:C**

3. STP中阻止环路的具体机制是:
   A. IP黑名单过滤
   B. 封堵广播帧
   C. 阻塞部分交换端口
   D. 阻止ARP请求
   ✅ **答案:C**

4. RSTP协议相较STP最大的优势是:
   A. 使用静态路径
   B. 更低的成本值
   C. 支持链路聚合
   D. 更快的收敛速度
   ✅ **答案:D**

5.MSTP中,不同VLAN之间的流量是如何控制的?
   A. 全部映射到默认VLAN
   B. 通过三层设备转发
   C. 被映射到多个实例实现负载均衡
   D. 阻止不同实例间通信
   ✅ **答案:C**

✅ 二、判断题(每题1分)

1.(✔)BPDU是交换机用于生成树信息交换的协议数据单元。
2.(✘)STP中所有端口最终都会进入转发状态。
3.(✔)RSTP将端口状态简化为三种。
4.(✔)MSTP可以将多个VLAN映射到同一个生成树实例。
5.(✘)RSTP无法与传统STP设备兼容。


✅ 三、简答题(每题5分)

  1. 简述STP协议的基本工作流程。
    参考答案:

    • 各交换机发送BPDU广播自己的BID;
    • 选出根桥后,其它交换机计算到根桥的最短路径;
    • 每个非根桥选一个根端口(Root Port);
    • 每段链路选出指定端口(Designated Port);
    • 其余端口阻塞,形成无环拓扑。
  2. RSTP相较STP的主要改进有哪些?
    参考答案:

    • 快速收敛(可秒级切换);
    • 增加Alternate/Backup端口角色;
    • 状态简化为三种:Discarding、Learning、Forwarding;
    • 支持边缘端口直接进入转发状态;
    • 配置BPDU为点对点双向握手,提高响应效率。
  3. 什么是MSTP?它如何解决VLAN负载均衡问题?
    参考答案:

    • MSTP为IEEE 802.1s标准,可将多个VLAN映射到一个生成树实例;
    • 每个实例独立计算生成树拓扑;
    • 不同实例可以使用不同链路进行转发,实现链路负载分担;
    • 避免传统STP所有VLAN共用一棵树带来的单点瓶颈问题。

✅ 四、图解题(每题10分)

题目:

> 网络拓扑如图:三台交换机 SW1SW2SW3 形成一个环,连接如下:
>
> * SW1SW2连接 GE0/0/1
> * SW2SW3连接 GE0/0/2
> * SW3SW1连接 GE0/0/3
> * SW1设为根桥
>   请标注各个端口角色,并指出哪条链路会被阻塞。

参考答案:

  • SW1:

    • 所有端口为 Designated Port(DP)
  • SW2:

    • 到SW1最近端口为 Root Port(RP)
    • 向SW3方向端口为 Designated Port
  • SW3:

    • 向SW1方向端口为 Root Port
    • 向SW2方向端口为 Alternate → 阻塞端口

阻塞端口为SW3 → SW2方向的接口,用于打破环路。


✅ 五、思考题解析

为什么生成树协议会造成收敛慢?RSTP如何解决?

解答:

  • 原因:

    • STP中端口需要经过 Listening(15s)→ Learning(15s)才能进入 Forwarding 状态;
    • 遇到链路故障时需等待超时才能重新收敛。
  • RSTP解决方法:

    • 使用点对点握手机制加快端口状态转换;
    • 新增Alternate、Backup端口,在主链路断开时快速切换;
    • 边缘端口可立即进入转发状态,无需等待。

如何在企业网络中实现VLAN与生成树之间的负载均衡?

解答:

  • 通过 MSTP 协议:

    • 将不同的 VLAN 映射到不同的 MST 实例;
    • 每个实例独立形成一棵生成树;
    • 配置每棵树的根桥不同,形成主干链路分担;
    • 达到 VLAN 流量在不同链路上进行转发的目的。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。