BPDU 是什么
BPDU 是 STP 用于交换拓扑信息的控制报文,承载在二层、目的 MAC 固定为 01-80-C2-00-00-00。配置 BPDU 由根桥每 2 秒发起,沿着树结构逐跳向下传播,携带根桥 ID、根路径开销、发送桥 ID、端口 ID 与计时器等信息;当拓扑发生变化时,感知到的设备会向上游发送 TCN BPDU,逐跳通告到根桥并等待确认(TCA),最终由根桥下发拓扑变化标志促使全网刷新 MAC 表。
基本信息
| 目的 MAC | 01-80-C2-00-00-00(STP 专用组播) |
|---|---|
| 发送周期 | 配置 BPDU 每 2 秒由根桥发起 |
| 报文类型 | 配置 BPDU 与 TCN BPDU |
| 关键字段 | 根桥 ID、根路径开销、发送桥 ID、端口 ID、计时器、标志位 |
| TC 标志位 | 置位表示拓扑变化,触发 MAC 表加速老化 |
| 方向 | 配置 BPDU 从根桥向下传,TCN 向上传到根桥 |
关键字段
关键字段
根桥 ID / 根路径开销 / 发送桥 ID / 端口 ID / 计时器 / 标志位(含 TC 位)
计时器:Hello Time 2s、Max Age 20s、Forward Delay 15s(缺省值)BPDU 字段读法
| 字段 | 含义 | 异常表现 |
|---|---|---|
| 根桥 ID | 当前公认的根桥 | 与规划不符说明根桥选举出现偏差 |
| 根路径开销 | 到根桥的累计开销 | 数值突增说明路径发生了变化 |
| 发送桥 ID | 发出该报文的设备 | 用于定位是谁在影响拓扑 |
| 端口 ID | 发送端口编号与优先级 | 用于确定指定端口归属 |
| 计时器 | Hello、Max Age、Forward Delay | 全网不一致会造成收敛异常 |
| TC 标志 | 是否通告拓扑变化 | 频繁置位说明拓扑持续抖动 |
典型使用场景
- 镜像口抓包验证周期:确认根桥是否每 2 秒稳定发送配置 BPDU
- 定位根桥异常:查看 BPDU 中的根桥 ID 是否与规划一致
- 确认环路保护动作:接入侧收到 BPDU 说明有交换机误接入
- 分析拓扑抖动:TCN 报文频率过高时说明链路状态频繁变化
- 核对计时器一致性:跨厂商组网时全网计时器应保持一致
BPDU 是上送 CPU 处理的协议报文:网络中 BPDU 数量异常或存在环路时会产生 BPDU 风暴,直接拉高设备 CPU。发现 CPU 占用高且伴随大量 BPDU 上送时应优先排查环路与误接入设备。