为什么 STP 选择最低的桥 ID 作为根桥?

网络工程 生成树 拓扑
2021-07-16 05:14:36

桥ID最小的交换机可以作为根桥,桥ID由优先级和MAC地址组成,即

网桥ID = 优先级+ MAC 地址 所以我们将选择优先级最低的交换机作为根桥,如果所有交换机的优先级相同,我们将选择MAC 地址最低的交换机作为根桥。

所以我的问题是

1 . 为什么我们应该选择具有“最低”桥ID的交换机作为根桥,而不是“最高”

2.为什么其中一个交换机可以有较低的优先级?如果优先级可以改变,那么基于什么原因,所以我们让这个交换机具有较低或最低的优先级?在拓扑中的位置?开关的性能?

4个回答
  1. 为什么我们应该选择具有“最低”桥ID的交换机作为根桥,而不是“最高”?

因为那是标准,而且已经几十年了,所以不可能改变。当然,你可以加入 IEEE 并参加 802 委员会来论证你的立场,但不要认为它实际上会改变,因为更换世界上所有的网络交换机将花费数十亿美元。

2.为什么其中一个交换机可以有较低的优先级?如果优先级可以改变,那么基于什么原因,所以我们让这个交换机具有较低或最低的优先级?在拓扑中的位置?开关的性能?

企业级交换机的优先级可以轻松更改,您应该这样做,以便将特定交换机设置为根,如果根失败,则将另一个交换机设置为根。将根桥留给机会是一个非常糟糕的主意,可能会导致大问题。

  1. 为什么我们应该选择具有“最低”桥ID的交换机作为根桥,而不是“最高”?

原因很简单,因为在向前计数时,较低的数字首先出现。例如:1、2、3、4 等。

1 在前,因此它在优先级中排在第一位。2 紧随其后,因此它排在第二位。这只是考虑优先顺序的问题,就像在向前计数时增加数字一样。先到者为先。

  1. 为什么其中一个交换机可以有较低的优先级?如果优先级可以改变,那么基于什么原因,所以我们让这个交换机具有较低或最低的优先级?在拓扑中的位置?开关的性能?

您的交换机优先级应基于您希望成为任何特定 VLAN ID 的根的交换机。例如,如果您的主楼中有使用 VLAN 100、200 和 300 的系统,但使用 VLAN 400 的系统位于单独的建筑物中,您不希望使用 VLAN 400 的系统必须通过中继到达主楼为这些交换机构建以处理流量,然后流量返回到系统实际连接的交换机,添加延迟等,因此您将 VLAN 400 的根设置为使用 VLAN 的系统的物理位置的交换机400 在。VLAN 100、200 和 300 的情况正好相反——它们的根将在主交换机上,而不是在使用 VLAN 400 的交换机上。这只是您静态设置优先级的一个粗略示例。

网桥优先级(和其他 xSTP 优先级参数)是用户可配置的。

为什么其中一个交换机可以有较低的优先级?如果优先级可以改变,那么基于什么原因,所以我们让这个交换机具有较低或最低的优先级?在拓扑中的位置?开关的性能?

这还有另一个方面,我认为其他答案中没有指出这一点(尽管它建立在 Jesse P. 的答案之上):

如果给定生成树的交换机都没有配置为具有适当的(非默认)较低/更好的优先级,并且所有其他参数都相等(默认优先级为 32k,通常),则桥 ID/MAC 地址开关成为决胜局。在这种情况下,具有最低网桥 ID的交换机将被选为根网桥(目前没有什么新鲜事)。

起初这看起来很聪明,“所以我为什么要担心”,但有一个问题:随着时间的推移,供应商一直在为他们的设备逐渐分配 MAC 地址,因此最旧的设备往往具有最低的 MAC 地址/网桥 ID。

这就是维护不善的生成树如何最终导致根桥意外成为数据中心丢失角落中已有 20 年历史的 FastEthernet 交换机。连接问题迟早会出现...

所以怎么强调都不为过:了解您的交换网络及其拓扑结构,密切关注流量模式,并相应地为您的生成树设置根桥。