CN104734874B - 一种确定网络故障的方法及装置 - Google Patents
一种确定网络故障的方法及装置 Download PDFInfo
- Publication number
- CN104734874B CN104734874B CN201310713893.XA CN201310713893A CN104734874B CN 104734874 B CN104734874 B CN 104734874B CN 201310713893 A CN201310713893 A CN 201310713893A CN 104734874 B CN104734874 B CN 104734874B
- Authority
- CN
- China
- Prior art keywords
- message
- equipment
- correspondence
- failure notification
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种确定网络故障的方法及装置,该方法包括:在PE设备确定出所述PE设备和CE设备之间的传输链路出现故障时,PE设备确定故障通知对应关系;所述PE设备根据所述故障通知对应关系,生成故障信息通知报文;并且所述PE设备将所述故障信息通知报文发送给加入所述指定的组播地址对应的组播组的其他PE。其他PE根据接收到的故障信息通知报文,确定出现故障的传输链路。能够用以解决网络用户通过公网构建的二层网络,某些情况下不能够快速的确定网络故障,从而使得网络用户之间的业务受到网络故障影响较大的问题。
Description
技术领域
本发明涉及网络通信技术领域,尤其是涉及一种确定网络故障的方法及装置。
背景技术
二层协议隧道(英文:layer2protocol tunnel,缩写:L2protocol tunnel)技术,允许不同地域的用户网络,以隧道方式通过网络提供商的二层网络,实现交互。
通常情况下,网络用户通过网络提供商提供的网络来构建归属该网络用户的二层网络。其中,网络提供商提供的网络可以称之为公网,该网络用户构建的二层网络可以称之为私网。归属同一网络用户的私网的两个分支可以分布在公网的两侧。如图1所示,该种组网架构中,包括至少一个用户侧的客户边缘(英文:customer edge,缩写:CE)设备以及至少一个网络提供商侧的提供商边缘(英文:provider edge,缩写:PE)设备。具体如图1所示,网络用户A通过网络提供商提供的网络构建归属网络用户A的二层网络,该网络用户的二层网络包括两个分支,即网络1和网络2,网络1和网络2之间通过公网相连。当网络1和网络2中运行相同类型的二层网络协议时,网络1和网络2中的该二层网络协议的报文穿过公网,以完成二层网络协议的计算。如果公网中也运行该类型的二层网络协议,为便于区分发送二层网络协议报文的是私网的设备还是公网的设备,则二层网络协议报文在公网中传输时,该报文需要在公网中进行透明传输。以图1所示的网络架构为例,二层网络协议报文在公网中透明传输的具体处理过程如下述:
步骤一:PE1接收CE1发送的二层网络协议报文,封装接收到的二层网络协议报文,并将封装后的二层网络协议报文在公网中转发。
具体为:将接收到的二层网络协议报文的目的地址替换为一个指定的组播地址,然后将替换目的地址后的二层网络协议报文在公网中转发。
步骤二:PE2接收到通过公网传输的封装后的二层网络协议报文,并解封装该接收到的封装后的二层网络协议报文,将解封装后的二层网络协议报文发送给CE2。
其中,PE2解封装接收到的封装后的二层网络协议报文处理的具体处理过程为:首先,PE2对接收到的二层网络协议报文进行解封装,确定解封装后的二层网络协议报文的目的地址,例如上文所阐述的指定的组播地址。然后,PE2将该指定的组播地址替换为二层网络协议规定的地址。该二层网络协议是PE1和PE2之间使用的相同的二层网络协议。对于不同的二层网络协议来说,其所规定的目的地址也不完全相同,具体PE2可以根据预先配置,完成目的地址的替换。
通常的二层协议转发功能只能实现链路正常时对二层网络协议报文的目的地址的替换,而当网络用户私网的一端与公网间的传输链路故障(例如图1所示的CE1与PE1间链路故障)时,PE2在预设时长内不能够接收到PE1发送的二层网络协议报文,因此使得位于公网另一端的网络用户CE2也不能够接收到由PE2转发的二层网络协议报文,此时,才能够确定出传输二层网络协议报文的链路出现故障。因此,网络用户通过网络提供商提供的公网构建的二层网络,如图1所示,在某些情况下,不能够快速的确定CE1和PE1之间的链路故障,并对链路故障进行处理,从而使得网络用户之间的业务受到网络故障的影响较大。
发明内容
本发明实施例提供了一种确定网络故障的方法及装置,用以解决网络用户通过公网构建的二层网络,某些情况下不能够快速的确定网络故障,从而使得网络用户之间的业务受到网络故障影响较大的问题。
第一方面,提供了一种确定网络故障的方法,包括:在提供商边缘PE设备确定出所述PE设备和客户边缘CE设备之间的传输链路出现故障时,所述PE设备确定故障通知对应关系,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址,所述指定的组播地址与二层网络协议规定的地址对应;所述PE设备根据所述故障通知对应关系,生成故障信息通知报文,所述故障信息通知报文中包括所述故障通知对应关系、用于标记该报文是故障信息通知报文的标识以及所述PE设备出现故障的端口号;并且所述PE设备将所述故障信息通知报文发送给加入所述指定的组播地址对应的组播组的其他PE。
在第一方面的第一种可能的实现方式中,所述PE设备确定故障通知对应关系,包括:在所述PE设备和CE设备之间的传输链路正常时,所述PE设备接收CE设备发送的二层网络协议报文,所述二层网络协议报文中的目的MAC地址是所述二层网络协议规定的地址;所述PE设备将所述二层网络协议报文中的目的MAC地址替换为所述指定的组播地址,并确定接收到的所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;所述PE将确定出的所述对应关系作为故障通知对应关系存储。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述故障通知对应关系中,还包括下述中的至少一种:所述PE接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,在所述故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,所述PE设备确定故障通知对应关系,包括:所述PE设备更新存储的故障通知对应关系。
第二方面,提供了一种确定网络故障的方法,包括:提供商边缘PE设备接收加入指定的组播地址对应的组播组的其他PE发送的报文;所述PE根据用于标记报文是否是故障信息通知报文的标识,确定接收到的报文是否是故障信息通知报文;所述PE在确定出接收到的报文是故障信息通知报文时,获得所述故障信息通知报文中的故障通知对应关系,以及发送所述故障信息通知报文的PE设备出现故障的端口号,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址,所述指定的组播地址与二层网络协议规定的地址对应;并所述PE根据获得的故障通知对应关系和所述端口号来确定出现故障的传输链路。
在第二方面的第一种可能的实现方式中,在PE设备接收加入指定的组播地址对应的组播组的其他PE发送的报文之后,确定接收到的报文是否是故障信息通知报文之前,所述PE设备按照下述方式确定所述故障通知对应关系:所述PE设备在确定出接收到报文是二层网络协议报文时,对接收到的所述二层网络协议报文解封装;所述PE获得所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;所述PE将确定出的所述对应关系作为故障通知对应关系存储。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述故障通知对应关系中,至少还包括下述中的一种:所述PE接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,在所述故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,所述PE根据获得的故障通知对应关系和所述端口号来确定出现故障的传输链路,包括:所述PE更新存储的故障通知对应关系,并根据更新后的故障通知对应关系确定出现故障的传输链路。
第三方面,提供了一种确定网络故障的装置,包括:确定单元,用于在确定出提供商边缘PE设备和客户边缘CE设备之间的传输链路出现故障时,确定故障通知对应关系,并将确定的故障通知对应关系传输给生成单元,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址,所述指定的组播地址与二层网络协议规定的地址对应;生成单元,用于获得所述确定单元传输的所述故障通知对应关系,并根据确定出的所述故障通知对应关系,生成故障信息通知报文,并将所述故障信息通知报文传输给发送单元,所述故障信息通知报文中包括所述故障通知对应关系、用于标记该报文是故障信息通知报文的标识以及所述PE设备出现故障的端口号;发送单元,用于获得所述生成单元生成的故障信息通知报文,并将所述故障信息通知报文发送给加入所述指定的组播地址对应的组播组的其他PE。
在第三方面的第一种可能的实现方式中,所述确定单元,具体用于在所述PE设备和CE设备之间的传输链路正常时,所述PE设备接收CE设备发送的二层网络协议报文,所述二层网络协议报文中的目的MAC地址是所述二层网络协议规定的地址;所述PE设备将所述二层网络协议报文中的目的MAC地址替换为所述指定的组播地址,并确定接收到的所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;所述PE将确定出的所述对应关系作为故障通知对应关系存储。
结合第三方面或第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述确定单元,确定出的所述故障通知对应关系中,还包括下述中的至少一种:所述PE接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
结合第三方面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,在所述确定单元确定出的故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,所述确定单元,具体用于更新存储的故障通知对应关系。
第四方面,提供了一种确定网络故障的装置,包括:接收单元,用于接收与提供商边缘PE设备加入指定的组播地址对应的组播组的其他PE发送的报文,并将所述报文传输给确定单元,所述指定的组播地址与二层网络协议规定的地址对应;第一确定单元,用于获得所述接收单元传输的报文,根据用于标记报文是否是故障信息通知报文的标识,确定接收到的报文是否是故障信息通知报文,并将判断结果传输给获得单元;获得单元,用于获得所述第一确定单元的判断结果,并在所述确定单元确定出接收到的报文是故障信息通知报文时,获得所述故障信息通知报文中的故障通知对应关系,以及发送所述故障信息通知报文的PE设备出现故障的端口号,并将获得的故障通知对应关系和端口号传输给第二确定单元,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址;第二确定单元,用于接收所述获得单元传输的故障通知对应关系和所述端口号,根据获得的故障通知对应关系和所述端口号来确定出现故障的传输链路。
在第四方面的第一种可能的实现方式中,所述第一确定单元,具体用于按照下述方式确定所述故障通知对应关系:在确定出接收到报文是二层网络协议报文时,对接收到的所述二层网络协议报文解封装;获得所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;将确定出的所述对应关系作为故障通知对应关系存储。
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述第一确定单元确定出的所述故障通知对应关系中,至少还包括下述中的一种:所述PE接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
结合第四方面的第二种可能的实现方式,在第四方面的第三种可能的实现方式中,在所述第一确定单元确定出的故障通知对应关系中包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,还包括:更新单元,用于更新存储的故障通知对应关系,并将更新后的故障通知对应关系传输给第二确定单元;所述第二确定单元,还用于根据所述更新单元更新后的故障通知对应关系确定出现故障的传输链路。
第五方面,提供了一种确定网络故障的设备,包括存储器,用于存储程序代码,以及存储故障通知对应关系,并将存储的程序代码通过总线传输给信号处理器;信号处理器,用于获得存储器中存储的程序代码,并按照获得的程序代码,执行下述操作:在确定出PE设备和CE设备之间的传输链路出现故障时,确定故障通知对应关系;并根据确定出的所述故障通知对应关系,生成故障信息通知报文,并将所述故障信息通知报文传输给接口,所述故障信息通知报文中包括所述故障通知对应关系、用于标记该报文是故障信息通知报文的标识以及所述PE设备出现故障的端口号。所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址,所述指定的组播地址与二层网络协议规定的地址对应。接口,用于获得所述信号处理器生成的故障信息通知报文,并将所述故障信息通知报文发送给加入所述指定的组播地址对应的组播组的其他PE。
在第五方面的第一种可能的实现方式中,信号处理器,具体用于在所述PE设备和CE设备之间的传输链路正常时,接收CE设备发送的二层网络协议报文,将确定出的所述对应关系作为故障通知对应关系传输给存储器501并存储。所述二层网络协议报文中的目的MAC地址是所述二层网络协议规定的地址;将所述二层网络协议报文中的目的MAC地址替换为所述指定的组播地址,并确定接收到的所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;将确定出的所述对应关系作为故障通知对应关系传输给存储器并存储。
结合第五方面或第五方面的第一种可能的实现方式,在第五方面的第二种可能的实现方式中,在故障通知对应关系中,还包括下述中的至少一种:所述PE接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
结合第五方面的第二种可能的实现方式,在第五方面的第三种可能的实现方式中,在确定出的故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,所述信号处理器,还用于更新存储的故障通知对应关系,并将更新后的故障通知对应关系发送给存储器存储。
第六方面,提供了一种确定网络故障的设备,包括接口,用于接收与PE设备接收加入指定的组播地址对应的组播组的其他PE发送的报文,并将所述报文传输给信号处理器,所述指定的组播地址与二层网络协议规定的地址对应。存储器,用于存储程序代码,以及存储故障通知对应关系,并将存储的程序代码通过总线传输给信号处理器。信号处理器,用于获得存储器中存储的程序代码,并按照获得的程序代码执行:获得接口传输的报文,根据用于标记报文是否是故障信息通知报文的标识,确定接收到的报文是否是故障信息通知报文,并在确定出接收到的报文是故障信息通知报文时,获得所述故障信息通知报文中的故障通知对应关系,以及发送所述故障信息通知报文的PE设备出现故障的端口号,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址。根据获得的故障通知对应关系和所述端口号来确定出现故障的传输链路。
在第六方面的第一种可能的实现方式中,信号处理器,具体用于按照下述方式确定所述故障通知对应关系:在确定出接收到报文是二层网络协议报文时,对接收到的所述二层网络协议报文解封装;获得所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;将确定出的所述对应关系作为故障通知对应关系存储。
结合第六方面或第六方面的第一种可能的实现方式,在第六方面的第二种可能的实现方式中,信号处理器确定出的所述故障通知对应关系中,至少还包括下述中的一种:所述PE接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
结合第六方面的第二种可能的实现方式,在第六方面的第三种可能的实现方式中,在信号处理器确定出的所述故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,所述信号处理器还用于更新存储的故障通知对应关系,并将更新后的故障通知对应关系传输给存储器,以及根据更新后的故障通知对应关系确定出现故障的传输链路。
本发明提出的技术方案中,在确定出PE设备和CE设备之间的传输链路出现故障时,PE设备确定故障通知对应关系,并根据确定出的故障通知对应关系生成故障信息通知报文,以及将生成的故障信息通知报文发送给与加入指定的组播地址对应的组播组的其他PE,其他PE可以根据接收到的故障信息通知报文,来确定出现故障的传输链路,通过该方案,能够快速通知网络故障,有效地减小网络传输故障对业务的影响,减少网络传输链路中传输的业务的中断时间,有效解决某些情况下不能够快速的确定网络故障,从而使得网络用户之间的业务受到网络故障影响较大的问题。
附图说明
图1为通常情况下,网络用户通过公网构建的二层网络架构组成示意图;
图2为本发明实施例一中,提出的确定网络故障的系统结构组成示意图;
图3为本发明实施例二中,提出的确定网络故障的方法流程图;
图4为本发明实施例三中,提出的确定网络故障的方法流程图;
图5a为本发明实施例三中,提出的确定网络故障的装置结构组成示意图;
图5b为本发明实施例三中,提出的确定网络故障的设备结构组成示意图;
图6为本发明实施例四中,提出的确定网络故障的方法流程图;
图7a为本发明实施例四中,提出的确定网络故障的装置结构组成示意图;
图7b为本发明实施例四中,提出的确定网络故障的设备结构组成示意图。
具体实施方式
针对网络用户通过公网构建的二层网络,在某些情况下不能够快速的确定网络故障,从而使得网络用户之间的业务受到网络故障影响较大的问题,本发明提出的技术方案中,在确定出PE设备和CE设备之间的传输链路出现故障时,PE设备确定故障通知对应关系,并根据确定出的故障通知对应关系生成故障信息通知报文,以及将生成的故障信息通知报文发送给加入指定的组播地址对应的组播组的其他PE,其他PE可以根据接收到的故障信息通知报文,来确定出现故障的传输链路,通过该方案,能够快速通知网络故障,有效地减小网络传输故障对业务的影响,减少网络传输链路中传输的业务的中断时间,有效解决某些情况下不能够快速的确定网络故障,从而使得网络用户之间的业务受到网络故障影响较大的问题。
下面将结合各个附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细地阐述。
实施例一
本发明实施例一提出一种确定网络故障的系统,该系统结构组成如图2所示,网络用户通过网络提供商提供的网络来构建归属该网络用户的二层网络。其中,网络提供商提供的网络可以称之为公网,该网络用户构建的二层网络可以称之为私网。图2所示的系统架构中,以两个网络用户为例来进行详细阐述。两个网络用户分别是网络用户A(在图2中以User A标识),网络用户B(在图2中以User B标识)。在图2所示的系统架构组成示意图中,网络用户A通过公网构建的归属于网络用户A的私网,采用虚拟局域网(英文:Virtual LocalArea Network,缩写:VLAN)标识(英文:Identifier,缩写:ID)为100的VLAN标签(英文:tag)来标识。网络用户B通过公网构建的归属于网络用户B的私网,采用VLAN200来标识。对于一个网络用户来说,如图2所示的网络用户A或网络用户B,均可以构建多个私网,网络用户的多个私网可以采用不同的VLAN来标识,例如网络用户A的其它私网还可以采用VLAN300来标识。下面以图2中所示的网络用户A构建的私网为例来对该系统架构组成进行详细阐述。
网络用户A设置CE设备,具体如图2所示,网络用户A共设置了两个CE设备,分别是CE1和CE2。网络提供商设置PE设备,具体如图2所示,网络提供商共设置了两个PE设备,分别是PE1和PE2。其中,CE1和PE1连接,PE1和PE2之间通过公网连接,PE2和CE2连接。PE1和PE2之间采用透明传输的方式转发二层网络协议报文。对于系统中的每个CE设备和每个PE设备,有各自的设备端口号、设备标识、端口状态、所归属的网络等属性。其中,设备标识可以是该设备的介质访问控制(英文:media access control,缩写:MAC)地址。还可以是该设备在组网过程中,由组网人员所规定的能够唯一标识该设备的编号。本发明实施例一提出的技术方案中,将以MAC地址作为设备的设备标识为例进行详细阐述。例如如图2所示,对于设备标识为CE1的CE设备,其所在私网的其中一个VLAN的VLAN标签是VLAN100。对于公网中的PE设备,以设备标识是PE1为例进行详细阐述。私网的CE1和公网的PE1连接,CE1和PE1之间可以有多个端口传输报文,本发明实施例一以CE1和PE1之间通过CE1的端口号为GE1/0/0的端口和PE1的端口号为GE1/0/1的端口连接为例来进行详细阐述。PE1的端口号为GE1/0/1的端口和CE1的端口号为GE1/0/0的端口连接,PE1通过公网连接到PE2。对于设备标识是PE2的PE设备,和设备标识是CE2的CE设备连接。以PE2的端口号为GE1/0/1的端口和CE2的端口号为GE1/0/0的端口连接。
本发明实施例一提出的技术方案中,可以应用于网络中运行生成树协议(英文:Spanning Tree Protocol,缩写:STP)的网络,也可以应用于运行其他如链路层发现协议(英文:Link Layer Discovery Protocol,缩写:LLDP)的网络。如图2所示,本发明实施例一提出的技术方案中,以网络中运行STP为例来进行详细阐述。STP只在网络用户各自的私网中运行以生成正确的生成树。即:图2所示的网络VLAN100中的CE设备可以共同完成生成树计算。网络VLAN200中的CE设备可以共同完成生成树计算。
对于网络用户A构建的私网VLAN100,在CE1与PE1之间的传输链路处于正常状态时,CE1向PE1发送二层网络协议报文。本发明实施例一以网络中运行的二层网络协议是STP为例,因此网络中传输的二层网络协议报文也可以称之为STP报文。其中STP报文是运行STP的交换机之间交换的消息帧,也可以称之为桥协议数据单元(英文:Bridge Protocol DataUnit,缩写:BPDU)。同样,对于网络用户B构建的网络VLAN200,在CE3与PE1之间的传输链路处于正常状态时,CE3向PE1发送STP报文。在本发明实施例一提出的技术方案中,网络用户A和网络用户B分别构建的网络VLAN100和VLAN200,其实施原理相同,因此本发明实施例一提出的技术方案中,后文将仅以网络用户A构建的网络VLAN100为例来进行方案的详细阐述,不再对网络用户B构建的网络VLAN200加以赘述。
PE1接收CE1发送的STP报文。PE1将接收到的STP报文的目的MAC地址的替换为一个指定的组播地址。以及PE1在接收到的STP报文中确定并存储故障通知对应关系。其中该故障通知对应关系为报文的源MAC地址、报文的目的MAC地址、以及该报文的VLAN标签之间的对应关系。
本发明实施例一提出的技术方案中,所阐述的报文的目的MAC地址,是和PE将接收到的STP报文的目的MAC地址替换为一个指定的组播地址相同的地址。后文不再赘述。
其中,PE1可以在第一次接收到CE1发送的STP报文时,PE1将接收到的STP报文的目的MAC地址的替换为一个指定的组播地址。并在接收到的STP报文中确定并存储故障通知对应关系。
可选地,PE1存储的故障通知对应关系中,还可以包括下述中的至少一种:接收到的报文的协议类型、传输该报文的该PE设备的端口号、PE设备的设备标识、传输STP报文的端口的端口状态、报文在该端口的传输方向等。传输STP报文的端口的端口状态是指传输该STP报文的端口是处于连接状态还是处于断开状态。端口状态的值可以为链路断开(英文:link-down)、关闭(英文:shutdown)或二层协议隧道去使能(英文:l2protocol-tunneldisable)中的一种。报文在该端口的传输方向表示该端口是接收该报文的端口还是发送该报文的端口。可以用input表示该端口是接收该报文的端口,用output表示该端口是发送该报文的端口。
本发明实施例一提出的技术方案中,如图2所示的系统架构,在网络用户A和网络用户B分别构建的网络中透明传输STP报文为例,PE1中保存的故障通知对应关系可以参见下述表1所示。
表1
报文源MAC地址 | 报文目的MAC地址 | VLAN标签 |
MAC_CE1 | 0180-c200-0000 | 100 |
MAC_CE3 | 0180-c200-0000 | 200 |
MAC_CE2 | 0180-c200-0000 | 100 |
MAC_CE4 | 0180-c200-0000 | 200 |
由于PE1中保护的故障通知对应关系除上述表1中的内容之外,还可以包括接收到的报文的协议类型、传输该报文的该PE设备的端口号、PE设备的设备标识、传输STP报文的端口的端口状态、报文在该端口的传输方向中的一种或几种,因此,PE1中保存的全部故障通知对应关系可以参见下述表2所示。
表2
在上述表2中,PE1存储了全部故障通知对应关系,相比表1中存储的部分故障通知对应关系,在表2中增加了协议类型、设备标识、传输该报文的该PE设备的端口号、端口状态以及传输方向。其中,在PE1中保存协议类型,可以较为快速的确定网络中运行的二层网络协议。在PE1中保存PE设备标识,端口状态,可以从保存的对应关系中直接确定出相应端口是否处于正常状态。在PE1中保存传输方向,可以快速地确定出相应的端口是处于接收报文状态还是处于发送报文状态。
同样地,对于PE2,PE2在第一接收到PE1转发的STP报文时,可以在接收到的STP报文中确定并存储故障通知对应关系。PE2中存储的故障通知对应关系与PE1的执行方式相同,这里不再赘述。本发明实施例一提出的技术方案中,如图2所示的系统架构,在网络用户A和网络用户B分别构建的网络中透明传输STP报文为例,PE2中保存的故障通知对应关系可以参见下述表3所示。
表3
报文源MAC地址 | 报文目的MAC地址 | VLAN标签 |
MAC_CE2 | 0180-c200-0000 | 100 |
MAC_CE4 | 0180-c200-0000 | 200 |
MAC_CE1 | 0180-c200-0000 | 100 |
MAC_CE3 | 0180-c200-0000 | 200 |
由于PE2中保护的故障通知对应关系除上述表3中的内容之外,还可以包括接收到的报文的协议类型、PE设备的设备标识、传输该报文的该PE设备的端口号、传输STP报文的端口的端口状态、报文在该端口的传输方向中的一种或几种,因此,PE1中保存的全部故障通知对应关系可以参见下述表4所示。
表4
在上述表4中,PE2存储了全部故障通知对应关系,相比表3中存储的部分故障通知对应关系,在表4中增加了协议类型、设备标识、端口状态以及传输方向。其中,在PE2中保存协议类型,可以较为快速的确定网络中运行的二层网络协议。在PE2中保存PE设备标识,端口状态,可以从保存的对应关系中直接确定出相应端口是否处于正常状态。在PE2中保存传输方向,可以快速地确定出相应的端口是处于接收报文状态还是处于发送报文状态。
如图2所示,在CE1和PE1之间的传输链路出现故障的情况下,例如端口标识为GE1/0/1的端口为link-down状态,PE1确定出和CE1连接的传输链路出现故障,则PE1根据自身已经存储的故障通知对应关系中的端口标识为GE1/0/1,并且接收报文状态为接收报文状态的条目发送故障信息通知报文。如果PE1中存储了全部故障通知对应关系,如上述表2所示,则PE1可以对上述存储的表2进行更新,PE1更新后的故障通知对应关系可以参见下述表5所示。
表5
在上述表5中,若PE1中仅保存了如表1所示的故障通知对应关系,则PE1更新后的故障通知对应关系中,对包含上述表5中的报文源MAC地址、报文目的MAC地址和VLAN标签所涉及的列项没有变化,因此不需要进行更新。若PE1中保存了上述表5中所示的故障通知对应关系,则PE1更新后的故障通知对应关系中,由于端口状态发生变化,因此需要更新表5中端口状态所在的列项。
在确定出CE和PE之间的传输链路出现故障时,PE根据更新后的故障通知对应关系,生成故障信息通知报文。故障信息通知报文可以是基于对现有的二层网络协议的某些字段进行扩展后封装而成,也可以是基于预先设定的私有协议封装而成。在故障信息通知报文中包含更新后的故障通知对应关系。相比替换了目的地址后的二层网络协议报文来说,PE生成的故障信息通知报文中的报文源MAC地址、报文目的MAC地址和VLAN标签,是和替换目的地址后的二层网络协议报文中的报文源MAC地址、报文目的MAC地址和VLAN标签相同的,故障信息通知报文中的端口号是PE设备的出现故障的端口号,而二层网络协议报文中端口号是CE设备的端口号。为便于识别该报文是二层网络协议报文,还是故障信息通知报文,在故障信息通知报文中携带用于标记该报文是故障信息通知报文的标识。例如,可以在设定的字段携带数值“1”或“0”来标识该报文是故障信息通知报文。
可选地,若故障信息通知报文中还包括协议类型,则该信息是和二层网络协议报文中的协议类型是相同的。
二层网络协议报文中是不包括PE设备标识的。可选地,若故障信息通知报文中还包括PE设备标识,PE设备标识可以用于发出该故障通知报文的具体的PE设备。
在二层网络协议报文中是不包括端口状态的。可选地,若故障信息通知报文中还包括端口状态,端口状态可以用于通知某个端口是处于故障状态如link-down,还是处于正常状态。
PE将生成的故障信息通知报文发送给通过公网该PE连接的,并在同一组播组的其他PE。其他PE接收到故障信息通知报文后,对接收到的故障信息通知报文进行解封装,通过解封装后的故障信息通知报文,获得故障信息通知报文中封装的故障通知对应关系,根据获得的故障通知对应关系来确定出现故障的传输链路。可选地,还可以根据在故障信息通知报文中获得的故障通知对应关系,进一步更新自身存储的故障通知对应关系。
相比一般情况下,PE将接收到的二层网络协议报文的目的地址替换为一个指定的组播地址,然后将替换目的地址后的二层网络协议报文在公网中转发的过程来说,本发明实施例一提出的技术方案中,由于PE预先存储了故障通知对应关系,在PE和CE之间的传输链路出现故障时,PE更新存储的故障通知对应关系,生成故障信息通知报文,其中故障信息通知报文的目的地址即为一般情况下的替换后的组播地址,PE将生成的故障信息通知报文在公网中转发。
下面以PE中存储全部故障通知对应关系以及图2所示的系统架构为例来详细进行阐述,PE1可以根据上述表5,生成故障信息通知报文通过公网发送给PE2。故障信息通知报文中可以包含下述内容:
1)报文源MAC地址:MAC_CE1。
2)报文目的MAC地址:替换后的组播MAC地址。
3)协议类型:STP。
4)VLAN信息:VLAN100。
5)发送报文的源PE设备的MAC地址:PE1。
6)端口号:GE1/0/1。
7)端口状态:link-down。
故障信息通知报文经过公网传输给PE2,PE2根据故障信息通知报文中的故障通知对应关系,例如报文源MAC地址、报文目的MAC地址、协议类型、端口号等,PE2对接收到的故障信息通知报文进行解封装,通过解封装后的故障信息通知报文,获得故障信息通知报文中封装的故障通知对应关系,根据获得的故障通知对应关系来确定出现故障的传输链路。进一步地,PE2更新自身维护的故障通知对应关系,即PE2可以根据确定出的故障通知对应关系,更新上述表4,从而可以确定出发生故障的端口号,进而确定出PE1与CE1之间的传输链路出现故障。由于接收到的由PE1发送故障信息通知报文中携带的端口状态值为link-down,相应的PE2也更新端口号为GE1/0/1端口的状态值,更新后的故障通知对应关系具体如下述表6所示。
表6
可选地,本发明实施例一提出的技术方案中,传输链路故障,即端口状态可以包括下述中的至少一种,以图2所示的系统架构为例进行详细阐述:
第一种:如果PE1的端口号为GE1/0/1的端口被手动shutdown,则故障信息通知报文中封装的端口状态可以为shutdown,PE2收到故障信息通知报文后,获知故障信息通知报文中封装的端口状态,可以针对网络中运行的不同的二层网络协议的协议类型对端口号为GE1/0/1的端口设置不同的状态。例如可以将PE2GE1/0/1端口shutdown,并生成相关配置。
第二种:如果PE1的端口号为GE1/0/1的端口被误配置l2protocol-tunneldisable,导致二层网络协议报文透明传输失败,则在故障信息通知报文中封装的故障类型可以为config-disable,PE2收到故障信息通知报文之后,可以针对不同的二层网络协议的协议类型对端口号为GE1/0/1的端口设置不同状态。例如:对于是STP、PVST+等可能导致网络破环失败的二层网络协议,可以设置端口阻塞以丢弃数据流量。
本发明实施例一提出的技术方案中,当PE1的端口GE1/0/1恢复连接状态时,即端口GE1/0/1恢复up时,PE2接收到来自CE1的STP报文后恢复端口GE1/0/1的端口状态。
本发明上述实施例一中提出的技术方案,是以网络中运行STP为例来进行详细阐述的,对于其它二层网络协议,如LLDP等,处理方案相同,在生成的故障信息通知报文中,其包含的内容也相同。
实施例二
基于图2所示的系统架构,本发明实施二提出一种确定网络故障的方法,如图3所示,其具体处理流程图下述:
步骤301,在CE和PE之间的传输链路处于正常状态时,PE接收CE发送的二层网络协议报文。
本发明实施例二提出的技术方案中,可以应用于网络中运行STP的网络,也可以应用于运行其他如LLDP的网络。本发明实施例二以网络中运行的二层网络协议是STP为例,因此网络中传输的二层网络协议报文也可以称之为STP报文。其中STP报文是运行STP的交换机之间交换的消息帧,也可以称之为BPDU。
如图2所示的系统架构中,在CE1和PE1之间的传输链路处于正常状态时,PE1接收CE1发送的STP议报文。
步骤302,PE将接收到的二层网络协议报文的目的MAC地址的替换为一个指定的组播地址。
PE1将接收到的STP报文的目的MAC地址的替换为一个指定的组播地址。
步骤303,PE在接收到的二层网络协议报文中确定并存储故障通知对应关系。
其中该故障通知对应关系为报文的源MAC地址、报文的目的MAC地址、以及该报文的VLAN标签之间的对应关系。
如图2所示的系统架构,PE1在接收到的STP报文中确定并存储故障通知对应关系。
本发明实施例二提出的技术方案中,所阐述的报文的目的MAC地址,是和PE将接收到的STP报文的目的MAC地址替换为一个指定的组播地址相同的地址,后文不再赘述。
其中,PE1可以在第一次接收到CE1发送的STP报文时,PE1将接收到的STP报文的目的MAC地址的替换为一个指定的组播地址。并在接收到的STP报文中确定并存储故障通知对应关系。
可选地,PE1存储的故障通知对应关系中,还可以包括下述中的至少一种:接收到的报文的协议类型、传输该报文的该PE设备的端口号、PE设备的设备标识、传输STP报文的端口的端口状态、报文在该端口的传输方向等。传输STP报文的端口的端口状态是指传输该STP报文的端口是处于连接状态还是处于断开状态。端口状态的值可以为link-down、shutdown或l2protocol-tunnel disable中的一种。报文在该端口的传输方向表示该端口是接收该报文的端口还是发送该报文的端口。可以用input表示该端口是接收该报文的端口,用output表示该端口是发送该报文的端口。
其中,PE1中保存的故障通知对应关系请参见上述实施例一表1及表2中的详细阐述,本发明实施例二不再赘述。
步骤304,PE将替换组播地址后的二层网络协议报文发送给加入指定的组播地址对应的组播组的其他PE。
PE1将替换组播地址后的二层网络协议报文发送给PE2。
步骤305,其他PE接收加入指定的组播地址对应的组播组的PE发送的二层网络协议报文。
PE1将接收到的STP报文发送给PE2。
步骤306,其他PE在接收到的二层网络协议报文中确定并存储故障通知对应关系。
可选地,PE2可以在第一接收到PE1转发的STP报文时,可以在接收到的STP报文中确定并存储故障通知对应关系。PE2中存储的故障通知对应关系与PE1的执行方式相同,这里不再赘述。PE2中保存的故障通知对应关系可以参见上述实施例一表3~表4中的详细阐述,本发明实施例二不再赘述。
步骤307,在CE和PE之间的传输链路出现故障时,PE设备确定故障通知对应关系。
CE1和PE1之间传输链路出现故障的时,PE1确定故障通知对应关系。
步骤308,根据确定出的故障通知对应关系,生成故障信息通知报文。
PE1根据确定出的故障通知对应关系,生成故障信息通知报文。故障信息通知报文可以是基于对现有的二层网络协议的某些字段进行扩展后封装而成,也可以是基于预先设定的私有协议封装而成。在故障信息通知报文中包含更新后的故障通知对应关系。相比替换了目的地址后的二层网络协议报文来说,PE生成的故障信息通知报文中的报文源MAC地址、报文目的MAC地址和VLAN标签,是和替换目的地址后的二层网络协议报文中的报文源MAC地址、报文目的MAC地址和VLAN标签相同的,故障信息通知报文中的端口号是PE设备的出现故障的端口号,而二层网络协议报文中端口号是CE设备的端口号。为便于识别该报文是二层网络协议报文,还是故障信息通知报文,在故障信息通知报文中携带用于标记该报文是故障信息通知报文的标识。例如,可以在设定的字段携带数值“1”或“0”来标识该报文是故障信息通知报文。
步骤309,PE将生成的故障信息通知报文发送给接入指定的组播地址对应的组播组的其他PE。
PE1将生成的故障信息通知报文发送给PE2。
步骤310,其他PE接收到故障信息通知报文后,对接收到的故障信息通知报文进行解封装。
步骤311,通过解封装后的故障信息通知报文,获得故障信息通知报文中封装的故障通知对应关系,根据获得的故障通知对应关系来确定出现故障的传输链路。
在上述步骤310~步骤311中,PE1生成的故障信息通知报文经过公网,传输给PE2,PE2根据故障信息通知报文中的故障通知对应关系,例如报文源MAC地址、报文目的MAC地址、协议类型、端口号等,PE2对接收到的故障信息通知报文进行解封装,通过解封装后的故障信息通知报文,获得故障信息通知报文中封装的故障通知对应关系,根据获得的故障通知对应关系来确定出现故障的传输链路。进一步地,PE2更新自身维护的故障通知对应关系。
其中,本发明实施例二提出的技术方案中,传输链路故障,即端口状态的具体形式,请参见上述实施例一中的详细阐述,本发明实施例二不再赘述。
本发明上述实施例二中提出的技术方案,是以网络中运行STP为例来进行详细阐述的,对于其它二层网络协议,如LLDP等,处理方案相同,在生成的故障信息通知报文中,其包含的内容也相同。
实施例三
相应地,基于图2所示的系统架构,对于PE1来说,本发明实施例三提出一种确定网络故障的方法,如图4所示,其具体处理过程如下述:
步骤41,PE设备确定该PE设备和CE设备之间的传输链路是否出现故障,如果判断结果为是,则执行步骤42,结束处理。
步骤42,在确定出该PE设备和CE设备之间的传输链路出现故障时,PE设备确定故障通知对应关系。
故障通知对应关系包括报文的源MAC地址、报文的目的MAC地址、报文的VLAN标签之间的对应关系,报文的目的MAC地址是指定的组播地址,指定的组播地址与二层网络协议规定的地址对应。
PE设备可以按照下述方式确定故障通知对应关系:
步骤一:在该PE设备和CE设备之间的传输链路正常时,PE设备接收CE设备发送的二层网络协议报文。
二层网络协议报文中的目的MAC地址是二层网络协议规定的地址。
步骤二:PE设备将二层网络协议报文中的目的MAC地址替换为指定的组播地址,并确定接收到的二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及报文的VLAN标签之间的对应关系。
步骤三:PE将确定出的所述对应关系作为故障通知对应关系存储。
可选地,在故障通知对应关系中,还包括下述中的至少一种:
A:PE接收到的报文的协议类型。
B:传输所述报文的所述PE设备的端口号。
C:PE设备的设备标识。
D:传输报文的端口的端口状态。
E:报文在述PE设备端口的传输方向。
其中,PE设备确定故障通知对应关系的具体实施方式请参见上述实施例一及实施例二中的详细阐述,本发明实施例三不再赘述。
步骤43,PE设备将故障信息通知报文发送给与加入指定的组播地址对应的组播组的其他PE。
可选地,在上述步骤42中,若在故障通知对应关系中,还包括传输所述报文的端口的端口状态和报文在PE设备端口的传输方向中的至少一个的情况下,PE设备更新存储的故障通知对应关系,并根据更新后的故障通知对应关系生成故障信息通知报文。
相应地,本发明实施例三还提出一种确定网络故障的装置,如图5a所示,其具体结构组成如下述:
确定单元51,用于在确定出提供商边缘PE设备和客户边缘CE设备之间的传输链路出现故障时,确定故障通知对应关系,并将确定的故障通知对应关系传输给生成单元52,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址,所述指定的组播地址与二层网络协议规定的地址对应。
可选地,上述确定单元51,具体用于按照下述方式确定所述故障通知对应关系:在所述PE设备和CE设备之间的传输链路正常时,接收CE设备发送的二层网络协议报文,所述二层网络协议报文中的目的MAC地址是所述二层网络协议规定的地址;将所述二层网络协议报文中的目的MAC地址替换为所述指定的组播地址,并确定接收到的所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;将确定出的所述对应关系作为故障通知对应关系存储。
可选地,上述确定单元51确定出的所述故障通知对应关系中,还包括下述中的至少一种:所述PE接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
可选地,在所述确定单元51确定出的故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,所述确定单元51,具体用于更新存储的故障通知对应关系。
生成单元52,用于获得所述确定单元51传输的故障通知对应关系,并根据确定出的所述故障通知对应关系,生成故障信息通知报文,并将所述故障信息通知报文传输给发送单元,所述故障信息通知报文中包括所述故障通知对应关系、用于标记该报文是故障信息通知报文的标识以及所述PE设备出现故障的端口号;
发送单元53,用于获得所述生成单元生成的故障信息通知报文,并将所述故障信息通知报文发送给加入所述指定的组播地址对应的组播组的其他PE。
相应地,本发明实施例三还提出一种确定网络故障的设备,如图5b所示,包括存储器501、信号处理器502以及接口503,其中,存储器501、信号处理器502和接口503之间通过总线连接并传输报文。
存储器501,用于存储程序代码,以及存储故障通知对应关系,并将存储的程序代码通过总线传输给信号处理器502。
存储器501,可以是易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);或者非易失性存储器(英文:non-volatilememory),例如快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);或者上述种类的存储器的组合。
信号处理器502,用于获得存储器501中存储的程序代码,并按照获得的程序代码执行下述操作:在确定出PE设备和CE设备之间的传输链路出现故障时,确定故障通知对应关系;并根据所述故障通知对应关系,生成故障信息通知报文,并将所述故障信息通知报文传输给接口503,所述故障信息通知报文中包括更新后的故障通知对应关系、用于标记该报文是故障信息通知报文的标识以及所述PE设备出现故障的端口号。
信号处理器502可以是中央处理器(英文:central processing unit,缩写:CPU),或者是CPU和硬件芯片的组合。信号处理器804还可以是网络处理器(英文:networkprocessor,缩写:NP)。或者是CPU和NP的组合,或者是NP和硬件芯片的组合。
上述硬件芯片可以是以下一种或多种的组合:专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),复杂可编程逻辑器件(英文:complexprogrammable logic device,缩写:CPLD)。
所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址,所述指定的组播地址与二层网络协议规定的地址对应。
可选地,上述信号处理器502,具体用于按照下述方式确定所述故障通知对应关系:在所述PE设备和CE设备之间的传输链路正常时,接收CE设备发送的二层网络协议报文,将确定出的所述对应关系作为故障通知对应关系传输给存储器501并存储。
所述二层网络协议报文中的目的MAC地址是所述二层网络协议规定的地址;将所述二层网络协议报文中的目的MAC地址替换为所述指定的组播地址,并确定接收到的所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;将确定出的所述对应关系作为故障通知对应关系传输给存储器501并存储。
可选地,在故障通知对应关系中,还包括下述中的至少一种:所述PE接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
可选地,在确定出的故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中至少一种的情况时,信号处理器502,还用于更新存储的故障通知对应关系中的所述报文的端口的端口状态;和/或所述报文在所述PE设备端口的传输方向,并将更新后的故障通知对应关系发送给存储器501存储。
接口503,用于获得所述信号处理器502生成的故障信息通知报文,并将所述故障信息通知报文发送给加入指定的组播地址对应的组播组的其他PE。
接口503可以为以下一种或多种:提供有线接口的网络接口控制器(英文:networkinterface controller,缩写:NIC),例如以太网NIC,该以太网NIC可以提供铜线和/或光纤接口;提供无线接口的NIC,例如无线局域网(英文:wireless local area network,缩写:WLAN)NIC。
实施例四
基于图2所示的系统架构,对于和PE1在同一组播组的PE2来说,本发明实施例四提出一种确定网络故障的方法,如图6所示,其具体处理流程如下述:
步骤61,PE设备接收加入指定的组播地址对应的组播组的其他PE发送的报文。
步骤62,PE根据用于标记报文是否是故障信息通知报文的标识,确定接收到的报文是否是故障信息通知报文,如果判断结果为是,执行步骤63,反之,结束处理。
步骤63,PE在确定出接收到的报文是故障信息通知报文时,获得故障信息通知报文中的故障通知对应关系,以及发送故障信息通知报文的PE设备出现故障的端口号。
故障通知对应关系包括报文的源MAC地址、报文的目的MAC地址、报文的VLAN标签之间的对应关系,报文的目的MAC地址是指定的组播地址,所述指定的组播地址与二层网络协议规定的地址对应。
PE设备可以按照下述方式确定所述故障通知对应关系:
步骤一:PE设备在确定出接收到报文是二层网络协议报文时,对接收到的所述二层网络协议报文解封装。
步骤二:PE获得二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系。
步骤三:PE将确定出的所述对应关系作为故障通知对应关系存储。
可选地,在确定出的故障通知对应关系中,至少还包括下述中的一种:
A:PE接收到的报文的协议类型。
B:传输报文的PE设备的端口号。
C:PE设备的设备标识。
D:传输报文的端口的端口状态。
E:报文在PE设备端口的传输方向。
其中,PE设备确定故障通知对应关系的具体实施方式请参见上述实施例一及实施例二中的详细阐述,本发明实施例四不再赘述。
步骤64,PE根据获得的故障通知对应关系和所述端口号来确定出现故障的传输链路。
可选地,在故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,PE更新存储的故障通知对应关系,并根据更新后的故障通知对应关系确定出现故障的传输链路。
相应地,本发明实施例四还提出一种确定网络故障的装置,如图7a所示,包括:
接收单元701,用于接收加入PE设备指定的组播地址对应的组播组的其他PE发送的报文,并将所述报文传输给第一确定单元702,所述指定的组播地址与二层网络协议规定的地址对应。
第一确定单元702,用于获得所述接收单元701传输的报文,根据用于标记报文是否是故障信息通知报文的标识,确定接收到的报文是否是故障信息通知报文,并将判断结果传输给获得单元703。
具体地,上述第一确定单元702,具体用于按照下述方式确定所述故障通知对应关系:在确定出接收到报文是二层网络协议报文时,对接收到的所述二层网络协议报文解封装;获得所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;将确定出的所述对应关系作为故障通知对应关系存储。
具体地,上述第一确定单元702确定出的所述故障通知对应关系中,至少还包括下述中的一种:所述PE接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
获得单元703,用于获得所述第一确定单元702的判断结果,并在所述确定单元确定出接收到的报文是故障信息通知报文时,获得所述故障信息通知报文中的故障通知对应关系,以及发送所述故障信息通知报文的PE设备出现故障的端口号,并将获得的故障通知对应关系和端口号传输给第二确定单元704,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址。
第二确定单元704,用于接收所述获得单元传输的故障通知对应关系和所述端口号,根据获得的故障通知对应关系和所述端口号来确定出现故障的传输链路。
可选地,在所述第一确定单元702确定出的故障通知对应关系中包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,还包括:
更新单元,用于更新存储的故障通知对应关系,并将更新后的故障通知对应关系传输给第二确定单元;所述第二确定单元,用于根据所述更新单元更新后的故障通知对应关系确定出现故障的传输链路。
相应地,本发明实施例四还提出一种确定网络传输故障的装置,如图7b所示,包括接口81、存储器82以及信号处理器83,接口81、存储器82以及信号处理器83之间通过总线连接传输数据。
接口81,用于接收与PE设备加入指定的组播地址对应的组播组的其他PE发送的报文,并将所述报文传输给信号处理器83,所述指定的组播地址与二层网络协议规定的地址对应。
接口81可以为以下一种或多种:提供有线接口的NIC,例如以太网NIC,该以太网NIC可以提供铜线和/或光纤接口;提供无线接口的NIC,例如WLANNIC。
存储器82,用于存储程序代码,以及存储故障通知对应关系,并将存储的程序代码通过总线传输给信号处理器83。
存储器82,可以是volatile memory,例如RAM;或者non-volatile memory,例如flash memory,HDD或SSD;或者上述种类的存储器的组合。
信号处理器83,用于获得存储器82中存储的程序代码,并按照获得的程序代码执行:获得接口81传输的报文,根据用于标记报文是否是故障信息通知报文的标识,确定接收到的报文是否是故障信息通知报文,并在确定出接收到的报文是故障信息通知报文时,获得所述故障信息通知报文中的故障通知对应关系,以及发送所述故障信息通知报文的PE设备出现故障的端口号,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址。根据获得的故障通知对应关系和所述端口号来确定出现故障的传输链路。
信号处理器83可以是CPU,或者是CPU和硬件芯片的组合。信号处理器83还可以是NP。或者是CPU和NP的组合,或者是NP和硬件芯片的组合。
上述硬件芯片可以是以下一种或多种的组合:ASIC,FPGA,CPLD)
可选地,信号处理器83,具体用于按照下述方式确定所述故障通知对应关系:在确定出接收到报文是二层网络协议报文时,对接收到的所述二层网络协议报文解封装;获得所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;将确定出的所述对应关系作为故障通知对应关系存储。
可选地,信号处理器83确定出的所述故障通知对应关系中,至少还包括下述中的一种:所述PE接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
可选地,在信号处理器83确定出的故障通知对应关系中包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,信号处理器83还用于更新存储的故障通知对应关系,并将更新后的故障通知对应关系传输给存储器82。
本领域的技术人员应明白,本发明的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明可采用软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器、只读光盘、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (12)
1.一种确定网络故障的方法,其特征在于,包括:
在提供商边缘PE设备确定出所述PE设备和客户边缘CE设备之间的传输链路出现故障时,所述PE设备确定故障通知对应关系,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址,所述指定的组播地址与二层网络协议规定的地址对应;
所述PE设备根据所述故障通知对应关系,生成故障信息通知报文,所述故障信息通知报文中包括所述故障通知对应关系、用于标记该报文是故障信息通知报文的标识以及所述PE设备出现故障的端口号;并且
所述PE设备将所述故障信息通知报文发送给加入所述指定的组播地址对应的组播组的其他PE设备;
其中,所述PE设备确定故障通知对应关系,包括:在所述PE设备和CE设备之间的传输链路正常时,所述PE设备接收CE设备发送的二层网络协议报文,所述二层网络协议报文中的目的MAC地址是所述二层网络协议规定的地址;
所述PE设备将所述二层网络协议报文中的目的MAC地址替换为所述指定的组播地址,并确定接收到的所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;
所述PE设备将确定出的所述对应关系作为故障通知对应关系存储。
2.如权利要求1所述的方法,其特征在于,所述故障通知对应关系中,还包括下述中的至少一种:
所述PE设备接收到的报文的协议类型;
传输所述报文的所述PE设备的端口号;
所述PE设备的设备标识;
传输所述报文的端口的端口状态;
所述报文在所述PE设备端口的传输方向。
3.如权利要求2所述的方法,其特征在于,在所述故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,所述PE设备确定故障通知对应关系,包括:
所述PE设备更新存储的故障通知对应关系。
4.一种确定网络故障的方法,其特征在于,包括:
提供商边缘PE设备接收加入指定的组播地址对应的组播组的其他PE设备发送的报文;
所述PE设备根据用于标记报文是否是故障信息通知报文的标识,确定接收到的报文是否是故障信息通知报文;
所述PE设备在确定出接收到的报文是故障信息通知报文时,获得所述故障信息通知报文中的故障通知对应关系,以及发送所述故障信息通知报文的PE设备出现故障的端口号,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址,所述指定的组播地址与二层网络协议规定的地址对应;并
所述PE设备根据获得的故障通知对应关系和所述端口号来确定出现故障的传输链路;
其中,在PE设备接收加入指定的组播地址对应的组播组的其他PE设备发送的报文之后,确定接收到的报文是否是故障信息通知报文之前,所述PE设备按照下述方式确定所述故障通知对应关系:
所述PE设备在确定出接收到报文是二层网络协议报文时,对接收到的所述二层网络协议报文解封装;
所述PE设备获得所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;
所述PE设备将确定出的所述对应关系作为故障通知对应关系存储。
5.如权利要求4所述的方法,其特征在于,所述故障通知对应关系中,至少还包括下述中的一种:
所述PE设备接收到的报文的协议类型;
传输所述报文的所述PE设备的端口号;
所述PE设备的设备标识;
传输所述报文的端口的端口状态;
所述报文在所述PE设备端口的传输方向。
6.如权利要求5所述的方法,其特征在于,在所述故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,所述PE设备根据获得的故障通知对应关系和所述端口号来确定出现故障的传输链路,包括:
所述PE设备更新存储的故障通知对应关系,并根据更新后的故障通知对应关系确定出现故障的传输链路。
7.一种确定网络故障的装置,其特征在于,包括:
确定单元,用于在确定出提供商边缘PE设备和客户边缘CE设备之间的传输链路出现故障时,确定故障通知对应关系,并将确定的故障通知对应关系传输给生成单元,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址,所述指定的组播地址与二层网络协议规定的地址对应;其中,在所述PE设备和CE设备之间的传输链路正常时,所述PE设备接收CE设备发送的二层网络协议报文,所述二层网络协议报文中的目的MAC地址是所述二层网络协议规定的地址;所述PE设备将所述二层网络协议报文中的目的MAC地址替换为所述指定的组播地址,并确定接收到的所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;所述PE设备将确定出的所述对应关系作为故障通知对应关系存储;
生成单元,用于获得所述确定单元传输的所述故障通知对应关系,并根据确定出的所述故障通知对应关系,生成故障信息通知报文,并将所述故障信息通知报文传输给发送单元,所述故障信息通知报文中包括所述故障通知对应关系、用于标记该报文是故障信息通知报文的标识以及所述PE设备出现故障的端口号;
发送单元,用于获得所述生成单元生成的故障信息通知报文,并将所述故障信息通知报文发送给加入所述指定的组播地址对应的组播组的其他PE设备。
8.如权利要求7所述的装置,其特征在于,所述确定单元,确定出的所述故障通知对应关系中,还包括下述中的至少一种:所述PE设备接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
9.如权利要求8所述的装置,其特征在于,在所述确定单元确定出的故障通知对应关系中,包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,
所述确定单元,具体用于更新存储的故障通知对应关系。
10.一种确定网络故障的装置,其特征在于,包括:
接收单元,用于接收与提供商边缘PE设备加入指定的组播地址对应的组播组的其他PE设备发送的报文,并将所述报文传输给第一确定单元,所述指定的组播地址与二层网络协议规定的地址对应;
所述第一确定单元,用于获得所述接收单元传输的报文,根据用于标记报文是否是故障信息通知报文的标识,确定接收到的报文是否是故障信息通知报文,并将判断结果传输给获得单元;其中,在确定出接收到报文是二层网络协议报文时,对接收到的所述二层网络协议报文解封装;获得所述二层网络协议报文中的报文的源MAC地址、替换后的报文的目的MAC地址、以及所述报文的VLAN标签之间的对应关系;将确定出的所述对应关系作为故障通知对应关系存储;
获得单元,用于获得所述第一确定单元的判断结果,并在所述第一确定单元确定出接收到的报文是故障信息通知报文时,获得所述故障信息通知报文中的故障通知对应关系,以及发送所述故障信息通知报文的PE设备出现故障的端口号,并将获得的故障通知对应关系和端口号传输给第二确定单元,所述故障通知对应关系包括报文的源介质访问控制MAC地址、所述报文的目的MAC地址、所述报文的VLAN标签之间的对应关系,所述报文的目的MAC地址是指定的组播地址;
第二确定单元,用于接收所述获得单元传输的故障通知对应关系和所述端口号,根据获得的故障通知对应关系和所述端口号来确定出现故障的传输链路。
11.如权利要求10所述的装置,其特征在于,所述第一确定单元确定出的所述故障通知对应关系中,至少还包括下述中的一种:所述PE设备接收到的报文的协议类型;传输所述报文的所述PE设备的端口号;所述PE设备的设备标识;传输所述报文的端口的端口状态;所述报文在所述PE设备端口的传输方向。
12.如权利要求11所述的装置,其特征在于,在所述第一确定单元确定出的故障通知对应关系中包括传输所述报文的端口的端口状态和所述报文在所述PE设备端口的传输方向中的至少一个的情况下,还包括:
更新单元,用于更新存储的故障通知对应关系,并将更新后的故障通知对应关系传输给第二确定单元;
所述第二确定单元,还用于根据所述更新单元更新后的故障通知对应关系确定出现故障的传输链路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310713893.XA CN104734874B (zh) | 2013-12-20 | 2013-12-20 | 一种确定网络故障的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310713893.XA CN104734874B (zh) | 2013-12-20 | 2013-12-20 | 一种确定网络故障的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104734874A CN104734874A (zh) | 2015-06-24 |
CN104734874B true CN104734874B (zh) | 2018-04-27 |
Family
ID=53458331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310713893.XA Active CN104734874B (zh) | 2013-12-20 | 2013-12-20 | 一种确定网络故障的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104734874B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106921473B (zh) * | 2015-12-28 | 2020-03-31 | 华为技术有限公司 | 一种轨道交通无线局域网的数据传输方法及相关设备 |
CN110661701B (zh) * | 2018-06-30 | 2022-04-22 | 华为技术有限公司 | 一种避免环路的通信方法、设备和系统 |
CN111372144B (zh) * | 2020-03-23 | 2021-09-28 | 北京小鸟科技股份有限公司 | 组播视频码流的链路备份系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101047601A (zh) * | 2006-04-10 | 2007-10-03 | 华为技术有限公司 | 基于vpls的双归属网络的实现方法及系统 |
CN101237343A (zh) * | 2007-02-02 | 2008-08-06 | 华为技术有限公司 | 故障时快速切换的方法及快速切换系统 |
CN101340377A (zh) * | 2008-07-30 | 2009-01-07 | 华为技术有限公司 | 一种用于二层网络数据传输的方法、装置及其系统 |
EP2547047A1 (en) * | 2011-07-08 | 2013-01-16 | Alcatel Lucent | Centralized system for routing ethernet packets over an internet protocol network |
-
2013
- 2013-12-20 CN CN201310713893.XA patent/CN104734874B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101047601A (zh) * | 2006-04-10 | 2007-10-03 | 华为技术有限公司 | 基于vpls的双归属网络的实现方法及系统 |
CN101237343A (zh) * | 2007-02-02 | 2008-08-06 | 华为技术有限公司 | 故障时快速切换的方法及快速切换系统 |
CN101340377A (zh) * | 2008-07-30 | 2009-01-07 | 华为技术有限公司 | 一种用于二层网络数据传输的方法、装置及其系统 |
EP2547047A1 (en) * | 2011-07-08 | 2013-01-16 | Alcatel Lucent | Centralized system for routing ethernet packets over an internet protocol network |
Non-Patent Citations (1)
Title |
---|
《L2VPN_VPWS的研究与实现》;李丹荔;《中国优秀硕士学位论文全文数据库》;20070915;正文第24-72页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104734874A (zh) | 2015-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7835306B2 (en) | Translating MST instances between ports of a bridge in a computer network | |
US8305938B2 (en) | Interworking an ethernet ring network with a spanning tree controlled ethernet network | |
AU2003286511B2 (en) | Modified spanning tree protocol for metropolitan area network | |
US8854982B2 (en) | Method and apparatus for managing the interconnection between network domains | |
US9665530B2 (en) | Method and system for implementing elastic network interface and interconnection | |
CN104378296B (zh) | 一种报文转发方法及设备 | |
CN106992874A (zh) | 用于通信的方法和网络设备 | |
CN105634770B (zh) | 部署虚拟扩展局域网的方法和装置 | |
CN108880970A (zh) | 端口扩展器的路由信令和evpn收敛 | |
CN107888406A (zh) | 方法、系统和提供商边缘设备 | |
CN101286922B (zh) | 一种信令控制的方法、系统及设备 | |
CN103684953B (zh) | 避免多连接到vpls传输网的以太网环路中流量损失方法、装置 | |
US20130254356A1 (en) | Systems and methods for recovery from network changes | |
CN105049360A (zh) | 用于促进互连交换机的网络中的交换机虚拟化的方法和系统 | |
CN105308913A (zh) | 用于支持分布式中继控制协议(drcp)的分组数据单元(pdu)结构 | |
CN104937885A (zh) | 用于结构交换机的全局vlan | |
CN105897465A (zh) | 设备配置方法及装置 | |
EP3522454B1 (en) | Connectivity fault management in a communication network | |
CN106789748A (zh) | 一种分布式接入复用器dam叠加网络系统及其装置 | |
US20160099858A1 (en) | Span Session Monitoring | |
CN105763439B (zh) | 一种多链接透明互联网络中数据中心的互联方法及装置 | |
CN104734874B (zh) | 一种确定网络故障的方法及装置 | |
CN107896188A (zh) | 数据转发方法及装置 | |
CN104468233B (zh) | 以太网虚拟化互联双归属站点故障切换方法及装置 | |
CN104780138B (zh) | 私有冗余协议网络中stp/rstp报文的透传方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |