STP/RSTP 生成树协议原理与配置

Administrator
Administrator
发布于 2026-03-05 / 0 阅读
0
0

STP/RSTP 生成树协议原理与配置

在以太网交换网络中,为提高可靠性常采用冗余链路。但冗余拓扑会导致 广播风暴、MAC 地址表震荡、重复帧 等问题。生成树协议(Spanning Tree Protocol, STP) 及其快速版本 RSTP(Rapid Spanning Tree Protocol) 用于逻辑上阻塞部分冗余路径,构建无环的树形拓扑,同时保留链路冗余能力。

华为 VRP5 平台默认启用 MSTP(Multiple Spanning Tree Protocol),但兼容 STP 和 RSTP 模式。

1. 协议版本对比

协议

标准

收敛时间

端口角色

端口状态

适用场景

STP

IEEE 802.1D

30~50 秒

Root Port, Designated Port, Alternate Port

Disabled / Blocking / Listening / Learning / Forwarding

老旧设备兼容

RSTP

IEEE 802.1w

<1 秒(通常 200ms~1s)

Root / Designated / Alternate / Backup

Discarding / Learning / Forwarding

现代网络推荐

MSTP

IEEE 802.1s

同 RSTP

同 RSTP + 基于实例

同 RSTP

多 VLAN 环境

说明:VRP5 中可通过 stp mode 命令切换协议模式。

2. 关键概念

2.1 根桥(Root Bridge)

  • 全网唯一,由 桥 ID(Bridge ID = 优先级 + MAC 地址) 最小者当选。

  • 默认优先级为 32768,可手动调整(步长 4096)。

2.2 端口角色

角色

描述

Root Port(根端口)

非根桥上到根桥路径开销最小的端口

Designated Port(指定端口)

每个网段上负责转发流量的端口(通常连接下游设备)

Alternate Port(替代端口)

到根桥的备份路径(RSTP 新增)

Backup Port(备份端口)

本设备上的冗余端口(同一设备多端口连同一网段,RSTP 新增)

2.3 端口状态(RSTP)

状态

功能

Discarding

不转发用户数据,不学习 MAC(替代 STP 的 Blocking/Listening)

Learning

学习 MAC 地址,不转发数据

Forwarding

正常转发数据和学习 MAC

3. VRP5 配置命令速查表

配置目标

命令示例

说明

启用 STP

[Switch] stp enable

全局开启(默认已开启)

设置 STP 模式

[Switch] stp mode rstp

可选 stprstpmstp

设置桥优先级

[Switch] stp priority 4096

必须是 4096 的倍数

查看 STP 状态

[Switch] display stp brief

显示端口角色与状态

查看详细信息

[Switch] display stp

显示根桥、本机 BID、端口开销等

设置端口开销

[Switch-GigabitEthernet0/0/1] stp cost 2000

影响路径选择

设置端口优先级

[Switch-GigabitEthernet0/0/1] stp port priority 16

用于指定端口选举(步长 16)

边缘端口(接入终端)

[Switch-GigabitEthernet0/0/1] stp edged-port enable

直接进入 Forwarding,避免监听延迟

4. 典型配置示例

4.1 拓扑说明

  • 三台交换机:SW1(核心)、SW2、SW3(接入)

  • SW1 作为根桥

  • 所有互联链路为 GE(默认开销 20000)

4.2 SW1(根桥)配置

[SW1] stp mode rstp
[SW1] stp priority 4096          # 设置高优先级成为根桥
[SW1] stp enable

4.3 SW2 配置

[SW2] stp mode rstp
[SW2] stp enable
​
# 连接 PC 的端口设为边缘端口
[SW2] interface GigabitEthernet 0/0/10
[SW2-GigabitEthernet0/0/10] stp edged-port enable
[SW2-GigabitEthernet0/0/10] quit

4.4 SW3 配置(类似 SW2)

[SW3] stp mode rstp
[SW3] stp enable
​
[SW3] interface GigabitEthernet 0/0/10
[SW3-GigabitEthernet0/0/10] stp edged-port enable
[SW3-GigabitEthernet0/0/10] quit

4.5 验证命令

[SW2] display stp brief

预期输出(简化):

MSTID  Port                        Role  STP State     Protection
0      GigabitEthernet0/0/1        ROOT  FORWARDING    NONE
0      GigabitEthernet0/0/2        ALTE  DISCARDING    NONE
0      GigabitEthernet0/0/10       DESI  FORWARDING    NONE

解释

  • GE0/0/1 是根端口(ROOT),处于转发状态

  • GE0/0/2 是替代端口(ALTE),被阻塞(DISCARDING)

  • GE0/0/10 是指定端口(DESI),因是边缘端口直接转发

5. 注意事项

  1. 边缘端口必须谨慎使用

    • 仅用于连接终端(PC、服务器、IP 电话等)

    • 若误接交换机,可能引发临时环路

  2. RSTP 向下兼容 STP

    • 当 RSTP 设备检测到 STP BPDU 时,该端口自动降级为 STP 模式

    • 收敛速度退化为 STP 水平

  3. BPDU 保护(推荐启用)

    [Switch] stp bpdu-protection
    • 若边缘端口收到 BPDU,立即关闭该端口(需手动恢复或配置自动恢复)

  4. 根保护(Root Guard)

    [Switch-GigabitEthernet0/0/1] stp root-protection
    • 防止非法设备抢占根桥(指定端口收到更优 BPDU 时进入 Discarding)

  5. TC(Topology Change)保护

    • 频繁拓扑变更可能导致 MAC 表频繁刷新

    • 可通过 stp tc-protection 限制单位时间内处理 TC 报文次数

6. 故障排查要点

现象

可能原因

检查命令

网络中断且无收敛

STP 未启用或模式不一致

display stpdisplay stp brief

端口长期处于 Discarding

路径非最优或存在环路

display stp interface GigabitEthernet X/X/X

边缘端口未快速转发

未启用 edged-port

display stp brief 查看端口是否标记为 EDGE

根桥频繁切换

优先级未固定或存在恶意设备

display stp root 对比各设备 BID

收敛缓慢

混合 STP/RSTP 环境

检查所有设备是否统一为 RSTP 模式

建议:在生产网络中,应明确指定根桥与备份根桥,并统一全网 STP 模式为 RSTP 或 MSTP,避免兼容性导致性能下降。


评论