为什么同步后只有根桥发送RSTP BPDU?

网络工程 思科 转变 生成树 IEEE-802.1w
2022-02-18 04:52:24

从最近的数据包捕获来看,在 RSTP 中的同步过程之后,只有根桥会在每个“hello”间隔发送 RSTP BPDU。为什么会这样?不是所有的交换机都应该在每个“hello”间隔发送 BPDU,因为这是知道链路是否断开的唯一方法?

在此处输入图像描述

从上图中,只有根(从成本中可以看出)正在发送 BPDU。

1个回答

根据问题中的评论,实际拓扑是两个网桥:

B1(根)--- B2。

根据规范(IEEE Std 802.1w-2001,sec 17.7)

如果指定端口传输的信息发生变化,则传输配置消息。此外,指定端口定期传输配置消息以防止丢失并协助检测故障组件(LAN、网桥或网桥端口)。

这意味着周期性 hello 仅在指定端口上传输,而不是在所有端口上传输。特别是,hello 不会在根端口上传输。

这个想法有点跟随。STP 和 RSTP 都跟踪生成树中“父”节点(即根端口)的活跃度。这很重要,因为如果父节点发生故障,STP/RSTP 需要采取措施修复树。

跟踪子节点(连接到指定端口的网桥)的活跃度并不重要。如果子节点失败,父节点不会做任何事情。请注意,该端口不必连接到点对点链路,如果子节点失败,终端系统可能仍然可以访问。所以 RSTP 不能关闭端口和/或停止在那里发送有效负载帧。

因此,在 RSTP(实际上类似于 STP)中,活跃消息仅从父级沿生成树发送给子级。在 STP 根发送消息和其他网桥中继消息。这是因为 STP 在没有根节点参与的情况下无法修复拓扑,即直到拓扑与从根重新构建的新树收敛。使用 RSTP,网桥可以“更本地化”修复拓扑 - 例如,切换到备用端口。因此,每座桥都将活力单独发送给它的“孩子”。