BPDU报文(RSTP)
与STP 的BPDU报文格式相同,就是在flags字段报文中间几位得到应用
主要原理:利用flages位中的Proposal与Agreement来进行协商,从而快速从 discarding 转成 forwarding而不用等待30秒超时。
RSTP端口状态:
discarding
listening
learning
P/A协商:
交换机在启动后端口会都是转发端口,状态都是discarding,然后相互发送带porposal位的请求给对方
交换机再通过比较接收的BPDU判断选举根桥,其他交换机为防止临时环路,端口状态都是discading
根桥会发送porposal的协商请求,非根桥收到后会将端口状态变为forwarding然后回复agreement BPDU
维持树:
stp 中由根桥以hello time间隔时间发送 配置BPDU给其他非根桥,如果其他交换机超过 Max Age时间就会认为根桥down掉了
然后非根桥之间再重新选举出新的根桥来。
rstp 中每台非根桥都会以自己的hello time时间间隔向其他非根桥发送 BPDU,以确认树的存在
如果突然某个拓扑结构发生了改变,如一个端口down掉了,那么该交换机会向其他交换机发送
TC BPDU来清空各个交换机的MAC地址表
STP兼容
如果某个树结构中,两台交换机用RSTP协议,第三台使用STP协议,那么两台交换机与第三台连接的端口会向下兼容使用STP工作模式
但是两台交换机之间仍然采用RSTP协议进行通信。
RSTP对STP保证机制
1.根端口保护:如果黑客用一台优先级比较高的交换机连接到树里,那么会导致整个网络的流量都被黑客
所控制,为了防止交换机的端口角色发生改变,可以在交换机里配置根保护,配置了根保护的交换机
的某个端口如果收到比现有根桥更忧的BPDU会主动把端口状态置为 discading 直到黑客的交换机撤离
2.边缘端口保护:如果对交换机的某个端口设置了边缘端口,而这个边缘端口却收到了BPDU会导致
边缘端口的功能失效,甚至从边缘端口发来一些TC报文来刷新网络交换机的MAC地址攻击网络,
为了防止这一情况,可以对边缘端口做保护配置,相当于绑定边缘端口。保护后收到BPDU的边缘端口就
会直接置为 err-down (直接关闭,需要管路员手动恢复) 。因此不能再非边缘端口配置此保护
3.环路保护:如果阻塞端口可以发BPDU 却一直收不到别人的BPDU,这样会导致BPDU超时,从而使得
阻塞状态转变成转发状态,从而造成树结构有转变成环形结构。因此可以在AP端口配置环路保护,配置环路
保护后AP端口如果持续收不到 BPDU 就会认为链路故障单方向故障,从而使端口状态保持 discarding
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端