网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

生成树协议中的拓扑结构变化

更新时间:2026年03月27日   作者:spoto   标签(Tag):

生成树协议(Spanning Tree Protocol,STP)用于防止网络中由于交换机之间存在冗余连接而导致的环路现象。它通过桥接协议数据单元(BPDU)来确定从非根交换机到根交换机之间的有效路径。BPDU携带了关于网络内拓扑结构变化的信息,从而向所有交换机通报这一变化。

BPDU

在STP的拓扑变化机制中,存在两种类型的BPDU。

  1. 配置BPDU:根交换机会发送包含拓扑变化标志位以及拓扑变化确认位的配置信息,以通知所有交换机关于拓扑变化的状况。
  2. 拓扑变化通知(TCN)相关的BPDU:对于那些在网络拓扑发生变化时无法自动处理这种情况的交换机来说,它们会发送TCN BPDU来通知根交换机有关拓扑变化的消息。同时,这些交换机还会调整当前使用的网络拓扑结构。

拓扑结构发生变化的理由:

在启用了Spanning Tree协议的网络中,由于以下原因,网络拓扑结构可能会发生变化:

  1. 链接失败
  2. 交换机故障
  3. 端口正在转变为转发状态

拓扑变化机制:

每当交换机检测到其某个接口上的链路状态发生变化时,或者当某个交换机或另一个交换机发生故障时,交换机就会遇到拓扑结构的变化。 在检测到网络中的拓扑结构发生变化后,它会生成一份“拓扑变化通知BPDU”,该通知中包含了当前所使用的拓扑结构的详细信息。然后,该通知会通过根端口被发送到根交换机。 与那个通过根端口发送TCN BPDU的交换机相连的上游交换机,会接收到该BPDU,并回传一个拓扑变更确认消息(TCA)作为回应。 现在,接收到了TCN BPDU的上游交换机会生成自己的TCN BPDU,然后通过其根端口将其发送给根交换机。 这个过程会持续进行,直到根桥收到TCN BPDU为止。

当根桥收到拓扑变化的通知后,它会生成一个包含拓扑变化标志以及拓扑变化确认信息的配置BPDU。然后,该BPDU会被广播到整个网络中,这样所有交换机都能得知网络中的拓扑发生了变化。

在由根交换机发送的配置BPDU中,TC比特指示非根交换机删除那些会减慢网络传输速度的MAC地址条目。同时,TCA比特则通知这些交换机:根交换机已经得知了拓扑结构的变化,因此要求它们停止发送TCN BPDU。 这些交换机能够确保,对于那些无法通过端口继续与其通信的主机,不会发送任何数据。其实现方式是通过将MAC地址表的老化时间缩短到与转发延迟时间相同的时间范围内来实现。在这段时间内,那些仍然可以正常通信的设备会被保留在MAC地址表中,而其他设备则会被清除掉。

如果网络中发生了大量拓扑变化,将会发生什么情况呢?

拓扑变化通知BPDU用于通报网络中的拓扑变化情况。 因此,如果网络的拓扑结构经常发生变化,那么网络中就会产生大量的TCN BPDUs。这会导致设备频繁地删除ARP条目和MAC地址信息。 这会导致CPU使用率升高,同时还会使网络流量出现不稳定的情况。 此外,在拓扑结构发生变化时,端口状态频繁变化会导致网络不稳定,从而中断用户的通信,同时还会降低网络的收敛速度。

例如:下图展示了一个由STP机制控制的局域网网络。该网络的某个接口在交换机4处发生了拓扑变化。

Switch 4会生成一份包含拓扑变化信息的TCN BPDU,然后通过Switch 2将其发送给Switch 1(即根交换机)。当Switch 2接收到Switch 4发送的TCN BPDU后,它会以TCA BPDU作为回应,同时也会生成自己的TCN BPDU,并将其发送给Switch 1。一旦Switch 1接收到TCN BPDU,它就会立即得知拓扑变化的情况。

当交换机1收到拓扑变化的通知后,它会生成一个包含TC和TCA位配置的BPDU帧,然后将其发送给所有交换机,以告知它们拓扑发生了变化。

与拓扑变化相关的问题:

  1. 如果某个设备接收到的TCN BPDUs数量过多,那么其CPU的使用率就会变得很高。此外,由于MAC地址条目被反复删除,网络也会变得不稳定。
  2. 频繁的端口状态变化可能会导致网络不稳定。
              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料