大量TC报文导致框式交换机ARP学习异常

涉及产品和版本

S交换机所有产品和版本

组网情况

图1所示,Switch-A和Switch-B通过Eth-Trunk链路直连,配置VRRP协议,Switch-A为VRRP主设备,Switch-B为VRRP备设备。Switch-A和Switch-B做三层网关,下挂多台接入交换机做二层,均使能了STP协议进行破环。二层交换机与接入用户相连。

图1 大量TC报文导致框式交换机ARP学习异常组网图

现象描述

Switch-A交换机上ARP学习异常,有很多Incomplete的ARP表项,下面用户终端的ARP时有时无,业务不稳定。

原因分析

Switch下挂的二层交换机上,STP域的边缘端口均没有配置stp edged-port enable,这些端口状态发生变化时会发送TC报文,Switch收到后进行STP收敛处理,立即清除ARP表项或进行老化探测处理Switch上因为ARP数量比较多,发送大量ARP请求报文进行探测,收到用户的ARP应答报文比较多,超过了cpcar值,部分ARP应答报文丢弃,这些ARP将被老化删除,对应用户业务不能使用。Switch频繁收到这样的TC报文,业务更加不稳定。

操作步骤

  1. 登录设备进行观察,查看VLANIF27接口下的ARP。该VLANIF接口接入的是经常在线的用户的服务器。长时间观察,发现接口下的ARP总数有时在50个左右,有时在20个左右,数量不稳定。同时还有Incomplete状态的ARP,IP地址也不固定。学习到的ARP表项的老化时间有时都为0。
    <Switch-A> display arp interface vlanif 27
    IP ADDRESS      MAC ADDRESS     EXPIRE(M) TYPE        INTERFACE   VPN-INSTANCE
    VLAN/CEVLAN
    ------------------------------------------------------------------------------
    10.212.4.3      0025-9e7f-fd01            I -         Vlanif27
    10.212.4.129    0014-38b9-73c3  0         D-0         Eth4/0/42
    27/-
    10.212.4.133    00e0-fc94-cddd  0         D-0         Eth4/0/42
    27/-
    10.212.4.203    0018-7172-5901  0         D-0         Eth4/0/42
    27/-
    10.212.4.107    0011-43a3-388f  0         D-0         Eth4/0/42

    从现象看,Switch应该是收到了TC报文,进行了老化ARP的操作。

  2. 通过display stp tc命令也可以看到端口收到的TC报文情况:
    [Switch-A-hidecmd] display stp tc
    ---------- Stp Instance 0 tc or tcn count ----------
    Port GigabitEthernet1/0/0    0
    Port GigabitEthernet1/0/1    0
    Port GigabitEthernet1/0/2    0
    Port GigabitEthernet1/0/3    0
    Port GigabitEthernet1/0/4    87
    Port GigabitEthernet1/0/5    123
    Port GigabitEthernet1/0/6    99
    Port GigabitEthernet1/0/8    71
    Port GigabitEthernet1/0/9    173
    Port GigabitEthernet1/0/10   146
    Port GigabitEthernet1/0/13   8
    Port GigabitEthernet1/0/21   0
  3. 分析日志,日志中也显示收到TC报文、进行ARP表项老化处理的记录:
    Apr 19 2011 09:59:58 DCN_S9306_A %%01MSTP/6/RECEIVE_MSTITC(l): MSTP received BPDU with TC, MSTP process 0 instance 0, port name is Ethernet4/0/46.
    同时有arp-reply报文的cpcar丢弃记录:

    Apr 19 2011 09:28:13 DCN_S9306_A %%01QOSE/4/CPCAR_DROP_LPU(l): Some packets are dropped by cpcar on the LPU in slot 1. (Protocol=arp-reply, Drop-Count=061)

基于上面的信息,分析得出:Switch频繁收到TC报文,进行老化ARP表项的操作。设备需要发送大量ARP探测报文,用户终端回应arp-reply报文的数量也很多,超过了cpcar的car值,部分应答报文丢弃,ARP表项就会老化删除,影响到业务应用。

Switch收到的TC报文是下面的接入交换机发送的。接入交换机直接连接PC,端口使能了STP,但是没有配置stp edged-port enable。PC在开机和关机时,很多边缘端口UP、DOWN,交换机就会反复发送TC报文。

将这些边缘端口配置stp edged-port enable后,经过几天的观察,没有再出现问题了,用户的业务运行正常。

建议与总结

类似的问题出现过很多次,交换机做网关,下挂二层交换机接入用户,网络中使用STP协议破环。通常,二层交换机上的STP边缘端口都没有配置stp edged-port enable。用户PC上线、下线,端口就会反复UP/DOWN,设备向STP根节点发送TC报文。网关设备频繁进行STP收敛,清除ARP,导致ARP学习异常。

这种应用场景下,推荐配置:

  1. 交换机上配置stp converge normal,这样交换机收到TC报文,不会立即清除ARP,而是发起ARP探测,探测失败才会删除ARP,对流量转发不会造成很大的影响;
  2. 二层交换机的STP边缘端口上配置stp edged-port enable,这样边缘端口的状态变化不会引起网络反复进行STP收敛。

版权声明:
作者:SE_YT
链接:https://www.cnesa.cn/2039.html
来源:CNESA
文章版权归作者所有,未经允许请勿转载。

THE END
打赏
海报
大量TC报文导致框式交换机ARP学习异常
涉及产品和版本 S交换机所有产品和版本 组网情况 如图1所示,Switch-A和Switch-B通过Eth-Trunk链路直连,配置VRRP协议,Switch-A为VRRP主设备,Switch-B为V……
<<上一篇
下一篇>>