简介
本文档介绍由EtherChannel成员接口中的任何更改引起的停机的根本原因分析。
先决条件
EtherChannel是在生成树协议(STP)上运行的第2层环路/星型/网格/冗余拓扑的一部分。
要求
Cisco 建议您了解以下主题:
基本了解
- 思科交换和Catalyst操作
- STP
- EtherChannel负载均衡
使用的组件
本文档中的信息基于这些基于软件和硬件的图示版本,但不限于:
- 思科C9000交换机
- 虚拟交换机链路(VSL)设置
- EtherChannel
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
本文档包含更改(例如添加/删除/删除链路或成员接口链路从EtherChannel成员接口中的一个端口移动到另一个端口)的根本原因。此外,它概述了一个缓解计划,以避免此类意外停机。
问题说明
通常,向现有EtherChannel添加成员接口链路不能导致任何停机或流量转发中断。同样,在删除成员接口链路之后,如果EtherChannel的剩余带宽大于在删除链路之前的整体利用率,则一定不会出现任何流量中断。但是,前面提到的场景会导致特殊的第2层环路拓扑中几秒钟的停机时间。
拓扑
说明
Laptop 1的IP地址是10.10.10.50/24,Laptop 2的IP地址是10.10.10.51/24。两者都在同一个VLAN中。
9600核心交换机通过po1连接到9500 Dist1,通过po2连接到9500 Dist2。
9300接入交换机通过接口GI 1/0/14连接到9500 Dist 1,并通过GI 1/0/46连接到9500 Dist 2。
Laptop 1和Laptop 2之间的整体数据包路径为:
Laptop 1 > (GI 1/0/1) Cat 9300 (GI 1/0/46) > (Te 1/0/12) Cat 9500 Dist 2 (Port-channel 1) > (Port-channel 2) Cat 9600 (Port-channel 4) > (Port-channel 1) Cat 9500 Dist 4 (Te 1/0/1) > Laptop 2
但是,Laptop 1和Laptop 2之间有两个数据包路径选项,具体取决于负载均衡算法。
选项 1: Laptop 1 > (GI 1/0/1) Cat 9300 (GI 1/0/46) > (Te 1/0/12) Cat 9500 Dist 2 (Te1/0/4) > (Twe 1/1/0/24) Cat 9600 - Active (Twe 1/1/0/8) > (Twe 1/0/5) Cat 9500 Dist 4 (Te 1/0/1) > Laptop 2
选项 2: Laptop 1 > (GI 1/0/1) Cat 9300 (GI 1/0/46) > (Te 1/0/12) Cat 9500 Dist 2 (Te1/0/5) > (Twe 2/1/0/10) Cat 9600 - Standby (Twe 2/1/0/34) > (Twe 1/0/8) Cat 9500 Dist 4 (Te 1/0/1) > Laptop 2
最初,由于两个接口连接到Cat 9300以到达根网桥9600,因此根据STP路径选择标准,其中一个接口GI 1/0/14被置于备用阻塞状态,而GI 1/0/46处于根转发状态。
从Cat 9300从GI 1/0/14接口或GI 1/0/46到达根的命令相同且等于30000。
Cat 9300#show spanning-tree
VLAN0001
Spanning tree enabled protocol rstp
Root ID Priority 24577
Address 549f.c666.c580
Cost 30000
Port 46 (GigabitEthernet1/0/46)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)
Address 2416.9d7a.2480
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300 sec
Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------
GI 1/0/14 Altn BLK 20000 128.14 P2p
GI 1/0/46 Root FWD 20000 128.46 P2p
Cat 9600#show spanning-tree
VLAN0001
Spanning tree enabled protocol rstp
Root ID Priority 24577
Address 549f.c666.c580
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 24577 (priority 24576 sys-id-ext 1)
Address 549f.c666.c580
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300 sec
Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
Po1 Desg FWD 10000 128.3433 P2p
Po2 Desg FWD 10000 128.3434 P2p
Po3 Desg FWD 10000 128.3435 P2p
Po4 Desg FWD 10000 128.3436 P2p
当前STP状态:
Cat 9600#show spanning-tree detail | include is exec|changes|from
VLAN0001 is executing the rstp compatible Spanning Tree protocol
Number of topology changes 8 last change occurred 00:10:28 ago
from Port-channel1
从9600的Port-channel 2关闭其中一个成员接口(Twe 2/1/0/10)的活动将导致:
1. Cat 9600和Cat 9500 Dist 2之间的端口通道的STP路径开销从10000增加到20000。
Cat 9600#show spanning-tree
VLAN0001
Spanning tree enabled protocol rstp
Root ID Priority 24577
Address 549f.c666.c580
This bridge is the root
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 24577 (priority 24576 sys-id-ext 1)
Address 549f.c666.c580
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300 sec
Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------
Po1 Desg FWD 10000 128.3433 P2p
Po2 Desg FWD 20000 128.343 P2p <<
Po3 Desg FWD 10000 128.3435 P2p
Po4 Desg FWD 10000 128.3436 P2p
2.到Cat 9300上的根的STP路径开销从30000到40000口GI 1/0/46的增量。因此,9300选择接口GI 1/0/14作为根端口,具有更少的STP路径开销。
Cat 9300#show spanning-tree
VLAN0001
Spanning tree enabled protocol rstp
Root ID Priority 24577
Address 549f.c666.c580
Cost 30000
Port 14 (GigabitEthernet1/0/14)
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Bridge ID Priority 32769 (priority 32768 sys-id-ext 1)
Address 2416.9d7a.2480
Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec
Aging Time 300 sec
Interface Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
GI 1/0/14 Root FWD 20000 128.14 P2p <<<<< GI 1/0/14 is coming to forward state
GI 1/0/46 Altn BLK 20000 128.46 P2p
3.此更改会导致生成整个生成树域中的拓扑更改通知(TCN)。
Cat 9600#show spann det | inc is exec|changes|from
VLAN0001 is executing the rstp compatible Spanning Tree protocol
Number of topology changes 9 last change occurred 00:03:21 ago
from Port-channel1 <<< TCN is received over port-channel 1
生成树重新收敛后,网络中可能会出现中断。
中断的时间间隔可能因其他因素和协议而异。
从Laptop 1向Laptop 2发起连续ping操作可以演示网络中EtherChannel更改的实时影响。
同样,在Cat 9500 Dist 1和Cat 9600 Core Switch之间的Port-channel 1上添加成员接口会降低STP成本,还会影响拓扑更改。
根本原因
添加或删除EtherChannel的成员接口会改变其STP端口成本。这会导致STP重新收敛和TCN生成。
缓解
选项1:使用以下步骤在更改期间对EtherChannel的STP成本进行硬编码:
步骤1:了解计划更改(添加或删除成员接口)的EtherChannel的现有STP成本。
Cat 9600#show spanning-tree interface port-channel 1
Vlan Role Sts Cost Prio.Nbr Type
------------------- ---- --- --------- -------- --------------------------------
VLAN0001 Desg FWD 10000 128.3433 P2p
在本例中,VLAN 1的10000本为100。
第二步:硬编码相同的STP成本。
Switch#
Switch#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#interface port-channel 1
Switch(config-if)#spanning-tree cost 10000
Switch(config-if)#end
Switch#
同样,成本更改配置也必须在对等设备连接的接口上完成。
第三步:执行更改。
包括:
或
或
或
添加或删除成员接口不会对STP拓扑造成任何影响,因为链路的STP开销是硬编码的。
注意:
缓解计划会影响直通式处理计算并产生副作用。但是,这在EtherChannel的任何活动中都非常有用,因为在该活动中需要临时更改成员接口的数量。
请考虑以下场景:在特定网络活动期间需要关闭EtherChannel的成员接口,并在结束时恢复成员接口。在这种情况下,可以在练习开始时将EtherChannel的STP成本硬编码为其默认值。
关闭相应的成员接口,完成练习,然后恢复接口;稍后,再次默认STP开销。使用此方法可以避免STP重新收敛。
建议谨慎地将生成树成本恢复到各自更改结束时的默认设置。
选项2:对于一些设计,可以使用其他方法避免中断,例如生成树增强功能,例如上行链路快速、根防护等。
相关信息