STP-生成树
一、STP 核心作用与背景
1. 解决的问题:二层环路
- 广播风暴:环路中广播帧无限循环,耗尽网络资源。
- MAC 地址表漂移:交换机因环路反复刷新 MAC 地址表记录,导致通信异常。
- 多帧复制:同一数据帧在环路中多次转发,引发重复流量。
2. 工作原理
- 通过逻辑阻塞冗余接口,将环形拓扑转换为无环的最短路径树。
- 实时监听拓扑变化,自动激活阻塞接口以恢复网络连通性
二、STP 协议体系与报文类型
1. 协议类型
2. BPDU 报文类型
- 配置 BPDU:用于协商生成树参数(如根桥选举、端口角色),由根桥主动发送。
- TCN BPDU:拓扑变更时发送,逐级上报至根桥,触发全网 MAC 地址表刷新。
3. BPDU 字段解析
三、生成树角色选举(重点)
1. 根网桥(Root Bridge)
- 选举规则:比较所有交换机的 Bridge ID(优先级 + MAC 地址),值越小越优先。
- 优先级范围:0-61440(步长 4096,默认 32768)。
- 配置命令:
[Huawei] stp priority <0-61440>
。
2. 根端口(Root Port, RP)
- 每个非根交换机选一个,用于接收根桥 BPDU。
- 选举规则(按顺序比较):
- 入向 RPC(根路径开销)最小:累加从该端口到根桥的所有入接口开销。
- 对端 Bridge ID 最小:若 RPC 相同,比较发送方桥 ID。
- 对端 Port ID 最小:若桥 ID 相同,比较发送端口 ID。
- 本端 Port ID 最小:若以上均相同,比较本端端口 ID。
3. 指定端口(Designated Port, DP)
- 每段链路选一个,用于转发根桥 BPDU。
- 选举规则(按顺序比较):
- 出向 RPC 最小:从该端口发出的 BPDU 携带的 RPC 值。
- 本端 Bridge ID 最小:若 RPC 相同,比较本端桥 ID。
- 本端 Port ID 最小:若桥 ID 相同,比较本端端口 ID。
4. 非指定端口(Non-Designated Port, NDP)
- 未被选举为 RP 或 DP 的端口,最终进入阻塞状态,逻辑隔离环路。
(个人总结)按序号顺序:
根端口选举:1.到根交换机的开销最小
2.对端BID(网桥设备序号)最小
3.对端PID(端口号)最小
指定端口选举:
1.根交换机的所有出端都是指定端口
2.根端口对端都是指定端口
3.BPDU转发端口到根交换机的路径成本最小
4.本地BID(网桥ID)最小
5.本地PID最小(端口ID)
四、端口状态与收敛过程
1. 端口状态
2. 收敛过程
- 初始状态:所有端口进入 Blocking 状态,避免环路。
- 侦听阶段(Listening):持续 15 秒,选举根桥、根端口、指定端口。
- 学习阶段(Learning):持续 15 秒,学习 MAC 地址但不转发数据。
- 转发阶段(Forwarding):根端口和指定端口进入转发状态,非指定端口保持阻塞。
- 收敛时间:首次收敛至少需 50 秒(20 秒 Max Age + 15 秒 Listening + 15 秒 Learning)
五、拓扑变更与 MAC 表刷新
1. 拓扑变更检测
- 设备检测到链路故障或端口状态变化时,发送 TCN BPDU 至根桥(逐级上报)。
2. 根桥响应
- 根桥收到 TCN BPDU 后,回复 TCA(拓扑变更确认),并发送 TC(拓扑变更)标志位为 1 的配置 BPDU。
- 全网设备接收到 TC BPDU 后,将 MAC 地址表老化时间缩短为 15 秒(默认 300 秒),加速刷新错误记录。
六、配置命令与验证
- 启用 STP:
[Huawei] stp enable
(全局模式)。 - 禁用 STP(接口级):
[Huawei-GigabitEthernet0/0/1] undo stp enable
。 - 设置桥优先级:
[Huawei] stp priority 4096
(数值越小越优先)。
状态查看
- 查看全局 STP 信息:
display stp
。 - 查看接口 STP 状态:
display stp interface GigabitEthernet0/0/1
。
七、关键对比与总结
核心思想:STP 通过逻辑阻塞冗余链路消除环路,利用 BPDU 动态维护无环拓扑,适用于二层网络防环场景,但收敛速度较慢,需结合 RSTP/MSTP 优化。