告警信息
%Sep 3 18:44:39:580 2026 SW_N1-F5-A-N_11.185 STP/4/STP_DISPUTE: VLAN 2028's port Bridge-Aggregation10 received an inferior BPDU from a designated port which is in forwarding or learning state.
问题描述
在本次 STP Dispute 故障中,涉及两台关键设备:
- SW1(故障感知节点):该设备因收到低优先级 BPDU 触发了 STP Dispute 保护机制,导致上联口被阻塞。但由于设备版本或日志配置原因,未记录触发 Dispute 的 BPDU 具体来源(如发送端的 Bridge ID),导致故障定位初期缺乏直接的报文溯源信息,增加了排查难度。

- SW2(故障源头节点):该设备因 PVST 协议报文上送 CPU 的速率超过了 Softcar 限速阈值(200pps),导致关键的根桥 BPDU 被丢弃。控制面报文的缺失引发 STP 协议状态机异常,导致根端口角色频繁震荡,并误将自己选举为根桥向外发送劣质 BPDU。
故障现象及影响:
网络中出现 STP 拓扑震荡,部分端口状态在 Forwarding 和 Discarding 之间频繁切换。由于 Dispute 机制的存在,相关端口无法正常进入转发状态,形成持续性的拓扑不稳定,最终导致下挂终端业务中断。
过程分析
-
1、STP Dispute 触发机制分析
STP Dispute 保护机制的核心原理是:当端口收到来自指定端口(处于 Forwarding 或 Learning 状态)发出的低优先级(Inferior)BPDU 时,为防止潜在的二层环路,本端端口会触发 Dispute 保护并进入阻塞状态。SW1 正常的根桥应为核心交换机,但故障期间收到了 SW2 发出的低优先级 BPDU,从而触发了该保护机制。
-
2、异常 BPDU 源头定位
通过排查同二层网络的其他设备,定位到产生该异常 BPDU 的设备为 SW2。该设备的根端口在故障期间多次发生角色切换,从根端口(ROOT)变为指定端口(DESI),导致设备误认为自己是根桥,并开始向外发送以自己为根桥的 BPDU。
-
3、根端口震荡根因剖析
SW2 配置了 PVST 模式,且启用了大量的 VLAN。由于该型号交换机的 PVST 规格限制为支持 126 个实例,对于超出规格的 VLAN,收到的 PVST 报文会进行 VLAN 内广播处理。
同时,设备上送 CPU 的 PVST 报文触发了 Softcar 限速。在故障发生前,PVST 报文的上送速率已非常接近限速阈值。当网络中其他设备发生拓扑变化(TC)时,STP BPDU 报文数量激增,导致 SW2 收到的 PVST 报文超过 Softcar 限速,部分关键的根桥 BPDU 被丢弃。由于收不到根桥的 BPDU,设备发生 STP 震荡,误将自己选为根桥。
-
4、故障扩散路径
汇聚交换机在部分 VLAN 范围内关闭了 STP。这导致 SW2 发出的异常 BPDU 没有被汇聚层拦截,而是被当作普通数据报文透传到了其他接入交换机,最终导致整网多台接入交换机触发 STP Dispute,上联口被阻塞,业务中断。
解决方法
-
1、优化 STP 运行模式(推荐)
前期网络中可能存在与其他厂商设备对接的需求,因此配置了 PVST 模式。目前现网已无友商设备,建议将全网 STP 模式统一更改为 MSTP 模式。MSTP 能够有效减少 BPDU 报文数量,降低设备 CPU 处理压力,同时提升网络收敛速度和稳定性。
-
2、优化接入层 STP 配置
若接入交换机上联链路不存在跨交换机的二层环路风险,建议在接入交换机的上联端口直接关闭 STP 功能。此举可以有效防止个别接入交换机的 STP 异常状态影响整网拓扑。
-
3、部署边缘端口与 BPDU 保护
在接入交换机连接终端的端口上配置边缘端口(Edge Port)并开启 BPDU 保护功能(BPDU Protection)。这样可以减少不必要的 STP 拓扑变化(TC)报文产生,同时防止终端侧私接交换机发送伪造 BPDU 干扰网络拓扑。