默认情况下,在Cisco IOS中,ECMP(或其他导致不对称路径的原因)和HSRP的组合被破坏。此设计的默认行为会过多地淹没单播流量。
将HSRP与ECMP一起使用以防止未知单播洪泛的最佳实践是什么?
详细信息/背景
对于我们的许多设施,我们都有类似于下面第一张图的HSRP拓扑。我们的Cisco WAN路由器具有到所有其他站点的等价路由;因此我们可以一直看到不对称的路由效应。通常,我们将R1分配为HSRP主设备,但是ECMP允许通过R1或R2的返回流量。
问题在于,当PC1在WAN上安装远程iSCSI驱动器时,流量通过R1离开站点,但可能通过R2返回。只要iSCSI流量通过R1返回,就不会有问题。
当PC1的流量通过R2返回时,会发生此问题。假设iSCSI会话从8:00:00开始,并且两个路由器和两个交换机同时学习PC1的mac。在8:00:00到8:00:05之间,没有泛洪问题,因为两个交换机的CAM表中仍具有PC1的mac地址。
iSCSI会话开始五分钟后,PC1的mac的S2 CAM条目从CAM表中过期,并且S2将PC1的流量泛洪到所有端口(在本例中为Po1,Gi0 / 3和Gi0 / 4)。如果PC1的iSCSI会话消耗大量带宽,则这种未知的单播洪泛会从到PC3和PC4的链接中吸收不小的容量。
Cisco IOS交换机的默认CAM计时器为300秒...
S2# show mac address-table aging-time
Vlan Aging Time
---- ----------
1 300
17 300
但是,Cisco IOS的默认接口ARP计时器为4小时...
R2# show interface gi0/0
GigabitEthernet0/0 is up, line protocol is up
Hardware is AmdP2, address is 000a.dead.beef (bia 000a.dead.beef)
Internet address is 172.17.1.252/24
MTU 1500 bytes, BW 10000 Kbit, DLY 1000 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation ARPA, loopback not set
Keepalive set (10 sec)
ARP type: ARPA, ARP Timeout 04:00:00 <--------------
因此,S2在五分钟后开始充斥PC1的iSCSI流量。