新华三H3CNE网络工程师认证—STP状态机与收敛过程

STP状态机就是交换机端口从"单身"到"热恋"再到"结婚"的完整心路历程,整个过程要经历5个心理阶段,防止"闪婚"导致网络环路!

随着二层网络拓扑结构的规模不断扩大,生成树协议(STP)的根桥及端口角色选举过程所耗费的时间将相应增加。此外,当网络中某台设备发生故障时,STP需要经历状态收敛的完整过程,此时数据帧的转发时机将面临不确定性。

为解决上述问题,STP在定义三种端口角色(根端口、指定端口、阻塞端口)的基础上,进一步引入了五种端口状态机制,分别为:阻塞(Blocking)、侦听(Listening)、学习(Learning)、转发(Forwarding)及禁用(Disabled)。该状态机通过严格控制端口状态的迁移顺序与时序,旨在确保网络在初始构建或拓扑变更后,能够逐步建立无环路的逻辑拓扑,并最终实现网络连通性的稳定恢复。

文章目录

一、为什么要这么麻烦?------ 防"闪婚"惨案

如果交换机端口一接通就立即转发数据:

  • 可能瞬间形成网络环路(像两个人同时表白造成误会)
  • 引发广播风暴(像谣言在朋友圈无限转发)
  • 导致MAC地址表震荡(像通讯录被频繁清空重写)

STP状态机的价值:通过5个状态的缓慢过渡,确保最终建立的是一条无环路的稳定婚姻关系!

二、STP五大心理状态------从单身到结婚

1、 禁用状态(Disabled)------ "拉黑删除"

表现:端口被管理员手动关闭(shutdown)或故障断开

心理活动:"完全不联系,就当没这个人!"

行为:不收发任何数据,不参与STP计算

2、阻塞状态(Blocking)------ "暗中观察"

表现:端口刚启动,只能接收BPDU(相亲简历),不能转发数据

心理活动:"先看看对方条件怎么样,但不急着交往"

时长:20秒(最大寿命计时器)

关键作用:防环路! 在没确定关系前绝不转发数据

3、侦听状态(Listening)------ "互相了解"

表现:端口开始发送和接收BPDU,参与选举,但仍不转发数据

心理活动:"交换个人信息,看看适不适合结婚"

时长:15秒(转发延迟计时器)

选举结果:在这个阶段确定端口最终角色(根端口/指定端口/阻塞端口)

4、学习状态(Learning)------ "试同居"

表现:开始学习MAC地址表(记录设备位置),但仍不转发数据

心理活动:"记住对方的生活习惯,为共同生活做准备"

时长:15秒(第二个转发延迟计时器)

价值:避免刚开始转发时产生大量未知单播泛洪

5、转发状态(Forwarding)------ "正式结婚"

表现:端口正常收发数据,投入正常工作

心理活动:"关系稳定了,开始过日子!"

只有两种端口能进入此状态:

  • 根端口(去往根桥的最优路径)
  • 指定端口(链路上的主导端口)
状态名称 状态描述
禁用(Disable) 该接口不能收发BPDU,也不能收发数据帧,例如接口为down
阻塞(Blocking) 该接口被STP阻塞。处于阻塞状态的接口不能发送BPDU,但是会持续侦听BPDU,而且不能收发业务数据帧,也不会进行MAC地址学习
侦听(Listening) 当接口处于该状态时,表明STP初步认定该接口为根接口或指定接口,但接口依然处于STP计算的过程中,此时接口可以收发BPDU,但是不能收发业务数据帧,也不会进行MAC地址学习
学习(Learning) 当接口处于该状态时,会侦听业务数据帧(但是不能抓发业务数据帧),并且在收到业务数据帧后进行MAC地址学习
转发(Forwarding) 处于该状态的接口可以正常地收发业务数据帧,也会进行BPDU处理。接口的角色需是根接口或指定接口才能进入转发状态

三、完整收敛时间线------相亲时间表

