网络保护切换方法、装置、设备及存储介质
技术领域
本发明属于通信技术领域,具体涉及一种网络保护切换方法、装置、设备及存储介质。
背景技术
随着大数据、云计算、移动互联网的迅速发展,数据中心承载的流量与日俱增,对数据中心网络的可靠性提出了更高的要求。当前电信级网络的高可靠性,主要体现在通信链路或者网络设备发生故障后,网络系统可以从故障中快速恢复,业务恢复时间满足50ms的保护切换性能要求。
单光纤的带宽容量逐步增大,对采用单纤容量32T的网络系统来说,传统的50ms保护切换性能意味着将有1.6T比特数据丢失的风险。随着L波段的引入,光纤容量将进一步提高。叠加每年数量众多的各种因素造成的网络故障,数据中心网络的保护切换技术对承载业务的影响愈发不容忽视,保护切换方面的技术进步也愈加有价值。
根据ITU-T G.808.1和MEF 2的定义,网络保护切换技术的时间模型如图1所示,保护切换时间由5个组成部分——故障检测时间、故障等待时间、故障通告时间、切换操作时间和切换操作生效时间。故障等待时间为保护切换技术可选的配置项,追求高可靠性的保护切换场景,通常不设置故障等待时间。切换操作生效时间与网络设备中转发部件与控制部件间的通信效率,以及通信链路的传输时延等相关,可忽略。为了优化网络保护切换技术的性能,需分别努力缩短故障检测时间、故障通告时间和切换操作时间。
保护切换技术根据实现功能的不同,可分为故障检测技术和故障切换技术。故障检测技术侧重于网络的故障检测和诊断,常使用CCM技术或BFD技术来检测网络链路的连通性。故障切换技术侧重于网络的故障恢复,主要通过对硬件、链路、路由信息和业务信息等进行冗余备份,在发生故障时快速切换,从而保证网络业务的连续性。如图2所示,Device A和Device C间建立了保护切换机制,主用通路为Device A–Device B–Device C,备用通路为Device A-Device H-Device G-Device F-Device E-Device D–Device C,主用和备用通路均配置有故障检测机制。若主用通路发生故障后,可采用预先设定的备用通路传输Device A——>Device C的业务,实现快速的保护切换。
根据G.8013和G.8113的定义,CCM(连续性检测消息,Continuity Check Message)是一种主动的故障检测技术,通过在网络链路上定时传输CCM报文,实现链路连通性的检测。保护切换技术采用3.33ms的报文发送周期,在3.5倍的周期内收不到对端发送的CCM报文,即认为链路发生故障。
根据RFC5880-5885、RFC7130、RFC7880的定义,BFD(双向转发检测,BidirectionalForwarding Detection)是一个通用的、标准化的、介质无关、协议无关的快速故障检测机制,用于快速检测、监控网络中链路或IP路由的转发连通状况。BFD的检测机制是两个系统建立BFD会话,并沿它们之间的路径周期性发送BFD控制报文,如果一方在既定的时间内没有收到BFD控制报文,则认为路径上发生了故障。保护切换技术采用3ms的BFD报文发送周期,约定的报文检测倍数可按需配置,默认的报文检测倍数为3倍的报文发送周期。
根据ITU和IETF的协议定义,保护切换的故障检测时间通常已经固定耗时了10ms左右,因此在实际过程中难以进一步的降低保护切换时间。
发明内容
有鉴于此,本发明的目的在于提供一种网络保护切换方法、装置、设备及存储介质,以改善上述问题。
为了达到上述目的,本发明提供以下技术方案:
一种网络保护切换方法,其包括:
S101,根据接收的故障检测报文情况,判断是否发生预故障事件;
S102,当检测发生预故障事件后,通告切换操作系统,以运转预设的状态机,得到切换决策;
S103,根据进一步接收的故障检测报文情况,判断是否发生故障事件;
S104,当检测发生故障事件后,通告所述切换操作系统,以执行所述切换决策。
优选地,设定连续N个发包周期未收到故障检测报文,则判定发生故障事件,则当连续M个发包周期未收到故障检测报文判定发生预故障事件,其中,M,N为正整数,且M<N。
优选地,还包括:
在检测到预故障事件后,若在X个发包周期中,均未再检测到预故障事件或者故障事件,则上报预故障恢复事件;
在收到预故障恢复事件后,通告所述切换操作系统取消当前的切换决策,并返回S101。
优选地,X大于等于N。
优选地,在多对保护切换机制同时存在的场景中,采用DMA机制进行切换决策的执行。
本发明实施例还提供了一种网络保护切换装置,其包括:
预故障判断单元,用于根据接收的故障检测报文情况,判断是否发生预故障事件;
切换决策获取单元,用于当检测发生预故障事件后,通告切换操作系统,以运转预设的状态机,得到切换决策;
故障判断单元,用于根据进一步接收的故障检测报文情况,判断是否发生故障事件;
切换决策执行单元,用于当检测发生故障事件后,通告所述切换操作系统,以执行所述切换决策。
优选地,设定连续N个发包周期未收到故障检测报文,则判定发生故障事件,则当连续M个发包周期未收到故障检测报文判定发生预故障事件,其中,M,N为正整数,且M<N。
优选地,还包括:
预故障恢复单元,用于在检测到预故障事件后,若在X个发包周期中,均未再检测到预故障事件或者故障事件,则上报预故障恢复事件,并在收到预故障恢复事件后,通告所述切换操作系统取消当前的切换决策。
本发明实施例还提供了一种网络保护切换设备,其包括存储器以及处理器,所述存储器内存储有计算机程序,所述计算机程序能够被所述处理器执行,以实现如上述的网络保护切换方法。
本发明实施例还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序能够被所述处理器执行,以实现如上述的网络保护切换方法。
通过定义预故障事件,在预故障事件发生后,即可通告故障切换系统,运转状态机预先得到切换决策,如此可以降低在故障发生后切换决策的选择耗时,从而可以有效的降低保护切换时间。本发明实施例可应用到以CCM或BFD作为故障检测方式的各种保护切换技术中,如链路聚合组保护切换、ECMP保护切换、VRRP保护切换、双归属保护切换、SRv6应用的保护切换等,可显著提升保护切换的性能,有效保证数据中心网络的可靠性,具有较强的实际应用意义。
附图说明
图1为现有的网络保护切换技术的时间模型图。
图2为现有的网络保护切换技术组网图。
图3为现有的保护切换时空图。
图4为本发明第一实施例提供的网络保护切换方法的流程示意图。
图5为本发明一实施例提供的一种保护切换时空图。
图6为本发明一实施例提供的另一种保护切换时空图。
图7为本发明第二实施例提供的网络保护切换装置的结构示意图。
具体实施方式
下面结合具体实施例和附图对本发明方案作进一步的阐述。
请参阅图4,本发明第一实施例提供了一种网络保护切换方法,其可由网络保护切换设备(以下简称切换设备)来执行,特别的,由所述切换设备内的一个或者多个处理器来执行,以实现如下方法:
S101,根据接收的故障检测报文情况,判断是否发生预故障事件。
在本实施例中,所述切换设备可为网络设备。其中,可设定连续N个发包周期未收到故障检测报文判定切换设备发生故障事件,则本实施例设定当连续M个发包周期未收到故障检测报文判定为发生预故障事件,其中,M,N为正整数,且M<N。
在本实施例中,M可根据实际的需要进行设置,例如可设置为1/3N,1/2N,2/3N等,本发明不做具体限定。
需要说明的是,本实施例定义的预故障事件可在网络设备的OAM系统中实现,OAM系统可在转发芯片、FPGA、DPU、CPU等组件中实现。
S102,当检测发生预故障事件后,通告切换操作系统,以运转预设的状态机,得到切换决策。
在本实施例中,得到切换决策即为图5中的切换操作1。其中,状态机用于定义在不同故障状态下的切换决策,切换决策是预先设定的,例如,其包括在何种状态下会切换到哪个备用的链路等。
S103,根据进一步接收的故障检测报文情况,判断是否发生故障事件。
在本实施例中,由前述可知,当连续M个发包周期未收到故障检测报文判定为发生预故障事件,此后,所述切换设备持续对故障检测报文的接收情况进行监听,若在连续(N-M)个发包周期未收到故障检测报文,则可判断为累积N个发包周期未收到故障检测报文,此时,判断发送了故障事件。
S104,当检测发生故障事件后,通告所述切换操作系统,以执行所述切换决策。
在本实施例中,执行所述切换决策即为图5中的切换操作2,其中,切换决策的执行通常在转发部件中实现,在多对保护切换机制同时存在的场景中,可采用DMA机制进行切换决策的执行,进一步缩减切换决策执行的耗时,以达到优化保护切换性能的目的。
如图3所示,现有的故障检测、故障通告和切换操作为串行的操作。本实施例通过将故障通告和切换决策的选择与故障检测并行执行。通过定义预故障事件,在预故障事件发生后,即可通告故障切换系统,运转状态机预先得到切换决策,如此可以降低在故障发生后切换决策的选择耗时,从而可以有效的降低保护切换时间,如图5所示。
本发明实施例可应用到以CCM或BFD作为故障检测方式的各种保护切换技术中,如链路聚合组保护切换、ECMP保护切换、VRRP保护切换、双归属保护切换、SRv6应用的保护切换等,可显著提升保护切换的性能,有效保证数据中心网络的可靠性,具有较强的实际应用意义。
下面对本发明的一些实施例做更进一步的描述:
优选地,还包括:
在检测到预故障事件后,若在X个发包周期中,均未再检测到预故障事件或者故障事件,则上报预故障恢复事件;
在收到预故障恢复事件后,通告所述切换操作系统取消当前的切换决策,并返回S101。
其在,本实施例进一步的定义预故障恢复事件。若在检测到预故障事件后,X个发包周期中,均未再检测到预故障事件或者实际故障事件,则上报预故障恢复,这里X大于等于故障事件的N个发包周期。如图6所示,故障切换系统在收到预故障恢复事件后,回滚之前执行的切换操作1,即取消当前的切换决策。
请参阅图7,本发明第二实施例还提供了一种网络保护切换装置,其包括:
预故障判断单元210,用于根据接收的故障检测报文情况,判断是否发生预故障事件;
切换决策获取单元220,用于当检测发生预故障事件后,通告切换操作系统,以运转预设的状态机,得到切换决策;
故障判断单元230,用于根据进一步接收的故障检测报文情况,判断是否发生故障事件;
切换决策执行单元240,用于当检测发生故障事件后,通告所述切换操作系统,以执行所述切换决策。
本发明实施例还提供了一种网络保护切换设备,其包括存储器以及处理器,所述存储器内存储有计算机程序,所述计算机程序能够被所述处理器执行,以实现如上述的网络保护切换方法。
本发明实施例还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序能够被所述处理器执行,以实现如上述的网络保护切换方法。
本发明第三实施例还提供了一种ECMP故障处理设备,其包括存储器以及处理器,所述存储器内存储有计算机程序,所述计算机程序能够被所述处理器执行,以实现如上述的ECMP故障处理方法。
本发明第四实施例还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序能够被所述处理器执行,以实现如上述的ECMP故障处理方法。
在本发明实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。