STP如何计算最低端口ID

网络工程 生成树
2022-02-04 02:13:52

我正在阅读有关 STP 如何确定要阻止的端口的信息。我正在查看此网址https://ciscoiseasy.blogspot.co.uk/2010/10/lesson-20-spanning-tree-protocol.html这部分

以下算法用于确定根端口或指定端口(按顺序):

  1. 首选最低的根路径成本。
  2. 在相同根路径成本的情况下,优先选择指定交换机(发送 BPDU 的邻居)的最低桥 ID。
  3. 如果在多个端口上从同一个指定交换机(BPDU 发送方)接收 BPDU,请优先选择发送方的最低端口 ID(也称为端口优先级)。该参数具有默认值 128 并且是可配置的。
  4. 如果以上都没有解决问题,请选择 BPDU 发送者的最低端口 ID。

我理解的前3部分很好。这是我想要澄清的最后一个。

该网站继续显示和示例 BPDU 帧从接口 Fa0/3 和 Fa0/4 上的交换机 (SW3) 发送到另一个交换机 (SW4) 的位置。SW4 选择它的端口 Fa0/1,因为该端口连接到 Fa0/3 并且 3 低于 4。

例子

我的问题是:

这真的像听起来那么简单吗?一个简单的计算哪个端口号更小还是更多?如果我有 Po1 和 Fa0/1 并且所有其他因素都相同,会发生什么?

2个回答

如果您确实显示 spanning-tree,则端口 ID 是 Prio.Nbr 列中的 Nbr 元素。对于这个例子,Gi0/0 是端口 1,Gi0/1 是端口 2,Po1 是端口 65。您会发现一个类型的所有接口都被分组,并且端口 ID 在该组内是有序的。

VLAN0001
  Spanning tree enabled protocol ieee
  Root ID    Priority    32769
             Address     0000.ab15.f500
             This bridge is the root
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
             Address     0000.ab15.f500
             Hello Time   2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time  15  sec

Interface           Role Sts Cost      Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Gi0/0               Desg FWD 4         128.1    Shr 
Gi0/1               Desg FWD 4         128.2    Shr 
Gi0/2               Desg FWD 4         128.3    Shr 
Gi0/3               Desg FWD 4         128.4    Shr 
Gi1/0               Desg FWD 4         128.5    Shr 
Gi1/1               Desg FWD 4         128.6    Shr 
Gi1/2               Desg FWD 4         128.7    Shr 
Po1                 Desg LIS 4         128.65   Shr 

简单: 它通过查看上游交换机或网桥的接口号来计算最低端口优先级。如果我们有两个端口连接到同一个上游网桥,那么连接到具有最小编号的上游网桥的接口的本地端口将具有较低的端口优先级,因此将被选为根端口,假设它们具有相同的成本和相同的 bridgeID .

生成树查看三件事来确定根端口和备用端口,端口优先级位于第三位。

  1. 成本:越低越好。因此到达根桥的成本较低的端口将被选为根端口。
  2. BridgeID:如果cost是tie,那么它会在上游寻找最低的bridgeID。
  3. Port-Priority:如果upstream bridgeID 相同,表示两个端口都连接到同一个upstream 网桥,那么它将寻找upstream 网桥的最低Port-Priority。

现在可以通过发出以下命令找到上游网桥的端口优先级编号。

SW1(config)#do show spanning-tree vlan 1 detail

 VLAN0001 is executing the rstp compatible Spanning Tree protocol
  Bridge Identifier has priority 32768, sysid 1, address 0051.cf8d.7c01
  Configured hello time 2, max age 20, forward delay 15, transmit hold-count 6
  Current root has priority 32768, address 0053.cf8d.7c03
  Root port is 3 (GigabitEthernet0/2), cost of root path is 4
  Topology change flag not set, detected flag not set
  Number of topology changes 14 last change occurred 00:57:20 ago
          from GigabitEthernet0/2
  Times:  hold 1, topology change 35, notification 2
          hello 2, max age 20, forward delay 15 
  Timers: hello 0, topology change 0, notification 0, aging 300

 Port 1 (GigabitEthernet0/0) of VLAN0001 is designated forwarding 
   Port path cost 4, Port priority 128, Port Identifier 128.1.
   Designated root has priority 32768, address 0053.cf8d.7c03
   Designated bridge has priority 32769, address 0051.cf8d.7c01
   Designated port id is 128.1, designated path cost 4
   Timers: message age 0, forward delay 0, hold 0
   Number of transitions to forwarding state: 2
   Link type is shared by default
   BPDU: sent 7222, received 34

 Port 2 (GigabitEthernet0/1) of VLAN0001 is designated forwarding 
   Port path cost 4, Port priority 128, Port Identifier 128.2.
   Designated root has priority 32768, address 0053.cf8d.7c03
   Designated bridge has priority 32769, address 0051.cf8d.7c01
   Designated port id is 128.2, designated path cost 4
   Timers: message age 0, forward delay 0, hold 0
   Number of transitions to forwarding state: 1

如您所见,上游接口端口优先级是

Designated port id is 128.1
Designated port id is 128.2

现在在 Port-Priority 后面的值。对应接口号。由于在这种情况下接口号是 Gigabit0/1,所以 Port-Priority 将变为 128.1

但是如果你想做一些流量工程,你可以降低它。例如:

SW1(config-if)#spanning-tree vlan 1 port-priority 64

由于 128.1 低于 128.2,它会选择连接到 128.1 的端口作为根桥,并将另一个端口置于阻塞状态。