Eth-trunk成员链路中断导致部分业务中断

发布时间:  2016-02-22 浏览次数:  215 下载次数:  0
问题描述

如图所示,某用户网络分为13个区域,上图是其中2个区域的简易拓扑图,区域间采用华为NE40E作为边界,各区域内部采用华为S12708作为局域网核心交换,下挂用户。用户边界路由器之间租用联通3条千兆传输链路,并且进行了Eth-trunk聚合。平时业务运行稳定,某天客户反馈,用户网络1访问用户网络2时,突然出现部分主机大量丢包或者中断的情况。

处理过程

1、了解网络中断客户的分布情况,发现分布比较分散,没有明显的共同特征。

2、2台局域网交换机上使用display stp briefdisplay interface brief命令,查看是否有环路。但2台交换机上端口状态都正常,没有异常情况。

3、在用户网络1中,用故障的PC分段进行ping测试,排查问题出现的位置。最终发现,只要经过边界路由器,就发生丢包现象。所以判断,丢包发生在2边界路由器之间

4、将边界路由器上的3条千兆分别从eth-trunk中删除,然后两端配置IP地址进行ping测,发现其中一条千兆无法ping通,但物理及协议状态都为UP 。所以定位为此链路传输故障,导致业务中断现象的发生。

5、向运营商报障,联通修复故障链路,障碍解决。

根因
Eth-trunk的成员链路通过hash算法来分担流量,一个MAC地址按照固定的hash算法,会分配到固定的一条链路上。因此造成分配到同一条故障链路的用户都无法通信。
解决方案

将Eth-trunk成员链路中出现故障的链路手工shutdown掉,这样业务会暂时恢复正常。故障解除后,恢复端口undo shutdown状态。

建议与总结

1、在排查eth-trunk的故障原因时,应充分考虑到成员链路负载分担的算法特种。

2、在做eth-trunk聚合时,最好配合bfd使用,当检查链路故障时,自动dwon掉链路,以免造成业务中断。

END