从端口启动到最终转发,总共需要:
阻塞(20秒) + 侦听(15秒) + 学习(15秒) = 50秒

这个30-50秒的延迟就是STP收敛时间,虽然有点慢,但是为了网络稳定值得等待!

四、状态转换触发条件------什么情况下会"感情破裂"?

1、正常推进:

阻塞 → 侦听 → 学习 → 转发(按部就班谈恋爱)

2、感情破裂重新开始:

  • 物理链路断开 → 立即退回禁用状态(像突然失联)
  • 收到劣质BPDU → 可能退回阻塞状态(像发现对方撒谎)
  • 最大寿命超时(20秒没收到BPDU)→ 认为对方变心,重新选举

拓扑变化-根桥故障

拓扑变化-直连链路故障

拓扑变化-非直连链路故障

拓扑改变导致MAC地址表错误


五、各状态行为总结表

状态 收BPDU 发BPDU 学MAC 转发数据 比喻
禁用 拉黑删除
阻塞 暗中观察
侦听 互相了解
学习 试同居
转发 正式结婚

六、现代改进版------快速STP(RSTP)

传统STP被吐槽"太磨叽",于是出现了闪婚版RSTP:

  • 端口状态简化为3种:丢弃、学习、转发
  • 收敛时间缩短到1-2秒(像速配相亲)
  • 增加端口角色:备份端口、替代端口,加快切换速度

建议:现代网络都用RSTP或MSTP,别用老古董STP!

七、STP的基础配置命令

1、配置生成树工作模式

bash 复制代码
[H3C]stp mode {stp | rstp | mstp }

交换机支持STP、RSTP和MSTP(Multiple Spanning Tree Pro)

2、(可选)配置根桥

bash 复制代码
[H3C]stp root primary

配置当前设备为根桥。缺省情况下,交换机不作为任何生成树的根桥。配置后该设备优先级数值自动为0,并且不能更改设备优先级。

3、(可选)备份根桥

bash 复制代码
[H3C]stp root secondary

配置当前交换机为备份根桥。缺省情况下,交换机不作为任何生成树的备份根桥。配置后该设备优先级数值为4096,并且不能更改设备优先级。

八、总结

1、STP状态五步走,防环稳定是高手

  • 先阻塞(20秒观察期)

  • 再侦听(15秒互了解)

  • 后学习(15秒记MAC)

  • 终转发(修成正果)

  • 禁用态(彻底分手)

2、重要理念

"宁愿慢一点,也要稳一点" ------ STP设计哲学
"现代网络要效率" ------ 升级到RSTP/MSTP

记住这个婚恋流程:

单身(禁用) → 暗恋(阻塞) → 约会(侦听) → 试婚(学习) → 结婚(转发) ------

STP用50秒的"慢热"换取网络一辈子的"稳定婚姻"!

相关推荐
Code Warrior15 小时前
【Linux】Socket 编程预备知识
linux·网络·c++
jenchoi41315 小时前
【2025-11-12】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
网络·安全·web安全·网络安全·npm
2301_8002561115 小时前
关系数据库小测练习笔记(1)
1024程序员节
摘星|15 小时前
架设一台NFS服务器,并按照以下要求配置
linux·运维·服务器
做运维的阿瑞16 小时前
Linux环境变量持久化完全指南
linux·运维·服务器
天才奇男子16 小时前
从零开始搭建Linux Web服务器
linux·服务器·前端
xxtzaaa16 小时前
游戏被IP限制多开,如何在同一网络下用不同IP多开游戏?
网络·tcp/ip·游戏
DY009J16 小时前
如何在Ubuntu虚拟机中设置Samba共享,并在Windows宿主机中挂载为网络驱动器
网络·windows·ubuntu
Wang's Blog17 小时前
MySQL: 服务器性能优化全面指南:参数配置与数据库设计的最佳实践
服务器·数据库·mysql
顾安r17 小时前
11.14 脚本网页 迷宫逃离
服务器·javascript·游戏·flask·html