当前位置:首页 期刊杂志

PVST技术导致的网络故障分析

时间:2024-04-25

徐云喜,任 武,智 勇,蒲晓莉

(中国石油集团钻井工程技术研究院江汉机械研究所,湖北 荆州 434000)

PVST技术导致的网络故障分析

徐云喜,任 武,智 勇,蒲晓莉

(中国石油集团钻井工程技术研究院江汉机械研究所,湖北 荆州 434000)

伴随着网络设备的国产化替代,实际工作中存在着国产网络设备与CISCO设备的共用,由于CISCO设备会默认启用自身专有技术,这样在与使用行业标准的国产设备间存在着互联互通问题。本文主要分析由CISCO私有技术PVST导致的网络故障并提出解决方案,提醒广大网络管理工作人员在实际工作中,应重视设备间的兼容性问题。

交换机;STP;CISCO;专有;PVST

随着“棱镜门”事件的曝光,信息安全问题引起了全社会的高度重视,网络设备的国产化替代必将进行到底,但是在替代过程中会存在国产设备与CISCO共存的境况,这种情况下会发生由于设备间的兼容性问题而导致的网络故障。下面探讨的就是作者在实际工作中遇到的由于华为和CISCO设备间的兼容性而导致的网络问题。

1 故障现象描述

我们先看下网络环境:上一级网络设备为华为交换机,手中的设备为CISCO 2960,其下连接若干PC。

CISCO 2960连接到上一级设备后,级联端口状态灯为橘黄色,表明连接失败。登录设备,查看Log,显示如下。

00:00:43: %SPANTREE-7-RECV_1Q_NON_TRUNK: Received 802.1Q BPDU on non trunk FastEthernet0/2 VLAN1.

00:00:39: %LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan1, changed state to down.

日志显示,CISCO 2960是由于收到了802.1Q数据包,导致级联端口被block掉,造成网络故障。

2 故障分析

查看CISCO报警信息定义,我们可以知道,CISCO 2960在级联端口收到了802.1Q BPDU数据包,CISCO认为两端接口类型不一致可能存在二层环路隐患,所以就将收到这个包的端口block,这是导致端口被block掉的直接原因。

为什么级联端口会收到802.1Q的BDUP数据?弄清这个问题,我们首先要了解STP协议。STP(Spanning Tree Protocol)是生成树协议的英文缩写,被应用于在网络中建立树形拓扑,消除网络中的环路,并且可以通过一定的方法实现路径冗余,但不是一定可以实现路径冗余。生成树协议适合所有品牌的网络设备,虽然在配置上有所差别,但是在原理和应用效果上是一致的。STP使用生成树算法(STA)计算网络中哪些交换机端口应配置为阻塞才能防止环路的形成,所有参与STP的交换机之间通过交换BPDU帧,以建立最佳树形拓扑结构。

BPDU,网桥协议数据单元,是生成树协议(STP)的数据问候数据包,它以可定义的间隔时间发出,向所有的交换机端口发送一次,以便交换机能交换当前最新的拓扑信息,并迅速识别和检测其中的环路。BPDU报文交换的目的是,选定一个合适的参考点,以求获得一个稳定的生成树拓扑。

查看STP协议说明,我们发现能产生802.1Q BPDU数据包的只有PVST协议。PVST,Per vlanstp,每VLAN生成树协议,是CISCO的私有技术,它是CISCO解决在虚拟局域网上处理的生成树特有方案。因为是CISCO的私有技术,决定了PVST的兼容性较差。

标准的BPDU数据包是以以太网数据帧的格式进行传递的,采用多播MAC地址01-80-c2-00-00-00为目的MAC地址,而PVST的BPDU数据包的目的MAC地址为CISCO保留地址01-00-0c-cc-cc-cd。对于目的mac地址为01-00-0c-cc-cc-cd的包,华为交换机不识别,会把它当作普通的多播包转发,而不进行任何处理。

由于CISCO交换机上PVST是默认打开的,当CISCO 2960收到发送来的以01-80-c2-00-00-00为目的MAC地址的802.1qbpdu数据包后,认为两端接口类型不一致,判断存在环路,所以将级联端口block。

由此我们可以发现,产生以上故障的原因是由于CISCO和华为使用了不同标准的BPDU数据包标准,导致STP协议认为网络中会产生环路,CISCO收到了不能识别的标准BPDU数据包,从而导致CISCO交换机判断可能存在环路,将级联端口block。

3 结 论

导致类似网络故障的原因是由于普通交换机不能识别CISCO 的PVST私有协议数据包,只是把它当做普通的多播包转发,从而导致CISCO交换机判断可能存在环路,将端口block。

组网过程中,我们也会遇到类似情况,当其他型号的交换机和CISCO交换机一起组网也会产生相同的问题。针对类似组网过程中可能出现的问题,提出如下建议。

在CISCO交换机不需要参与STP计算的端口上,启用Spanning-Tree bpdufilter Enable,这样端口可以直接将BPDU包丢弃。

由于CISCO交换机默认PVST协议是启用的,在做网络规划时需要考虑网络是否需要用到STP协议,如若需要尽量采用标准的STP协议,如果不需要,将PVST关闭。

普通交换机会将目的MAC地址为01-00-0c-cc-cc-cd(CISCO保留地址)的多播包直接转发,如组网过程中可以确认不需要传递BPDU信息,可以在交换机上配置访问控制列表(ACL)进行过滤或在交换机上配置实现禁止对1-00-0c-cc-cc-cd的转发。

通过上面的讨论,也提醒了广大网络管理工作人员在实际工作中,我们应该重视设备间的兼容性问题。

主要参考文献

[1]李延冰.IEEE三种生成树技术的分析与比较[J].计算机应用,2005(11).

[2]刘向东.IEEE 802. 1Q VLAN原理实验的设计与实现[J].实验室研究与探索,2011(4).

[3]王霞俊.Cisco ISL 和IEEE 802. 1Q 协议的分析、比较及应用Analysis、Comparison and Application of Cisco ISL & IEEE 802. 1Q [J].电脑开发与应用,2011(9).

10.3969/j.issn.1673 - 0194.2015.24.136

TP393.06

A

1673-0194(2015)24-0178-01

2015-11-09

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!