CN102420766B - 一种路由确定方法及路由设备 - Google Patents
一种路由确定方法及路由设备 Download PDFInfo
- Publication number
- CN102420766B CN102420766B CN201110408494.3A CN201110408494A CN102420766B CN 102420766 B CN102420766 B CN 102420766B CN 201110408494 A CN201110408494 A CN 201110408494A CN 102420766 B CN102420766 B CN 102420766B
- Authority
- CN
- China
- Prior art keywords
- routing device
- neighbor
- self
- link
- local
- 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
Images
Landscapes
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种路由确定方法及路由设备,包括:路由设备基于预设的链路检测方式,确定自身所在的广播链路发生振荡;并当该广播链路上的当前指定中间系统为自身的远端邻居设备时,从自身和自身的本地邻居设备中,选择本地指定中间系统;并基于选择的本地指定中间系统,确定自身的最新LSP;以及根据自身的最新LSP,以及接收的自身的邻居设备的最新LSP,进行路由计算,确定最新路由。当广播链路发生振荡,且该广播链路的一端存在多台路由设备,且不包括指定中间系统时,采用本发明实施例提供的方案进行路由计算,能够实现路由收敛。
Description
技术领域
本发明涉及网络通信技术领域中的路由技术领域,尤其涉及一种路由确定方法及路由设备。
背景技术
随着网络技术的发展,越来越多用户采用高速的广播链路专线(带宽一般10Mbps(含)以上)替代低速的DDN(DIGITAL DATA NETWORK,数字数据网)专线(一般带宽在2Mbps左右)用于数据传输。例如,一个典型的例子是银行使用MSTP(Multi-Service Transport Platform,多业务传送平台)线路替代原有低速DDN专线进行数据传输。MSTP线路与我们所熟知的以太网宽带的区别是对使用者或路由设备是透明的,对于使用者或路由设备而言,相当于从运营商侧直接拉了一根网线即以太网接入。
图1为使用广播链路专线的一种网络架构示意图,其中,为了确保数据通信的可靠性,实现不中断通信,分支机构和总部机构之间通过两条线路进行通信,一条是高带宽的广播链路专线,作为主线路,一条是低带宽的DDN专线,作为备份线路。
正常情况下,总部机构和分支机构之间的数据通过主线路进行传输,在主线路发生震荡情况下,如由于线路问题报文传输时断时续或者报文传输时间不稳定等,数据要快速切换到备份线路进行传输,确保总部机构和分支机构之间的业务正常进行,线路恢复正常之后,数据切换回主线路进行传输。
在图1中,路由设备A与路由设备B在主线路和备份线路上运行IS-IS(Intermediate System to Intermediate System,中间系统到中间系统)路由协议,其中主线路为广播链路,同时在主线路上开启BFD(Bidirectional ForwardingDetection,双向转发检测)协议用于检测主线路的质量,实现上述业务需求。
运行IS-IS路由协议进行路由计算的特点是:广播链路上的各路由设备之间通过交互HELLO报文,两两之间建立邻居关系,并从各路由设备之中选择一台优先级最高的路由设备,作为DIS(designated Intermediate System,指定中间系统,也称作伪节点),该广播链路上的路由设备均以该DIS作为路由计算的中转节点,通过各路由设备之间传输的LSP(Link-State Packet,链路状态报文),进行路由计算,生成最优路由,其中,LSP包括伪节点LSP和非伪节点LSP,伪节点LSP为仅DIS生成并发送的携带有该广播链路上所有路由设备的设备标识的LSP,非伪节点LSP为所有路由设备(包括指定中间系统)均会生成并发送的携带有自身的路由计算需求信息和该广播链路上的当前DIS的DIS标识,以及其它链路上的自身的邻居信息。
在图1中,路由设备A和路由设备B在广播链路(主线路)上成功建立邻居关系之后,触发采用BFD方式检测广播链路的质量。假设路由设备A的优先级比路由设备B高,被选举为该广播链路的DIS。当采用BFD方式检测出广播链路发生振荡后,路由设备A根据BFD线路振荡通告,更新自身的LSP,即删除自身的伪节点LSP中与自身之间的广播链路发生振荡的邻居设备的标识,即路由设备B的设备标识,路由设备B更新自身的LSP,即删除自身的非伪节点LSP中的DIS标识。路由设备A和路由设备B收到对方的更新后的LSP之后,进行路由计算,能够选择备份线路进行数据传输。广播链路恢复正常之后,路由设备A和路由设备B恢复自身的LSP中邻居信息,并根据接收的对方的更新后的LSP,进行路由计算,选择广播链路进行数据传输。
然而,在图1所示的网络架构中,如果总部机构或者分支机构由于接入主机增加,需要增加路由设备,则广播链路的一端将存在多个路由设备,如图2所示。
在图2中,分支机构和总部机构分别存在两台路由设备,此时,在该广播链路上存在四台路由设备。在这四台路由设备建立邻居关系后,假设路由设备A优先级最高,被选择为该广播链路上的DIS。当采用BFD方式检测出广播链路发生振荡后,路由设备A根据BFD线路振荡通告,更新自身的LSP,即删除自身的伪节点LSP中与自身之间的广播链路发生振荡的邻居设备的标识,即路由设备B和路由设备D的设备标识,路由设备B和路由设备D分别更新自身的LSP,即删除自身的非伪节点LSP中的DIS标识,由于路由设备C与路由设备A之间的广播链路未发生振荡,所以路由设备C的非伪节点LSP不变。这四台路由设备收到路由设备A、路由设备B和路由设备D的更新后的LSP后,启动路由计算,然而,由于路由设备B和路由设备D的LSP中已删除DIS标识,所以导致没有DIS的中转,从而使得路由设备B无法将到达分支机构的路由指向路由设备D,并通过备份线路到达分支机构,即路由无法实现收敛,主机B到主机A的数据将被路由设备B丢弃,这种情况将会一直持续到广播链路恢复正常。
发明内容
本发明实施例提供一种路由确定方法及路由设备,用以解决现有技术中存在的当广播链路发生振荡,且该广播链路的一端存在多台路由设备,且不包括指定中间系统时,进行路由计算后路由无法收敛的问题。
本发明实施例提供一种路由确定方法,包括:
路由设备基于预设的链路检测方式,确定自身所在的广播链路发生振荡;
当所述广播链路上的当前指定中间系统为自身的远端邻居设备时,从自身和自身的本地邻居设备中,选择本地指定中间系统,其中,所述远端邻居设备为所述广播链路上与所述路由设备位于不同端的路由设备,所述本地邻居设备为所述广播链路上与所述路由设备位于同一端的路由设备;
基于选择的所述本地指定中间系统,确定自身的最新链路状态报文LSP;
根据自身的最新LSP,以及接收的自身的邻居设备的最新LSP,进行路由计算,确定最新路由。
本发明实施例还提供一种路由设备,包括:
链路检测单元,用于基于预设的链路检测方式,确定本路由设备所在的广播链路发生振荡;
选择单元,用于当所述广播链路上的当前指定中间系统为本路由设备的远端邻居设备时,从本路由设备和本路由设备的本地邻居设备中,选择本地指定中间系统,其中,所述远端邻居设备为所述广播链路上与所述路由设备位于不同端的路由设备,所述本地邻居设备为所述广播链路上与所述路由设备位于同一端的路由设备;
报文更新单元,用于基于选择的所述本地指定中间系统,确定本路由设备的最新链路状态报文LSP;
路由计算单元,用于根据本路由设备的最新LSP,以及接收的本路由设备的邻居设备的最新LSP,进行路由计算,确定最新路由。
本发明有益效果包括:
本发明实施例提供的方法中,路由设备将自身所在广播链路上的邻居设备区分为远端邻居设备和本地邻居设备,在基于预设的链路检测方式确定自身所在的广播链路发生振荡后,当广播链路上的当前指定中间系统为自身的远端邻居设备时,从自身和自身的本地邻居设备中,选择本地指定中间系统,并基于选择的该本地指定中间系统,确定自身的最新LSP,以及根据自身的最新LSP,以及接收的自身的邻居设备的最新LSP,进行路由计算,确定最新路由。由于在本地邻居设备中重新选择了新的指定中间系统,并确定了自身的最新LSP,从而在进行路由计算时,可以通过该新的指定中间系统进行中转,进而使得路由计算后路由能够收敛。
附图说明
图1为使用广播链路专线的网络架构示意图之一;
图2为使用广播链路专线的网络架构示意图之二;
图3为本发明实施例提供的路由确定方法的流程图;
图4为本发明实施例1中提供的在广播链路发生振荡后的路由确定方法的流程图;
图5为本发明实施例2中提供的对广播链路上传输的协议报文的处理流程图;
图6为本发明实施例3中提供的在广播链路恢复正常后的路由确定方法的流程图;
图7为本发明实施例4中提供的路由设备的结构示意图。
具体实施方式
为了给出当广播链路发生振荡,且该广播链路的一端存在多台路由设备,且不包括指定中间系统时,进行路由计算能够使得路由收敛的实现方案,本发明实施例提供了一种路由确定方法及路由设备,以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明实施例提供一种路由确定方法,如图3所示,包括:
步骤S301、路由设备基于预设的链路检测方式,确定自身所在的广播链路发生振荡。
步骤S302、当该广播链路上的当前指定中间系统为自身的远端邻居设备时,从自身和自身的本地邻居设备中,选择本地指定中间系统,其中,远端邻居设备为该广播链路上与该路由设备位于不同端的路由设备,本地邻居设备为该广播链路上与该路由设备位于同一端的路由设备。
步骤S303、基于选择的本地指定中间系统,确定自身的最新LSP。
步骤S304、根据自身的最新LSP,以及接收的自身的邻居设备的最新LSP,进行路由计算,确定最新路由。
下面结合附图,用具体实施例对本发明提供的方法及路由设备进行详细描述。
实施例1:
图4为本发明实施例1中提供的路由确定方法的流程图,应用于广播链路上的各路由设备已经建立了邻居关系,并选择了指定中间系统,完成了路由计算后的场景,具体包括如下处理步骤:
步骤S401、位于广播链路上的路由设备基于预设的链路检测方式,对该广播链路进行检测,确定该广播链路发生振荡。
较佳的,预设的链路检测方式可以使用BFD方式。
一般情况下,在广播链路两端的路由设备之间的广播链路会发生振荡,而同一端的路由设备之间不会发生振荡。
步骤S402、路由设备判断该广播链路上自身的邻居设备的数量是否大于1,如果是,进入步骤S403,否则,进入步骤S409。
步骤S403、路由设备进一步判断该广播链路上自身的本地邻居设备的数量是否大于1,如果是,进入步骤S404,否则,进入步骤S409。
本地邻居设备为与该路由设备位于该广播链路同一端的邻居设备。
本步骤S403与上述步骤S402为可选步骤,可以选择执行其中之一,或者全部执行,或者全部不执行均可。
由于只有当该路由设备的本地邻居设备的数量大于1时,才可能出现现有技术中所存在的广播链路振荡后路由无法收敛的问题,所以,通过步骤S402或步骤S403的判断处理,可以在判断结果为否时,取消后续通过选择新的指定中间系统进行路由计算的处理流程,以便节省处理资源。
但即便不执行步骤S402和步骤S403,也能够有效的实现路由计算,所以步骤S402和步骤S403为可选步骤。
步骤S404、路由设备判断判断该广播链路上的当前指定中间系统是否为自身的远端邻居设备,如果是,进入步骤S405,否则,进入步骤S409。
本地邻居设备为与该路由设备位于该广播链路不同端的邻居设备,即位于该广播链路的另一端的邻居设备。
步骤S405、该路由设备从自身和自身的本地邻居设备中,选择本地指定中间系统。
选择本地指定中间系统时,可以基于之前本地邻居设备之间传输的HELLO报文中携带的信息进行选择,指定中间系统的选择策略可采用现有技术中的各种策略,在此不再进行详细描述。
步骤S406、基于选择的该本地指定中间系统,确定自身的最新LSP。
根据该路由设备是否为选择的该本地指定中间系统,具体可以采用如下方式确定自身的最新LSP:
当该路由设备非该本地指定中间系统时,路由设备使用本地指定中间系统的标识,更新自身的原非伪节点LSP中的指定中间系统标识,得到更新后的非伪节点LSP;即将自身的非伪节点LSP中携带的指定中间系统标识,由原来的当前指定中间系统的标识,更新为选择的该本地指定中间系统的标识;
当该路由设备为该本地指定中间系统时,该路由设备使用自身的标识,更新自身的原非伪节点LSP中的指定中间系统标识,得到更新后的非伪节点LSP,以及生成自身的伪节点LSP;即除采用上述方式更新自身的非伪节点LSP外,还生成自身的伪节点LSP,该伪节点LSP中携带自身的各本地邻居设备的设备标识。
较佳的,本步骤中,还可以确定自身的最新HELLO报文,即将自身的HELLO中携带的指定中间系统标识,由原来的当前指定中间系统的标识,更新为选择的该本地指定中间系统的标识。
步骤S407、该路由设备发送自身的最新LSP,并接收自身的邻居设备发送的最新LSP。
当该路由设备为本地指定中间系统时,发送的最新LSP中包括自身的伪节点LSP和非伪节点LSP,接收的最新LSP中包括自身的邻居设备发送的非伪节点LSP;当该路由设备非本地指定中间系统时,发送的最新LSP中包括自身的非伪节点LSP,接收的最新LSP中包括自身的邻居设备发送的非伪节点LSP,以及本地指定中间系统发送的伪节点LSP。
较佳的,本步骤中,该路由设备还发送自身的最新HELLO报文,并接收自身的邻居设备发送的最新HELLO报文,用于对自身的邻居设备信息和状态进行维护。
步骤S408、根据自身的最新LSP,以及接收的自身的邻居设备的最新LSP,以本地指定中间系统为中转,基于LSP中携带的路由计算需求信息,如路由设备各接口的地址等,进行路由计算,确定最新路由。
此时,当广播链路为主线路,且广播链路两端的设备中存在通过备份线路相连的两个路由设备时,即可以确定出经过备份线路的最新路由。
步骤S409、由于当该广播链路上自身的邻居设备的数量不大于1,或者自身的本地邻居设备的数量不大于1,或者当前指定中间系统为自身或自身的本地邻居设备时,不会出现现有技术中所存在的广播链路振荡后路由无法收敛的问题,所以,可以按照现有技术中的处理流程进行处理,在此不再进行详细描述。
采用上述图4所示的方法,当广播链路发生振荡,且该广播链路的一端存在多台路由设备,且不包括指定中间系统时,由于在这一端的本地邻居设备中重新选择了新的指定中间系统,并确定了自身的最新LSP,从而在进行路由计算时,可以通过该新的指定中间系统进行中转,进而使得路由计算后路由能够收敛。
仍以图2所示的网络架构为例,在这四台路由设备建立邻居关系后,假设路由设备A优先级最高,被选择为该广播链路上的DIS。当采用BFD方式检测出广播链路发生振荡后,路由设备B和路由设备D之间选择本地指定中间系统,并基于选择的本地指定中间系统,确定自身的最新LSP,并在交互各自的最新LSP后,路由设备B和路由设备D之间通过本地指定中间系统的中转,进行路由计算,从而使得路由设备B能够将到达分支机构的路由指向路由设备D,并通过备份线路建立到达路由设备A和路由设备C的路由,即路由实现收敛。
实施例2:
在完成上述实施例1中提出的路由确定方法的处理流程后,广播链路两端的路由设备,可以实现建立经过备份线路的路由,并通过备份线路进行数据传输。然而,由于该广播链路是处于振荡状态,并非是完全中断,所以,该广播链路上还可能传输两端的路由设备之间的协议报文,如HELLO报文和LSP,对于广播链路上传输的协议报文的处理,在本发明实施例2中提出如下处理流程,如图5所示,具体包括如下步骤:
步骤S501、位于该广播链路上的路由设备,基于预设的链路检测方式,对该广播链路进行检测,确定该广播链路发生振荡。
步骤S502、该路由设备接收到自身的邻居设备通过该广播链路发送的协议报文。
步骤S503、判断该协议报文是否为HELLO报文,如果是,进入步骤S504,否则,进入步骤S507。
步骤S504、判断发送该HELLO报文的邻居设备是否为本地邻居设备,如果是,进入步骤S505,否则,进入步骤S506。
步骤S505、该HELLO报文为本地邻居设备发送时,该路由设备基于接收的该HELLO报文维护邻居设备信息,并可基于该HELLO报文进行本地指定中间系统的选择和更新。
步骤S506、该HELLO报文为远端邻居设备发送时,该路由设备基于接收的该HELLO报文维护邻居设备信息,但不用于本地指定中间系统的选择和更新。
步骤S507、判断发送该协议报文的邻居设备是否为本地邻居设备,如果是,进入步骤S508,否则,进入步骤S509。
步骤S508、该协议报文为本地邻居设备发送时,该路由设备基于接收的该协议报文,如LSP,进行路由计算。
步骤S509、该协议报文不是HELLO报文,也不是本地邻居设备发送的,则对该协议报文进行丢弃处理。
通过上述实施例2中图5所示的协议报文处理流程,减少了路由设备对协议报文的处理,从而节省了处理资源,提高了处理效率。
实施例3:
在完成上述实施例1中提出的路由确定方法的处理流程后,当广播链路从振荡状态恢复正常时,本实施例3中提出如下路由确定的处理流程,如图6所示,具体包括如下处理步骤:
步骤S601、位于该广播链路上的路由设备,基于预设的链路检测方式,对该广播链路进行检测,确定该广播链路从振荡状态恢复到正常状态。
步骤S602、该路由设备从自身、自身的远端邻居设备和本地邻居设备中,选择最新指定中间系统。即本地邻居设备和远端邻居设备,共同参与最新指定中间系统的选择。
在选择最新指定中间系统时,可基于之前通过HELLO报文维护的邻居信息进行选择。
步骤S603、该路由设备基于选择的最新指定中间系统,确定自身的最新LSP,具体方式可参见上述步骤S406,即当该路由设备为最新指定中间系统时,确定自身的最新非伪节点LSP和最新伪节点LSP,当该路由设备非最新指定中间系统时,确定自身的最新非伪节点LSP。
另外,如果该路由设备之前为本地指定中间系统,且未被选择为最新指定中间系统,则清除自身的伪节点LSP。
步骤S604、该路由设备发送自身的最新LSP,并接收自身的邻居设备发送的最新LSP。
步骤S605、根据自身的最新LSP,以及接收的自身的邻居设备的最新LSP,以最新指定中间系统为中转,基于LSP中携带的路由计算需求信息,如路由设备各接口的地址等,进行路由计算,确定最新路由。
此时,当广播链路为主线路,且广播链路两端的设备中存在通过备份线路相连的两个路由设备时,由于广播链路已经恢复正常,所以可以确定出经过主线路的最新路由,而不再使用备份线路。
通过上述实施例1中公开的内容可知,本发明实施例提供的路由确定方法中,对路由设备的邻居设备进行了区分,区分为远端邻居设备和本地邻居设备,具体可以通过如下方式区分:
第一种方式:路由设备在发送自身的HELLO报文时,在HELLO报文中携带预先配置的链路ID,广播链路上位于同一端的路由设备的链路ID相同,且与另一端的路由设备的链路ID不同;
其中,具体可以在HELLO报文中增加新型TLV(type length value)携带链路ID,也可以在HELLO报文中的现有TLV中扩展新的SUB-TLV用于携带链路ID;也可以使用现有HELLO报文中的保留字段,用于携带链路ID,此时受限于保留字段的存储空间,链路ID的表征形式可以为通过设置标识来识别;
相应的,路由设备在接收到自身的邻居设备发送的HELLO报文时,当该HELLO报文中携带的链路ID与自身的链路ID不同时,确定该邻居设备为远端邻居设备,当该HELLO报文中携带链路ID与自身的链路ID相同时,确定该邻居设备为本地邻居设备。
第二种方式:由于广播链路发生振荡时,一般是发生在位于不同端的两个路由设备之间,所以,路由设备在确定自身所在的广播链路发生振荡后,针对自身的每个邻居设备,当振荡发生在自身与该邻居设备之间的广播链路时,确定该邻居设备为远端邻居设备,当振荡未发生在自身与该邻居设备之间的广播链路时,确定该邻居设备为本地邻居设备。
较佳的,路由设备在确定自身的远端邻居设备和本地邻居设备后,后续进行链路检测时,可以仅对自身与远端邻居设备之间的广播链路进行检测。
由于现有技术中在进行链路检测时,是针对广播链路上每两个邻居设备之间的广播链路进行检测的;而发明实施例中,路由设备在将自身的邻居设备区分为远端邻居设备和本地邻居设备后,考虑到广播链路振荡一般都是发生在与远端邻居设备之间的广播链路上,即可以仅针对与远端邻居设备之间的广播链路进行检测,而对于与本地邻居设备之间的广播链路不检测,减少检测处理操作,以便节省链路检测所消耗的处理资源。
实施例4:
基于同一发明构思,根据本发明上述实施例提供的路由确定方法,相应地,本发明另一实施例还提供了一种路由设备,其结构示意图如图7所示,具体包括:
链路检测单元701,用于基于预设的链路检测方式,确定本路由设备所在的广播链路发生振荡;
选择单元702,用于当所述广播链路上的当前指定中间系统为本路由设备的远端邻居设备时,从本路由设备和本路由设备的本地邻居设备中,选择本地指定中间系统,其中,所述远端邻居设备为所述广播链路上与所述路由设备位于不同端的路由设备,所述本地邻居设备为所述广播链路上与所述路由设备位于同一端的路由设备;
报文更新单元703,用于基于选择的所述本地指定中间系统,确定本路由设备的最新链路状态报文LSP;
路由计算单元704,用于根据本路由设备的最新LSP,以及接收的本路由设备的邻居设备的最新LSP,进行路由计算,确定最新路由。
较佳的,还包括:
数量确定单元705,用于在所述选择单元702从本路由设备和本路由设备的本地邻居设备中,选择本地指定中间系统之前,确定所述广播链路上本路由设备的邻居设备的数量大于1;和/或确定所述广播链路上本路由设备的本地邻居设备的数量大于1。
较佳的,报文更新单元703,具体用于当本路由设备为所述本地指定中间系统时,使用自身的标识,更新自身的原非伪节点LSP中的指定中间系统标识,得到更新后的非伪节点LSP,以及生成自身的伪节点LSP;
当本路由设备非所述本地指定中间系统时,使用所述本地指定中间系统的标识,更新自身的原非伪节点LSP中的指定中间系统标识,得到更新后的非伪节点LSP。
较佳的,链路检测单元701,还用于基于预设的所述链路检测方式,确定所述广播链路恢复正常状态;
选择单元702,还用于从本路由设备、本路由设备的本地邻居设备和远端邻居设备中,选择最新指定中间系统;
报文更新单元703,还用于基于选择的所述最新指定中间系统,确定本路由设备的最新LSP;
路由计算单元704,还用于根据本路由设备的最新LSP,以及接收的本路由设备的邻居设备的最新LSP,进行路由计算,确定最新路由。
较佳的,还包括:
邻居确定单元706,用于采用如下方式确定本路由设备的远端邻居设备和本地邻居设备:
所述路由设备接收本路由设备的邻居设备发送的HELLO报文;当所述HELLO报文中携带的链路ID与本路由设备的链路ID不同时,确定该邻居设备为远端邻居设备,当所述HELLO报文中携带链路ID与本路由设备的链路ID相同时,确定该邻居设备为本地邻居设备;其中,所述广播链路上位于同一端的路由设备的链路ID相同,且与另一端的路由设备的链路ID不同;或者
所述路由设备在确定本路由设备所在的广播链路发生振荡后,针对本路由设备的每个邻居设备,当振荡发生在本路由设备与该邻居设备之间的广播链路时,确定该邻居设备为远端邻居设备,当振荡未发生在本路由设备与该邻居设备之间的广播链路时,确定该邻居设备为本地邻居设备。
较佳的,链路检测单元701,还用于在所述邻居确定单元在确定本路由设备的远端邻居设备和本地邻居设备后,基于所述链路检测方式,仅对本路由设备与远端邻居设备之间的广播链路进行检测。
较佳的,报文更新单元703,还用于在所述选择单元在本路由设备和本路由设备的本地邻居设备中,选择本地指定中间系统之后,基于选择的所述本地指定中间系统,确定本路由设备的最新HELLO报文;并发送确定的所述最新HELLO报文。
较佳的,还包括:
协议报文处理单元707,用于在接收到所述远端邻居设备通过所述广播链路发送的协议报文后,当所述协议报文为HELLO报文时,基于所述HELLO报文维护邻居设备信息,当所述协议报文为非HELLO报文时,丢弃所述协议报文。
综上所述,本发明实施例提供的方案,包括:路由设备基于预设的链路检测方式,确定自身所在的广播链路发生振荡;并当该广播链路上的当前指定中间系统为自身的远端邻居设备时,从自身和自身的本地邻居设备中,选择本地指定中间系统,其中,远端邻居设备为该广播链路上与该路由设备位于不同端的路由设备,本地邻居设备为该广播链路上与该路由设备位于同一端的路由设备;并基于选择的本地指定中间系统,确定自身的最新LSP;以及根据自身的最新LSP,以及接收的自身的邻居设备的最新LSP,进行路由计算,确定最新路由。当广播链路发生振荡,且该广播链路的一端存在多台路由设备,且不包括指定中间系统时,采用本发明实施例提供的方案,进行路由计算能够实现路由收敛。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (16)
1.一种路由确定方法,其特征在于,包括:
路由设备基于预设的链路检测方式,确定自身所在的广播链路发生振荡;
当所述广播链路上的当前指定中间系统为自身的远端邻居设备时,从自身和自身的本地邻居设备中,选择本地指定中间系统,其中,所述远端邻居设备为与所述路由设备位于所述广播链路不同端的路由设备,所述本地邻居设备为与所述路由设备位于所述广播链路同一端的路由设备;
基于选择的所述本地指定中间系统,确定自身的最新链路状态报文LSP;
根据自身的最新LSP,以及接收的自身的邻居设备的最新LSP,进行路由计算,确定最新路由。
2.如权利要求1所述的方法,其特征在于,在从自身和自身的本地邻居设备中,选择本地指定中间系统之前,还包括:
确定所述广播链路上自身的邻居设备的数量大于1;和/或
确定所述广播链路上自身的本地邻居设备的数量大于1。
3.如权利要求1所述的方法,其特征在于,基于选择的所述本地指定中间系统,确定自身的最新链路状态报文LSP,具体包括:
当所述路由设备为所述本地指定中间系统时,所述路由设备使用自身的标识,更新自身的原非伪节点LSP中的指定中间系统标识,得到更新后的非伪节点LSP,以及生成自身的伪节点LSP;
当所述路由设备非所述本地指定中间系统时,所述路由设备使用所述本地指定中间系统的标识,更新自身的原非伪节点LSP中的指定中间系统标识,得到更新后的非伪节点LSP。
4.如权利要求1所述的方法,其特征在于,还包括:
所述路由设备基于预设的所述链路检测方式,确定所述广播链路恢复正常状态;
从自身、自身的本地邻居设备和远端邻居设备中,选择最新指定中间系统;
基于选择的所述最新指定中间系统,确定自身的最新LSP;
根据自身的最新LSP,以及接收的自身的邻居设备的最新LSP,进行路由计算,确定最新路由。
5.如权利要求1所述的方法,其特征在于,所述路由设备具体采用如下方式确定自身的远端邻居设备和本地邻居设备:
所述路由设备接收自身的邻居设备发送的HELLO报文;当所述HELLO报文中携带的链路ID与自身的链路ID不同时,确定该邻居设备为远端邻居设备,当所述HELLO报文中携带链路ID与自身的链路ID相同时,确定该邻居设备为本地邻居设备;其中,所述广播链路上位于同一端的路由设备的链路ID相同,且与另一端的路由设备的链路ID不同;或者
所述路由设备在确定自身所在的广播链路发生振荡后,针对自身的每个邻居设备,当振荡发生在自身与该邻居设备之间的广播链路时,确定该邻居设备为远端邻居设备,当振荡未发生在自身与该邻居设备之间的广播链路时,确定该邻居设备为本地邻居设备。
6.如权利要求5所述的方法,其特征在于,所述路由设备在确定自身的远端邻居设备和本地邻居设备后,还包括:
基于所述链路检测方式,仅对自身与远端邻居设备之间的广播链路进行检测。
7.如权利要求1所述的方法,其特征在于,在自身和自身的本地邻居设备中,选择本地指定中间系统之后,还包括:
基于选择的所述本地指定中间系统,确定自身的最新HELLO报文;
发送确定的所述最新HELLO报文。
8.如权利要求1所述的方法,其特征在于,还包括:
所述路由设备在接收到所述远端邻居设备通过所述广播链路发送的协议报文后,当所述协议报文为HELLO报文时,基于所述HELLO报文维护邻居设备信息,当所述协议报文为非HELLO报文时,丢弃所述协议报文。
9.一种路由设备,其特征在于,包括:
链路检测单元,用于基于预设的链路检测方式,确定本路由设备所在的广播链路发生振荡;
选择单元,用于当所述广播链路上的当前指定中间系统为本路由设备的远端邻居设备时,从本路由设备和本路由设备的本地邻居设备中,选择本地指定中间系统,其中,所述远端邻居设备为与本路由设备位于所述广播链路不同端的路由设备,所述本地邻居设备为与本路由设备位于所述广播链路同一端的路由设备;
报文更新单元,用于基于选择的所述本地指定中间系统,确定本路由设备的最新链路状态报文LSP;
路由计算单元,用于根据本路由设备的最新LSP,以及接收的本路由设备的邻居设备的最新LSP,进行路由计算,确定最新路由。
10.如权利要求9所述的路由设备,其特征在于,还包括:
数量确定单元,用于在所述选择单元从本路由设备和本路由设备的本地邻居设备中,选择本地指定中间系统之前,确定所述广播链路上本路由设备的邻居设备的数量大于1;和/或确定所述广播链路上本路由设备的本地邻居设备的数量大于1。
11.如权利要求9所述的路由设备,其特征在于,所述报文更新单元,具体用于当本路由设备为所述本地指定中间系统时,使用自身的标识,更新自身的原非伪节点LSP中的指定中间系统标识,得到更新后的非伪节点LSP,以及生成自身的伪节点LSP;
当本路由设备非所述本地指定中间系统时,使用所述本地指定中间系统的标识,更新自身的原非伪节点LSP中的指定中间系统标识,得到更新后的非伪节点LSP。
12.如权利要求9所述的路由设备,其特征在于,所述链路检测单元,还用于基于预设的所述链路检测方式,确定所述广播链路恢复正常状态;
所述选择单元,还用于从本路由设备、本路由设备的本地邻居设备和远端邻居设备中,选择最新指定中间系统;
所述报文更新单元,还用于基于选择的所述最新指定中间系统,确定本路由设备的最新LSP;
路由计算单元,还用于根据本路由设备的最新LSP,以及接收的本路由设备的邻居设备的最新LSP,进行路由计算,确定最新路由。
13.如权利要求9所述的路由设备,其特征在于,还包括:
邻居确定单元,用于采用如下方式确定本路由设备的远端邻居设备和本地邻居设备:
所述路由设备接收本路由设备的邻居设备发送的HELLO报文;当所述HELLO报文中携带的链路ID与本路由设备的链路ID不同时,确定该邻居设备为远端邻居设备,当所述HELLO报文中携带链路ID与本路由设备的链路ID相同时,确定该邻居设备为本地邻居设备;其中,所述广播链路上位于同一端的路由设备的链路ID相同,且与另一端的路由设备的链路ID不同;或者
所述路由设备在确定本路由设备所在的广播链路发生振荡后,针对本路由设备的每个邻居设备,当振荡发生在本路由设备与该邻居设备之间的广播链路时,确定该邻居设备为远端邻居设备,当振荡未发生在本路由设备与该邻居设备之间的广播链路时,确定该邻居设备为本地邻居设备。
14.如权利要求13所述的路由设备,其特征在于,所述链路检测单元,还用于在所述邻居确定单元在确定本路由设备的远端邻居设备和本地邻居设备后,基于所述链路检测方式,仅对本路由设备与远端邻居设备之间的广播链路进行检测。
15.如权利要求9所述的路由设备,其特征在于,所述报文更新单元,还用于在所述选择单元在本路由设备和本路由设备的本地邻居设备中,选择本地指定中间系统之后,基于选择的所述本地指定中间系统,确定本路由设备的最新HELLO报文;并发送确定的所述最新HELLO报文。
16.如权利要求9所述的路由设备,其特征在于,还包括:
协议报文处理单元,用于在接收到所述远端邻居设备通过所述广播链路发送的协议报文后,当所述协议报文为HELLO报文时,基于所述HELLO报文维护邻居设备信息,当所述协议报文为非HELLO报文时,丢弃所述协议报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110408494.3A CN102420766B (zh) | 2011-12-09 | 2011-12-09 | 一种路由确定方法及路由设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110408494.3A CN102420766B (zh) | 2011-12-09 | 2011-12-09 | 一种路由确定方法及路由设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102420766A CN102420766A (zh) | 2012-04-18 |
CN102420766B true CN102420766B (zh) | 2014-04-23 |
Family
ID=45945006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110408494.3A Active CN102420766B (zh) | 2011-12-09 | 2011-12-09 | 一种路由确定方法及路由设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102420766B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103634218B (zh) * | 2013-12-12 | 2016-08-17 | 福建三元达网络技术有限公司 | 路由快速收敛的方法及装置 |
CN103973557A (zh) * | 2014-05-08 | 2014-08-06 | 杭州华三通信技术有限公司 | 一种dis选举方法和设备 |
CN104320336B (zh) * | 2014-10-29 | 2017-12-01 | 福建星网锐捷网络有限公司 | 一种mpls te链路带宽信息发布处理方法和装置 |
CN106302164A (zh) * | 2015-05-20 | 2017-01-04 | 中兴通讯股份有限公司 | Ip可达性信息通告方法、路由确定方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101035080A (zh) * | 2007-04-16 | 2007-09-12 | 杭州华为三康技术有限公司 | 优雅重启方法、指定中间系统、邻居路由器及广播网络 |
CN101616095A (zh) * | 2009-07-24 | 2009-12-30 | 华为技术有限公司 | 一种选举指定中间系统的方法和路由器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7978708B2 (en) * | 2004-12-29 | 2011-07-12 | Cisco Technology, Inc. | Automatic route tagging of BGP next-hop routes in IGP |
-
2011
- 2011-12-09 CN CN201110408494.3A patent/CN102420766B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101035080A (zh) * | 2007-04-16 | 2007-09-12 | 杭州华为三康技术有限公司 | 优雅重启方法、指定中间系统、邻居路由器及广播网络 |
CN101616095A (zh) * | 2009-07-24 | 2009-12-30 | 华为技术有限公司 | 一种选举指定中间系统的方法和路由器 |
Also Published As
Publication number | Publication date |
---|---|
CN102420766A (zh) | 2012-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101887581B1 (ko) | 플로우 기반의 패킷 전송 장치 및 그것의 패킷 처리 방법 | |
US8787257B2 (en) | Network communication system, node device, routing method and routing program | |
CN1889579B (zh) | 提高路由信息协议路由收敛速度的方法及装置 | |
CN102420766B (zh) | 一种路由确定方法及路由设备 | |
JP2009218626A (ja) | 経路多重化通信システム、通信ノード及び通信方法 | |
EP3229393A1 (en) | Error code information transfer method, network device and communication system | |
CN103001879A (zh) | 减少链路状态通告洪泛次数的方法及设备 | |
CN103023773A (zh) | 多拓扑网络中转发报文的方法、装置和系统 | |
CN104735743A (zh) | 嵌入式无线自组织网络的路由优化方法 | |
CN103560947B (zh) | 一种避免中间系统邻居关系震荡的方法及装置 | |
CN103731376A (zh) | 堆叠设备上链路汇聚根端口选择的方法及系统 | |
CN102065508B (zh) | 一种无线桥接转发设备及方法 | |
CN103368844A (zh) | Mpls网络中的报文处理方法及标签交换路由器 | |
CN103297338A (zh) | 一种vpn路由通告方法和设备 | |
CN103138957A (zh) | 一种业务路径回切的方法、设备及系统 | |
EP4089982A1 (en) | Method and apparatus for controlling network traffic path | |
US11617120B2 (en) | Communication system, node, communication method, and computer program product | |
CN105591802A (zh) | 交换设备升级方法以及装置 | |
CN105591932A (zh) | 邻居的识别方法及装置 | |
CN115051949B (zh) | 数据路由方法及装置 | |
CN101626341A (zh) | 链路状态协议下的信息同步方法及装置 | |
CN101179504B (zh) | 一种限制路由的方法、系统及网络设备 | |
JP2021125857A (ja) | 無線通信装置および無線通信方法 | |
US10003469B2 (en) | Multicast forwarding method and apparatus in transparent interconnection of lots of link network, and routing bridge | |
CN104604294B (zh) | 一种数据传输方法及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |