首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

网络工程师:STP的端口状态迁移

STP选举出根桥,确定了端口角色后,生成树收敛,环路消除。

可是,STP的计算毕竟需要一个过程,需要一点时间。那么在选出根桥和确定端口角色之前,是不是还是有环路呢?

没错,在生成树收敛前,确实存在临时环路。

为了避免临时环路,STP引入了“端口状态”。

STP规定,端口在初始情况下,全部都是Blocking状态!

什么是Blocking状态?处于这种状态的端口,只会接收BPDU,除此之外啥也不干!既不会接收任何数据,更不会发送任何报文,包括BPDU。

这样一来,肯定没有环路了:谁都不发东西,哪来的环路呢。

接着,STP一声令下,所有端口的状态由Blocking变成了Listening状态。

处于Listening状态的端口,会发会收BPDU,除此之外啥也不干。

既然会发会收BPDU,那么STP就可以开始干活了:选举根桥,确定根端口、指定端口和阻塞端口。

被选为AP的阻塞端口,STP把它们的端口状态由Listening状态立即变回Blocking状态。

被选为RP和DP的端口,STP经过Forwarding Delay时间(默认15秒)后,把它们的状态由Listening状态变成Learning状态。

处于Learning状态的端口,和Listening状态一样会发会收BPDU,不会转发其他任何数据,但比Listening状态多做一件事,会学习MAC地址表,也就是会把端口收到报文中的源MAC地址写进MAC地址表中,或更新它的老化时间。

经过Forwarding Delay时间后,STP把Learning状态的端口再变成Forwarding状态。

Forwarding状态是端口的最终稳定状态。处于Forwarding状态的端口会收发任何数据,也会学习更新MAC地址表,和正常端口一样。

端口状态迁移完成后,处于Forwarding状态的端口开始正常收发数据,而Blocking状态的端口阻塞,除会接收BPDU外,不转发任何数据,环路因此消除。

我们注意到,AP端口一定是Blocking状态,而RP和DP端口一定是Forwarding状态,只是RP和DP端口要变成Forwarding状态,需要经过2倍Forwarding Delay时长,默认30秒后,才开始转发数据。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200516A052EI00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券