CN114338505B - 一种路由计算方法、装置、存储介质和计算机设备 - Google Patents

一种路由计算方法、装置、存储介质和计算机设备 Download PDF

Info

Publication number
CN114338505B
CN114338505B CN202111452403.6A CN202111452403A CN114338505B CN 114338505 B CN114338505 B CN 114338505B CN 202111452403 A CN202111452403 A CN 202111452403A CN 114338505 B CN114338505 B CN 114338505B
Authority
CN
China
Prior art keywords
routing
abnormal
event
route calculation
routing device
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
Application number
CN202111452403.6A
Other languages
English (en)
Other versions
CN114338505A (zh
Inventor
臧亚楠
赵旭东
王振
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou DPTech Technologies Co Ltd
Original Assignee
Hangzhou DPTech Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou DPTech Technologies Co Ltd filed Critical Hangzhou DPTech Technologies Co Ltd
Priority to CN202111452403.6A priority Critical patent/CN114338505B/zh
Publication of CN114338505A publication Critical patent/CN114338505A/zh
Application granted granted Critical
Publication of CN114338505B publication Critical patent/CN114338505B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本说明书提供了一种路由计算方法、装置、存储介质和计算机设备。所述方法应用于使用开放式最短路径优先OSPF协议的第一路由设备。第二路由设备与第一路由设备互为邻居关系。所述第一路由设备上配置了与所述OSPF协议对应的异常事件库。所述异常事件库包括导致所述邻居关系中断的异常事件,及异常事件对应的异常数据。所述方法包括:接收与所述邻居关系相关的异常数据;响应于接收到的异常数据,确定所述异常事件库中是否配置了与接收到的异常数据对应的目标异常事件;如果是,暂停路由计算;以及,响应于所述第二路由设备的邻居状态恢复至正常状态,恢复路由计算。

Description

一种路由计算方法、装置、存储介质和计算机设备
技术领域
本说明书的实施方式涉及通信领域,更具体地,本说明书的实施方式涉及一种路由计算方法、装置、存储介质和计算机设备。
背景技术
本部分旨在为权利要求书中陈述的本说明书的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
在通信网络中,路由设备的一个重要功能是在端对端的节点中找出一条最佳路径出来,通过自己与相邻节点之间的信息,来计算出从自己位置到目的节点之间的最佳线路,这个过程称为路由计算。而路由收敛指网络的拓扑结构发生变化后,路由表重新建立到发送再到学习直至稳定,并通告网络中所有相关路由器都得知该变化的过程。路由收敛的过程中,路由设备的业务会发生中断。
当路由设备之间的邻居关系由于某种原因异常的短暂断开时,由于发生路由收敛,路由设备的业务会发生中断。
发明内容
为克服相关技术中存在的问题,本说明书提供了以下方法及装置。
在本说明书实施方式的第一方面中,提供了一种路由计算方法,应用于使用开放式最短路径优先OSPF协议的第一路由设备,第二路由设备与第一路由设备互为邻居关系,所述第一路由设备上配置了与所述OSPF协议对应的异常事件库,所述异常事件库包括导致所述邻居关系中断的异常事件,及异常事件对应的异常数据;所述方法包括:
接收与所述邻居关系相关的异常数据;
响应于接收到的异常数据,判断所述异常事件库中是否配置了与接收到的异常数据对应的目标异常事件,如果是,暂停路由计算;
响应于所述第二路由设备的邻居状态恢复至正常状态,恢复路由计算。
在本说明书实施方式的第二方面中,提供了一种路由计算装置,应用于使用开放式最短路径优先OSPF协议的第一路由设备,第二路由设备与第一路由设备互为邻居关系,所述第一路由设备上配置了与所述OSPF协议对应的异常事件库,所述异常事件库包括导致所述邻居关系中断的异常事件,及异常事件对应的异常数据;所述装置包括:
接收模块:用于接收与所述邻居关系相关的异常数据;
暂停模块:用于响应于接收到的异常数据,判断所述异常事件库中是否配置了与接收到的异常数据对应的目标异常事件,如果是,暂停路由计算;
恢复模块:用于响应于所述第二路由设备的邻居状态恢复至正常状态,恢复路由计算。
在本说明书实施方式的第三方面中,提供了一种储存介质;其上存储有OSPF进程,应用于使用开放式最短路径优先OSPF协议的第一路由设备,第二路由设备与第一路由设备互为邻居关系,所述第一路由设备上配置了与所述OSPF协议对应的异常事件库,所述异常事件库包括导致所述邻居关系中断的异常事件,及异常事件对应的异常数据;该OSPF程序执行时实现如下所述方法的步骤:
接收与所述邻居关系相关的异常数据;
响应于接收到的异常数据,判断所述异常事件库中是否配置了与接收到的异常数据对应的目标异常事件,如果是,暂停路由计算;
响应于所述第二路由设备的邻居状态恢复至正常状态,恢复路由计算。
在本说明书实施方式的第四方面中,提供了一种电子设备,包括:包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序;所述计算机程序包括OSPF进程,所述OSPF进程应用于使用开放式最短路径优先OSPF协议的第一路由设备,第二路由设备与第一路由设备互为邻居关系,所述第一路由设备上配置了与所述OSPF协议对应的异常事件库,所述异常事件库包括导致所述邻居关系中断的异常事件,及异常事件对应的异常数据;其中,所述处理器通过运行OSPF进程以实现如下所述的方法:
接收与所述邻居关系相关的异常数据;
响应于接收到的异常数据,判断所述异常事件库中是否配置了与接收到的异常数据对应的目标异常事件,如果是,暂停路由计算;
响应于所述第二路由设备的邻居状态恢复至正常状态,恢复路由计算。
在本说明书以上的实施方式,至少具有如下的有益效果:
通过提前配置可能导致邻居关系中断的异常事件,并通过接收到的异常数据判断对应的目标异常事件,暂停路由计算,保持路由表,以使网络中的路由不中断或者异常事件结束后组网中的路由可以快速恢复。
附图说明
通过参考附图阅读下文的详细描述,本说明书示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本说明书的若干实施方式,其中:
图1示意性地示出了根据本说明书实施方式的的一种路由计算方法的流程图;
图2示意性地示出了根据本说明书实施方式的一种路由计算方法的流程图;
图3示意性地示出了根据本说明书实施方式的一种路由计算方法的流程图;
图4示意性地示出了根据本说明书实施方式的一种路由计算方法的流程图;
图5示意性地示出了根据本说明书实施方式的一种路由计算装置的框图;
图6示意性地示出了根据本说明书实施方式的一种路由计算装置所在计算机设备的一种硬件结构图;
图7示意性地示出了根据本说明书实施方式的一种应用于路由计算方法的软件产品的示意图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参考若干示例性实施方式来描述本说明书的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本说明书,而并非以任何方式限制本说明书的范围。相反,提供这些实施方式是为了使本说明书更加透彻和完整,并且能够将本说明书的范围完整地传达给本领域的技术人员。
本领域技术人员知道,本说明书的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本说明书可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
根据本说明书的实施方式,提出了一种路由计算方法、介质、装置和计算设备。
在本文中,需要理解的是,所涉及的术语表示如下:
路由:通过互联的网络把信息从源地址传输到目的地址的活动,路由引导分组转送,经过一些中间的节点后,到它们最后的目的地。通常根据一个存储到各个目的地的最佳路径的路由表来引导分组转送;
路由计算:指路由设备通过自己与相邻节点之间的信息,来计算出从自己位置到目的节点之间的最佳线路的过程;
路由收敛:路由收敛指网络的拓扑结构发生变化后,路由表重新建立到发送再到学习直至稳定,并通告网络中所有相关路由器都得知该变化的过程,也就是网络拓扑变化引起的通过重新计算路由而发现替代路由的行为。
OSPF(Open Shortest Path First,开放式最短路径优先)协议:OSPF协议是一种基于IP协议的链路状态路由协议,具有路由变化收敛速度快、无路由环路、支持变长子网掩码和汇总、层次区域划分等特点。
此外,附图中的任何元素数量均用于示例而非限制,以及任何命名都仅用于区分,而不具有任何限制含义。
下面参考本说明书的若干代表性实施方式,详细阐释本说明书的原理和精神。
应用场景总览
在应用OSPF协议的网络中,路由设备上运行OSPF进程,OSPF进程可以通过hello报文来保持邻居关系。OSPF进程可以按一定的周期(通常为10秒)向邻居发送hello报文,其中hello报文包含自己以及所有已知邻居的设备标识。如果在超时时间(通常为40秒)内未接收到某邻居的发送的hello报文,则会认为该邻居不再有效,会删除该邻居信息,并将无效邻居信息泛洪到网络中的其他设备。
而发生路由收敛时,由于需要重新计算路由和建立路由表,会导致当前的业务中断。因此,在某些下邻居关系的临时变化,但会在一定时间后恢复的情况下,我们并不希望立刻发生路由收敛,以免发生业务中断。
例如,以下几种异常事件:
1、当路由设备同时处理大量业务时,需要收发大量的报文,这可能导致hello报文的接收和发送超时,从而导致邻居中断;
2、由于某些原因OSPF进程重启,重启后邻居关系中断,需要重新建立邻居关系;
3、由于某些原因接口频繁断开,邻居关系频繁改变。
以上异常事件都会导致邻居关系的临时中断,路由设备会在邻居关系变化时立刻进行路由计算,发生路由收敛,导致业务中断。
相关技术中通常会通过给其他报文例如ack报文,request报文等增加保活属性,使得路由设备在接收到其他报文时也会刷新邻居计时器,使得邻居关系不会因报文量过大导致的hello报文超时而中断。但是这种方法只能应对因报文量过大导致的hello报文超时这一种情况。
发明概述
如前所述,传统的OSPF路由计算方法,存在发生使邻居关系临时断开的异常事件时会立刻发生路由收敛,导致业务中断的问题。
有鉴于此,本说明书提供一种路由计算方法,在发生邻居异常断开事件时,暂停路由计算。
本说明书的方案概述如下:
通过提前配置可能导致邻居关系中断的异常事件,并通过接收到的异常数据判断对应的目标异常事件,暂停路由计算,保持路由表,以使网络中的路由不中断或者异常事件结束后组网中的路由可以快速恢复。因此可以在邻居关系临时断开的情况下,防止业务中断。
示例性方法
下面将通过具体的实施例对本说明书的技术构思进行详细描述。
请参见图1,图1是一示例性实施例提供的一种路由计算方法的流程图。
该路由计算方法应用于使用开放式最短路径优先OSPF协议的第一路由设备,第二路由设备与第一路由设备互为邻居关系,第一路由设备上配置了与所述OSPF协议对应的异常事件库,异常事件库包括导致所述邻居关系中断的异常事件,及异常事件对应的异常数据。
上述路由设备可以是路由器,也可以是集成了路由功能的交换机等其他具有路由功能的网络设备,本说明书不对此做出具体限定。
上述第一路由设备上可以配置与所述OSPF协议对应的异常事件库,其中异常事件库可以包括导致上述邻居关系中断的异常事件,以及异常事件对应的异常数据。
在示出的一个示意性的实施例中,异常事件库还可以包括与异常事件对应的暂停路由计算的时长。
异常事件库可以是预置的,也可以是用户通过手动配置的。
例如,可以由用户输入配置命令的方式进行异常事件库的配置。其中,上述配置命令可以包含导致邻居关系中断的异常事件,以及异常事件对应的异常数据。
比如,在一个实施例中,可以使用配置命令ospf handle[event]delayconvergence[time]来配置异常事件,其中[event]字段表示异常事件,[time]字段表示异常事件对应的暂停路由计算的时长。
例如,可以用配置命令ospf handle[large_count_packet]delay convergence[100]表示出现报文量过大事件时,暂停路由计算的时长为100毫秒;又例如,可以用配置命令ospf handle[interface_down]delay convergence[10]表示出现接口断开事件时,暂停路由计算的时长为10毫秒。
该路由计算方法执行以下步骤:
步骤102,接收与所述邻居关系相关的异常数据;
第二路由设备与第一路由设备互为邻居关系,当上述邻居关系发生异常中断时,会产生响应的异常数据,第一路由设备可以接收上述异常数据。
其中,上述异常数据可以反应导致邻居关系发生中断的异常事件。根据异常事件的不同,异常数据可以是由内核发送的信号,也可以是接收到的由上述第二路由设备发送的特定报文,或是其他与邻居关系相关的异常数据。
例如,当异常事件为与所述第二路由设备建立邻居关系的接口的报文数量过大事件时,对应的异常数据可以是第一路由设备接收到的第二路由设备发送的hello报文超时的信息,也可以是第一路由设备接收到的第二路由设备发送的hello报文中第二路设备的邻居列表中不存在第一路由设备标识的信息。
又例如,当异常事件为与上述第二路由设备建立邻居关系的接口对应的接口断开事件时,与该异常事件对应的异常数据可以是上述第一路由设备的系统内核上报给所述第一路由设备运行的OSPF进程的与所述第二路由设备建立邻居关系的接口对应的接口断开事件信号。
步骤104,响应于接收到的异常数据,判断所述异常事件库中是否配置了与接收到的异常数据对应的目标异常事件,如果是,暂停路由计算;
异常事件库中可以包括导致所述邻居关系中断的异常事件,及异常事件对应的异常数据。根据异常事件库中的上述对应关系,在接收到异常数据后,可以确定接收到的异常数据是否配置了对应的目标异常事件。
在确定上述接收到的异常数据在异常事件库中配置了对应的目标异常事件后,可以正常变更邻居的状态,并暂停路由计算,防止发生路由收敛。
在此期间,由于未发生路由收敛,路由设备的正常业务不会因邻居关系的异常中断而发生中断。
步骤106,响应于所述第二路由设备的邻居状态恢复至正常状态,恢复路由计算。
当上述第二路由设备恢复至正常状态时,可以恢复路由计算,发生路由收敛。上述第二路由设备恢复至正常状态,可以是第二路由设备恢复至full状态,也可以是第一路由设备接收到其他能反应第二路由设备恢复至正常状态的信号或报文等,本说明书不对此做出具体限定。
请参见图2,图2是一示例性实施例提供的一种路由计算方法的流程图。
该方法还包括以下步骤:
步骤207,当所述路由计算暂停的时长达到预设的暂停路由计算时长时,恢复路由计算。
当路由计算暂停的时长到达预设值时,可以恢复路由计算,发生路由收敛。由于过长时间的暂停路由计算和路由收敛会影响正常的业务。因此,到达一定时长后,如果邻居关系仍处于中断状态,第一路由设备可以恢复正常的路由计算,发生路由收敛,这将使第一路由设备在邻居列表中删除该第二路由设备。
在示出的一个示意性的实施例中,异常事件可以包括与所述第二路由设备建立邻居关系的接口对应的接口断开事件;相应的,与所述异常事件对应的异常数据可以包括所述第一路由设备的系统内核上报给所述第一路由设备运行的OSPF进程的与所述第二路由设备建立邻居关系的接口对应的接口断开事件信号。
请参见图3,图3是一示例性实施例提供的一种路由计算方法的流程图。上述方法包括以下步骤:
步骤302,接收内核上报的与所述第二路由设备建立邻居关系的接口对应的接口断开事件;
在实际组网环境中,由于各种原因,比如以太网口松动或者接触不良等情况,可能会导致上述第一路由设备与第二路由设备相连的物理口或三层口的频繁短时间异常断开。而接口的频繁地断开重连会导致邻居关系的频繁断开与重新协商邻居关系,使路由设备不断的进行路由计算,发生路由收敛,严重影响正常业务。
因此,可以在异常事件库中配置与所述第二路由设备建立邻居关系的接口对应的接口断开事件,同时可以将系统内核上报给OSPF进程的该接口断开事件信号作为对应的异常数据。
当上述接口断开时,第一路由设备的系统内核可以上报该接口对应的接口断开事件信号至第一路由设备的OSPF进程,第一路由设备可以接收内核上报的上述信号。
步骤304,响应于接收到的接口断开事件信号,判断所述异常事件库中是否配置了与接收到的异常数据对应的目标异常事件,如果是,暂停路由计算;
上述第一路由设备可以响应于接收到的接口断开事件信号,确定在异常事件库中配置了接口断开事件信号对应的目标异常事件为该接口对应的接口断开事件。
因此,第一路由设备确定已配置接口断开事件后,可以正常变更与上述邻居第二路由设备的状态为Down状态,并暂停路由计算。可以防止或降低上述接口发生短时间内的频繁断开重连行为时,频繁发生的路由收敛对正常业务的影响。
步骤306,响应于所述第二路由设备的邻居状态恢复至正常状态恢复路由计算,或所述路由计算暂停的时长达到预设的暂停路由计算时长时,恢复路由计算;
当接口重新连接,上述第二路由设备恢复至正常状态,例如full状态时,或暂停路由计算的时长达到预设时长时,上述第一路由设备可以重新开始路由计算,恢复路由计算。
在示出的一个示意性的实施例中,所述异常事件包括与所述第二路由设备建立邻居关系的接口接收到的报文数量过大事件;相应的,与所述异常事件对应的异常数据包括所述第一路由设备的系统内核上报给所述第一路由设备运行的OSPF进程的所述接口接收的报文数量过大的事件信号,或由所述第一路由设备运行的OSPF进程基于所述第一路由设备的系统内核上报的所述接口接收的报文数量判断得到的所述接口接收的报文数量过大的事件信号。
应用OSPF协议的路由设备之间,通过周期性的向邻居发送hello报文来保持邻居关系,如果在一定时长内未收到来自邻居的hello报文则会认为此邻居不再有效,删除该邻居信息,并将无效邻居信息泛洪至自治系统内的其它设备,进行路由计算,发生路由收敛。
但如果由于某些原因,路由设备某个接口接收的报文量过大时,要耗费大量的时间进行处理,可以导致该路由设备接收该接口下的邻居发送的hello报文超时或该路由设备发送的hello报文超时。当该路由设备接收该接口下的邻居发送的hello报文超时时,会认为该邻居不再有效,导致邻居关系的中断;当该路由设备发送的hello报文超时时,会使邻居认为本路由设备不再有效,邻居关系中断,其邻居列表中不再有自己的设备标识。
因此,可以在上述异常事件库中配置与所述第二路由设备建立邻居关系的接口接收到的报文数量过大事件,并且由系统内核对上述接口接受的报文数量进行计数。可以是上述第一路由设备的系统内核上报给所述第一路由设备运行的OSPF进程的所述接口接收的报文数量过大的事件信号,也可是由上述第一路由设备运行的OSPF进程基于所述第一路由设备的系统内核上报的所述接口接收的报文数量判断得到的所述接口接收的报文数量过大的事件信号。
接口接收的报文数量的具体计数方式和报文数量过大的判断可由实际应用需要进行设定,本说明书不进行具体限定。
例如,在一个实施例中,系统内核可以在相关接口下增加计数变量,每收到一个报文后计数加1,每隔1秒检测计数并上报至上述OSPF进程并清零计数,当OSPF进程判断计数超过阈值时,判定该接口发生报文数量过大事件;
又例如,在另一个实施例中,系统内核可以在相关接口下增加计数变量,每收到一个报文后计数加1,每隔1秒检测计数并清零,当系统内核判断计数超过阈值时会对接口进行标记,如果连续3秒都进行标记,则判定该接口发生报文数量过大事件;如果后续连续3秒都未进行标记,则判定该接口的报文数量过大事件结束。
在示出的一个示意性的实施例中,异常事件包括上述第二路由设备中的OSPF进程的重启事件,或上述第二路由设备的重启事件;相应的,与所述异常事件对应的异常数据包括所述第二路由设备发送的基于OSPF协议的初始hello报文,和/或,所述第二路由设备发送的基于OSPF协议的初始DD报文。
由于某些原因,可能出现与第一路由设备互为邻居关系的第二路由设备中的OSPF进程出现挂死或异常等导致上述第二路由设备中的OSPF进程的重启,或第二路由设备的重启。上述第二路由设备或第二路由设备中的OSPF进程的重启会导致上述邻居关系的中断和重新建立,影响正常的业务。
上述第二路由设备或第二路由设备中的OSPF进程发生重启后,根据OSPF协议,上述OSPF进程会向上述第一路由设备发送初始hello报文和初始DD报文,以重新建立邻居关系。
因此,可以在上述第一路由设备的异常事件库中配置上述第二路由设备中的OSPF进程的重启事件,或上述第二路由设备的重启事件,上述异常事件对应的异常数据可以包括所述第二路由设备发送的基于OSPF协议的初始hello报文或初始DD报文。
上述第一路由设备在接收到第二路由设备发送的初始hello报文或初始DD报文后,可以判断上述异常事件库中是否配置了上述第二路由设备中的OSPF进程的重启事件或上述第二路由设备的重启事件;确认已配置上述异常事件后,正常变更邻居状态,并暂停路由计算,防止路由收敛影响正常业务。
由于路由设备和OSPF进程的重启往往比较慢,通常第二路由设备对应的暂停路由计算的时长可以设置较长,例如1000毫秒。
在示出的一个示意性的实施例中,所述异常事件为包括所述第二路由设备建立邻居关系的接口的报文数量过大事件,所述暂停路由计算,包括:如果所述异常事件为与所述第二路由设备建立邻居关系的接口的报文数量过大事件,检测接收到的所述第二路由设备发送的hello报文;判断所述hello报文是否超时,或者所述第二路由设备的邻居列表中是否存在所述第一路由设备的设备标识;如果所述hello报文超时或者所述第二路由设备的邻居列表中不存在第一路由设备的设备标识,暂停路由计算。
当路由设备某个接口接收的报文量过大时,可能会导致该路由设备接收该接口下的邻居发送的hello报文超时或该路由设备发送的hello报文超时,但上述接口接收的报文量过大并不必定导致向该接口下的邻居发送的hello报文的发送超时和接收超时。因此,可以增加对该路由设备接收该接口下的邻居发送的hello报文或该路由设备发送的hello报文是否超时的判断,以减少不必要的路由计算暂停。
请参见图4,图4是一示例性实施例提供的一种路由计算方法的流程图。上述方法包括以下步骤:
步骤403,响应于接收到的异常数据,判断所述异常事件库中是否配置了与第二路由设备建立邻居关系的接口的的报文数量过大事件,如果配置了与第二路由设备建立邻居关系的接口的的报文数量过大事件,检测接收到的所述第二路由设备发送的hello报文;
当该路由设备接收该接口下的邻居发送的hello报文超时时,会认为该邻居不再有效,导致邻居关系的中断;当该路由设备发送的hello报文超时时,会使邻居认为本路由设备不再有效,邻居关系中断,其邻居列表中不再有自己的设备标识。并且,根据OSPF协议,路由设备发送的hello报文中会包含该设备所有邻居的设备标识。
因此,可以通过检测所述第二路由设备发送的hello报文中的第二路由设备的邻居列表中是否存在上述第一路由设备的设备标识,来判断第一路由设备发送给第二路由设备的hello报文是否超时。
步骤405,判断所述hello报文是否超时,或者所述第二路由设备的邻居列表中是否存在所述第一路由设备的设备标识;如果所述hello报文超时或者所述第二路由设备的邻居列表中不存在第一路由设备的设备标识,暂停路由计算;
如果所述hello报文超时,或者所述第二路由设备的邻居列表中不存在第一路由设备的设备标识,说明第一路由设备与第二路由设备的邻居关系将发生异常中断,因此,第一路由设备可以暂停路由计算,防止或减少hello报文超时对正常业务的影响。
在本说明书的示例性实施例中,还提供了一种路由计算装置。
请参见图5,图5是在本说明书实施方式的一种路由计算装置的框图。
该装置应用于使用开放式最短路径优先OSPF协议的第一路由设备,第二路由设备与第一路由设备互为邻居关系,所述第一路由设备上配置了与所述OSPF协议对应的异常事件库,所述异常事件库包括导致所述邻居关系中断的异常事件,及异常事件对应的异常数据;上述装置包括:
接收模块510:用于接收与所述邻居关系相关的异常数据;
暂停模块520:用于响应于接收到的异常数据,判断所述异常事件库中是否配置了与接收到的异常数据对应的目标异常事件,如果配置了接收到的异常数据对应的目标异常事件,暂停路由计算;
恢复模块530:用于在所述第二路由设备的邻居状态恢复至正常状态时,恢复路由计算。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在本说明书的示例性实施例中,还提供了一种装置及其所应用的终端的实施例。
本说明书中装置的实施例可以应用在计算机设备上,例如服务器或终端设备。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图6所示,为本说明书实施例装置所在计算机设备的一种硬件结构图,除了图6所示的处理器610、内存630、网络接口620、以及非易失性存储器640之外,实施例中装置631所在的服务器或电子设备,通常根据该计算机设备的实际功能,还可以包括其他硬件,对此不再赘述。
在本说明书的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本说明书的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本说明书各种示例性实施例的步骤。
参考图7所示,描述了根据本说明书的实施例的用于实现上述方法的程序产品70,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本说明书的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本说明书操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本说明书的其他实施例。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由权利要求指出。
应当注意,尽管在上文详细描述中提及了装置的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本说明书的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
此外,尽管在附图中以特定顺序描述了本说明书方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本说明书的精神和原理,但是应该理解,本说明书并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本说明书旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。

Claims (10)

1.一种路由计算方法,应用于使用开放式最短路径优先OSPF协议的第一路由设备,第二路由设备与第一路由设备互为邻居关系,所述第一路由设备上配置了与所述OSPF协议对应的异常事件库,所述异常事件库包括导致所述邻居关系中断的异常事件,及异常事件对应的异常数据;所述异常事件包括与所述第二路由设备建立邻居关系的接口接收到的报文数量过大事件;所述异常事件包括与所述第二路由设备建立邻居关系的接口对应的接口断开事件;所述异常事件包括所述第二路由设备中的OSPF进程的重启事件,或者,所述第二路由设备的重启事件;其特征在于,所述方法包括:
接收与所述邻居关系相关的异常数据;
响应于接收到的异常数据,确定所述异常事件库中是否配置了与接收到的异常数据对应的目标异常事件;如果是,暂停路由计算;以及,
响应于所述第二路由设备的邻居状态恢复至正常状态,恢复路由计算。
2.根据权利要求1所述的方法,其特征在于,还包括:
确定所述路由计算暂停的时长是否达到预设的暂停路由计算时长;
如果是,恢复所述路由计算。
3.根据权利要求2所述的方法,其特征在于,所述异常事件库还包括预配置的与所述异常事件对应的暂停路由计算时长;
所述确定所述路由计算暂停的时长是否达到预设的暂停路由计算时长,包括:
获取所述异常事件库中预配置的与所述目标异常事件对应的暂停路由计算时长;确定所述路由计算暂停的时长是否达到获取到的所述暂停路由计算时长。
4.根据权利要求1所述的方法,其特征在于,
与所述异常事件对应的异常数据包括所述第一路由设备的系统内核上报给所述第一路由设备运行的OSPF进程的所述接口接收的报文数量过大的事件信号;或者,由所述第一路由设备运行的OSPF进程在确定所述第一路由设备的系统内核上报的所述接口接收的报文数量超过阈值时,生成的所述接口接收的报文数量过大的事件信号。
5.根据权利要求1所述的方法,其特征在于,
与所述异常事件对应的异常数据包括所述第一路由设备的系统内核上报给所述第一路由设备运行的OSPF进程的与所述接口对应的接口断开事件信号。
6.根据权利要求1所述的方法,其特征在于:
与所述异常事件对应的异常数据包括所述第二路由设备发送的基于OSPF协议的初始hello报文;或者,所述第二路由设备发送的基于OSPF协议的初始DD报文。
7.根据权利要求1所述的方法,其特征在于,所述暂停路由计算,包括:
如果所述异常事件为与所述第二路由设备建立邻居关系的接口的报文数量过大事件,检测接收到的所述第二路由设备发送的hello报文;
确定所述hello报文是否超时;或者,确定所述第二路由设备的邻居列表中是否存在所述第一路由设备的设备标识;
如果所述hello报文超时或者所述第二路由设备的邻居列表中不存在第一路由设备的设备标识,暂停路由计算。
8.一种路由计算装置,应用于使用开放式最短路径优先OSPF协议的第一路由设备,第二路由设备与第一路由设备互为邻居关系,所述第一路由设备上配置了与所述OSPF协议对应的异常事件库,所述异常事件库包括导致所述邻居关系中断的异常事件,及异常事件对应的异常数据;所述异常事件包括与所述第二路由设备建立邻居关系的接口接收到的报文数量过大事件;所述异常事件包括与所述第二路由设备建立邻居关系的接口对应的接口断开事件;所述异常事件包括所述第二路由设备中的OSPF进程的重启事件,或者,所述第二路由设备的重启事件;其特征在于,所述装置包括:
接收模块:用于接收与所述邻居关系相关的异常数据;
暂停模块:用于响应于接收到的异常数据,判断所述异常事件库中是否配置了与接收到的异常数据对应的目标异常事件,如果是,暂停路由计算;
恢复模块:用于响应于所述第二路由设备的邻居状态恢复至正常状态,恢复路由计算。
9.一种储存介质,其特征在于,其上存储有OSPF程序,该OSPF程序执行时实现如权利要求1-7中任一项所述方法的步骤。
10.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行如权利要求1-7中任一项所述方法的步骤。
CN202111452403.6A 2021-12-01 2021-12-01 一种路由计算方法、装置、存储介质和计算机设备 Active CN114338505B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111452403.6A CN114338505B (zh) 2021-12-01 2021-12-01 一种路由计算方法、装置、存储介质和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111452403.6A CN114338505B (zh) 2021-12-01 2021-12-01 一种路由计算方法、装置、存储介质和计算机设备

Publications (2)

Publication Number Publication Date
CN114338505A CN114338505A (zh) 2022-04-12
CN114338505B true CN114338505B (zh) 2023-06-27

Family

ID=81049545

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111452403.6A Active CN114338505B (zh) 2021-12-01 2021-12-01 一种路由计算方法、装置、存储介质和计算机设备

Country Status (1)

Country Link
CN (1) CN114338505B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6950427B1 (en) * 2001-08-09 2005-09-27 Cisco Technology, Inc. Technique for resynchronizing LSDB in OSPF after a software reload in a non-stop forwarding intermediate node of a computer network
US7065059B1 (en) * 2001-08-09 2006-06-20 Cisco Technology, Inc. Technique for restoring adjacencies in OSPF in a non-stop forwarding intermediate node of a computer network
US7362709B1 (en) * 2001-11-02 2008-04-22 Arizona Board Of Regents Agile digital communication network with rapid rerouting
WO2009047439A2 (fr) * 2007-09-21 2009-04-16 France Telecom Procede de routage distribue de donnees dans un reseau, tolerant aux pannes
CN101483609A (zh) * 2009-02-18 2009-07-15 迈普(四川)通信技术有限公司 Rip动态路由协议优雅重启的方法
CN102136947A (zh) * 2011-03-10 2011-07-27 华为技术有限公司 链路故障处理方法及装置
CN102546427A (zh) * 2012-02-02 2012-07-04 杭州华三通信技术有限公司 一种基于ospf协议的平滑重启方法和路由器
CN105187276A (zh) * 2015-09-01 2015-12-23 中国科学院计算技术研究所 IPV6网络环境中OSPFv3协议下的链路通断检测方法及系统
CN106209469A (zh) * 2016-07-21 2016-12-07 杭州迪普科技有限公司 进程重启的方法及装置
CN106878175A (zh) * 2017-03-27 2017-06-20 新华三技术有限公司 Bgp路由处理方法、装置和bgp设备
CN108696433A (zh) * 2018-07-24 2018-10-23 新华三技术有限公司 路由振荡抑制方法及bgp路由设备
CN108933818A (zh) * 2018-06-21 2018-12-04 新华三技术有限公司 通信方法及装置
CN111190767A (zh) * 2019-12-24 2020-05-22 广州市高科通信技术股份有限公司 一种ospf协议中实现lsdb主备同步方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4588262B2 (ja) * 2001-07-04 2010-11-24 富士通株式会社 ルータ及びネットワークにおける一時停止方法

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6950427B1 (en) * 2001-08-09 2005-09-27 Cisco Technology, Inc. Technique for resynchronizing LSDB in OSPF after a software reload in a non-stop forwarding intermediate node of a computer network
US7065059B1 (en) * 2001-08-09 2006-06-20 Cisco Technology, Inc. Technique for restoring adjacencies in OSPF in a non-stop forwarding intermediate node of a computer network
US7362709B1 (en) * 2001-11-02 2008-04-22 Arizona Board Of Regents Agile digital communication network with rapid rerouting
WO2009047439A2 (fr) * 2007-09-21 2009-04-16 France Telecom Procede de routage distribue de donnees dans un reseau, tolerant aux pannes
CN101483609A (zh) * 2009-02-18 2009-07-15 迈普(四川)通信技术有限公司 Rip动态路由协议优雅重启的方法
CN102136947A (zh) * 2011-03-10 2011-07-27 华为技术有限公司 链路故障处理方法及装置
CN102546427A (zh) * 2012-02-02 2012-07-04 杭州华三通信技术有限公司 一种基于ospf协议的平滑重启方法和路由器
CN105187276A (zh) * 2015-09-01 2015-12-23 中国科学院计算技术研究所 IPV6网络环境中OSPFv3协议下的链路通断检测方法及系统
CN106209469A (zh) * 2016-07-21 2016-12-07 杭州迪普科技有限公司 进程重启的方法及装置
CN106878175A (zh) * 2017-03-27 2017-06-20 新华三技术有限公司 Bgp路由处理方法、装置和bgp设备
CN108933818A (zh) * 2018-06-21 2018-12-04 新华三技术有限公司 通信方法及装置
CN108696433A (zh) * 2018-07-24 2018-10-23 新华三技术有限公司 路由振荡抑制方法及bgp路由设备
CN111190767A (zh) * 2019-12-24 2020-05-22 广州市高科通信技术股份有限公司 一种ospf协议中实现lsdb主备同步方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
OSPF协议软件的设计与实现—链路状态数据库与路由表计算;谭海平;《万方数据库》;全文 *
Ricardo Bennesby da Silva.A Survey on Approaches to Reduce BGP Interdomain Routing Convergence Delay on the Internet.《IEEE Communications Surveys &amp Tutorials》.2017,全文. *

Also Published As

Publication number Publication date
CN114338505A (zh) 2022-04-12

Similar Documents

Publication Publication Date Title
US7508772B1 (en) Partial graceful restart for border gateway protocol (BGP)
US7940649B2 (en) Techniques for graceful restart in a multi-process operating system
US8331222B2 (en) Link fault handling method and data forwarding apparatus
US9270536B2 (en) BGP slow peer detection
US8238232B2 (en) Constructing a transition route in a data communication network
EP2586163B1 (en) Notifying a controller of a change to a packet forwarding configuration of a network element over a communication channel
JP4748086B2 (ja) 通信中継装置、リソース解放方法および通信中継装置のプログラム
US7961601B2 (en) Lesser disruptive open shortest path first handling of bidirectional forwarding detection state changes
EP2571212A2 (en) OSPF non-stop routing with reliable flooding
US10979340B2 (en) Link state addition and deletion based on reception of a single message in link state vector routing
US7889668B2 (en) Method of operating a network
CN102281199A (zh) 路由设备、路由反射器、路由信息处理方法和系统
WO2021027828A1 (zh) 一种链路状态信息的处理方法及装置
CN102325080B (zh) 一种ospf协议平滑重启方法和装置
US8189510B2 (en) Mobile IP communication system
CN109039916B (zh) 报文转发方法、装置及存储介质
WO2021109997A1 (zh) 分段路由隧道的防断纤方法、装置,入口节点及存储介质
US7869350B1 (en) Method and apparatus for determining a data communication network repair strategy
CN114338505B (zh) 一种路由计算方法、装置、存储介质和计算机设备
CN102571605B (zh) 防止流量中断方法和装置
CN113163344B (zh) 有线与无线混合组网的控制方法、装置、介质和电子设备
JP2011166245A (ja) ネットワークシステム、ゲートウェイ装置切替方法、第1のトンネル終端ゲートウェイ装置および第2のトンネル終端ゲートウェイ装置
JP2020022139A (ja) 通信方法および通信システム
JPWO2005117365A1 (ja) 通信制御装置及び通信制御方法
CN103763199A (zh) 一种链路状态信息处理方法和装置

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