STP中根桥是如何选举出来的?

网络工程 以太网 生成树 层2
2021-07-06 15:15:28

STP/RSTP 如何确定哪个网桥是根网桥,以及如何选择到根网桥的路径?

3个回答

不确定您对切换和生成树了解多少,但基本上在启动时所有交换机都声称它们是根。所有交换机都发送包含优先级和 BID(网桥 ID)的 BPDU(网桥协议数据单元)。

BID 的长度为 8 个字节。6 个字节用于网桥的 MAC 地址。12 位用于表示 VLAN,称为扩展系统 ID。4 位用于设置优先级。较低的优先级意味着它比较高的优先级更高。优先级设置为 4096 的倍数。

如果优先级相同,则最低的 MAC 地址将决定哪个网桥成为根网桥。

为了选择到根的路径,计算到根的成本。随着 BPDU 从根下游传输,成本增加了 INBOUND。802.1D-1998(传统 STP)的 FastEthernet 接口成本为 19。较新的标准 802.1D-2004 定义了 FastEthernet 的成本为 200000。

如果成本存在关系,则选择来自具有最低 BID 的交换机的 BPDU。如果这也是一个平局(多个链接到同一交换机)端口 ID 开始发挥作用。端口 ID 也来自上游交换机,由端口优先级和标识接口的端口 ID 组成。默认端口优先级为 128。

生成树有很多内容,但这些是基本步骤。

你问的是 STP 理论:

https://en.wikipedia.org/wiki/Spanning_Tree_Protocol

但基本思想是每个交换机都有一个桥 ID,它是其优先级和 MAC 地址的组合。默认情况下,所有交换机都使用 32768 作为其优先级,因此默认情况下,具有最低 MAC 的交换机将充当根网桥。您可以通过调整优先级来操纵这一点,因为默认的根桥可能不是您想要充当根的桥。您将根据您的第 2 层设计以及您预计第 2 层流量传输最多的位置来决定将哪个交换机用作根。

到根路径的开销是相关端口与根桥上相关端口之间链路开销的总和。链接速度越快,成本越低。因此,在 1GBPS 链路上进行 10 跳根端口成本为 40(4+4+4+4+4+4+4+4+4+4),而单个 10MBPS 链路将为 100。所以根端口将是连接到 1GBPS 链接的那个。

您还可以操作每个 vlan 的 STP 路径和根。上面的链接将帮助您入门。它可以像您希望的那样复杂。

为了不重复这里的答案并提出最佳实践的替代观点,问题应该是“我如何预先确定根桥,以便在故障排除之前对网络有一个确定性的看法?”

通过在主交换机和辅助交换机之间拆分 vlan,将聚合或分布交换机设置为 root。 通常奇数 vlan 在一台交换机上设置为根,偶数 vlan 作为辅助,然后在另一台交换机上设置相反的 vlan。

Sw1:
spanning-tree vlan 1,3,5,7 root primary
spanning-tree vlan 2,4,6,8 root secondary

Sw2:
spanning-tree vlan 1,3,5,7 root secondary
spanning-tree vlan 2,4,6,8 root primary