快速生成树 rstp 报文分析

快速生成树 rstp 报文分析

问题提出

有的时候需要定位rstp的问题,例如,网络里组好的rstp环境发生了风暴了。一个比较好的分析方法就是在设备上适合的位置,镜像一个端口出来,将rstp的报文都抓出来,然后挨个报文进行分析,看看究竟出了什么问题了。

例如最近公司现场的设备,只要接上线就会有风暴产生,根据拓扑环境的分析,没有分析出什么结果来。只能抓报文,挨个报文来看了。

问题分析过程

网络拓扑

在这里插入图片描述
方便起见,手绘拓扑了。请读者见谅。

如下是所抓到的报文

在这里插入图片描述
从报文上可以看出报文的发送时间,rstp对报文的发出时间是有要求的,例如 hello报文,必须要以2s发送一个,如果间隔的时间太长,网络会认为失去根了,设备会从新计算,重新选择根桥的。

挨个查看报文

  • 设备集体上电,没台设备都认为自己是根,并向外发送报文,意思是说我是网络里的根桥,问问对方同意不。如果对方所持有的桥信息更优,就会返回你不是更优,还有比你更优的消息,这个时候设备收到这个告知,就不会认为自己是根了。设备会向它所有的配置了stp的端口发送该报文。
    在这里插入图片描述
    上图就是mac地址为82:06:06 设备发出的我是根的报文,并携带了proposal的标志位。proposal的标志位意味着,当前发出这个报文的指定端口是阻塞状态,询问下游:“你是否同意我由阻塞状态变为转发状态?” 下游如果回复一个和携带proposal的报文一模一样的报文,并且置了agreement标志位,就表示下游设备“同意” 你将该指定端口变为转发状态了。

  • 如果正常情况下游如果认可了该设备为根的情况,会回复一个一模一样的bpdu报文,并且携带agreement标志。
    在这里插入图片描述

  • 对于非根设备,收到了来自根的信息,第一个收到根信息的端口,会马上认为自己就是根端口,我们暂且把这个端口命名为port A。但是等到port B再收到一个根的信息的,时候这个时候两边会做比较,如果port B收到的根桥的信息更优的话,会把port B作为root port,要把port A切换为指定端口或者替换端口。如何判断是指定端口还是替换端口参考我前一篇博客的内容。

  • 开始时的hello是从所有端口一次性发出的,但是每个设备收到也是有先后顺序的。顺序的不同,可能会造成短暂的震荡,但是如果生产树功能正常最终都能恢复正常。

  • 应该还有一些内容需要写,但是时间有限,就暂先写这些内容吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值