CN113055196B - 报文处理方法、网络设备及计算机可读存储介质 - Google Patents
报文处理方法、网络设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113055196B CN113055196B CN201911363675.1A CN201911363675A CN113055196B CN 113055196 B CN113055196 B CN 113055196B CN 201911363675 A CN201911363675 A CN 201911363675A CN 113055196 B CN113055196 B CN 113055196B
- Authority
- CN
- China
- Prior art keywords
- control board
- main control
- network device
- protocol message
- protocol
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000000034 method Methods 0.000 claims abstract description 191
- 230000008569 process Effects 0.000 claims abstract description 137
- 238000012545 processing Methods 0.000 claims abstract description 96
- 238000011084 recovery Methods 0.000 claims abstract description 21
- 238000004590 computer program Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 15
- 238000004364 calculation method Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 10
- 230000002093 peripheral effect Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000008929 regeneration Effects 0.000 description 2
- 238000011069 regeneration method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 101710104937 Non-specific acid phosphatase Proteins 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/22—Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种报文处理方法、网络设备及计算机可读存储介质,该方法包括:第一网络设备接收第一协议报文;第一网络设备在处理第一协议报文的过程中发生故障并重启;第一网络设备确定数据恢复尚未完成,则不处理第一协议报文。实施本申请实施例,可以从从根本上避免网络设备出现整机失效,提高了网络运行的可靠性。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种报文处理方法、网络设备及计算机可读存储介质。
背景技术
NSF(Non-Stop Forwarding,不间断转发)是提高网络运行可靠性的一种方案,它可以保证当设备控制层面出现问题时,转发层面不受影响,数据转发不会中断,从而保护设备上的关键业务不受影响。一般,电信级设备通常出于可靠性的考虑,硬件一般采用主备冗余备份的方法实现NSF技术,并且控制平面和转发平面是分离的。当主控制平面出现故障后,只要该故障不影响转发平面,就可以有机制保证转发平面不受影响,而等到备控制平面接管对系统的控制后,该故障即可被恢复。
现有中,路由设备在处理协议报文出现故障的情况下,可以通过优雅重启(Graceful Restart,GR)方式、非中断路由(Non-Stop Routing,NSR)方式来保证业务流量暂时不会出现中断。以路由设备支持NSR方式为例,路由设备包括主控主控板和备用主控板,在主用主控板处理报文的过程中发生故障时,发生主备倒换,将执行路由设备的路由功能由主用主控板切换为备用主控板。由于备用主控板具有与主用主控板一样的数据,在备用主控板升级为新的主用主控板后,可以完全接管之前的协议报文收发,继续与周边设备进行协议交互。然而,在协议报文导致主用主控板出现故障的情况下,由于协议报文一般会周期性在路由网络中传播,而且会长期存在于路由网络中,备用主控板在处理该协议报文时也会出现故障,此时,路由设备出现整机失效,这无疑降低了网络运行的可靠性。因此,需要提出一种报文处理方法,以提高网络运行的可靠性。
发明内容
本申请提供了一种报文处理方法、网络设备及计算机可读存储介质,可以避免网络设备出现整机失效,进而可以提高网络运行的可靠性。
第一方面,提供了一种报文处理方法,所述方法包括:第一网络设备接收第一协议报文;所述第一网络设备在处理所述第一协议报文的过程中发生故障并重启;所述第一网络设备确定数据恢复尚未完成,则不处理所述第一协议报文。
实施本申请实施例,在第一网络设备处理协议报文期间出现故障,第一网络设备执行重启。第一网络设备重启后并不马上处理协议报文,而是在第一网络设备的数据恢复完成之后,第一网络设备才处理协议报文。通过这一实现方式,可以从根本上避免网络设备出现整机失效,可以提高网络运行的可靠性。
在一种可能的实现方式中,所述第一网络设备包括第一主控板和第二主控板,其中,所述第一主控板和所述第二主控板互为备用主控板;所述第一网络设备接收第一协议报文之后,还包括:所述第一网络设备通过所述第一主控板将所述第一协议报文发送给所述第二主控板进行备份;所述第一网络设备在处理所述第一协议报文的过程中发生故障并重启,包括:所述第一网络设备确定所述第一主控板发生故障,将所述第二主控板作为主用主控板;所述第一网络设备确定所述第一主控板重启,通过所述第二主控板将所述第一协议报文发送给所述第一主控板进行备份;所述第一网络设备确定数据恢复尚未完成,则不处理所述第一协议报文,包括:所述第一网络设备确定所述第一主控板对所述第一协议报文的备份尚未完成,则不通过所述第二主控板处理所述第一协议报文。实施本申请实施例,第二主控板对第一主控板中的数据完成了批量备份的情况下,若第一主控板处理协议报文期间出现故障,此时,发生主备倒换,将第二主控板升级为主用主控板,执行路由功能,在第一主控板对第二主控板的数据尚未完成批量备份(例如,第一主控板对第一协议报文的备份还没有完成),第二主控板不处理第一协议报文。也就是说,在第一主控板对第二主控板的数据批量备份完成之后,第二主控板才处理协议报文。由于第一主控板故障期间,第二主控板执行路由功能,可以保证第一网络设备的路由业务不中断,且第一主控板重启后,第二主控板并不会马上处理协议报文,而是在第一主控板恢复完成之后,才处理协议报文。通过这一实现方式,可以从根本上避免网络设备出现整机失效,可以提高网络运行的可靠性。
在一种可能的实现方式中,所述第一网络设备与第二网络设备存在邻接关系,所述第二网络设备存储有所述第一网络设备的路由状态信息;所述第一网络设备接收第一协议报文之后,还包括:所述第一网络设备将所述第一协议报文备份至目标存储器中;其中,所述目标存储器耦合于所述第一网络设备;所述第一网络设备确定数据恢复尚未完成,则不处理所述第一协议报文,包括:所述第一网络设备根据所述第二网络设备中存储的所述路由状态信息执行优雅重启GR尚未完成,则不处理所述第一协议报文。实施本申请实施例,若第一网络设备处理协议报文期间出现故障,此时,第一网络设备通过第二网络设备存储的路由状态信息执行GR,这里,第二网络设备为与第一网络设备建立有邻接关系的设备,在第一网络设备执行GR尚未完成的情况下,不处理第一协议报文。也就是说,在第一网络设备执行GR结束之后,第一网络设备才会处理协议报文。由于第一网络设备故障期间,第二网络设备在设定好的定时器时间内会继续保持与第一网络设备的邻接关系,可以保证第一网络设备的路由业务不中断,且第一网络设备故障并重启后,第一网络设备并不会马上处理协议报文,而是在执行GR结束之后,才处理协议报文,可以从根本上避免设备出现整机失效,可以提高网络运行的可靠性。
在一种可能的实现方式中,所述第一网络设备包括第一调测模块;所述第一网络设备接收第一协议报文之后,还包括:所述第一网络设备通过所述第一调测模块对所述第一协议报文进行备份;若所述第一网络设备在处理所述第一协议报文的过程中未发生故障,通过所述第一调测模块清除所述第一协议报文。实施本申请实施例,第一网络设备在接收到第一协议报文之后,通过第一调测模块对第一协议报文进行备份,在第一网络设备处理第一协议报文期间没有发生故障的情况下,清除第一协议报文,通过这一实现方式,可以分担进程的压力,避免进程出现拥堵。
在一种可能的实现方式中,所述方法还包括:所述第一网络设备确定所述第一协议报文为畸形报文,则不处理所述第一协议报文。实施本申请实施例,在第一网络设备确定第一协议报文为畸形报文的情况下,第一网络设备不处理第一协议报文,可以避免由于第一协议报文引发第一网络设备出现故障,有效避免了网络设备出现整机失效,可以提高网络运行的可行性。
在一种可能的实现方式中,所述第一网络设备确定所述第一协议报文为畸形报文,包括:所述第一网络设备根据发生故障的时间和调用栈信息确定所述第一协议报文为畸形报文。实施本申请实施例,由于第一协议报文为在网络设备复位重启期间收到的协议报文,且该协议报文和复位组件相关,第一网络设备可以确定第一协议报文为畸形报文,在这种情况下,第一网络设备不处理第一协议报文,可以避免由于第一协议报文引发第一网络设备出现故障,有效避免了网络设备出现整机失效,可以提高网络运行的可行性。
在一种可能的实现方式中,所述第一网络设备包括第一主控板和第二主控板,其中,所述第一主控板和所述第二主控板互为备用主控板;所述第一主控板包括第一缓存队列;所述第二主控板包括第二缓存队列;所述第一缓存队列中存储有所述第一协议报文;所述第一网络设备确定所述第一协议报文为畸形报文,包括:在所述第二缓存队列对所述第一缓存队列存储的所述第一协议报文完成备份,且所述第一主控板接收到所述第二主控板发送的确认字符ACK的情况下,所述第一网络设备通过所述第二主控板确定所述第二主控板备份的所述第一协议报文为畸形报文。实施本申请实施,可以通过“单步跟踪”方法确定第一协议报文为畸形报文,可以避免无法识别畸形报文的情形,提高识别畸形报文的准确率。在第一网络设备可以确定第一协议报文为畸形报文的情况下,第一网络设备不处理第一协议报文,可以避免由于第一协议报文引发第一网络设备出现故障,有效避免了网络设备出现整机失效,可以提高网络运行的可行性。
在一种可能的实现方式中,所述方法还包括:所述第一网络设备确定由于所述第一协议报文而引发故障的次数,在所述次数满足第一阈值的情况下,不再处理所述第一协议报文。实施本申请实施例,在同一协议报文引发多次故障的情况下,不处理该协议报文,可以有效避免网络设备内部因畸形报文出现反复重启,从而可以提高网络运行的可行性。
第二方面,本申请实施例提供了一种网络设备,该设备可以包括:接收单元,用于接收第一协议报文;处理单元,用于在处理所述第一协议报文的过程中发生故障并重启;所述处理单元,还用于确定数据恢复尚未完成,不处理所述第一协议报文。
实施本申请实施例,在第一网络设备处理协议报文期间出现故障,第一网络设备执行重启。第一网络设备重启后并不马上处理协议报文,而是在第一网络设备的数据恢复完成之后,第一网络设备才处理协议报文。通过这一实现方式,可以从根本上避免网络设备出现整机失效,可以提高网络运行的可靠性。
在一种可能的实现方式中,所述设备包括第一主控板和第二主控板,其中,所述第一主控板和所述第二主控板互为备用主控板;所述设备还包括:发送单元,用于通过所述第一主控板将所述第一协议报文发送给所述第二主控板进行备份;所述处理单元具体用于:确定所述第一主控板发生故障,将所述第二主控板作为主用主控板;所述发送单元,还用于确定所述第一主控板重启,通过所述第二主控板将所述第一协议报文发送给所述第一主控板进行备份;所述处理单元,还具体用于:确定所述第一主控板对所述第一协议报文的备份尚未完成,则不通过所述第二主控板处理所述第一协议报文。
在一种可能的实现方式中,所述设备与第二网络设备存在邻接关系,所述第二网络设备存储有所述设备的路由状态信息;所述处理单元,还用于将所述第一协议报文备份至目标存储器中;其中,所述目标存储器耦合于所述设备;所述处理单元还具体用于:根据所述第二网络设备中存储的所述路由状态信息执行优雅重启GR尚未完成,则不处理所述第一协议报文。
在一种可能的实现方式中,所述设备包括第一调测模块;所述处理单元,还用于:通过所述第一调测模块对所述第一协议报文进行备份;若在处理所述第一协议报文的过程中未发生故障,通过所述第一调测模块清除所述第一协议报文。
在一种可能的实现方式中,所述处理单元,还用于:确定所述第一协议报文为畸形报文,不处理所述第一协议报文。
在一种可能的实现方式中,所述处理单元,还具体用于:根据发生故障的时间和调用栈信息确定所述第一协议报文为畸形报文
在一种可能的实现方式中,所述设备包括第一主控板和第二主控板,其中,所述第一主控板和所述第二主控板互为备用主控板;所述第一主控板包括第一缓存队列;所述第二主控板包括第二缓存队列;所述第一缓存队列中存储有所述第一协议报文;所述处理单元,还具体用于:在所述第二缓存队列对所述第一缓存队列存储的所述第一协议报文完成备份,且所述第一主控板接收到所述第二主控板发送的确认字符ACK的情况下,通过所述第二主控板确定所述第二主控板备份的所述第一协议报文为畸形报文。
在一种可能的实现方式中,所述处理单元,还用于:确定由于所述第一协议报文而引发故障的次数,在所述次数满足第一阈值的情况下,不再处理所述第一协议报文。
第三方面,本申请实施例还提供一种网络设备,该网络设备可以包括存储器和处理器,所述处理器执行所述存储器存储的计算机指令,以使得所述网络设备执行上述第一方面的方法。
第四方面,本申请实施例提供了一种网络设备,该网络设备包括:主控板和接口板。主控板包括:第一处理器和第一存储器。接口板包括:第二处理器、第二存储器和接口卡。主控板和接口板耦合。第一存储器可以用于存储程序代码,第一处理器用于调用第一存储器中的程序代码执行如下操作:接收第一协议报文;在处理所述第一协议报文的过程中发生故障并重启;确定数据恢复尚未完成,不处理所述第一协议报文。
第二存储器可以用于存储程序代码,第二处理器用于调用第二存储器中的程序代码,触发接口卡执行如下操作:向主控板发送所述第一协议报文;接收主控板根据所述第一协议报文计算得到的路由计算结果,其中,所述路由计算结果包括转发表项。
在一种可能的实现方式中,主控板和接口板之间建立进程间通信协议(inter-process communication,IPC)通道,主控板和接口板之间通过IPC通道进行通信。
第五方面,本申请实施例还提供一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面的方法。
第六方面,本申请实施例还提供了一种计算机程序,所述计算机程序包括计算机软件指令,所述计算机软件指令当被计算机执行时使所述计算机执行如第一方面所述的任一种报文处理方法。
附图说明
图1A为本申请实施例提供的一种路由设备的结构示意图;
图1B为本申请实施例提供的另一种路由设备的结构示意图;
图1C为本申请实施例提供的一种路由设备发生NSR倒换的示意图;
图1D是本申请实施例提供的一种路由组网示意图;
图2A是本申请实施例提供的一种报文处理方法的流程示意图;
图2B是本申请实施例提供的一种IS-IS报文的通用结构;
图3为本申请实施例提供的一种应用于NSR场景的报文处理方法的流程示意图;
图4为本申请实施例提供的一种应用于GR场景的报文处理方法的流程示意图;
图5为本申请实施例提供的另一种报文处理方法的流程示意图;
图6A为本申请实施例提供的一种路由设备的结构示意图;
图6B为本申请实施例提供的一种路由设备的结构示意图;
图7为本申请实施例提供的另一种报文处理方法的流程示意图;
图8A为本申请实施例提供的一种网络设备的结构示意图;
图8B为本申请实施例提供的另一种网络设备的结构示意图;
图9为本申请另一实施例提供的一种网络设备的结构示意图;
图10为本申请另一实施例提供的一种网络设备的结构示意图。
具体实施方式
下面结合附图对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。
本申请的说明书以及附图中的术语“第一”和“第二”等是用于区分不同的对象,或者用于区别对同一对象的不同处理,而不是用于描述对象的特定顺序。此外,本申请的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一些列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。需要说明的是,本申请实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方法不应被解释为比其他实施例或设计方案更优地或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。在本申请实施例中,“A和/或B”表示A和B,A或B两个含义。“A,和/或B,和/或C”表示A、B、C中的任一个,或者,表示A、B、C中的任两个,或者,表示A和B和C。
为了便于理解本申请所描述的技术方案,下面对本申请中的部分用语进行解释说明:
(1)网络设备
在本申请实施例中,网络设备,是一种计算机网络设备的简称。这里,网络设备可以包括路由设备、路由器、交换机、云化网络设备等。
在一个示例中,路由设备可以采用多控制冗余配置(也即:分布式设备),如图1A所示,该路由设备包括多块主控板和一块接口板。其中,一块主控板作为主用主控板(ActiveMain Board,AMB),其他主控板作为备用主控板(Slave Main Board,SMB)。具体地,主用主控板,处于运行状态,备用主控板处于待运行状态,仅备份存储相关数据。当主用主控板正常运行时,把路由信息和转发信息等备份到备用主控板,使备用主控板拥有和主用主控板一致的数据信息。在主用主控板因软硬件或软件问题发生故障时,备用主控板开始接替主用主控板,重新启动控制平面和数据平面的工作。
在一个示例中,路由设备可以采用单一主控板配置(也即:集中式设备),如图1B所示,该路由设备包括一块主控板和一块接口板。
在本申请实施例中,在路由设备配置有多块主控板的情况下,路由设备发生主备倒换是指:路由设备中主用主控板和备用主控板发生主备用状态切换。在路由设备配置有单一主控板的情况下,路由设备发生路由协议重启是指:主控板上的路由交换协议重新启动。
在本申请实施例中,主控板,用于负责路由设备的各种控制工作以及与数据转发无关的业务处理;接口板,用于负责数据转发工作。
在本申请实施例中,路由设备往往采用分布式结构,可以实现控制平面与数据转发平面相分离,其中,控制平面的协议运行在主控板上,接口板仅负责数据转发工作。
现有中,高可靠性(High Availability,HA)日益成为构建网络的关键目标,高可靠性技术思路主要为:使路由设备快速从故障中恢复。在本申请实施例中,为了提高网络运行的可靠性,路由设备可以支持高可靠性的软件技术来提高网络运行的可靠性,例如,高可靠性的软件技术可以包括:NSF、NSR、GR等等。
其中,不间断转发(Non-Stop Forwarding,NSF)是一种通过分离控制平面与转发平面来实现的高可靠性技术,它能够保证交换机的控制层面出现故障后,在重新恢复的过程中数据转发平面还可以正常工作,从而使得网络中的各种业务流量不受影响。
平滑重启(Graceful Restart,GR)是一种在建立在NSF基础之上的高可靠性技术,它通过对网络协议的简单扩展,在路由设备控制层面出现故障进行重新恢复时,借助邻居路由设备的帮助来重新构建控制平面,保证邻居间会话链接不被重置。
不间断路由(Non-Stop Routing,NSR)也是一种在建立在NSF基础之上的高可靠性技术,但它对软件层面有着更高的要求,需要通过软件实现来将控制层面中大量的协议数据以及状态实时备份到备用控制板做备份,设备故障后备用控制板可以依靠之前存储的备份数据快速恢复控制平面,使邻居设备不会对本节点的故障有任何感知。
下面对NSR以及GR进行具体阐述:
(2)NSR
NSR是一种使设备在协议重启或主备倒换时能够不中断转发业务的技术。它通过将网络的链路状态和数据等信息从主用主控板备份到备用主控板,以便设备在发生协议重启后,主备倒换时可以自行完成链路状态的恢复和转发表项的重新生成,该过程无需周边邻居设备的帮助即可完成。
在本申请实施例中,NSR原理主要包括以下三个过程:
过程1、批量备份。
NSR功能使能后,备用主控板复位重启时,主用主控板将路由信息和转发信息等批量备份到备用主控板上。需要说明的是,批量备份过程在实时备份过程之前进行,此时NSR无法实施主备倒换过程。
具体来说,在批量数据备份完毕后,系统进入冗余保护状态。进入该状态后,如果主用主控板出现故障,备用主控板升主后就可以利用之前从主用主控板备份过来的数据进行升主,恢复业务。在业务批量备份尚未结束时,主用主控板故障,备用主控板升主后可能会因为业务数据不全而导致无法升主,因此这种状态下无法完成NSR倒换,设备会整机重启,恢复故障前状态。
过程2、实时备份。
当批量备份过程结束后,系统进入实时备份阶段。任何在控制平面和转发平面的改变都将实时从主用主控板备份到备用主控板上。在该阶段,备用主控板能够随时代替主用主控板工作。
过程3、主备倒换。
在完成批量备份后,进入冗余保护状态的系统,当主用主控板发生软件或硬件故障后,备用主控板通过硬件状态感知到主用主控板故障,并成为新的主用主控板。备用主控板升主后业务进程会使用之前从主用主控板备份来的数据进行工作,同时也会向接口板平滑倒换期间变化的信息,实现真正的路由不中断,转发不中断。
如图1C所示,为本申请实施例提供的一种NSR主备倒换示意图。在备用主控板对主用主控板的数据(例如,路由信息和转发信息)完成了批量备份的情况下,当主用主控板因某种原因出现故障时,由于备用主控板具有和主用主控板一样的路由信息和转发信息,在备用主控板升级成为新的主用主控板后,可以完全接管之前的协议报文收发,继续和周边邻居设备进行协议交互,而周边邻居设备对本地主备板的交替过程并无感知,最重要的就是实现协议不中断,业务转发也不受影响。
(3)GR
GR,是一种对NSF的改进技术,它通过对原有各种路由协议流程进行一定改造,使得在本节点设备重启时会通知邻居设备,使邻居设备在一定时间内保持与本节点的邻居关系和路由表项,同时帮助本节点设备进行拓扑信息恢复,从而在尽可能短的时间使本节点设备恢复出重启前的路由状态信息,减少NSF主备切换的风险时间,避免出现路由黑洞的情况,保持网络路由和转发的高度稳定。
GR的基本要求是本节点设备与邻居设备都支持GR特性,一旦本节点设备发生故障,则邻居设备会启动一个定时器来等待本节点设备恢复,在这段时间内邻居设备会继续保存与本节点设备相关的所有转发表项,如果本节点设备在定时器时间内完成重启,邻居设备会将保存的表项信息发送给本节点设备帮助迅速恢复网络拓扑信息;如果本节点设备未能在定时器时间内完成重启,则邻居设备认为本节点设备己不可达,会重新计算拓扑信息。
以图1D中的路由组网示意图为例对GR进行说明,图1D中,路由设备A上的本地路由状态信息记为a,路由设备B上的本地路由状态信息记为b,路由设备C上的本地路由状态信息记为c。路由设备A与路由设备B建立邻居关系,路由设备B与路由设备C建立邻居关系。建立邻居关系后各台路由设备分别将本地路由状态信息发送给其邻居路由设备,即路由设备A将本地路由状态信息a发送给路由设备B,路由设备C将本地路由状态信息c发送给路由设备B,路由设备B将路由状态信息b和c发送给路由设备A,将路由状态信息b和a发送给路由设备C。之后路由设备A、B、C上分别记录了路由状态信息a、b和c。
在路由设备A进行路由协议重启后,通过与邻居路由设备B进行报文交互,从邻居路由设备B中获取到之前的路由状态信息a。对于路由设备A来说,在获取到路由状态信息a之后,可以根据获取到的路由状态信息来完成链路的恢复和路由信息状态信息的重新生成,从而可以在短时间内恢复到协议重启前的状态。
下面介绍本申请实施例提供的一种报文处理方法。请参见图2A,为本申请实施例提供的一种报文处理方法的流程示意图。如图2A所示的方法可以包括但不限于如下步骤:
步骤S200、通过第一网络设备接收第一协议报文。
在本申请实施例中,第一协议报文可以是指某个特定的协议报文,也可以是指多个协议报文中的任意一个协议报文,本申请实施例不作具体限定。
在本申请实施例中,以第一协议报文为IS-IS(Intermediate System-to-Intermediate System,中间系统到中间系统的域内路由信息交换协议)为例,IS-IS报文的类型可以包括HELLO协议数据单元(Protocol Data Unit,PDU)、链路状态报文(Link StatePDUs,LSP)和序列号报文(Sequence Number PDUs,SNP)。接下来对其进行具体阐述:
其中,Hello报文,用于建立和维持邻居关系,也称为IIH(IS-to-IS Hello PDUs)。其中,广播网中的Level-1 IS-IS使用Level-1 LAN IIH;广播网中的Level-2 IS-IS使用Level-2 LAN IIH;非广播网络中则使用P2P IIH。它们的报文格式有所不同。P2P IIH中相对于LAN IIH来说,多了一个表示本地链路ID的Local Circuit ID字段,缺少了表示广播网中DIS的优先级的Priority字段以及表示DIS和伪节点System ID的LAN ID字段。
链路状态报文LSP,用于交换链路状态信息。LSP分为两种:Level-1 LSP和Level-2LSP。Level-1 LSP由Level-1 IS-IS传送,Level-2 LSP由Level-2 IS-IS传送,Level-1-2IS-IS则可传送以上两种LSP。
具体来说,LSP报文包括ATT字段、OL(LSDB Overload)字段和IS Type字段等主要字段,其字段的解释如下:
ATT字段:当Level-1-2IS-IS在Level-1区域内传送Level-1 LSP时,如果Level-1LSP中设置了ATT位,则表示该区域中的Level-1 IS-IS可以通过此Level-1-2IS-IS通往外部区域。
OL(LSDB Overload)字段:过载标志位。设置了过载标志位的LSP虽然还会在网络中扩散,但是在计算通过过载路由器的路由时不会被采用。即对路由器设置过载位后,其它路由器在进行SPF计算时不会使用这台路由器做转发,只计算该节点上的直连路由。
IS Type字段:用来指明生成此LSP的IS-IS类型是Level-1还是Level-2 IS-IS(01表示Level-1,11表示Level-2)。
序列号报文SNP,通过描述全部或部分数据库中的LSP来同步各LSDB(Link-StateDataBase),从而维护LSDB的完整与同步。具体来说,SNP包括全序列号报文(Complete SNP,CSNP)和部分序列号报文(Partial SNP,PSNP),进一步又可分为Level-1 CSNP、Level-2CSNP、Level-1 PSNP和Level-2 PSNP。其中,CSNP包括LSDB中所有LSP的摘要信息,从而可以在相邻路由器间保持LSDB的同步。在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒);在点到点链路上,CSNP只在第一次建立邻接关系时发送。PSNP只列举最近收到的一个或多个LSP的序号,它能够一次对多个LSP进行确认,当发现LSDB不同步时,也用PSNP来请求邻居发送新的LSP。
在本申请实施例中,图2B示出了IS-IS报文的通用结构,可以包括:IntradomainRouting Protocol Discriminator、Length Indicator、Version/Protocol IDExtension、ID Length、R(Reserved)和PDU Type。
其中,Intradomain Routing Protocol Discriminator,是指域内路由选择协议鉴别符,设置为0x83;
Length Indicator,是指PDU头部的长度(包括通用头部和专用头部),以字节为单位;
Version/Protocol ID Extension,是指版本/协议标识扩展,可以设置为1(0x01);
ID Length,是指NSAP地址或NET中System ID区域的长度。值为0时,表示SystemID区域的长度为6字节。值为255时,表示System ID区域为空(即长度为0);
R(Reserved),是指保留,设置为0;
PDU Type,是指PDU的类型。IS-IS PDU共有9种类型,详细信息可以如表1所示:
表1
Version,可以设置为1(0x01)。
Maximum Area Address,是指支持的最大区域个数。可以设置为1~254的整数,表示该IS-IS进程实际所允许的最大区域地址数;设置为0,表示该IS-IS进程最大只支持3个区域地址数。
步骤S202、第一网络设备在处理所述第一协议报文的过程中发生故障并重启。
在本申请实施例中,当第一路由设备在接收到第一协议报文后,第一网络设备对第一协议报文处理,这里,第一网络设备对第一协议报文进行处理的实现过程可以包括:第一网络设备对第一协议报文进行路由计算。例如,第一网络设备先对第一协议报文进行解析,然后,第一网络设备根据第一协议报文中所记载的全网最新路由状态信息(例如,链路状态报文信息LSP)计算出转发表项。之后,第一网络设备可以将计算得到的转发表项下发给接口板,以指导接口板进行业务流量转发工作。
在本申请实施例中,若第一网络设备对第一协议报文进行路由计算的过程中出现故障,例如,该故障可以为第一网络设备出现硬件故障或软件故障,此时,第一网络设备执行重启。
在本申请实施例中,当第一网络设备发生故障并重启时,第一网络设备的路由业务并不会出现中断。具体来说,在NSR场景下,第一网络设备包括第一主控板和第二主控板,当第一主控板在处理第一协议报文的过程中发生故障并重启,此时,第一网络设备发生主备倒换,执行路由功能的第一主控板切换为第二主控板,由于第二主控板中的数据与第一主控板中的数据一致,也就是说,第二主控板有能力完全接管之前第一主控板的协议报文收发,继续与周边邻居设备进行协议交互。在GR场景下,第一网络设备周边邻居设备的协助下执行重启,且周边邻居设备在设置好的定时器时间内不会中断与第一网络设备的邻接关系,从而可以保证第一网络设备的路由业务不出现中断。
步骤S204、第一网络设备确定数据恢复尚未完成,则不处理所述第一协议报文。
如前所述,若第一网络设备对第一协议报文进行路由计算的过程中出现故障,例如,该故障可以为第一网络设备出现硬件故障或软件故障,此时,第一网络设备执行重启。此外,在第一网络设备确定数据恢复尚未完成的情况下,不处理第一协议报文。
在本申请实施例中,第一网络设备确定数据恢复尚未完成可以包括如下情形:在NSR场景下,发生故障的主控板没有对升主后执行路由功能的主控板中的数据完成批量备份;在GR场景下,发生故障的网络设备在周边邻居设备的协助下没有执行GR结束。在本文后续的实施例中,将对这两种情形进行具体描述。
实施本申请实施例,在第一网络设备处理协议报文期间出现故障,第一网络设备执行重启。第一网络设备重启后并不马上处理协议报文,而是在第一网络设备的数据恢复完成之后,第一网络设备才处理协议报文。通过这一实现方式,可以从根本上避免网络设备出现整机失效,可以提高网络运行的可靠性。
需要说明的是,在步骤S200-步骤S204的具体实现过程中,第一网络设备可以运行有第一进程和第一调测模块。那么,在这种情况下,在其中一个示例中,本申请实施例所提供的报文处理方法的实现过程可以包括:第一网络设备调用第一进程接收第一协议报文,并通过第一进程将第一协议报文发送给第一调测模块;之后,通过第一调测模块对第一协议报文进行备份。若第一进程在处理第一协议报文的过程中发生故障并重启,在第一进程确定数据恢复尚未完成的情况下,第一进程不处理第一协议报文。在其中另一个示例中,本申请所提供的报文处理方法的实现过程还可以包括:第一网络设备通过第一进程接收第一协议报文,并将第一协议报文发送给第一调测模块;之后,通过第一调测模块对第一协议报文进行备份。若第一进程在处理第一协议报文的过程中未发生故障,通过第一调测模块清除第一协议报文。在这一实现方式中,第一网络设备可以通过第一调测模块来分担第一进程的压力,以避免第一进程因处理任务过多而出现拥堵。
为了便于理解图2A所示的报文处理方法,下面以两个具体实例详细阐述本申请涉及的相关实施例。
实例一、NSR场景。
在本申请实施例中,第一网络设备可以包括第一主控板、第二主控板以及主控板各自对应的接口板,例如,第一网络设备的结构示意图可以如图1A所示,其中,第一主控板和第二主控板互为备用主控板,也即:在第一主控板为主用主控板的情况下,第二主控板为备用主控板;在第二主控板为主用主控板的情况下,第一主控板为备用主控板。
基于图1A所示的第一网络设备,请参见图3,是本申请实施例提供的另一种报文处理方法的流程示意图。在这一实现方式中,假定第一网络设备在开机后,执行路由功能的为第一主控板,也即:第一主控板为主用主控板,第二主控板为备用主控板。当第二主控板对第一主控板中的数据完成了批量备份的情况下,如图3所示,该方法可以包括但不限于如下步骤:
步骤S300、第一主控板接收第一协议报文。
在本申请实施例中,接口板将第一协议报文上报给第一主控板,继而,第一主控板接收接口板上报的第一协议报文。
步骤S302、第一主控板将第一协议报文发送给第二主控板进行备份。
步骤S304、确定第一主控板发生故障,将第二主控板作为主用主控板;确定所述第一主控板重启,通过第二主控板将第一协议报文发送给第一主控板进行备份。
在本申请实施例中,当第一主控板在处理第一协议报文的过程中发生故障,引发主备倒换,第一主控板执行重启,与此同时,第二主控板升级为主用主控板。由于第二主控板已经对第一主控板中的数据完成了批量备份,也即:第二主控板中的数据与第一主控板中的数据完全一致,此时,第二主控板执行第一网络设备的路由功能,从而可以实现第一网络设备的路由业务不间断。
在本申请实施例中,当第一网络设备通过第二主控板执行路由功能时,第二主控板接收接口板上报的第一协议报文,并将第一协议报文发送给第一主控板进行备份。
步骤S306、第一主控板对第一协议报文的备份尚未完成,则不通过第二主控板处理第一协议报文。
如前所述,第一主控板故障,第二主控板升主,若第一主控板在完成重启后,第一主控板将对第二主控板中的数据进行批量备份。在第一主控板将对第二主控板中的数据进行批量备份的过程中,往往需要经历以下阶段:开始批量备份、批量备份尚未完成、批量备份完成。
在本申请实施例中,第一主控板对第二主控板的数据尚未完成批量备份是指,第一主控板中的数据与第二主控板中的数据并没有达到完全一致或几乎完全一致的状态。例如,第一主控板中包括协议状态数据1和动态数据1,此时,完全一致是指,第二主控板中也包括协议状态数据1和动态数据1。又例如,第一主控板中包括协议状态数据1和动态数据1,此时,几乎完全一致是指,第二主控板中包括协议动态数据1和部分动态数据1,其中,动态数据1与部分动态数据1的相似度大于设定好的数值。又例如,在第二主控板执行路由功能的情况下,第二主控板将第一协议报文发送给第一主控板进行备份,然而第一主控板对第一协议报文的备份尚未完成。
在这种情况下,如果升级为主用主控板的第二主控板立即对第一协议报文进行处理,将导致第二主控板也出现故障,而第一主控板并没有接管第二主控板之前的协议报文的收发能力,此时,第一网络设备出现整机失效,这将带来严重的丢包现象。也就是说,如果第一主控板对所述第二主控板的数据已经完成了批量备份,当第二主控板对第一协议报文进行路由计算的过程中出现故障时,再次引发主备倒换,将执行第一网络设备的路由功能由第二主控板切换为第一主控板。这里,需要说明的是,在上述整个实现过程中,对周边邻居设备来说,周边邻居设备对第一网络设备中的主备板的交替过程并无感知。
实施本申请实施例,第二主控板对第一主控板中的数据完成了批量备份的情况下,若第一主控板处理协议报文期间出现故障,此时,发生主备倒换,第二主控板升级为主用主控板,执行路由功能,在第一主控板对第二主控板的数据尚未完成批量备份,第二主控板不处理第一协议报文。也就是说,在第一主控板对第二主控板的数据批量备份完成之后,第二主控板才处理协议报文。通过这一实现方式,可以从根本上避免网络设备出现整机失效,可以提高网络运行的可靠性。
需要说明的是,在图3所示的方法实施例中,当第一主控板在处理第一协议报文的过程中未发生故障,这意味着,第一主控板可以根据第一协议报文进行路由计算,以得到路由计算结果,例如,该路由计算结果可以包括转发表项。之后,第一主控板将计算得到的路由计算结果下发给接口板,以便接口板进行业务流量转发。
实例二、GR场景。
在本申请实施例中,路由设备在GR流程中承担何种角色,即承担重启路由设备(GRRestarter)角色还是承担协助路由设备(GR Helper)角色,可以在配置路由设备时进行设置。例如,第一网络设备可以被配置为GR Restarter角色,第二网络设备可以被配置为GRHelper角色。其中,第二网络设备可以为与第一网络设备建立有邻接关系的多个网络设备中的某一个网络设备。
GR Restarter:即GR过程中重启的路由设备,必须具备GR能力。
GR Helper:即GR过程中与Restarter保持邻居关系的路由设备,负责协议Restarter恢复出重启前的网络拓扑信息,也必须具备GR能力。
需要说明的是,GR Restarter和GR Helper的角色不是固定的,具体由该路由设备在GR过程中的作用而定。
在本申请实施例中,第一网络设备可以是如图1A所示的分布式设备(如配置有主用主控板和备用主控板的双主控设备),也可以是如图1B所示的集中式设备(如配置有一个主控板的单主控设备),本申请实施例不作具体限定。
在本申请实施例中,第一网络设备可以与至少一个第二网络设备之间存在邻接关系,第二网络设备存储有第一网络设备的路由状态信息。在第一网络设备发生故障的情况下,通过第二网络设备执行GR Helper,以帮助第一网络设备在短时间内恢复到重启前的状态。具体地,通过第二网络设备执行GR Helper的实现过程可以包括:第一网络设备在进入GR Restarter时,通过广播的方式告知与自身建立有邻接关系的第二网络设备,以宣告进入GR状态。那么,在这种情况下,第二网络设备可以知道第一网络设备进入GR状态。此时,第二网络设备进入GR Helper状态,并启动定时器,在定时器超时之前,保持邻居关系不中断。如果第一网络设备在定时器时间内完成重启,第二网络设备会将保存好的第一网络设备的路由状态信息发送给第一网络设备,以帮助第一网络设备迅速恢复网络拓扑信息。
基于图1A或图1B所示的第一网络设备,请参见图4,是本申请实施例提供的另一种报文处理方法的流程示意图。如图4所示,该方法可以包括但不限于如下步骤:
步骤S400、第一网络设备接收第一协议报文;
步骤S402、第一网络设备将所述第一协议报文备份至目标存储器中;其中,所述目标存储器耦合于所述第一网络设备。
在本申请实施例中,目标存储器可以为耦合于第一网络设备中的高端内存、闪存,也可以为硬盘,等等。
步骤S404、第一网络设备在处理第一协议报文的过程中发生故障,通过第二网络设备中存储的路由状态信息执行优雅重启GR。
在本申请实施例中,当第一网络设备处理第一协议报文出现故障时,第一网络设备的路由业务并不会出现中断。具体来说,第一网络设备通过第二网络设备实现自身的路由业务不间断的实现过程可以包括:由于第一网络设备在处理第一协议报文的过程中发生故障,第一网络设备执行重启,第一网络设备向第二网络设备获取之前的路由状态信息,以便第一网络设备根据获取到的路由状态信息恢复重启前的状态。对第二网络设备来说,当第一网络设备在设置好的定时器时间内完成重启,第二网络设备保持与第一网络设备的邻接关系不中断,从而可以实现第一网络设备的路由业务不间断。
具体来说,第一网络设备执行优雅重启GR的实现过程可以包括:第一网络设备向第二网络设备发送协助请求,该协助请求用于指示第二网络设备将第一网络设备之前的路由状态信息发送给第一网络设备;其中,第二网络设备为与第一网络设备建立有邻居关系的网络设备;第一网络设备接收第二网络设备发送的路由状态信息;第一网络设备根据路由状态信息恢复网络拓扑信息。通过这一实现过程,可以使得第一网络设备快速恢复到故障之前的状态。可以理解的是,第一网络设备执行GR完成,这意味着,第一网络设备在第二网络设备的协助下,恢复到了故障之前的状态,也即:第一网络设备根据路由状态信息恢复了整个网络中的网络拓扑信息。
步骤S406、第一网络设备根据第二网络设备中存储的路由状态信息执行GR尚未完成,则不处理第一协议报文。
在本申请实施例中,第一网络设备根据第二网络设备中存储的路由状态信息执行GR尚未完成是指,第一网络设备并没有通过路由状态信息完全恢复整个网络中的网络拓扑信息。在这种情况下,如果刚刚重启后的第一网络设备立即对第一协议报文进行处理,将导致重启后的第一网络设备再次出现故障,此时,第一网络设备出现整机失效,这将带来严重的丢包现象。也就是说,如果第一网络设备在第二网络设备的协助下,执行GR结束,当第一网络设备对第一协议报文进行路由计算的过程中再次出现故障时,第一网络设备可以再次在第二网络设备的协助下执行GR。
实施本申请实施例,当第一网络设备在接收到第一协议报文之后,第一网络设备先对第一协议报文进行备份,然后,根据第一协议报文进行路由计算。当第一网络设备在根据第一协议报文进行路由计算的过程中发生故障,此时,第一网络设备通过第二网络设备中存储的路由状态信息执行GR,在第一网络设备执行GR尚未结束之前,第一网络设备不处理第一协议报文。由于第一网络设备故障期间,第二网络设备在设定好的定时器时间内会继续保持与第一网络设备的邻接关系,可以保证第一网络设备的路由业务不中断,且第一网络设备重启后,第一网络设备并不会马上处理第一协议报文,而是在第一网络设备彻底恢复完成之后,才处理第一协议报文,可以从根本上避免设备出现整机失效,可以提高网络运行的可靠性。
前述实施例重点阐述了如何避免网络设备出现整机失效,以提高网络运行的可行性。在此基础上,本申请实施例还提供了一种识别畸形报文的方法,如图5所示,该方法在前述实施例所涉及的步骤S200-步骤S204的基础上,还可以包括步骤S206,下面对步骤S206进行具体阐述:
步骤S206、第一网络设备确定第一协议报文为畸形报文,则不处理第一协议报文。
在本申请实施例中,协议报文可以主备双发,或,协议报文也可以单发。例如,在NSR场景中,协议报文主备双发是指,在第一主控板接收第一协议报文的同时,第二主控板也接收第一协议报文。例如,在NSR场景中,协议报文单发是指,仅第一主控板接收第一协议报文,或者,仅第二主控板接收第一协议报文。
在本申请实施例中,畸形报文是指导致网络设备发生故障的协议报文。以第一协议报文为例,在一种情形下,当第一协议报文本身异常,网络设备在处理第一协议报文之前,网络设备处于正常运行状态。当网络设备在处理第一协议报文的过程中出现故障,此时,网络设备将第一协议报文确定为畸形报文。在一种情形下,当第一协议报文本身正常,网络设备在处于第一协议报文之前,网络设备上运行的路由程序出现异常。当网络设备在处理第一协议报文的过程中出现故障,此时,网络设备将第一协议报文确定为畸形报文。可以理解的是,关于畸形报文的界定,并非从协议报文自身正常与否来界定,而是从网络设备在处理该协议报文的过程中是否出现故障来界定。
在一些实现方式中,在NSR场景下,如前所述,第一网络设备可以包括第一主控板和第二主控板,假定第一网络设备在开机后,执行路由功能的为第一主控板,也即:第一主控板为主用主控板,第二主控板为备用主控板。当第一主控板在处理第一协议报文的过程中出现故障并重启时,通过第二主控板根据第一主控板发生故障的时间和调用栈信息确定第一协议报文是否为畸形报文。具体来说,如果第一协议报文为第一主控板发生故障并重启期间收到的协议报文,且第一协议报文和复位组件相关,在这种情况下,第二主控板识别第一协议报文为畸形报文。进一步地,在实际应用中,为了避免出现误判,以提高识别畸形报文的准确率,当第一主控板再次在处理第一协议报文的过程中,因第一协议报文引发主备倒换,此时,第二主控板可以更精准的识别出第一协议报文为畸形报文,并锁定该畸形报文的内容。
在一些实现方式中,在NSR场景下,如前所述,第一网络设备可以包括第一主控板和第二主控板,假定第一网络设备在开机后,执行路由功能的为第二主控板,也即:第二主控板为主用主控板,第一主控板为备用主控板。当第二主控板在处理第一协议报文的过程中出现故障并重启时,通过第一主控板根据第二主控板发生故障的时间和调用栈信息确定第一协议报文是否为畸形报文。如果第一协议报文为第二主控板发生故障并重启期间受到的协议报文,且第一协议报文和复位组件相关,在这种情况下,第一主控板识别第一协议报文为畸形报文。进一步地,在实际应用中,为了避免出现误判,以提高识别畸形报文的准确率,当第二主控板再次在处理第一协议报文的过程中,因第一协议报文引发主备倒换,此时,第一主控板可以更精准的识别出第一协议报文为畸形报文,并锁定该畸形报文的内容。在一些实现方式中,在GR场景下,第一网络设备可以根据自身发生故障的时间和调用栈信息识别第一协议报文是否为畸形报文。如果第一协议报文为第一网络设备发生故障并重启期间受到的协议报文,且第一协议报文和复位组件相关,在这种情况下,确定第一协议报文为畸形报文。进一步地,在实际应用中,为了避免出现误判,以提高识别畸形报文的准确率,当第一网络设备再次在处理第一协议报文的过程中,因第一协议报文引发故障并重启,此时,第一网络设备可以更精准的识别出第一协议报文为畸形报文,并锁定该畸形报文的内容。
在一些实现方式中,当通过第一网络设备发生故障的时间和调用栈信息无法识别畸形报文的情况下,还可以通过“单步跟踪”方法判别协议报文是否为畸形报文。下面对其进行具体阐述:
以NSR场景为例,如图6A所示,第一网络设备包括主用主控板、备用主控板和主控板各自对应的接口板。其中,主用主控板中包括第一缓存队列和第一进程,备用主控板包括第二缓存队列和第二进程。具体地,“单步跟踪”方法识别畸形报文的实现过程可以如图6B所示,具体可以包括:通过第一进程接收第一协议报文。在第一进程接收到第一协议报文之后,第一进程并不立即处理第一协议报文,而是通过第一进程将第一协议报文存储至第一缓存队列中。那么,在这种情况下,备用主控板通过第二进程对第一协议报文进行备份,将第一协议报文存储至第二缓存队列中。当通过第二进程完成了对第一协议报文的备份之后,通过第二主控板向第一主控板发送备份完毕的确认字符(Acknowledgement,ACK),当第一主控板接收到第二主控板发送的确认字符ACK的情况下,通过第一进程对第一协议报文进行处理。当通过第一进程在处理第一协议报文的过程中发生故障,则可以确定备用主控板备份的第一协议报文为畸形报文,也即:第二主控板识别自身备份的第一协议报文为畸形报文。
考虑到实际应用中,主用主控板接收到的报文的数量为多个,当主用主控板在处理某个协议报文出现故障时,可以确定备用主控板备份的最后一个协议报文为畸形报文。
以协议报文包括协议报文1和协议报文2为例。具体地,通过第一进程接收协议报文1。在第一进程接收到协议报文1之后,通过第一进程将协议报文存储至第一缓存队列中。备用主控板通过第二进程对协议报文1进行备份,将协议报文1存储至第二缓存队列中。当通过第二进程完成了对协议报文1的备份之后,通过第二主控板向第一主控板发送备份完毕的确认字符(Acknowledgement,ACK),当第一主控板接收到第二主控板发送的确认字符ACK的情况下,通过第一进程对协议报文1进行处理。之后,通过第一进程接收协议报文2。在第一进程接收到协议报文2之后,通过第一进程将协议报文存储至第一缓存队列中。备用主控板通过第二进程对协议报文2进行备份,将协议报文2存储至第二缓存队列中。当通过第二进程完成了对协议报文2的备份之后,通过第二主控板向第一主控板发送备份完毕的确认字符(Acknowledgement,ACK),当第一主控板接收到第二主控板发送的确认字符ACK的情况下,通过第一进程对协议报文2进行处理。那么,当通过第一进程在处理协议报文2的过程中发生故障,则可以确定备用主控板备份的协议报文2为畸形报文,也即:第二主控板识别最后备份的一个协议报文(协议报文2)为畸形报文。
可以理解的是,通过本申请所描述的“单步跟踪”方法,可以避免无法识别畸形报文的情形,提高识别畸形报文的准确率。在确定第一协议报文为畸形报文的情况下,第一网络设备不处理第一协议报文,可以避免由于第一协议报文引发第一网络设备出现故障,有效避免了网络设备出现整机失效,可以提高网络运行的可行性。
图7为本申请实施例提供的另一种报文处理方法的流程示意图,具体阐述在本申请实施例中是如何隔离畸形报文,以从根本上避免设备反复出现故障重启的情形。如图7所示,该方法在前述实施例所涉及的步骤S200-步骤S204的基础上,还可以包括步骤S208,下面对步骤S208进行具体阐述:
步骤S208、第一网络设备确定由于第一协议报文而引发故障的次数,在次数满足第一阈值的情况下,不再处理所述第一协议报文。
在本申请实施例中,在NSR场景下,第一网络设备可以包括第一主控板和第二主控板。在第一主控板发生故障的情况下,可以通过第一主控板统计自身因第一协议报文引发故障的次数M,也可以通过第二主控板统计第一主控板因第一协议报文引发故障的次数M。那么相似的,在第二主控板发生故障的情况下,可以通过第二主控板统计自身因第一协议报文引发故障的次数M,也可以通过第一主控板统计第二主控板因第一协议报文引发故障的次数M。
在一些实现方式中,在NSR场景下,第一网络设备可以包括第一主控板和第二主控板,假定第一网络设备在开机后,执行路由功能的为第一主控板,也即:第一主控板为主用主控板,第二主控板为备用主控板。一种情形下,第一网络设备因畸形报文引发一次主备倒换,最终执行路由功能的设备为第二主控板。此时,通过第二主控板统计第一主控板因第一协议报文引发的故障的次数M。举例来说,第一网络设备因第一协议报文引发主备倒换的顺序为:从第一主控板切换为第二主控板,此时,通过第二主控板统计第一主控板因第一协议报文引发故障的次数为1。在另一种情形下,第一网络设备因畸形报文引发多次主备倒换,最终执行路由功能的设备为第一主控板。此时,通过第一主控板统计第二主控板因第一协议报文引发故障的次数。举例来说,第一网络设备因第一协议报文引发主备倒换的顺序为:从第一主控板切换为第二主控板,从第二主控板切换为第一主控板,从第一主控板切换为第二主控板,从第二主控板切换为第一主控板,此时,通过第一主控板统计第二主控板因第一协议报文引发故障的次数为2。在另一种情形下,第一网络设备因畸形报文引发多次主备倒换,最终执行路由功能的设备为第二主控板。此时,通过第二主控板统计第一主控板因第一协议报文引发故障的次数。举例来说,第一网络设备因第一协议报文引发主备倒换的顺序为:从第一主控板切换为第二主控板,从第二主控板切换为第一主控板,从第一主控板切换为第二主控板,从第二主控板切换为第一主控板,此时,通过第二主控板统计第一主控板因第一协议报文引发故障的次数为2。
在一些实现方式中,在NSR场景下,第一网络设备可以包括第一主控板和第二主控板,假定第一网络设备在开机后,执行路由功能的为第二主控板,也即:第二主控板为主用主控板,第一主控板为备用主控板。一种情形下,第一网络设备因畸形报文引发一次主备倒换,最终执行路由功能的设备为第一主控板。此时,通过第一主控板统计第二主控板因第一协议报文引发的故障的次数M。举例来说,第一网络设备因第一协议报文引发主备倒换的顺序为:从第二主控板切换为第一主控板,此时,通过第一主控板统计第二主控板因第一协议报文引发故障的次数为1。在另一种情形下,第一网络设备因畸形报文引发多次主备倒换,最终执行路由功能的设备为第二主控板。此时,通过第二主控板统计第一主控板因第一协议报文引发故障的次数。举例来说,第一网络设备因第一协议报文引发主备倒换的顺序为:从第二主控板切换为第一主控板,从第一主控板切换为第二主控板,从第二主控板切换为第一主控板,从第一主控板切换为第二主控板,此时,通过第二主控板统计第一主控板因第一协议报文引发故障的次数为2。在另一种情形下,第一网络设备因畸形报文引发多次主备倒换,最终执行路由功能的设备为第一主控板。此时,通过第一主控板统计第二主控板因第一协议报文引发故障的次数。举例来说,第一网络设备因第一协议报文引发主备倒换的顺序为:从第二主控板切换为第一主控板,从第一主控板切换为第二主控板,从第二主控板切换为第一主控板,此时,通过第一主控板统计第二主控板因第一协议报文引发故障的次数为2。
在一些实现方式中,在GR场景下,通过第一网络设备统计由于第一协议报文而引发自身故障的次数。
在本申请实施例中,第一阈值P可以是第一网络设备自主设置的,也可以是根据用户需求设置的,本申请实施例不作具体限定。举例来说,第一阈值P可以为1,也可以为2,还可以为其他自然数。
在本申请实施例中,当第一协议报文引发路由装置发生故障的次数满足第一阈值的情况下,不再处理第一协议报文,从而可以隔离畸形报文,有效避免设备内部因畸形报文出现反复重启,从而可以提高网络运行的可行性。总的来说,本申请所描述的隔离畸形报文的方法,在同一协议报文引发多次故障的情况下,不处理该协议报文,可以有效避免网络设备内部因畸形报文出现反复重启,从而可以提高网络运行的可行性。
结合上文图2A-图7所示的相关实施例,下面阐述本申请实施例涉及的相关装置及设备。请参见图8A,是本申请实施例提供的一种网络设备80,该网络设备80可以包括:接收单元800和处理单元802;其中,
接收单元800,用于接收第一协议报文;
处理单元802,用于在处理所述第一协议报文的过程中发生故障并重启;
所述处理单元802,还用于确定数据恢复尚未完成,不处理所述第一协议报文。
在一些可能的实现方式中,在NSR场景下,所述设备80可以包括第一主控板和第二主控板,其中,所述第一主控板和所述第二主控板互为备用主控板;如图8B所示,所述设备80还包括:
发送单元804,用于通过所述第一主控板将所述第一协议报文发送给所述第二主控板进行备份;
所述处理单元802具体用于:
确定所述第一主控板发生故障,将所述第二主控板作为主用主控板;
所述发送单元804,还用于确定所述第一主控板重启,通过所述第二主控板将所述第一协议报文发送给所述第一主控板进行备份;
所述处理单元802,还具体用于:确定所述第一主控板对所述第一协议报文的备份尚未完成,则不通过所述第二主控板处理所述第一协议报文。
在一些可能的实现方式中,所述设备80与第二网络设备存在邻接关系,所述第二网络设备存储有所述设备的路由状态信息;所述处理单元802,还用于:
将所述第一协议报文备份至目标存储器中,其中,所述目标存储器耦合于所述设备;
所述处理单元802,还具体用于:
根据所述第二网络设备中存储的所述路由状态信息执行优雅重启GR尚未完成,则不处理所述第一协议报文。
在一些可能的实现方式中,所述设备80包括第一调测模块;
所述处理单元802,还用于:通过所述第一调测模块对所述第一协议报文进行备份;若在处理所述第一协议报文的过程中未发生故障,通过所述第一调测模块清除所述第一协议报文。
在一些可能的实现方式中,所述处理单元802,还用于:
确定所述第一协议报文为畸形报文,不处理所述第一协议报文
在一些可能的实现方式中,所述处理单元802,还具体用于:
根据发生故障的时间和调用栈信息确定所述第一协议报文为畸形报文。
在一些可能的实现方式中,所述设备80包括第一主控板和第二主控板,其中,所述第一主控板和所述第二主控板互为备用主控板;所述第一主控板包括第一缓存队列;所述第二主控板包括第二缓存队列;所述第一缓存队列中存储有所述第一协议报文;
所述处理单元802,还具体用于:在所述第二缓存队列对所述第一缓存队列存储的所述第一协议报文完成备份,且所述第一主控板接收到所述第二主控板发送的确认字符ACK的情况下,通过所述第二主控板确定所述第二主控板备份的所述第一协议报文为畸形报文。
在一些可能的实现方式中,所述处理单元802,还用于:
确定由于所述第一协议报文而引发故障的次数,在所述次数满足第一阈值的情况下,不再处理所述第一协议报文。
本申请实施例中,上述网络设备对报文进行处理的实现方式对应于上述方法实施例中的第一网络设备对报文处理的方式,在此不再赘述。
请参见图9,图9是本申请实施例提供的一种网络设备的结构示意图。该网络设备90包括至少一个处理器901,至少一个存储器902、至少一个通信接口903。此外,该网络设备还可以包括其他通用部件,在此不再详述。
处理器901可以是通用中央处理器(CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制以上方案程序执行的集成电路。
通信接口903,用于与其他设备或通信网络通信。
存储器902,可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,所述存储器902用于存储执行以上方案的应用程序代码,并由处理器901来控制执行。所述处理器901用于执行所述存储器902中存储的应用程序代码。例如,存储器902存储的代码可执行以上图2A或者图3、图4、图5、图7提供的报文处理方法。
需要说明的是,本申请实施例中所描述的网络设备70的功能可参见上述图2A和图3、图4、图5、图7中的所述的方法实施例中的相关描述,此处不再赘述。
还需要说明的,图8A-图8B或图9仅仅是本申请实施例的一种可能的实现方式,实际应用中,网络设备还可以包括更多或更少的部件,这里不作限制。关于本申请实施例中未示出或未描述的内容,可参见前述图2A或者图3、图4、图5、图7所述实施例中的相关阐述,这里不再赘述。
参阅图10所示,图10示出了上述实施例中所涉及的第一网络设备的一种可能的结构示意图,第一网络设备1000可以包括:主控板1001和接口板1002。主控板100可以1包括:处理器1003和存储器1004。接口板1002可以包括:处理器1005、存储器1006和接口卡1007。其中,主控板1001和接口板1002耦合。
这些硬件可以实现上述实施例中的第一网络设备中的功能,例如,存储器1006可以用于存储接口板1002的程序代码,处理器1005用于调用存储器1006中的程序代码触发接口卡1007执行上述方法实施例中涉及的各种信息接收和发送。例如,接口卡执行:将第一协议报文发送给主控板1001;又例如,接口卡执行:接收主控板1001根据所述第一协议报文计算得到的路由计算结果,其中,所述路由计算结果包括转发表项。存储器1004可以用于存储主控板1001的程序代码,处理器1003用于调用存储器1004中的程序代码执行上述方法实施例中描述的:第一网络设备除了信息收发之外的其他处理。举例来说,处理器1003用于对第一协议报文进行处理;在处理第一协议报文的过程中发生故障并重启;确定数据恢复尚未完成,不处理第一协议报文。
在一种可能的实现方式中,主控板1001和接口板1002之间建立IPC通道,主控板1001和接口板1002之间利用该IPC通道进行通信。
网络设备1000可以为路由器或交换器或有转发功能的网络设备,网络设备1000能够实现前述方法实施例中的相应网络设备的功能,具体执行步骤可以参见前述方法实施例,此处不再赘述。本申请实施例还提供了一种计算机存储介质,该计算机可读存储介质中存储有指令,当其在主控板上的处理器上运行时,使得处理器执行上述任一个实施例所述方法中的一个或多个步骤。上述装置的各组成模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在所述计算机可读取存储介质中,基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机产品存储在计算机可读存储介质中。
上述计算机可读存储介质可以是前述实施例所述的设备的内部存储单元,例如硬盘或内存。上述计算机可读存储介质也可以是上述设备的外部存储设备,例如配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,上述计算机可读存储介质还可以既包括上述设备的内部存储单元也包括外部存储设备。上述计算机可读存储介质用于存储上述计算机程序以及上述设备所需的其他程序和数据。上述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可通过计算机程序来指令相关的硬件来完成,该计算机的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可存储程序代码的介质。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本申请实施例装置中的模块可以根据实际需要进行合并、划分和删减。
可以理解,本领域普通技术人员可以意识到,结合本申请各个实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本领域技术人员能够领会,结合本申请各个实施例中公开描述的各种说明性逻辑框、模块和算法步骤所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件来实施,那么各种说明性逻辑框、模块、和步骤描述的功能可作为一或多个指令或代码在计算机可读媒体上存储或传输,且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体,例如数据存储媒体,或包括任何促进将计算机程序从一处传送到另一处的媒体(例如,根据通信协议)的通信媒体。以此方式,计算机可读媒体大体上可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)通信媒体,例如信号或载波。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本申请中描述的技术的指令、代码和/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (12)
1.一种报文处理方法,其特征在于,包括:
第一网络设备接收第一协议报文;
所述第一网络设备在处理所述第一协议报文的过程中发生故障并重启;
所述第一网络设备确定数据恢复尚未完成,则不处理所述第一协议报文;
其中,所述第一网络设备包括第一主控板和第二主控板,其中,所述第一主控板和所述第二主控板互为备用主控板;
所述第一网络设备接收第一协议报文之后,还包括:
所述第一网络设备通过所述第一主控板将所述第一协议报文发送给所述第二主控板进行备份;
所述第一网络设备在处理所述第一协议报文的过程中发生故障并重启,包括:
所述第一网络设备确定所述第一主控板发生故障,将所述第二主控板作为主用主控板;
所述第一网络设备确定所述第一主控板重启,通过所述第二主控板将所述第一协议报文发送给所述第一主控板进行备份;
所述第一网络设备确定数据恢复尚未完成,则不处理所述第一协议报文,包括:
所述第一网络设备确定所述第一主控板对所述第一协议报文的备份尚未完成,则不通过所述第二主控板处理所述第一协议报文;或者,
所述第一网络设备与第二网络设备存在邻接关系,所述第二网络设备存储有所述第一网络设备的路由状态信息;
所述第一网络设备接收第一协议报文之后,还包括:
所述第一网络设备将所述第一协议报文备份至目标存储器中,其中,所述目标存储器耦合于所述第一网络设备;
所述第一网络设备确定数据恢复尚未完成,则不处理所述第一协议报文,包括:
所述第一网络设备根据所述第二网络设备中存储的所述路由状态信息执行优雅重启GR尚未完成,则不处理所述第一协议报文;或者,
所述第一网络设备包括第一调测模块;所述第一网络设备接收第一协议报文之后,还包括:
所述第一网络设备通过所述第一调测模块对所述第一协议报文进行备份;
若所述第一网络设备在处理所述第一协议报文的过程中未发生故障,通过所述第一调测模块清除所述第一协议报文。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一网络设备确定所述第一协议报文为畸形报文,则不处理所述第一协议报文。
3.根据权利要求2所述的方法,其特征在于,所述第一网络设备确定所述第一协议报文为畸形报文,包括:
所述第一网络设备根据发生故障的时间和调用栈信息确定所述第一协议报文为畸形报文。
4.根据权利要求2所述的方法,其特征在于,所述第一网络设备包括第一主控板和第二主控板,其中,所述第一主控板和所述第二主控板互为备用主控板;所述第一主控板包括第一缓存队列;所述第二主控板包括第二缓存队列;所述第一缓存队列中存储有所述第一协议报文;
所述第一网络设备确定所述第一协议报文为畸形报文,包括:
在所述第二缓存队列对所述第一缓存队列存储的所述第一协议报文完成备份,且所述第一主控板接收到所述第二主控板发送的确认字符ACK的情况下,所述第一网络设备通过所述第二主控板确定所述第二主控板备份的所述第一协议报文为畸形报文。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
所述第一网络设备确定由于所述第一协议报文而引发故障的次数,在所述次数满足第一阈值的情况下,不再处理所述第一协议报文。
6.一种网络设备,其特征在于,所述设备包括:
接收单元,用于接收第一协议报文;
处理单元,用于在处理所述第一协议报文的过程中发生故障并重启;
所述处理单元,还用于确定数据恢复尚未完成,不处理所述第一协议报文;
其中,所述设备包括第一主控板和第二主控板,其中,所述第一主控板和所述第二主控板互为备用主控板;所述设备还包括:
发送单元,用于通过所述第一主控板将所述第一协议报文发送给所述第二主控板进行备份;
所述处理单元具体用于:
确定所述第一主控板发生故障,将所述第二主控板作为主用主控板;
所述发送单元,还用于确定所述第一主控板重启,通过所述第二主控板将所述第一协议报文发送给所述第一主控板进行备份;
所述处理单元,还具体用于:
确定所述第一主控板对所述第一协议报文的备份尚未完成,则不通过所述第二主控板处理所述第一协议报文;或者,
所述设备与第二网络设备存在邻接关系,所述第二网络设备存储有所述设备的路由状态信息;
所述处理单元,还用于将所述第一协议报文备份至目标存储器中;其中,所述目标存储器耦合于所述设备;
所述处理单元还具体用于:
根据所述第二网络设备中存储的所述路由状态信息执行优雅重启GR尚未完成,则不处理所述第一协议报文;或者,
所述设备包括第一调测模块;
所述处理单元,还用于:通过所述第一调测模块对所述第一协议报文进行备份;若在处理所述第一协议报文的过程中未发生故障,通过所述第一调测模块清除所述第一协议报文。
7.根据权利要求6所述的设备,其特征在于,所述处理单元,还用于:
确定所述第一协议报文为畸形报文,不处理所述第一协议报文。
8.根据权利要求7所述的设备,其特征在于,所述处理单元,还具体用于:
根据发生故障的时间和调用栈信息确定所述第一协议报文为畸形报文。
9.根据权利要求7所述的设备,其特征在于,所述设备包括第一主控板和第二主控板,其中,所述第一主控板和所述第二主控板互为备用主控板;所述第一主控板包括第一缓存队列;所述第二主控板包括第二缓存队列;所述第一缓存队列中存储有所述第一协议报文;
所述处理单元,还具体用于:
在所述第二缓存队列对所述第一缓存队列存储的所述第一协议报文完成备份,且所述第一主控板接收到所述第二主控板发送的确认字符ACK的情况下,通过所述第二主控板确定所述第二主控板备份的所述第一协议报文为畸形报文。
10.根据权利要求6-9任一项所述的设备,其特征在于,所述处理单元,还用于:
确定由于所述第一协议报文而引发故障的次数,在所述次数满足第一阈值的情况下,不再处理所述第一协议报文。
11.一种网络设备,其特征在于,所述网络设备包括存储器和处理器,所述处理器执行所述存储器存储的计算机指令,以使得所述网络设备执行权利要求1-5任一项所述的方法。
12.一种可读计算机存储介质,所述可读计算机存储介质存储有计算机程序,当所述计算机程序被处理器执行时实现权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911363675.1A CN113055196B (zh) | 2019-12-28 | 2019-12-28 | 报文处理方法、网络设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911363675.1A CN113055196B (zh) | 2019-12-28 | 2019-12-28 | 报文处理方法、网络设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113055196A CN113055196A (zh) | 2021-06-29 |
CN113055196B true CN113055196B (zh) | 2022-08-26 |
Family
ID=76505316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911363675.1A Active CN113055196B (zh) | 2019-12-28 | 2019-12-28 | 报文处理方法、网络设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113055196B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114389949B (zh) * | 2022-01-20 | 2024-04-12 | 网宿科技股份有限公司 | 路由升级方法、电子设备及存储介质 |
CN114553757B (zh) * | 2022-01-29 | 2024-06-18 | 阿里巴巴(中国)有限公司 | 基于可编程交换机的协议报文处理方法、装置和设备 |
CN117201518B (zh) * | 2023-11-08 | 2024-02-20 | 苏州元脑智能科技有限公司 | 数据的传输方法、系统、装置、存储介质和电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101345698A (zh) * | 2007-07-10 | 2009-01-14 | 中兴通讯股份有限公司 | 一种优雅重启时的同步方法 |
CN106209469A (zh) * | 2016-07-21 | 2016-12-07 | 杭州迪普科技有限公司 | 进程重启的方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101459573B (zh) * | 2007-12-13 | 2012-05-23 | 华为技术有限公司 | 一种路由器平滑重启的方法、路由器及通信网络 |
US8984266B2 (en) * | 2010-12-29 | 2015-03-17 | Brocade Communications Systems, Inc. | Techniques for stopping rolling reboots |
CN103825817B (zh) * | 2014-02-18 | 2017-09-15 | 新华三技术有限公司 | 路由协议重启后不间断路由的实现方法和装置 |
CN103944974B (zh) * | 2014-04-02 | 2017-10-17 | 华为技术有限公司 | 一种协议报文处理方法、控制器故障处理方法及相关设备 |
CN105589764B (zh) * | 2015-12-10 | 2018-10-09 | 新华三技术有限公司 | Cpu异常处理方法及装置 |
CN109873719B (zh) * | 2019-02-03 | 2019-12-31 | 华为技术有限公司 | 一种故障检测方法及装置 |
-
2019
- 2019-12-28 CN CN201911363675.1A patent/CN113055196B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101345698A (zh) * | 2007-07-10 | 2009-01-14 | 中兴通讯股份有限公司 | 一种优雅重启时的同步方法 |
CN106209469A (zh) * | 2016-07-21 | 2016-12-07 | 杭州迪普科技有限公司 | 进程重启的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113055196A (zh) | 2021-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113055196B (zh) | 报文处理方法、网络设备及计算机可读存储介质 | |
US9634846B2 (en) | Running link state routing protocol in CLOS networks | |
CN102137017B (zh) | 用于虚拟网络单元的工作方法及装置 | |
US7804770B2 (en) | Method and apparatus for performing a graceful restart in a NSF-capable router without enhancing link state routing protocols | |
US8886831B2 (en) | System and methodology for fast link failover based on remote upstream failures | |
US10708132B2 (en) | Technique for handling a status change in an interconnect node | |
US7573811B2 (en) | Network transparent OSPF-TE failover | |
EP2632081B1 (en) | Path switch-back method and apparatus in transport network | |
CN106330475B (zh) | 一种通信系统中管理主备节点的方法和装置及高可用集群 | |
WO2017219779A1 (zh) | 基于链路协议的设备主备倒换方法和装置、存储介质 | |
CN103532839A (zh) | 在冗余路由器部署中的选择性bgp平稳重启 | |
JP2007258926A (ja) | 故障復旧方法およびノードならびにネットワーク | |
CN109495345B (zh) | 一种bfd处理方法及网络设备 | |
CN108804260B (zh) | 一种srio系统倒换的方法和装置 | |
WO2012119522A1 (zh) | 链路故障处理方法及装置 | |
CN105939254A (zh) | Vrrp备份组状态切换的方法及装置 | |
CN102769571B (zh) | 一种平滑重启实现方法及设备 | |
US20040146070A1 (en) | Method to recover from node failure/recovery incidents in distributed sytems in which notification does not occur | |
CN106464524B (zh) | Ason的路由计算方法和装置 | |
WO2015042840A1 (zh) | 一种故障恢复的方法、节点和路径计算单元 | |
US8116210B2 (en) | System and program product to recover from node failure/recovery incidents in distributed systems in which notification does not occur | |
CN111131035A (zh) | 数据传输方法及装置 | |
CN106130783B (zh) | 一种端口故障处理方法及装置 | |
JP3493035B2 (ja) | 動的パス切替方法 | |
JP4190170B2 (ja) | 迂回経路設定システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |