端口状态(Port Role)
| STP端口状态 | R/MSTP端口状态 | 端口状态对应的行为 |
| DIsabled | Discarding | 不转发用户流量 不学习MAC地址 |
| Blocking | ||
| Listening | ||
| Learning | Learning | 不转发用户流量 学习MAC地址 |
| Forwarding | Forwarding | 转发用户流量 学习MAC地址 |
Disabled(端口禁用或链路失效)
STP计时器
| 计时器 | 备注 |
| Hello | 2s,根桥发送BPDU的间隔 |
| Forward Delay | 15s,监听和学习的持续时间 |
| Max Age | 20s,保持阻塞的最大时间 (未收到BPDU的时间) |
Listen到Learning15s;Learning到Forwarding15s(15s即Forward Delay)
阻塞端口20s内没有收到比自己更优的BPDU(因为自身BPDU次优所以阻塞),则进入Listening(或Discarding,依STP模式决定)状态


当一台有预备端口的交换机检测到直连链路物理故障后,预备端口会转换为根端口(30s变成转发状态)

在SWB失去与SWA的直连后,认为自己成为根桥,并向SWC发送BPDU(这个BPDU是次优的), 但A处保留了之前SWA→SWB→端口A的最优BPDU,在Max Ages(20s)后该BPDU失效,这时,SWC将从根桥收到的BPDU传递给SWB,SWB比较之后发现自己竞争失败,于是该链路上的端口角色开始变化,A进入Learning再进入Forwarding状态,整个过程为50s

清空主机A的ARP表,重新发送ARP,SWB则会立即更新地址表

TCN没有参数,单纯代表拓扑变化
TCA处于Configure BPDU中
SWB再向上发TCN

| 命令 | 备注 |
| stp mode {mstp | stp | rstp} | 配置STP模式,默认MSTP |
| stp priority 4096 | 配置BID优先级,0-61440 步长为4096 |
| stp root primary/secondary | 自动修改优先级,指定主/备根桥 |
| 开销(Cost)标准: | legacy(华为私有):1-200000 802.1d:1-65535 802.1t:1-200000000,默认 |
| stp cost 10 | 修改STP开销 |
| stp pathcost-standard {dot1d-1998 | dot1t | legacy} | 配置路径开销值的标准 |
| stp port priority 144 | 修改PID优先级,步长为16 |
| display stp [brief] | 显示STP配置信息和参数 |