华为交换机STP与环路检测冲突 下载本文

内容发布更新时间 : 2024/5/4 15:47:58星期一 下面是文章的全部内容请认真阅读。

华为交换机STP与环路检测冲突

字体大小:大 | 中 | 小 2008-02-11 16:26 - 阅读:871 - 评论:0

中国银行福建省分行选择华为3Com公司具有线速交换能力的系列局域网交换机Quidway S8016、S3050组建大楼局域网。为了保证网络的 可靠性,使用两台QuidWayS8016作为核心交换设备来进行整个大楼局域网络的三层交换处理,之间运行VRRP协议进行负载均担和备份保护。楼层交 换机采用QuidWayS3050设备,每台交换机与两台核心交换机组成光纤环路,启用RSTP协议进行链路备份。图1是网络拓扑图。

故障情况简单描述

不久福建省中行的网络出现故障,赶到5楼机房,发现8016B上有很多RSTP不断重新计算以及下连3050C的光口 不断Forwarding/Discarding迁移的信息。此时8016B上也有VRRP主备倒换的告警信息,因为上次已经减少VRRP组数并错开各个 VRRP组的Hello报文时间间隔,故此时VRRP切换并不集中。由于同时有大量生成树协议的BPDU报文上送CPU重 新计算以及因生成树计算错误导致的部分VRRP组主备切换,两台8016上的CPU利用率很高,网络基本不可用。首先断电8016B,恢复业务,再仔细分 析日志

信息,并询问网络改动,发现故障情况与新增一台3050C有关系。断开新增的3050C,恢复双机环境,网络运行正常。初步判断此次网络动荡与新增 的3050C有关。

故障原因分析

1.新加的3050C没有升级,存在STP方面的缺陷。

3楼新增加的3050C是原来的备用机,使用的是 0019版本,没有升级到中行目前在用的0022版本,该版本存在缺陷,可能会丢弃部分STP协议报文不上送CPU处理,导致RSTP计算错误和网络形成 广播风暴。从0020版本以后已经解决,目前中行在用的0022版本也不存在该问题。因此我们建议把3楼的3050C升级之后再接入到网络中。 2.3楼新增3050C没有关闭上行端口的环路检测功能(loopback-detection)华为3Com交 换机上有环路检测功能,可以配合生成树协议(STP/RSTP/MSTP)有效地检测网络中的环路,生成树协议主要用于检测拓扑环路,环路检测功能可以有 效检测端口下的环路。环路检测功能是基于端口和VLAN的,当检测到端口存在环回后,首先会上报LOG,提示某个端口在某个VLAN中存在环回情况,并设 置该端口不再学习MAC地址,端口的流量和其他端口隔离,从而进入一个该端口下面存在环路而不影响其他端口的状态。但与此同时,一些正常的协议报文,比如 生成树协议的BPDU报文,也无法通过了,这样会导致生成树协议计算错误。

同时,如果STP计算错误,没有把相应的链路Discarding 掉,就会引起环路检测功能检测到网络中存在的环路,并会把收到环路检测报文的端口UP/Down一次,这将引起全网RSTP协议的重新计算,影响到所有的 交换机,耗费大量的CPU资源。在没有关闭上行口环路检测功能的3楼新增3050C上的告警信息也证实了上述判断。

如果形成如图2所示的环路,可能会导致环路检测报文从一个上连口出去,从同一台设备的另一个上连口返回,出现告警信息。

如果形成如图3所示的环路,可能会导致环路检测报文从一个上连口出去,从同一台设备的另一个上连口返回,即出现如告警信息。

3.STP重新计算和VRRP主备倒换,导致设备CPU利用率高和网络动荡,由于STP协议报文和VRRP报文都要上送到CPU处理,占用大量 的CPU资源。当新增3050C的