CN115514700A - 一种确定节点设备之间的备份路径的方法、装置及设备 - Google Patents
一种确定节点设备之间的备份路径的方法、装置及设备 Download PDFInfo
- Publication number
- CN115514700A CN115514700A CN202110694342.8A CN202110694342A CN115514700A CN 115514700 A CN115514700 A CN 115514700A CN 202110694342 A CN202110694342 A CN 202110694342A CN 115514700 A CN115514700 A CN 115514700A
- Authority
- CN
- China
- Prior art keywords
- node
- path
- source
- nodes
- destination
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 126
- 238000012545 processing Methods 0.000 claims description 58
- 230000004044 response Effects 0.000 claims description 31
- 230000015654 memory Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 37
- 238000010586 diagram Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 19
- 230000008569 process Effects 0.000 description 16
- 230000005540 biological transmission Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 5
- 238000012795 verification Methods 0.000 description 4
- 230000008859 change 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
- 101100004604 Arabidopsis thaliana BPG2 gene Proteins 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- 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
- 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
-
- 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/24—Multipath
- H04L45/247—Multipath using M:N active or standby paths
-
- 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/48—Routing tree calculation
-
- 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/74—Address processing for routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种确定节点设备之间的备份路径的方法、装置及设备,通过获取源节点对应的目的节点集合,从目的节点集合中确定第一节点和第二节点,确定发生网络故障后与第一节点关联的Q节点集合,验证第一节点的Q节点中是否包括作为第二节点的Q节点的目标Q节点,或者验证第一节点的Q节点集合能否作为第二节点的Q节点集合。再利用能够作为第二节点的Q节点的目标Q节点或者能够作为第二节点的Q节点集合的Q节点集合确定源节点到第二节点的备份路径。根据第一节点的Q节点确定第二节点的Q节点,无需通过计算每个除第二节点以外的其他节点到第二节点的最短路径确定第二节点的Q节点,降低了确定源节点到第二节点的备份路径的计算成本。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种确定节点设备之间的备份路径的方法、装置及设备。
背景技术
当采用网络互连协议(internet protocol,IP)的网络中出现故障时,经过发生故障的链路或者节点到达目的节点的报文可能被丢弃或者形成回环,影响网络中报文的传输。为了使得报文能够正常传输,需要确定源节点与目的节点之间未经过发生故障的链路或者节点的路径,使得源节点通过未发生故障的路径将报文传输至目的节点。
目前,采用快速重路由(fast reroute,FRR)技术提前为从源节点到目的节点的路径确定对应的备份路径。在当检测到源节点到目的节点的路径出现故障时,能够快速地切换到对应的备份路径进行报文的转发。
但是,计算源节点到目的节点的备份路径的成本较高。因此,如何降低确定源节点到目的节点之间的备份路径的计算成本,是亟待解决的技术问题。
发明内容
本申请实施例提供了一种确定节点设备之间的备份路径的方法、装置及设备,减少确定源节点到目的节点之间的备份路径的计算成本。
第一方面,本申请实施例提供一种确定节点设备之间的备份路径的方法。在执行确定节点设备之间的备份路径的方法时,先获取源节点对应的目的节点集合,目的节点集合中包括多个目的节点,源节点到目的节点集合中的每个目的节点的最短路径发生网络故障,需要确定源节点到目的节点的报文传输路径,也就是源节点到目的节点的备份路径。源节点到目的节点的备份路径用于在发生网络故障后传输源节点到目的节点之间的报文。再从目的节点集合中确定第一节点和第二节点。其中,第一节点是最短路径树中父节点不属于目的节点集合的目的节点。最短路径树是包括发生网络故障之后重新计算得到的从源节点分别到多个目的节点中的每个目的节点的最短路径。源节点到第二节点的最短路径经过确定的第一节点。基于从目的节点中确定的第一节点,确定发生网络故障后与第一节点关联的Q节点集合。Q节点集合中包括一个或者多个第一节点的Q节点。每个第一节点的Q节点到第一节点的最短路径未发生网络故障。目标Q节点是属于Q节点集合的一个Q节点。基于目标Q节点,计算第一成本参数和第二成本参数。第一成本参数是目标Q节点到第一节点的最短路径成本和第一节点到第二节点的最短路径成本之和。第一成本参数中的第一节点到第二节点的最短路径成本根据最短路径树确定。第二成本参数是目标Q节点到根节点的最短路径成本和根节点到第二节点的最短路径成本之和。根节点具体是根据网络故障的故障类型和源节点确定的。最后,响应于第一成本参数小于第二成本参数,根据目标Q节点确定源节点到第二节点的备份路径。
基于目标Q节点的第一成本参数小于第二成本参数,能够确定目标Q节点满足作为第二节点的Q节点的条件。将目标Q节点作为第二节点的Q节点,利用目标Q节点确定源节点到第二节点的备份路径。如此实现利用第一节点的Q节点确定第二节点的Q节点,相当于复用第一节点的Q节点为第二节点的Q节点,得以减少针对第二节点的Q节点的计算,减少在计算第二节点的Q节点时计算每个除第二节点以外的其他节点到第二节点的最短路径的过程,降低了确定源节点到第二节点的备份路径的计算成本。
可选的,用于验证能否作为第二节点的Q节点的目标Q节点,为确定源节点到第一节点的备份路径的Q节点。通过对确定源节点到第一节点的备份路径的Q节点进行能否被第二节点作为Q节点的验证,能够减少验证目标Q节点的次数,降低验证目标Q节点的计算成本。
进一步,可选的,目标Q节点为源节点到第一节点的备份路径的Q节点,并且第一成本参数小于第二成本参数,根据源节点到第一节点的备份路径确定源节点到第二节点的备份路径。如此能够降低确定源节点到第二节点的备份路径的计算成本,并且实现快速确定源节点到第二节点备份路径,节省确定节点设备之间的备份路径的时间。
在一种可能的实现方式中,将源节点到第一节点的备份路径确定为源节点到第二节点的备份路径。在源节点传输发送至第二节点的报文时,利用源节点到第一节点的备份路径将报文发送至第一节点,第一节点根据维护的路由表将报文转发至第二节点。通过将源节点到第一节点的备份路径作为源节点到第二节点的备份路径,能够减少存储的备份路径的种类,并且提高确定源节点到第二节点的备份路径的速度。
在另一种可能的实现方式中,将源节点到第一节点的备份路径,和第一节点到第二节点的最短路径,作为源节点到第二节点的备份路径。通过将源节点到第一节点的备份路径作为源节点到第二节点的备份路径的一部分,能够减少确定源节点到第二节点的备份路径的计算成本,提高确定源节点到第二节点的备份路径的速度。
可选的,利用符合第一成本参数小于第二成本参数的目标Q节点和与第一节点关联的P节点集合,确定源节点到第二节点的备份路径。与第一节点关联的P节点集合包括一个或多个第一节点的P节点,所述源节点到一个或多个第一节点的P节点中的每个P节点的最短路径未发生网络故障。通过将第一节点的P节点作为第二节点的P节点,和确定能够作为第二节点的Q节点的目标Q节点确定源节点到第二节点的备份路径,能够在减少第二节点的Q节点和P节点的计算成本的基础上,实现较为灵活地确定源节点到第二节点的备份路径。
可选的,所述方法由所述源节点执行。
可选的,进一步的,响应于源节点到第一节点的备份路径与源节点到所述第二节点的备份路径相同,所述方法还包括:源节点存储源节点到第一节点的备份路径对应的路径标记,和源节点到第二节点的备份路径对应的路径标记。其中,源节点到第一节点的备份路径对应的路径标记和源节点到第二节点的备份路径对应的路径标记相同。通过源节点储存与备份路径对应的路径标记,能够减少源节点存储备份路径的数据量。并且相同的备份路径对应于相同的路径标记,便于源节点存储到不同目的节点的相同的备份路径。
可选的,响应于第一成本参数大于或者等于第二成本参数,方法还包括:从目的节点集合中删除第一节点和第二节点,返回执行从目的节点集合中确定第一节点和第二节点以及后续的步骤,直到目的节点集合中不包括第二节点为止。通过将能够确定源节点到目的节点的备份路径的目的节点从目标节点集合中删除,并且重新确定第一节点和第二节点,能够实现对目的节点集合中目的节点进行迭代处理,确定目标节点集合中全部的目的节点的备份路径。
在一种可能的实现方式中,目标Q节点是通过遍历Q节点集合中的每个Q节点确定的。如此能够实现从Q节点集合中选取得到较为合适的确定源节点到第二节点的备份路径的目标Q节点。
在一种可能的实现方式中,目标Q节点是通过依次从Q节点集合中选取Q节点确定的。通过依次选取Q节点作为目标Q节点进行验证,能够在确定满足第一成本参数小于第二成本参数的目标Q节点时,停止目标Q节点的选取。在具有能够作为第二节点的Q节点的目标Q节点的前提下,减少对目标Q节点的验证过程,降低计算成本。
可选的,网络故障的故障类型为链路故障,根节点为所述源节点。
可选的,网络故障的故障类型为节点故障,根节点为源节点的直连邻居节点。源节点的直连邻居节点为发生节点故障的节点,或者源节点到发生节点故障的节点的最短路径经过源节点的直连邻居节点。
第二方面,本申请实施例提供一种确定节点设备之间的备份路径的方法,在执行确定节点设备之间的备份路径的方法时,先获取源节点对应的目的节点集合,目的节点集合中包括多个目的节点。源节点到目的节点集合中的每个目的节点的最短路径发生网络故障,需要确定源节点到目的节点的报文传输路径,也就是源节点到目的节点的备份路径。源节点到目的节点的备份路径用于在发生网络故障后传输源节点到目的节点之间的报文。再从目的节点集合中确定第一节点和第二节点。其中,第一节点是最短路径树中父节点不属于目的节点集合的目的节点。最短路径树是包括发生网络故障之后重新计算得到的从源节点分别到多个目的节点中的每个目的节点的最短路径。源节点到第二节点的最短路径经过确定的第一节点。基于从目的节点中确定的第一节点,确定发生网络故障后与第一节点关联的Q节点集合。Q节点集合中包括一个或者多个第一节点的Q节点。每个第一节点的Q节点到第一节点的最短路径未发生网络故障。目标Q节点是属于Q节点集合的一个Q节点。获取在发生网络故障前后第一节点到第二节点的最短路径,响应于发生网络故障前第一节点到第二节点的最短路径,与发生网络故障后第一节点到第二节点的最短路径一致,则根据Q节点集合确定源节点到第二节点的备份路径。
基于发生网络故障前后第一节点到第二节点的最短路径的变化情况,确定能否利用第一节点关联的Q节点集合确定源节点到第二节点的备份路径,能够实现利用第一节点关联的Q节点集合确定第二节点的Q节点集合,相当于复用第一节点关联的Q节点为第二节点的Q节点。如此得以减少针对第二节点的Q节点的计算,减少在计算第二节点的Q节点时计算每个除第二节点以外的其他节点到第二节点的最短路径的过程,降低了确定源节点到第二节点的备份路径的计算成本。
可选的,源节点到第一节点的备份路径是根据Q节点集合确定的,根据源节点到第一节点的备份路径确定源节点到第二节点的备份路径。
在一种可能的实现方式中,将源节点到第一节点的备份路径确定为源节点到第二节点的备份路径。在源节点传输发送至第二节点的报文时,利用源节点到第一节点的备份路径将报文发送至第一节点,第一节点根据维护的路由表将报文转发至第二节点。通过将源节点到第一节点的备份路径作为源节点到第二节点的备份路径,能够减少存储的备份路径的种类,并且提高确定源节点到第二节点的备份路径的速度。
在另一种可能的实现方式中,将所述源节点到所述第一节点的备份路径,和所述第一节点到所述第二节点的最短路径,作为所述源节点到所述第二节点的备份路径。通过将源节点到第一节点的备份路径作为源节点到第二节点的备份路径的一部分,能够减少确定源节点到第二节点的备份路径的计算成本,提高确定源节点到第二节点的备份路径的速度。
可选的,根据Q节点集合和与第一节点关联的P节点集合,确定源节点到第二节点的备份路径。与第一节点关联的P节点集合包括一个或多个第一节点的P节点,所述源节点到一个或多个第一节点的P节点中的每个P节点的最短路径未发生网络故障。通过将第一节点的P节点作为第二节点的P节点,和确定能够作为第二节点的Q节点的目标Q节点确定源节点到第二节点的备份路径,能够在减少第二节点的Q节点和P节点的计算成本的基础上,实现较为灵活地确定源节点到第二节点的备份路径。
可选的,所述方法由所述源节点执行。
可选的,进一步的,响应于所述源节点到所述第一节点的备份路径与所述源节点到所述第二节点的备份路径相同,所述方法还包括:源节点存储源节点到第一节点的备份路径对应的路径标记,和源节点到第二节点的备份路径对应的路径标记。其中,源节点到第一节点的备份路径对应的路径标记和源节点到第二节点的备份路径对应的路径标记相同。通过源节点储存与备份路径对应的路径标记,能够减少源节点存储备份路径的数据量。并且相同的备份路径对应于相同的路径标记,便于源节点存储到不同目的节点的相同的备份路径。
可选的,响应于发生所述网络故障前所述第一节点到所述第二节点的最短路径,与发生所述网络故障后所述第一节点到所述第二节点的最短路径不一致,所述方法还包括:基于目标Q节点,计算第一成本参数和第二成本参数。目标Q节点是属于Q节点集合的一个Q节点。第一成本参数是目标Q节点到第一节点的最短路径成本和第一节点到第二节点的最短路径成本之和。第一成本参数中的第一节点到第二节点的最短路径成本根据最短路径树确定。第二成本参数是目标Q节点到根节点的最短路径成本和根节点到第二节点的最短路径成本之和。根节点具体是根据网络故障的故障类型和源节点确定的。响应于第一成本参数小于第二成本参数,根据目标Q节点确定源节点到第二节点的备份路径。
可选的,用于验证能否作为第二节点的Q节点的目标Q节点为确定源节点到第一节点的备份路径的Q节点。对确定源节点到第一节点的备份路径的Q节点进行能否被第二节点作为Q节点的验证,能够减少验证目标Q节点的次数,降低验证目标Q节点的计算成本。
进一步,可选的,目标Q节点为源节点到第一节点的备份路径的Q节点,并且第一成本参数小于第二成本参数,根据源节点到第一节点的备份路径确定源节点到第二节点的备份路径。如此能够降低确定源节点到第二节点的备份路径的计算成本,并且实现快速确定源节点到第二节点备份路径,节省确定节点设备之间的备份路径的时间。
在一种可能的实现方式中,将源节点到第一节点的备份路径确定为源节点到第二节点的备份路径。在源节点传输发送至第二节点的报文时,利用源节点到第一节点的备份路径将报文发送至第一节点,第一节点根据维护的路由表将报文转发至第二节点。通过将源节点到第一节点的备份路径作为源节点到第二节点的备份路径,能够减少存储的备份路径的种类,并且提高确定源节点到第二节点的备份路径的速度。
在另一种可能的实现方式中,将源节点到第一节点的备份路径,和第一节点到第二节点的最短路径,作为源节点到第二节点的备份路径。通过将源节点到第一节点的备份路径作为源节点到第二节点的备份路径的一部分,能够减少确定源节点到第二节点的备份路径的计算成本,提高确定源节点到第二节点的备份路径的速度。
可选的,利用符合第一成本参数小于第二成本参数的目标Q节点和与第一节点关联的P节点集合,确定源节点到第二节点的备份路径。与第一节点关联的P节点集合包括一个或多个第一节点的P节点,所述源节点到一个或多个第一节点的P节点中的每个P节点的最短路径未发生网络故障。通过能够作为第二节点的P节点的第一节点的P节点,和确定能够作为第二节点的Q节点的目标Q节点确定源节点到第二节点的备份路径,能够在减少第二节点的Q节点和P节点的计算成本的基础上,实现较为灵活地确定源节点到第二节点的备份路径。
可选的,所述方法由所述源节点执行。
可选的,进一步的,响应于源节点到第一节点的备份路径与源节点到所述第二节点的备份路径相同,所述方法还包括:源节点存储源节点到第一节点的备份路径对应的路径标记,和源节点到第二节点的备份路径对应的路径标记。其中,源节点到第一节点的备份路径对应的路径标记和源节点到第二节点的备份路径对应的路径标记相同。通过源节点储存与备份路径对应的路径标记,能够减少源节点存储备份路径的数据量。并且相同的备份路径对应于相同的路径标记,便于源节点存储到不同目的节点的相同的备份路径。
可选的,响应于第一成本参数大于或者等于第二成本参数,方法还包括:从目的节点集合中删除第一节点和第二节点,返回执行从目的节点集合中确定第一节点和第二节点以及后续的步骤,直到目的节点集合中不包括第二节点为止。通过将能够确定源节点到目的节点的备份路径的目的节点从目标节点集合中删除,并且重新确定第一节点和第二节点,能够实现对目的节点集合中目的节点进行迭代处理,确定目标节点集合中全部的目的节点的备份路径。
在一种可能的实现方式中,目标Q节点是通过遍历Q节点集合中的每个Q节点确定的。如此能够实现从Q节点集合中选取得到较为合适的确定源节点到第二节点的备份路径的目标Q节点。
在一种可能的实现方式中,目标Q节点是通过依次从Q节点集合中选取Q节点确定的。通过依次选取Q节点作为目标Q节点进行验证,能够在确定满足第一成本参数小于第二成本参数的目标Q节点时,停止目标Q节点的选取。在具有能够作为第二节点的Q节点的目标Q节点的前提下,减少对目标Q节点的验证过程,降低计算成本。
可选的,网络故障的故障类型为链路故障,根节点为所述源节点。
可选的,网络故障的故障类型为节点故障,根节点为源节点的直连邻居节点。源节点的直连邻居节点为发生节点故障的节点,或者源节点到发生节点故障的节点的最短路径经过源节点的直连邻居节点。
第三方面,本申请实施例提供一种网络设备,具有实现上述第一方面或第一方面的任意一种可能的实现方式所述方法的功能;或者实现上述第二方面或第二方面的任意一种可能的实现方式所述方法的功能。可选的,网络设备为控制设备或者为源节点。功能可以基于硬件实现,也可以基于硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。
在一种实现方式中,网络设备包括:处理器。处理器用于获取源节点对应的目的节点集合,目的节点集合包括多个目的节点,源节点到多个目的节点中的每个目的节点的最短路径发生网络故障;从目的节点集合中确定第一节点和第二节点,第一节点为最短路径树中父节点不属于目的节点集合的目的节点,从源节点到第二节点的最短路径经过第一节点,最短路径树包括发生网络故障后重新计算得到的从源节点分别到多个目的节点中的每个目的节点的最短路径;确定发生网络故障后与第一节点关联的Q节点集合,Q节点集合包括一个或多个Q节点,一个或多个Q节点中的每个Q节点到第一节点的最短路径未发生网络故障;响应于第一成本参数小于第二成本参数,根据目标Q节点确定源节点到第二节点的备份路径,目标Q节点是Q节点集合中的一个Q节点,第一成本参数为目标Q节点到第一节点的最短路径成本和第一节点到第二节点的最短路径成本之和,第二成本参数为目标Q节点到根节点的最短路径成本和根节点到第二节点的最短路径成本之和,根节点是根据网络故障的故障类型以及源节点确定的,第一节点到第二节点的最短路径成本根据最短路径树确定。
在另一种实现方式中,网络设备包括:处理器。处理器,用于获取源节点对应的目的节点集合,目的节点集合包括多个目的节点,源节点到多个目的节点中的每个目的节点的最短路径发生网络故障;从目的节点集合中确定第一节点和第二节点,第一节点为最短路径树中父节点不属于目的节点集合的目的节点,从源节点到第二节点的最短路径经过第一节点,最短路径树包括发生网络故障后重新计算得到的从源节点分别到多个目的节点中的每个目的节点的最短路径;确定发生网络故障后与第一节点关联的Q节点集合,Q节点集合包括一个或多个Q节点,一个或多个Q节点中的每个Q节点到第一节点的最短路径未发生网络故障;响应于发生网络故障前第一节点到第二节点的最短路径,与发生网络故障后第一节点到第二节点的最短路径一致,根据Q节点集合确定源节点到第二节点的备份路径。
在一个可能的设计中,网络设备的结构中包括处理器和接口,处理器被配置为支持网络设备执行上述方法中相应的功能。接口用于支持网络设备与其他设备之间的通信,向其他设备发送上述方法中所涉及的信息或指令。在当网络设备为控制设备时,接口用于向源节点发送源节点到第一节点的备份路径,和/或源节点到第二节点的备份路径。可选地,网络设备还包括存储器,存储器用于与处理器耦合,其保存网络设备必要的程序指令和数据。
在另一个可能的设计中,网络设备包括:处理器、发送器、接收器、随机存取存储器、只读存储器以及总线。其中,处理器通过总线分别耦接发送器、接收器、随机存取存储器以及只读存储器。其中,当需要运行网络设备时,通过固化在只读存储器中的基本输入/输出系统或者嵌入式系统中的bootloader引导系统进行启动,引导网络设备进入正常运行状态。在网络设备进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法,或者使得处理器执行第二方面或第二方面的任意可能的实现方式中的方法。
第四方面,提供一种网络设备,网络设备包括:主控板和接口板,进一步,还可以包括交换网板。网络设备用于执行第一方面或第一方面的任意可能的实现方式中的方法,或者用于执行第二方面或第二方面的任意可能的实现方式中的方法。具体地,网络设备包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的模块,或者网络设备包括用于执行第二方面或第二方面的任意可能的实现方式中的方法的模块。
第五方面,提供一种网络设备,网络设备包括控制器和第一转发子设备。第一转发子设备包括:接口板,进一步,还可以包括交换网板。第一转发子设备用于执行第三方面中的接口板的功能,进一步,还可以执行第三方面中交换网板的功能。控制器包括接收器、处理器、发送器、随机存取存储器、只读存储器以及总线。其中,处理器通过总线分别耦接接收器、发送器、随机存取存储器以及只读存储器。其中,当需要运行控制器时,通过固化在只读存储器中的基本输入/输出系统或者嵌入式系统中的bootloader引导系统进行启动,引导控制器进入正常运行状态。在控制器进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,使得该处理器执行第三方面中主控板的功能。
第六方面,本申请实施例提供一种确定节点设备之间的备份路径的装置,所述备份路径用于在发生网络故障后传输所述节点设备之间的报文,所述装置包括:获取单元、第一处理单元、第二处理单元和第三处理单元。获取单元,用于获取源节点对应的目的节点集合,所述目的节点集合包括多个目的节点,所述源节点到所述多个目的节点中的每个目的节点的最短路径发生网络故障。第一处理单元,用于从所述目的节点集合中确定第一节点和第二节点,所述第一节点为最短路径树中父节点不属于所述目的节点集合的目的节点,从所述源节点到所述第二节点的最短路径经过所述第一节点,所述最短路径树包括发生所述网络故障后重新计算得到的从所述源节点分别到所述多个目的节点中的每个目的节点的最短路径。第二处理单元,用于确定发生所述网络故障后与所述第一节点关联的Q节点集合,所述Q节点集合包括一个或多个Q节点,所述一个或多个Q节点中的每个Q节点到所述第一节点的最短路径未发生所述网络故障。第三处理单元,用于响应于第一成本参数小于第二成本参数,根据目标Q节点确定所述源节点到所述第二节点的备份路径,所述目标Q节点是所述Q节点集合中的一个Q节点,所述第一成本参数为所述目标Q节点到所述第一节点的最短路径成本和所述第一节点到所述第二节点的最短路径成本之和,所述第二成本参数为所述目标Q节点到根节点的最短路径成本和所述根节点到所述第二节点的最短路径成本之和,所述根节点是根据所述网络故障的故障类型以及所述源节点确定的,所述第一节点到所述第二节点的最短路径成本根据所述最短路径树确定。
可选的,所述目标Q节点为确定所述源节点到所述第一节点的备份路径的Q节点。
可选的,在所述第三处理单元根据目标Q节点确定所述源节点到所述第二节点的备份路径中,所述第三处理单元,具体用于根据所述源节点到所述第一节点的备份路径确定所述源节点到所述第二节点的备份路径。
可选的,在所述第三处理单元根据所述源节点到所述第一节点的备份路径确定所述源节点到所述第二节点的备份路径中,所述第三处理单元,具体用于将所述源节点到所述第一节点的备份路径确定为所述源节点到所述第二节点的备份路径。
可选的,在所述第三处理单元根据目标Q节点确定所述源节点到所述第二节点的备份路径中,所述第三处理单元,具体用于根据所述目标Q节点和与所述第一节点关联的P节点集合,确定所述源节点到所述第二节点的备份路径,所述P节点集合包括一个或多个P节点,所述源节点到一个或多个P节点中的每个P节点的最短路径未发生所述网络故障。
可选的,所述装置应用于源节点。
可选的,所述装置还包括:
存储单元,用于响应于所述源节点到第一节点的备份路径与所述源节点到所述第二节点的备份路径相同,存储所述源节点到所述第一节点的备份路径对应的路径标记,以及所述源节点到所述第二节点的备份路径对应的路径标记,其中所述源节点到所述第一节点的备份路径对应的路径标记和所述源节点到所述第二节点的备份路径对应的路径标记相同。
可选的,所述装置还包括:
第四处理单元,用于响应于第一成本参数大于或者等于第二成本参数,将所述第一节点和目标第二节点从所述目的节点集合中删除,所述目标第二节点为利用所述目标Q节点确定从所述源节点到所述目标第二节点的备份路径的第二节点;
返回执行所述从所述目的节点集合中确定第一节点和第二节点以及后续步骤,直到所述目的节点集合中不包括第二节点为止。
可选的,所述目标Q节点是通过遍历所述Q节点集合中的每个Q节点确定的。
可选的,所述目标Q节点是通过依次从所述Q节点集合中选取Q节点确定的。
可选的,所述网络故障的故障类型为链路故障,所述根节点为所述源节点。
可选的,所述网络故障的故障类型为节点故障,所述根节点为所述源节点的直连邻居节点,所述源节点的直连邻居节点为发生所述节点故障的节点,或者所述源节点到发生所述节点故障的节点的最短路径经过所述源节点的直连邻居节点。
第七方面,本申请实施例提供一种确定节点设备之间的备份路径的装置,所述备份路径用于在发生网络故障后传输所述节点设备之间的报文,所述装置包括:获取单元、第一处理单元、第二处理单元和第三处理单元。获取单元,用于获取源节点对应的目的节点集合,所述目的节点集合包括多个目的节点,所述源节点到所述多个目的节点中的每个目的节点的最短路径发生网络故障。第一处理单元,用于从所述目的节点集合中确定第一节点和第二节点,所述第一节点为最短路径树中父节点不属于所述目的节点集合的目的节点,从所述源节点到所述第二节点的最短路径经过所述第一节点,所述最短路径树包括发生所述网络故障后重新计算得到的从所述源节点分别到所述多个目的节点中的每个目的节点的最短路径。第二处理单元,用于确定发生所述网络故障后与所述第一节点关联的Q节点集合,所述Q节点集合包括一个或多个Q节点,所述一个或多个Q节点中的每个Q节点到所述第一节点的最短路径未发生所述网络故障。第三处理单元,用于响应于发生所述网络故障前所述第一节点到所述第二节点的最短路径,与发生所述网络故障后所述第一节点到所述第二节点的最短路径一致,根据所述Q节点集合确定所述源节点到所述第二节点的备份路径。
可选的,在所述第三处理单元根据所述Q节点集合确定所述源节点到所述第二节点的备份路径中,所述第三处理单元,具体用于根据所述源节点到所述第一节点的备份路径确定所述源节点到所述第二节点的备份路径;所述源节点到所述第一节点的备份路径根据所述Q节点集合确定。
可选的,在所述第三处理单元根据所述源节点到所述第一节点的备份路径确定所述源节点到所述第二节点的备份路径中,所述第三处理单元,具体用于将所述源节点到所述第一节点的备份路径确定为所述源节点到所述第二节点的备份路径。
可选的,在所述第三处理单元根据所述Q节点集合确定所述源节点到所述第二节点的备份路径中,所述第三处理单元,具体用于根据所述Q节点集合和与所述第一节点关联的P节点集合,确定所述源节点到所述第二节点的备份路径;所述P节点集合包括一个或多个P节点;所述源节点到所述一个或多个P节点中的每个P节点的最短路径未发生所述网络故障。
可选的,所述装置应用于所述源节点。
可选的,所述装置还包括:
存储单元,用于响应于所述源节点到所述第一节点的备份路径与所述源节点到所述第二节点的备份路径相同,存储所述源节点到所述第一节点的备份路径对应的路径标记,以及所述源节点到所述第二节点的备份路径对应的路径标记,其中所述源节点到所述第一节点的备份路径对应的路径标记和所述源节点到所述第二节点的备份路径对应的路径标记相同。
可选的,所述装置还包括:
第四处理单元,用于响应于发生所述网络故障前所述第一节点到所述第二节点的最短路径,与发生所述网络故障后所述第一节点到所述第二节点的最短路径不一致,且响应于第一成本参数小于第二成本参数,根据目标Q节点确定所述源节点到所述第二节点的备份路径,所述目标Q节点是所述Q节点集合中的一个Q节点,所述第一成本参数为所述目标Q节点到所述第一节点的最短路径成本和所述第一节点到所述第二节点的最短路径成本之和,所述第二成本参数为所述目标Q节点到根节点的最短路径成本和所述根节点到所述第二节点的最短路径成本之和,所述根节点是根据所述网络故障的故障类型以及所述源节点确定的,所述第一节点到所述第二节点的最短路径成本根据所述最短路径树确定。
第八方面,本申请实施例提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如前述第一方面及其第一方面任意可能的实现方式中的确定节点设备之间的备份路径的方法,或者执行如前述第二方面及其第二方面任意可能的实现方式中所述的确定节点设备之间的备份路径的方法。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种网络拓扑示意图;
图2为本申请实施例提供的一种确定节点设备之间的备份路径的方法的流程示意图;
图3为本申请实施例提供的一种发生网络故障之前的,以源节点为根的最短路径树的示意图;
图4为本申请实施例提供的一种网络故障收敛之后的以源节点为根的最短路径树的示意图;
图5为本申请实施例提供的一种以第一节点为根的反向最短路径树的示意图;
图6为本申请实施例提供的一种节点设备输出的备份路径的查询结果示意图;
图7为本申请实施例提供的一种确定节点设备之间的备份路径的方法的流程示意图;
图8为本申请实施例提供的另一种网络拓扑结构示意图;
图9为本申请实施例提供的一种以节点0为根的最短路径树的示意图;
图10为本申请实施例提供的一种网络故障收敛之后的以节点0为根的最短路径树的示意图;
图11为本申请实施例提供的又一种网络拓扑结构示意图;
图12为本申请实施例提供的一种以节点A为根的最短路径树的示意图;
图13为本申请实施例提供的一种网络故障收敛之后的以节点A为根的最短路径树的示意图;
图14为本申请实施例提供的又一种确定节点设备之间的备份路径的方法的流程示意图;
图15为本申请实施例提供的一种确定节点设备之间的备份路径的装置结构示意图;
图16为本申请实施例提供的另一种确定节点设备之间的备份路径的装置结构示意图;
图17为本申请实施例还提供的一种确定节点设备之间的备份路径的设备的硬件架构图;
图18为本申请实施例还提供的另一种确定节点设备之间的备份路径的设备的硬件架构图。
具体实施方式
在网络中,从源节点到目的节点传输报文需要遵循IP协议。源节点基于目的节点的网络层地址以及源节点本地所维护的路由表,确定源节点的下一跳节点,例如为节点A。源节点将报文发送至节点A。节点A根据报文中的目的节点的网络层地址,以及节点A本地所维护的路由表,确定节点A的下一跳节点,例如为节点B。节点A再将报文转发至节点B。以此类推,通过网络中的节点依次根据目的节点的网络层地址和本地维护的路由表确定下一跳节点,并转发报文,最终将报文发送至目的节点。
网络中的节点根据网络拓扑动态的维护本地的路由表,使得报文能够传输至目的节点。比如,在当源节点到目的节点的传输路径发生故障时,受到网络故障影响的节点需要重新确定到达下一跳节点的路径,并基于重新确定的路径调整本地维护的路由表。目前,采用快速重路由(fast reroute,FRR)技术提前为从源节点到目的节点的路径确定对应的备份路径。在当检测到源节点到目的节点的路径出现故障时,能够快速地切换到源节点到目的节点的备份路径进行报文的传输。
在具备FRR功能的网络设备利用根据拓扑无关的无环代替冗余算法(topologyindependent loop-free alternate,TI-LFA)确定源节点到目的节点的备份路径时,先需要确定源节点到目的节点的备用下一跳节点。源节点通过将报文发送至备份下一跳节点,由备份下一跳节点转发报文,避免经过发生网络故障的主用链路或者主用节点,实现在发生网络故障后将报文通过备份路径发送至目的节点。
例如,参见图1所示,该图为本申请实施例提供的一种网络拓扑示意图。图1中,两个相邻节点之间的链路旁的数字表示两个节点之间正向和反向的链路开销。链路开销用于衡量一个节点到达另一个节点的代价。
其中,每个节点对应于网络中的路由器。在由节点1向节点4发送报文时,如果节点1和节点4之间的链路发生故障,节点1根据预先确定的备份路径中的备份下一跳,也就是节点2,向节点4发送报文。基于备份路径“节点1→节点2→节点4”,实现在发生网络故障后的报文的快速传输。
节点在对报文进行转发时,会选取从源节点到目的节点的路径成本最低的路径作为报文的传输路径。因此,在TI-LFA中,为了能够自动形成备份路径,源节点的备份下一跳节点需要满足内部网关协议(interior gateway protocols,IGP)的路径成本(cost)条件。IGP cost条件能够表述为:Distance(N,D)<Distance(N,S)+Distance(S,D)。其中,S是源节点,D是目的节点,N是源节点的邻居节点。Distance(N,D)是指从N到D最短路径成本,Distance(N,S)是指从N到S最短路径成本,Distance(S,D)是指从S到D最短路径成本。
在TI-LFA中,属于P空间(P-space)的待选的P节点,为源节点到待选的P节点的路径不经过网络故障的节点。属于Q空间(Q-space)的待选的Q节点,为待选的Q节点到目的节点的路径不经过网络故障的节点。P空间中的P节点和Q空间中的Q节点,满足IGP cost条件。再从P空间中选取距离源节点最远的待选的P节点作为建立备份路径的P节点,从Q空间中选取距离建立备份路径的P节点最近的待选的Q节点作为建立备份路径的Q节点,在建立备份路径的P节点和建立备份路径的Q节点之间建立段路由-尽力转发(segment routing besteffort,SR-BE)隧道。最终基于建立备份路径的P节点和建立备份路径的Q节点建立从源节点到目的节点的备份路径。从源节点到目的节点的备份路径包括,从源节点到建立备份路径的P节点,建立备份路径的P节点到建立备份路径的Q节点,建立备份路径的Q节点到目的节点的备份路径三个部分。
在从Q空间中选择Q节点时,需要计算以目的节点为根的反向树。以目的节点为根的反向树包括从除目的节点以外的其他节点分别到目的节点的最短路径。在FRR技术中,需要将网络中的每个节点作为目的节点计算对应的备份路径。也就是说,需要计算与网络节点数量相同的反向树,导致确定节点之间的备份路径的计算成本较高。
为了克服上述技术问题,本申请实施例提供了一种确定节点设备之间的备份路径的方法、装置及设备。先从第一节点的Q节点中选择目标Q节点,再判断目标Q节点的第一成本参数是否小于第二成本参数。如果第一成本参数小于第二成本参数,则确定目标Q节点满足作为第二节点的Q节点的条件,能够利用目标Q节点确定源节点到第二节点的备份路径。从第一节点的Q节点中确定满足作为第二节点的Q节点的条件的目标Q节点,得以利用目标Q节点确定第二节点的Q节点,相当于复用第一节点的Q节点为第二节点的Q节点,减少第二节点的Q节点的计算过程,降低确定源节点到目的节点之间的备份路径的计算成本。
下面结合附图详细介绍本申请实施例提供的确定节点设备之间的备份路径的方法。
在一种可能的实现方式中,参见图2所示,该图为本申请实施例提供的一种确定节点设备之间的备份路径的方法的流程示意图。本申请实施例提供的一种确定节点设备之间的备份路径的方法,能够由具备FRR功能的网络设备执行。可选的,具备FRR功能的网络设备为网络中的控制设备。控制设备用于确定节点设备,也就是源节点和目的节点之间的备份路径。可选的,具备FRR功能的网络设备为网络中的节点设备。节点设备确定节点设备作为源节点时到达其他目的节点的备份路径。在一种可能的实现方式中,网络中的节点设备为网络中的路由器。
本申请实施例提供的一种确定节点设备之间的备份路径的方法,具体包括以下步骤S201至步骤S205。
S201:获取源节点对应的目的节点集合。
在确定节点之间的备份路径之前,需要先确定需要建立备份路径的两个节点,也就是备份路径的源节点和目的节点。
在一种可能的实现方式中,从网络中选取一个节点作为需要确定备份路径的源节点,再根据源节点直连的链路或者节点确定目的节点。可选的,依次遍历网络中的每个节点,将每个节点分别作为源节点,确定每个节点的备份下一跳节点,形成每个节点到其他节点的备份路径。
在确定备份路径时,可选的,假设源节点直连的链路发生链路故障或者链路上的节点发生节点故障。链路故障是指节点之间的链路发生故障,导致节点之间不能通过链路传输报文。节点故障是指节点设备发生故障,节点存在着不能接收报文、处理报文或者转发报文的故障。
基于网络中可能发生的网络故障,将网络故障所在的源节点到目的节点的传输报文的最短路径中的目的节点,作为需要确定备份路径的目的节点。
以上述图1为例,以节点1为源节点,假设节点1与节点4之间的链路(后面用“节点1→节点4”来表示节点1与节点4之间的链路)发生链路故障。从节点1到节点4之间的最短路径,即路径“节点1→节点4”发生故障,将节点4作为目的节点。从节点1到节点7之间的最短路径,即路径“节点1→节点4→节点7”发生故障,将节点7作为目的节点。从节点1到节点8之间的最短路径,即路径“节点1→节点4→节点8”发生故障,将节点8作为目的节点。
又例如,假设节点4发生节点故障。从节点1到节点7之间的最短路径,即路径“节点1→节点4→节点7”发生故障,将节点7作为目的节点。从节点1到节点8之间的最短路径,即路径“节点1→节点4→节点8”发生故障,将节点8作为目的节点。
在一种实现中,计算发生网络故障前以源节点为根的最短路径树。利用计算得到的最短路径树,确定需要确定备份路径的目的节点。以源节点为根的最短路径树,包括源节点分别到除源节点以外的多个其他节点中的每个其他节点的最短路径。
以图1中的网络拓扑为例,节点1为源节点,参见图3所示,该图为本申请实施例提供的一种发生网络故障之前的,以源节点为根的最短路径树的示意图。图3中,两个相邻节点之间的路径旁的数字表示两个节点之间的路径成本。假设节点1和节点4之间的链路发生链路故障,则根据发生网络故障之前的,以源节点为根的最短路径树,将节点1和节点4之间的链路所在的分支的节点作为目的节点。具体的,根据图3中的最短路径树,将节点1和节点4之间的链路所在的左边分支上的节点4、节点7和节点8作为目的节点。
对于同一个源节点和网络故障,需要确定备份路径的目的节点为一个或者多个。将需要确定备份路径的目的节点组成源节点对应的目的节点集合。在本申请实施例中,考虑到不同的目的节点的Q节点之间的复用,目的节点集合中至少包括两个目的节点。
仍以上述节点1和节点4之间的链路发生链路故障为例,源节点,也就是节点1,对应的目的节点集合包括节点4、节点7和节点8。
S202:从所述目的节点集合中确定第一节点和第二节点。
目的节点集合中至少包括两个目的节点。从目的节点集合中确定两类节点,第一节点和第二节点。
其中,第一节点为通过计算确定关联的Q节点集合的目的节点,第二节点为可能复用第一节点的Q节点的目的节点,也就是可能将第一节点的Q节点作为本目的节点的Q节点的目的节点。目的节点集合中确定的第一节点为一个或者多个,每个第一节点所对应的第二节点为一个或者多个。
在一种可能的实现方式中,能够通过网络故障收敛之后的以源节点为根的最短路径树确定第一节点和第二节点。网络故障收敛之后的以源节点为根的最短路径树,包括在网络故障收敛之后,从源节点分别到多个目的节点中的每个目的节点的最短路径。
根据目的节点在网络故障收敛之后的以源节点为根的最短路径树中的位置,确定目的节点中的第一节点和第二节点。在处于网络故障收敛之后的以源节点为根的最短路径树中,将父节点并不属于目的节点集合的目的节点作为第一节点。也就是说,在网络故障收敛之后的以源节点为根的最短路径树中,处于目的节点的顶层的目的节点作为第一节点。
以图1所示的网络拓扑为例,假设发生节点1和节点4之间的链路故障,参见图4所示,该图为本申请实施例提供的一种网络故障收敛之后的以源节点为根的最短路径树的示意图。其中,节点4的父节点为节点2,节点2并不属于目的节点,将节点4作为第一节点。同样的,从节点4、节点7和节点8在网络故障收敛之后的以源节点为根的最短路径树中的位置来看,节点4为三个目的节点中位于顶层的目的节点。
在确定第一节点之后,根据第一节点确定第一节点所对应的第二节点。从源节点到第二节点的最短路径经过第一节点。在网络故障收敛之后的以源节点为根的最短路径树中,第二节点为第一节点所在分支下的节点。第二节点具体包括第一节点的子节点,第一节点的子节点的子节点,并依次类推,直到最底层的节点。
以图4中的网络故障收敛之后的以源节点为根的最短路径树为例,节点1到节点7的最短路径,以及节点1到节点8的最短路径经过节点4。将节点7和节点8作为节点4所对应的第二节点。从网络故障收敛之后的以源节点为根的最短路径树的结构来看,节点7和节点8属于节点4的子节点,从节点1到节点7和从节点1到节点8的最短路径经过节点4。将节点7和节点8作为节点4所对应的第二节点。
S203:确定发生网络故障后,与第一节点关联的Q节点集合。
第一节点关联的Q节点集合中包括一个或者多个Q节点。Q节点集合中的每个Q节点到第一节点的最短路径未发生网络故障。
在一种可能的实现方式中,通过TI-LFA确定第一节点关联的Q节点集合。
具体的,根据网络故障的故障类型,选择对应的Q节点的判断公式确定第一节点的Q节点。下面对故障类型为链路故障和故障类型为节点故障的Q节点的判断公式分别进行说明。
当网络故障的故障类型为链路故障时,Q节点的判断公式如公式(1)所示:
Distance(Q,D1)<Distance(Q,S)+Distance(S,D1) (1)
其中,Q表示第一节点的Q节点,D1表示第一节点,S表示源节点。Distance(Q,D1)是指从Q到D1最短路径成本,Distance(Q,S)是指从Q到S最短路径成本,Distance(S,D1)是指从S到D1最短路径成本。
当网络故障的故障类型为节点故障时,Q节点的判断公式如公式(2)所示:
Distance(Q,D1)<Distance(Q,E)+Distance(E,D1) (2)
其中,Q表示第一节点的Q节点,D1表示第一节点,E表示源节点的主用下一跳节点。源节点的主用下一跳节点,是发生网络故障的源节点到目的节点的最短路径上的源节点的下一跳节点。Distance(Q,D1)是指从Q到D1最短路径成本,Distance(Q,E)是指从Q到E最短路径成本,Distance(E,D1)是指从E到D1最短路径成本。
在一种情况下,将网络节点中除源节点和第一节点以外的节点作为候选的Q节点,判断各个候选的Q节点是否满足公式(1)或者公式(2)。将满足公式(1)或者公式(2)的节点作为第一节点的0节点,从而得到第一节点关联的Q节点集合。
S204:计算目标Q节点对应的第一成本参数和第二成本参数。
目标Q节点为第一节点关联的Q节点集合中的一个Q节点,本申请实施例不限定从第一节点关联的Q节点集合中选取目标Q节点的具体实施方式。可选的,本申请实施例提供三种从Q节点集合中选取目标Q节点的实现方式。
方式一:将Q节点集合中用于建立源节点到第一节点的备份路径的Q节点作为目标Q节点。
在一种可能的实现方式中,能够从第一节点关联的Q节点集合中选取一个Q节点作为建立从源节点到第一节点的备份路径的0节点。例如,采用TI-LFA在第一节点关联的Q节点集合中选取距离建立备份路径的P节点最近的节点作为建立备份路径的Q节点。将建立从源节点到第一节点的备份路径的Q节点作为目标Q节点。如此,能够实现在确定目标Q节点为第二节点的Q节点时,根据源节点到第一节点的备份路径确定源节点到第二节点的备份路径。在减少Q节点的计算成本的基础上,进一步减少确定源节点到第二节点的备份路径的成本,加快确定节点设备之间的备份路径的速度。
方式二:遍历Q节点集合中的Q节点,确定目标Q节点。
在另一种可能的实现方式中,可选的,将Q节点集合中的每个Q节点分别作为目标Q节点。计算每个目标Q节点对应的第一成本参数和第二成本参数。并根据各个目标Q节点的第一成本参数和第二成本参数之间的大小关系,确定用于建立源节点到第二节点的备份路径的目标Q节点。
在一种情况下,通过遍历Q节点集合中的Q节点,得到多个能够用于建立源节点到第二节点的备份路径的目标Q节点。进一步的,从多个能够用于建立源节点到第二节点的备份路径的目标Q节点中,选取用于建立源节点到第二节点的备份路径的一个目标Q节点。本申请实施例不限定选取一个用于建立源节点到第二节点的备份路径的方式。例如,可选的,从多个能够用于建立源节点到第二节点的备份路径的目标Q节点中,选取一个距离用于建立源节点到第二节点的备份路径的P节点最近的目标Q节点。
方式三:依次从Q节点集合中选取Q节点,确定目标Q节点。
在另一种可能的实现方式中,可选的,按照一定的顺序,依次从Q节点集合中选取Q节点作为目标Q节点。例如,可选的,按照距离用于建立从源节点到第一节点的备份路径的第一节点的P节点从远到近的顺序,将Q节点集合中的Q节点依次确定为目标Q节点。
计算目标Q节点对应的第一成本参数和第二成本参数。并根据各个目标Q节点的第一成本参数和第二成本参数之间的大小关系,确定能够用于建立源节点到第二节点的备份路径的目标Q节点。
在一种情况下,在确定一个能够用于建立源节点到第二节点的备份路径的目标Q节点之后,停止选取目标Q节点。如此,能够在保证第二节点能够复用目标Q节点的前提下,进一步降低判断Q节点是否能够复用的计算成本。
在确定目标Q节点后,需要确定目标Q节点是否为第二节点的Q节点,也就是说,确定目标Q节点能否用于确定从源节点到第二节点的备份路径。
下面对确定目标Q节点为第二节点的Q节点进行说明。
根据上述公式(1)可知,对于故障类型为链路故障的网络故障,第二节点的Q节点需要满足公式(3):
Distance(Q2,D2)<Distance(Q2,S)+Distance(S,D2) (3)
其中,Q2表示第二节点的Q节点,D2表示第二节点,S表示源节点。Distance(Q2,D2)是指从Q2到D2最短路径成本,Distance(Q2,S)是指从Q2到S最短路径成本,Distance(S,D2)是指从S到D2最短路径成本。
根据上述公式(2)可知,对于故障类型为节点故障的网络故障,第二节点的Q节点需要满足公式(4):
Distance(Q2,D2)<Distance(Q2,E)+Distance(E,D2) (4)
其中,Q2表示第二节点的Q节点,D2表示第二节点,E表示源节点的主用下一跳节点。源节点的主用下一跳节点,是发生网络故障的源节点到目的节点的最短路径上的源节点的下一跳节点。Distance(Q2,D2)是指从Q2到D2最短路径成本,Distance(Q2,E)是指从Q2到E最短路径成本,Distance(E,D2)是指从E到D2最短路径成本。
如果要验证目标Q节点是否为第二节点的Q节点,则需要计算目标Q节点到第二节点的最短路径成本。考虑到发生网络故障后,第一节点到第二节点的最短路径为源节点到第二节点的最短路径中的第一节点到第二节点的最短路径。并且,目标Q节点到第一节点的路径未发生网络故障。则基于发生网络故障之后的网络拓扑结构,目标Q节点到第二节点的最短路径成本,为目标Q节点到第一节点的最短路径成本与第一节点到第二节点的最短路径成本之和。而公式(3)和公式(4)中的目标Q节点到第二节点的最短路径成本,是基于发生网络故障之前的网络拓扑结构确定的。发生网络故障之前的网络拓扑结构中,包括目标Q节点经过第一节点到达第二节点的路径。并且,发生网络故障之前的网络拓扑结构中可能包括更多的节点和链路,目标Q节点到第二节点可能存在着其他路径,目标Q节点到第二节点的最短路径成本可能小于或者等于目标Q节点到第一节点的最短路径成本与第一节点到第二节点的最短路径成本之和。
因此,从目标Q节点到第二节点的最短路径成本,即Distance(Q1,D2),能够表示为公式(5)。
Distance(Q1,D2)≤Distance(Q1,D1)+Distance(D1,D2) (5)
公式(5)对应于以下两种情况。
情况一:目标Q节点经过第一节点到达第二节点的最短路径,为目标Q节点到第二节点的最短路径。此种情况对应于公式(5)中的“=”。
情况二:目标Q节点经过第一节点到达第二节点的最短路径,并不是目标Q节点到第二节点的最短路径。则目标Q节点到第一节点的最短路径成本与第一节点到第二节点的最短路径的成本之和,是大于目标Q节点到第二节点的最短路径成本的。此种情况对应于公式(5)中的“<”。
基于公式(5)和公式(3),能够得到在网络故障的故障类型为链路故障时,用于判断目标Q节点是否能够作为第二节点的Q节点的公式(6)。
Distance(Q1,D1)+Distance(D1,D2)<Distance(Q1,S)+Distance(S,D2) (6)
基于公式(5)和公式(4),能够得到在网络故障的故障类型为节点故障时,用于判断目标Q节点是否能够作为第二节点的Q节点的公式(7)。
Distance(Q1,D1)+Distance(D1,D2)<Distance(Q1,E)+Distance(E,D2) (7)
经过上述内容可知,对应于链路故障时,满足公式(6),或者是对应于节点故障时,满足公式(7)的目标Q节点,能够作为第二节点的Q节点。
基于上述内容可知,对第一成本参数和第二成本参数分别进行介绍:
目标Q节点的第一成本参数是指目标Q节点到第一节点的最短路径成本和第一节点到第二节点的最短路径成本之和。也就是上述公式(6)和公式(7)中的“Distance(Q1,D1)+Distance(D1,D2)”。
其中,目标Q节点到第一节点的最短路径成本,能够通过以第一节点为根的反向最短路径树确定。以第一节点为根的反向最短路径树包括从除第一节点以外的每个其他节点到第一节点的最短路径。以图1中的网络拓扑结构为例,参见图5所示,该图为本申请实施例提供的一种以第一节点为根的反向最短路径树的示意图。第一节点到第二节点的最短路径成本,能够通过网络故障收敛之后的以源节点为根的最短路径树确定。
以图1中的拓扑结构为例,假设节点1和节点4之间的链路发生链路故障,节点4为第一节点,节点7为第二节点。其中,节点2为节点4关联的Q节点集合中的目标Q节点。则Distance(Q1,D1)为3,Distance(D1,D2)为2,目标Q节点的第一成本参数为5。
目标Q节点的第二成本参数是指目标Q节点到根节点的最短路径成本和根节点到第二节点的最短路径成本之和。
目标Q节点到根节点的最短路径成本,由以根节点为根的反向最短路径树确定。以根节点为根的反向最短路径树,包括除根节点以外的每个其他节点到根节点的最短路径。根节点到第二节点的最短路径成本,由以根节点为根的最短路径树确定。以根节点为根的最短路径树,包括根节点到每个目的节点的最短路径。
其中,根节点是根据网络故障的故障类型确定的。当网络故障的故障类型为链路故障时,根节点为源节点。对应于公式(6)中的“Distance(Q1,S)+Distance(S,D2)”。
以图1中的拓扑结构为例,假设节点1和节点4之间的链路发生链路故障,节点4为第一节点,节点7为第二节点。其中,节点2为节点4关联的Q节点集合中的目标Q节点。则Distance(Q1,S)为1,Distance(S,D2)为6,目标Q节点的第二成本参数为7。
当网络故障的故障类型为节点故障时,根节点为源节点的主用下一跳节点。对应于公式(7)中的“Distance(Q1,E)+Distance(E,D2)”。源节点的主用下一跳节点是未发生网络故障时源节点到目的节点的最短路径上的源节点的下一跳节点。在确定源节点到目的节点的备份路径时,会假设源节点的主用下一跳节点发生节点故障,或者是源节点到目的节点的最短路径的除主用下一跳节点以外的其他节点发生节点故障。对应的,根节点也为发生节点故障的源节点的直连邻居节点,或者是源节点到发生节点故障的节点的最短路径所经过的源节点的直连邻居节点。
S205:响应于第一成本参数小于第二成本参数,根据目标Q节点确定所述源节点到所述第二节点的备份路径。
根据上述内容可知,当第一成本参数小于第二成本参数时,目标Q节点能够作为第二节点的Q节点。根据确定的一个目标Q节点建立源节点到第二节点的备份路径。
以图1中的拓扑结构为例,假设节点1和节点4之间的链路发生链路故障,节点4为第一节点,节点7为第二节点。其中,节点2为节点4关联的Q节点集合中的目标Q节点。则目标Q节点的第一成本参数5小于第二成本参数7,节点7能够复用节点2。
本申请实施例提供两种根据目标Q节点确定源节点到第二节点的备份路径的具体实施方式。
方式一:如果目标Q节点为建立源节点到第一节点的备份路径的Q节点,能够根据源节点到第一节点的备份路径确定源节点到第二节点的备份路径。
如果确定用于建立源节点到第二节点的备份路径的目标Q节点,为用于建立源节点到第一节点的备份路径的目标Q节点,则能够根据源节点到第一节点的备份路径确定源节点到第二节点的备份路径。可选的,第一节点的备份路径能够通过TI-LFA确定。
在一种可能的实现方式中,将从源节点到第一节点的备份路径,和从第一节点到第二节点的最短路径作为源节点到第二节点的备份路径。
在另一种可能的实现方式中,将从源节点到第一节点的备份路径作为第二节点的备份路径。在报文传输通过从源节点到第一节点的备份路径至第一节点后,第一节点能够根据本地维护的路由表向第二节点转发报文,实现源节点到第二节点的报文传输。
基于源节点到第一节点的备份路径确定源节点到第二节点的备份路径,能够减少确定源节点到第二节点备份路径的计算成本,并且提高确定源节点到第二节点备份路径的速度。
方式二:根据目标Q节点和第一节点关联的P节点集合,确定源节点到第二节点的备份路径。
本方式中提供的确定源节点到第二节点的备份路径的方法,能够适用于前文所述的三种确定目标Q节点方式中的任何一种。
第一节点关联的P节点集合包括至少一个P节点。源节点到P节点集合中的每个P节点的最短路径未发生网络故障。
当网络故障的故障类型为链路故障时,P节点的判断公式如公式(8)所示:
Distance(N,P)<Distance(N,S)+Distance(S,P) (8)
其中,P表示第一节点的P节点,S表示源节点,N表示源节点的非主下一跳节点的直连邻居节点。Distance(N,P)是指从N到P最短路径成本,Distance(N,S)是指从N到S最短路径成本,Distance(S,P)是指从S到P最短路径成本。
当网络故障的故障类型为节点故障时,P节点的判断公式如公式(9)所示:
Distance(N,P)<Distance(N,E)+Distance(E,P) (9)
其中,P表示第一节点的P节点,E表示源节点的主下一跳节点,N表示源节点的非主下一跳节点的直连邻居节点。Distance(N,P)是指从N到P最短路径成本,Distance(N,E)是指从N到E最短路径成本,Distance(E,P)是指从E到P最短路径成本。
根据P节点的判断公式以及P节点的定义可知,P节点仅与源节点以及发生的网络故障有关,与具体的目的节点无关。因此,能够将第一节点的P节点集合中的每个P节点,作为第二节点的P节点。
根据第二节点的P节点和目标Q节点,确定源节点到第二节点的备份路径。在一种可能的实现方式中,可选的,选择距离源节点最远的P节点作为建立备份路径的P节点。在另一种可能的实现方式中,如果目标Q节点仅有一个,可选的,选择与目标Q节点之间的距离最近的P节点作为建立备份路径的目标P节点。
建立的从源节点到第二节点的备份路径,可选的,由从源节点到目标P节点的最短路径,从目标P节点到目标Q节点的最短路径,从目标Q节点到第一节点的路径最短组成。在另一种情况下,建立的从源节点到第二节点的备份路径,由从源节点到目标P节点的最短路径,从目标P节点到目标Q节点的最短路径,和从目标Q节点经过第一节点到第二节点的最短路径组成。
通过复用第一节点的P节点来确定源节点到第二节点的备份路径,能够减少第二节点的P节点的计算成本,进一步提高确定源节点到第二节点的备份路径的速度。
在源节点到目的节点的路径发生故障时,源节点切换为预先确定的从源节点到第二节点的备份路径,通过源节点到第二节点的备份路径传输源节点与第二节点之间的报文。
基于上述内容可知,第一节点的Q节点中包括能够被第二节点复用的目标Q节点,利用目标Q节点能够确定源节点到第二节点的备份路径。通过复用第一节点的Q节点,也就是目标Q节点,减少针对第二节点的Q节点的计算过程,能够避免计算每个除第二节点以外的其他节点到第二节点的最短路径,降低了确定源节点到第二节点的备份路径的计算成本。
在当源节点应用上述确定节点设备之间的备份路径的方法,确定源节点到第二节点的备份路径后,源节点存储确定的源节点到各个目的节点的备份路径。
在一种可能的实现方式中,源节点储存源节点到目的节点的备份路径所对应的路径标记。可选的,路径标记为备份路径组(backup path group,BPG)标记。每个备份路径对应于一个BPG标记。比如,以上述图1所示的网络拓扑结构为例,节点1到节点4的备份路径为节点2到节点4。为节点1到节点4的备份路径设置对应的BPG标记,即BPG1。
如果源节点到不同目的节点的备份路径相同时,能够储存相同的路径标记,表示到达不同目的节点的备份路径相同。例如,以上述图1所示的网络拓扑结构为例,节点1到节点4的备份路径为节点2到节点4。节点1到节点7的备份路径为节点2到节点4。则节点1在存储节点1到节点4的备份路径时,存储BPG1。节点1在存储节点1到节点7的备份路径时,存储BPG1。节点1到节点8的备份路径为节点2到节点4。则节点1在存储节点1到节点8的备份路径时,存储BPG1。
源节点存储的到各个目的节点的备份路径的路径标记如表1所示:
表1
在当在源节点上查询各个目的节点对应的从源节点到目的节点的备份路径时,源节点输出存储的目的节点所对应的路径标记。再根据路径标记所对应的备份路径,能够确定源节点到目的节点的备份路径。
以上述源节点为节点1为例,参见图6所示,该图为本申请实施例提供的一种节点设备输出的备份路径的查询结果示意图。其中,“BackupPathGroup:BPG1”表示从源节点到目的节点的备份路径为BPG1所对应的备份路径。
基于上述内容可知,通过为备份路径设置对应的路径标记,存储备份路径时存储对应的路径标记,能够减少存储备份路径的数据量。并且,在备份路径相同时,存储相同的路径标记,能够减少不同的路径标记的数量,进一步减少存储的数据量。
在一种情况下,目标Q节点不满足第二节点复用Q节点的条件,也就是说,第一节点的Q节点集合中不存在第一成本参数小于第二成本参数的目标Q节点。如此,无法根据第一节点的Q节点确定第二节点的Q节点,导致无法基于第一节点的Q节点确定源节点到第二节点的备份路径。
对于上述情况,由于源节点到第一节点的备份路径能够通过TI-LFA确定,能够被第二节点复用的目标Q节点,能够用于建立源节点到第二节点的备份路径,将第一节点和能够被第二节点复用的目标Q节点所对应的第二节点从目的节点集合中删除。在更新后的目的节点集合中按照上述S202的方法重新确定第一节点和第二节点。并按照上述S203和S204的方法在第一节点的Q节点集合中确定目标Q节点。并根据第一成本参数和第二成本参数之间的大小关系,按照上述S205的方法,利用能够被第二节点复用的目标Q节点确定从源节点到第二节点的备份路径,或者是重新确定目的节点集合中的目的节点,直到重新确定的目的节点集合中不包括第二节点为止。
目的节点集合中不包括第二节点能够分为以下两种情况:
情况一:目的节点集合中包括一个或者多个目的节点,但目的节点为第一节点。
此类情况对应于目的节点集合中仅包括第一节点,第一节点不具有对应的第二节点。第一节点能够通过TI-LFA确定源节点到第一节点的备份路径,实现确定源节点分别到全部的目的节点的备份路径,结束迭代的过程。
情况二:目的节点集合中不包括目的节点。
此类情况对应于目的节点集合中不包括目的节点。也就是说,源节点分别到全部的目的节点均能够确定备份路径,结束迭代的过程。
以图1中的网络拓扑结构为例,为了方便说明,假设目的节点中除节点4、节点7和节点8以外,还包括节点9、节点10和节点11(图1中未示出)。其中,节点9为节点7的子节点,节点10为节点8的子节点,节点11为节点9的子节点。在节点4为第一节点时,节点9、节点10和节点11为第二节点。其中,节点7和节点8具有对应的能够复用的目标Q节点,节点9、节点10和节点11不具有对应的能够复用的目标Q节点。则将节点4、节点7和节点8从目的节点中删除。更新后的目的节点集合中包括节点9、节点10和节点11。通过网络故障收敛之后的以源节点为根的最短路径树在更新后的目的节点集合中确定第一节点和第二节点。在更新目的节点集合后,节点9的父节点,也就是节点7为不属于目的节点集合的节点,节点10的父节点,也就是节点8为不属于目的节点集合的节点。将节点9和节点10分别作为第一节点,节点11为节点9的第二节点。
在一种实现中,在确定目的节点集合后,对网络故障收敛之后的以源节点为根的最短路径树中的目的节点按照顺序遍历。比如,可选的,按照从上至下,从左至右的顺序遍历,将遍历确定的第一个符合父节点为不属于目的节点集合的节点作为第一个第一节点。确定第一个第一节点的第二节点,在确定用于建立源节点到第二节点的备份路径的目标Q节点之后,继续按照顺序遍历除去第一个第一节点以及第一个第一节点的第二节点以外的目的节点。以此类推,确定其他第一节点和第一节点的第二节点。直到遍历完全部的目的节点为止。
在一种情况下,为了便于说明,假设节点9的Q节点集合中存在能够被第二节点,即节点11复用的目标Q节点,则利用目标Q节点确定节点1到节点11的备份路径。并继续遍历剩余的目的节点。将节点10确定为第一节点。节点10没有对应的第二节点。目的节点的遍历结束。
在另一种情况下,为了便于说明,假设节点9的Q节点集合中不存在能够被第二节点复用的目标Q节点,则继续遍历剩余的目的节点。将节点10确定为第一节点,节点10没有对应的第二节点,目的节点的遍历结束。将节点9和节点10从目的节点集合中删除,目的节点集合中包括节点11。重新确定的目的节点集合中仅包括能够作为第一节点的节点11,不包括第二节点,停止对目的节点集合的更新,直接通过计算确定源节点到节点11的备份路径。
上述通过更新目的节点集合,重新确定第一节点和第二节点的方法,能够通过迭代确定源节点到全部的目的节点的备份路径。在确定源节点到全部的目的节点的备份路径的前提下,提高确定源节点到目的节点的备份路径的速度,降低确定源节点到目的节点的备份路径的计算成本。
上述实现方式中,是通过验证第一节点的Q节点是否满足被第二节点复用的条件实现确定节点设备之间的备份路径的方法。在另一种可能的实现方式中,能够通过第一节点和第二节点之间最短路径的变化情况确定第二节点能否复用第一节点的Q节点。
参见图7所示,该图为本申请实施例提供的一种确定节点设备之间的备份路径的方法的流程示意图。本申请实施例提供的一种确定节点设备之间的备份路径的方法,能够由具备FRR功能的网络设备执行。可选的,具备FRR功能的网络设备为网络中的控制设备。控制设备用于确定节点设备,也就是源节点和目的节点之间的备份路径。可选的,具备FRR功能的网络设备为网络中的节点设备。节点设备确定节点设备作为源节点时到达其他目的节点的备份路径。在一种可能的实现方式中,网络中的节点设备为网络中的路由器。
本申请实施例提供的一种确定节点设备之间的备份路径的方法,具体包括以下五个步骤。
S701:获取源节点对应的目的节点集合。
S701与上述S201中介绍的获取源节点对应的目的节点集合的方法类似,在此不再赘述,具体请参见前文中S201的相关内容。
S702:从所述目的节点集合中确定第一节点和第二节点。
S702与上述S202中介绍的从目的节点集合中确定第一节点和第二节点的方法类似,在此不再赘述,具体请参见前文中S202的相关内容。
S703:确定发生网络故障后,与第一节点关联的Q节点集合。
S703与上述S203中介绍的确定第一节点关联的Q节点集合的方法类似,在此不再赘述,具体请参见前文中S203的相关内容。
S704:确定发生网络故障前第一节点到第二节点的最短路径,和发生网络故障后第一节点到第二节点的最短路径。
发生网络故障前第一节点到第二节点的最短路径,能够通过以源节点为根的最短路径树中包括的第一节点到第二节点的最短路径确定。
发生网络故障后第一节点到第二节点的最短路径,为在网络故障收敛之后,重新计算确定的第一节点到第二节点的最短路径。发生网络故障后第一节点到第二节点的最短路径,能够通过网络故障收敛之后的以源节点为根的最短路径树中包括的第一节点到第二节点的最短路径确定。
参见图8所示,该图为本申请实施例提供的另一种网络拓扑结构示意图。图8所示的网络拓扑结构为一种环形网络的拓扑结构。以节点0为根的最短路径树参见图9所示。假设节点0和节点2之间的链路发生网络故障,网络故障收敛之后的以节点0为根的最短路径树参见图10所示。
其中,根据上述S701确定的目的节点集合包括节点2、节点4、节点6和节点8。根据S702,能够确定节点2为第一节点,节点4、节点6和节点8为节点2的第二节点。根据图8能够确定,在网络故障发生之前,第一节点分别到各个第二节点的最短路径。节点2到节点4的最短路径为节点2到节点4。节点2到节点6的最短路径为节点2到节点4到节点6。节点2到节点8的最短路径为节点2到节点4到节点6到节点8。根据图10能够确定,在网络故障发生之后,第一节点分别到各个第二节点的最短路径。节点2到节点4的最短路径为节点2到节点4。节点2到节点6的最短路径为节点2到节点4到节点6。节点2到节点8的最短路径为节点2到节点4到节点6到节点8。
参见图11所示,该图为本申请实施例提供的又一种网络拓扑结构示意图。以节点A为根的最短路径树参见图12所示。假设节点A和节点D之间的链路发生网络故障,网络故障收敛之后的以节点A为根的最短路径树参见图13所示。
其中,根据上述S701确定的目的节点集合包括节点D、节点E、节点1、节点2、……节点MN。根据S702,能够确定节点D为第一节点,节点E、节点1、节点2、……、节点MN为节点D的第二节点。根据图12能够确定,在网络故障发生之前,第一节点分别到第二节点的最短路径。根据图13能够确定,在网络故障发生之后,第一节点分别到第二节点的最短路径。
S705:响应于发生网络故障前第一节点到第二节点的最短路径,与发生网络故障后第一节点到第二节点的最短路径一致,根据Q节点集合确定源节点到第二节点的备份路径。
如果发生网络故障前和发生网络故障后,第一节点到第二节点的最短路径未发生变化,则说明第一节点和第二节点之间的最短路径不会受到网络故障的影响。在保持源节点到第二节点的最短路径经过第一节点的前提下,第一节点的Q节点能够复用为第二节点的Q节点。
下面以网络故障的故障类型为链路故障为例,对上述通过发生网络故障前后第一节点到第二节点的最短路径的情况确定Q节点能否复用的过程进行说明。
根据公式(6)可知,在第一节点的Q节点经过第一节点到达第二节点的最短路径成本,小于第一节点的Q节点到源节点的最短路径成本和源节点到第二节点的最短路径成本之和时,第一节点的Q节点能够作为第二节点的Q节点。而源节点经过第一节点的Q节点到达第一节点的最短路径成本大于第一节点的Q节点到达第一节点的最短路径成本。源节点到达第一节点的最短路径成本与第一节点到达第二节点的最短路径成本之和,为源节点到第二节点的最短路径成本,大于第一节点的Q节点到达第一节点的最短路径成本与第一节点到第二节点的最短路径成本之和。因此,第一节点的Q节点能够满足复用条件,能够作为第二节点的Q节点。
网络故障的故障类型为节点故障时的原理类似,在此不再赘述。
在确定发生网络故障前和发生网络故障后,第一节点到第二节点的最短路径未发生变化,第一节点关联的Q节点集合中的每个Q节点均能够作为第二节点的Q节点。根据Q节点集合确定源节点到第二节点的备份路径。
本申请实施例提供两种根据Q节点集合确定源节点到第二节点的备份路径的具体实施方式。
方式一:根据源节点到第一节点的备份路径确定源节点到第二节点的备份路径。
考虑到源节点到第一节点的备份路径同样是根据第一节点的Q节点集合确定的,根据源节点到第一节点的备份路径确定源节点到第二节点的备份路径。
可选的,将从源节点到第一节点的备份路径,和从第一节点到第二节点的最短路径作为源节点到第二节点的备份路径。或者,可选的,将从源节点到第一节点的备份路径作为第二节点的备份路径。在报文传输通过从源节点到第一节点的备份路径至第一节点后,第一节点能够根据本地维护的路由表向第二节点转发报文,实现源节点到第二节点的报文传输。
其中,第一节点的备份路径能够通过TI-LFA确定。
基于源节点到第一节点的备份路径确定源节点到第二节点的备份路径,能够减少确定源节点到第二节点备份路径的计算成本,并且提高确定源节点到第二节点备份路径的速度。
方式二:根据第一节点关联的P节点集合和Q节点集合,确定源节点到第二节点的备份路径。
第一节点关联的P节点集合包括至少一个P节点。源节点到P节点集合中的每个P节点的最短路径未发生网络故障。与P节点相关的内容,请参见前文根据目标Q节点确定源节点到第二节点的备份路径的具体实施方式中的方式二中的描述,在此不再赘述。
P节点仅与源节点以及发生的网络故障有关,与具体的目的节点无关。因此,能够将第一节点的P节点集合作为第二节点的P节点集合。
根据第二节点的P节点集合和Q节点集合,确定源节点到第二节点的备份路径。在一种可能的实现方式中,在P节点集合中选取距离源节点最远的P节点,作为确定从源节点到第二节点的备份路径的目标P节点。并且对应的在Q节点集合中选取距离目标P节点最近的Q节点作为确定从源节点到第二节点的备份路径的目标Q节点。
通过复用第一节点的P节点集合来确定源节点到第二节点的备份路径,能够进一步减少第二节点的P节点的计算成本。
在源节点到目的节点的路径发生故障时,源节点快速切换为预先确定的从源节点到第二节点的备份路径,通过源节点到第二节点的备份路径传输源节点与第二节点之间的报文。
基于上述内容可知,第一节点的Q节点中包括能够被第二节点复用的目标Q节点,利用目标Q节点能够确定源节点到第二节点的备份路径。通过复用第一节点的Q节点,减少针对第二节点的Q节点的计算过程,避免计算除第二节点以外的其他每个节点到第二节点的最短路径,降低确定源节点到第二节点的备份路径的计算成本。
在当源节点应用上述确定节点设备之间的备份路径的方法,确定源节点到第二节点的备份路径后,源节点存储确定的源节点到各个目的节点的备份路径。
在一种可能的实现方式中,源节点储存源节点到目的节点的备份路径所对应的路径标记。可选的,路径标记为BPG标记。每个备份路径对应于一个BPG标记。比如,以上述图8所示的网络拓扑结构为例,节点0到节点2的备份路径为节点1到节点3到节点2。为节点0到节点2的备份路径设置对应的BPG标记,即BPG2。
如果源节点到不同目的节点的备份路径相同时,能够存储相同的路径标记,表示到达不同目的节点的备份路径相同。例如,以上述图8所示的网络拓扑结构为例,节点0到节点2的备份路径为节点1到节点3到节点2。节点0到节点4的备份路径为节点1到节点3到节点2。则节点0在存储节点0到节点4的备份路径时,存储相同的备份路径对应的路径标记BPG2。
基于上述内容可知,通过为备份路径设置对应的路径标记,存储备份路径时存储对应的路径标记,能够减少存储备份路径的数据量。并且,在备份路径相同时,存储相同的路径标记,能够减少不同的路径标记的数量,进一步减少节点设备存储的数据量。
在可能的情况下,发生网络故障前后,第一节点到第二节点的最短路径可能发生变化,导致不能采用上述S705的方法确定源节点到第二节点的备份路径。
针对上述发生网络故障前后,第一节点到第二节点的最短路径发生变化的情况,在一种可能的实现方式中,能够根据目标Q节点的第一成本参数和第二成本参数对第二节点能否复用目标Q节点进行验证。
参见图14所示,该图为本申请实施例提供的又一种确定节点设备之间的备份路径的方法的流程示意图。除上述S701-S705以外,还包括S706和S707。
S706:响应于发生网络故障前第一节点到第二节点的最短路径,与发生网络故障后第一节点到第二节点的最短路径不一致,计算目标Q节点对应的第一成本参数和第二成本参数。
如果发生网络故障前后第一节点到第二节点的最短路径发生变化,则不能直接将第一节点的Q节点集合中的Q节点作为第二节点的Q节点。从第一节点关联的Q节点集合中确定目标Q节点,计算目标Q节点的第一成本参数和第二成本参数。
具体请参见前文所述的三种从Q节点集合中选取目标Q节点的实现方式,以及对第一成本参数和第二成本参数的相关描述,在此不再赘述。
S707:响应于第一成本参数小于第二成本参数,根据目标Q节点确定所述源节点到所述第二节点的备份路径。
S707与上述S205中介绍的根据目标Q节点确定源节点到第二节点的备份路径方法类似,在此不再赘述,具体请参见前文中S205的相关内容。
基于上述内容可知,在网络故障前后第一节点到第二节点的最短路径不一致时,通过对目标Q节点的第一成本参数和第二成本参数的大小关系进行判断,对第一节点的Q节点能否复用进行验证。从而减少对于目的节点的Q节点的计算,降低确定源节点到目的节点的备份路径的计算成本。
另外,源节点在利用目标Q节点确定源节点到第二节点的备份路径之后,还需要对确定的源节点到目的节点的备份路径进行存储。在一种实现方式中,通过为备份路径设置对应的路径标记,并存储源节点到目的节点的备份路径所对应的路径标记,实现对源节点到目的节点的备份路径的存储。
可选的,路径标记为BPG标记。具体请参见前文对BPG标记的相关描述,以及源节点存储BPG标记的方式的相关介绍,在此不再赘述。
在一种可能的情况中,第一节点的Q节点不满足第二节点复用Q节点的条件。针对此类情况,可选的,对目的节点集合中的目的节点进行更新,重新确定目的节点集合中的第一节点和第二节点,并对第二节点能否复用目的Q节点进行验证。
具体的,对目的节点集合中的目的节点进行迭代处理的过程请参见前文描述,在此不再赘述。
上述通过更新目的节点集合,重新确定第一节点和第二节点的方法,能够通过迭代确定源节点到全部的目的节点的备份路径。在确定源节点到目的节点的备份路径的前提下,提高确定源节点到目的节点的备份路径的速度,降低确定源节点到目的节点的备份路径的计算成本。
相应的,参见图15所示,本申请实施例提供一种确定节点设备之间的备份路径的装置的结构示意图。装置1500包括获取单元1501,第一处理单元1502,第二处理单元1503和第三处理单元1504。
获取单元1501,用于获取源节点对应的目的节点集合,所述目的节点集合包括多个目的节点,所述源节点到所述多个目的节点中的每个目的节点的最短路径发生网络故障。
第一处理单元1502,用于从所述目的节点集合中确定第一节点和第二节点,所述第一节点为最短路径树中父节点不属于所述目的节点集合的目的节点,从所述源节点到所述第二节点的最短路径经过所述第一节点,所述最短路径树包括发生所述网络故障后重新计算得到的从所述源节点分别到所述多个目的节点中的每个目的节点的最短路径。
第二处理单元1503,用于确定发生所述网络故障后与所述第一节点关联的Q节点集合,所述Q节点集合包括一个或多个Q节点,所述一个或多个Q节点中的每个Q节点到所述第一节点的最短路径未发生所述网络故障。
第三处理单元1504,用于响应于第一成本参数小于第二成本参数,根据目标Q节点确定所述源节点到所述第二节点的备份路径,所述目标Q节点是所述Q节点集合中的一个Q节点,所述第一成本参数为所述目标Q节点到所述第一节点的最短路径成本和所述第一节点到所述第二节点的最短路径成本之和,所述第二成本参数为所述目标Q节点到根节点的最短路径成本和所述根节点到所述第二节点的最短路径成本之和,所述根节点是根据所述网络故障的故障类型以及所述源节点确定的,所述第一节点到所述第二节点的最短路径成本根据所述最短路径树确定。
图15所示的确定节点设备之间的备份路径的装置的实现请参见图2所对应的实施例中的相关描述。
此外,参见图16所示,本申请实施例提供另一种确定节点设备之间的备份路径的装置的结构示意图。装置1600包括获取单元1601,第一处理单元1602,第二处理单元1603和第三处理单元1604。
获取单元1601,用于获取源节点对应的目的节点集合,所述目的节点集合包括多个目的节点,所述源节点到所述多个目的节点中的每个目的节点的最短路径发生网络故障;
第一处理单元1602,用于从所述目的节点集合中确定第一节点和第二节点,所述第一节点为最短路径树中父节点不属于所述目的节点集合的目的节点,从所述源节点到所述第二节点的最短路径经过所述第一节点,所述最短路径树包括发生所述网络故障后重新计算得到的从所述源节点分别到所述多个目的节点中的每个目的节点的最短路径;
第二处理单元1603,用于确定发生所述网络故障后与所述第一节点关联的Q节点集合,所述Q节点集合包括一个或多个Q节点,所述一个或多个Q节点中的每个Q节点到所述第一节点的最短路径未发生所述网络故障;
第三处理单元1604,用于响应于发生所述网络故障前所述第一节点到所述第二节点的最短路径,与发生所述网络故障后所述第一节点到所述第二节点的最短路径一致,根据所述Q节点集合确定所述源节点到所述第二节点的备份路径。
图16所示的确定节点设备之间的备份路径的装置的实现请参见图7所对应的实施例中的相关描述。
图17为本申请实施例提供的网络设备的硬件结构示意图。图17所示的网络设备1700可以执行上述实施例的方法的相应步骤。
如图17所示,网络设备1700包括处理器1701、存储器1702、接口1703和总线1704。其中接口1703可以通过无线或有线的方式实现,具体来讲可以是网卡。上述处理器1701、存储器1702和接口1703通过总线1704连接。
接口1703具体可以包括发送器和接收器,用于网络设备与其他网络设备之间收发信息。例如,当网络设备为控制设备时,接口1703用于支持向源节点发送源节点到第一节点的备份路径,和/或源节点到第二节点的备份路径。处理器1701用于执行上述实施例中确定节点设备之间的备份路径的处理。例如,处理器1701用于执行图2中S201-S205的步骤,或者是用于执行图7中S701-S705的步骤。存储器1702包括操作系统17021和应用程序17022,用于存储程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成方法实施例中的处理过程。可选的,存储器1702可以包括只读存储器(英文:Read-only Memory,缩写:ROM)和随机存取存储器(英文:Random Access Memory,缩写:RAM)。其中,ROM包括基本输入/输出系统(英文:Basic Input/Output System,缩写:BIOS)或嵌入式系统;RAM包括应用程序和操作系统。当需要运行网络设备1700时,通过固化在ROM中的BIOS或者嵌入式系统中的bootloader引导系统进行启动,引导网络设备1700进入正常运行状态。在网络设备1700进入正常运行状态后,运行在RAM中的应用程序和操作系统,从而,完成方法实施例中的处理过程。
可以理解的是,图17仅仅示出了网络设备1700的简化设计。在实际应用中,网络设备可以包含任意数量的接口,处理器或者存储器。
图18为本申请实施例的另一种网络设备1800的硬件结构示意图。图18所示的网络设备1800可以执行上述实施例的方法中的相应步骤。
如图18,网络设备1800包括:主控板1810、接口板1830、交换网板1820和接口板1840。主控板1810、接口板1830和1840,以及交换网板1820之间通过系统总线与系统背板相连实现互通。其中,主控板1810用于完成系统管理、设备维护、协议处理等功能。交换网板1820用于完成各接口板(接口板也称为线卡或业务板)之间的数据交换。接口板1830和1840用于提供各种业务接口(例如,POS接口、GE接口、ATM接口等),并实现数据包的转发。
接口板1830可以包括中央处理器1831、转发表项存储器1834、物理接口卡1833和网络处理器1832。其中,中央处理器1831用于对接口板进行控制管理并与主控板上的中央处理器进行通信。转发表项存储器1834用于保存转发表项。物理接口卡1833用于完成流量的接收和发送。网络存储器1832用于根据转发表项控制物理接口卡1833收发流量。
应理解,本发明实施例中接口板1840上的操作与接口板1830的操作一致,为了简洁,不再赘述。应理解,本实施例的网络设备1800可对应于上述方法实施例所具有的功能和/或所实施的各种步骤,在此不再赘述。
此外,需要说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的设备。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述实施例所述的确定节点设备之间的备份路径的方法。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
Claims (25)
1.一种确定节点设备之间的备份路径的方法,所述备份路径用于在发生网络故障后传输所述节点设备之间的报文,其特征在于,所述方法包括:
获取源节点对应的目的节点集合,所述目的节点集合包括多个目的节点,所述源节点到所述多个目的节点中的每个目的节点的最短路径发生网络故障;
从所述目的节点集合中确定第一节点和第二节点,所述第一节点为最短路径树中父节点不属于所述目的节点集合的目的节点,从所述源节点到所述第二节点的最短路径经过所述第一节点,所述最短路径树包括发生所述网络故障后重新计算得到的从所述源节点分别到所述多个目的节点中的每个目的节点的最短路径;
确定发生所述网络故障后与所述第一节点关联的Q节点集合,所述Q节点集合包括一个或多个Q节点,所述一个或多个Q节点中的每个Q节点到所述第一节点的最短路径未发生所述网络故障;
响应于第一成本参数小于第二成本参数,根据目标Q节点确定所述源节点到所述第二节点的备份路径,所述目标Q节点是所述Q节点集合中的一个Q节点,所述第一成本参数为所述目标Q节点到所述第一节点的最短路径成本和所述第一节点到所述第二节点的最短路径成本之和,所述第二成本参数为所述目标Q节点到根节点的最短路径成本和所述根节点到所述第二节点的最短路径成本之和,所述根节点是根据所述网络故障的故障类型以及所述源节点确定的,所述第一节点到所述第二节点的最短路径成本根据所述最短路径树确定。
2.根据权利要求1所述的方法,其特征在于,所述目标Q节点为确定所述源节点到所述第一节点的备份路径的Q节点。
3.根据权利要求2所述的方法,其特征在于,所述根据目标Q节点确定所述源节点到所述第二节点的备份路径,包括:
根据所述源节点到所述第一节点的备份路径确定所述源节点到所述第二节点的备份路径。
4.根据权利要求3所述的方法,其特征在于,所述根据所述源节点到所述第一节点的备份路径确定所述源节点到所述第二节点的备份路径,包括:
将所述源节点到所述第一节点的备份路径确定为所述源节点到所述第二节点的备份路径。
5.根据权利要求1或2所述的方法,其特征在于,所述根据目标Q节点确定所述源节点到所述第二节点的备份路径,包括:
根据所述目标Q节点和与所述第一节点关联的P节点集合,确定所述源节点到所述第二节点的备份路径,所述P节点集合包括一个或多个P节点,所述源节点到一个或多个P节点中的每个P节点的最短路径未发生所述网络故障。
6.根据权利要求1-5任一所述的方法,其特征在于,所述方法由所述源节点执行。
7.根据权利要求6所述的方法,其特征在于,响应于所述源节点到第一节点的备份路径与所述源节点到所述第二节点的备份路径相同,所述方法还包括:
所述源节点存储所述源节点到所述第一节点的备份路径对应的路径标记,以及所述源节点到所述第二节点的备份路径对应的路径标记,其中所述源节点到所述第一节点的备份路径对应的路径标记和所述源节点到所述第二节点的备份路径对应的路径标记相同。
8.根据权利要求1-7任一所述的方法,其特征在于,响应于第一成本参数大于或者等于第二成本参数,所述方法还包括:
将所述第一节点和所述第二节点从所述目的节点集合中删除;
返回执行所述从所述目的节点集合中确定第一节点和第二节点以及后续步骤,直到所述目的节点集合中不包括第二节点为止。
9.根据权利要求1-8任一所述的方法,其特征在于,所述目标Q节点是通过遍历所述Q节点集合中的每个Q节点确定的。
10.根据权利要求1-8任一所述的方法,其特征在于,所述目标Q节点是通过依次从所述Q节点集合中选取Q节点确定的。
11.根据权利要求1-10任一所述的方法,其特征在于,所述网络故障的故障类型为链路故障,所述根节点为所述源节点。
12.根据权利要求1-10任一所述的方法,其特征在于,所述网络故障的故障类型为节点故障,所述根节点为所述源节点的直连邻居节点,所述源节点的直连邻居节点为发生所述节点故障的节点,或者所述源节点到发生所述节点故障的节点的最短路径经过所述源节点的直连邻居节点。
13.一种确定节点设备之间的备份路径的方法,所述备份路径用于在发生网络故障后传输所述节点设备之间的报文,其特征在于,所述方法包括:
获取源节点对应的目的节点集合,所述目的节点集合包括多个目的节点,所述源节点到所述多个目的节点中的每个目的节点的最短路径发生网络故障;
从所述目的节点集合中确定第一节点和第二节点,所述第一节点为最短路径树中父节点不属于所述目的节点集合的目的节点,从所述源节点到所述第二节点的最短路径经过所述第一节点,所述最短路径树包括发生所述网络故障后重新计算得到的从所述源节点分别到所述多个目的节点中的每个目的节点的最短路径;
确定发生所述网络故障后与所述第一节点关联的Q节点集合,所述Q节点集合包括一个或多个Q节点,所述一个或多个Q节点中的每个Q节点到所述第一节点的最短路径未发生所述网络故障;
响应于发生所述网络故障前所述第一节点到所述第二节点的最短路径,与发生所述网络故障后所述第一节点到所述第二节点的最短路径一致,根据所述Q节点集合确定所述源节点到所述第二节点的备份路径。
14.根据权利要求13所述的方法,其特征在于,所述根据所述Q节点集合确定所述源节点到所述第二节点的备份路径,包括:
根据所述源节点到所述第一节点的备份路径确定所述源节点到所述第二节点的备份路径;所述源节点到所述第一节点的备份路径根据所述Q节点集合确定。
15.根据权利要求14所述的方法,其特征在于,所述根据所述源节点到所述第一节点的备份路径确定所述源节点到所述第二节点的备份路径,包括:
将所述源节点到所述第一节点的备份路径确定为所述源节点到所述第二节点的备份路径。
16.根据权利要求13所述的方法,其特征在于,所述根据所述Q节点集合确定所述源节点到所述第二节点的备份路径,包括:
根据所述Q节点集合和与所述第一节点关联的P节点集合,确定所述源节点到所述第二节点的备份路径;所述P节点集合包括一个或多个P节点;所述源节点到所述一个或多个P节点中的每个P节点的最短路径未发生所述网络故障。
17.根据权利要求13至16任一所述的方法,其特征在于,所述方法由所述源节点执行。
18.根据权利要求17所述的方法,其特征在于,响应于所述源节点到所述第一节点的备份路径与所述源节点到所述第二节点的备份路径相同,所述方法还包括:
所述源节点存储所述源节点到所述第一节点的备份路径对应的路径标记,以及所述源节点到所述第二节点的备份路径对应的路径标记,其中所述源节点到所述第一节点的备份路径对应的路径标记和所述源节点到所述第二节点的备份路径对应的路径标记相同。
19.根据权利要求13-18任一所述的方法,其特征在于,响应于发生所述网络故障前所述第一节点到所述第二节点的最短路径,与发生所述网络故障后所述第一节点到所述第二节点的最短路径不一致,所述方法还包括:
响应于第一成本参数小于第二成本参数,根据目标Q节点确定所述源节点到所述第二节点的备份路径,所述目标Q节点是所述Q节点集合中的一个Q节点,所述第一成本参数为所述目标Q节点到所述第一节点的最短路径成本和所述第一节点到所述第二节点的最短路径成本之和,所述第二成本参数为所述目标Q节点到根节点的最短路径成本和所述根节点到所述第二节点的最短路径成本之和,所述根节点是根据所述网络故障的故障类型以及所述源节点确定的,所述第一节点到所述第二节点的最短路径成本根据所述最短路径树确定。
20.一种确定节点设备之间的备份路径的网络设备,其特征在于,所述网络设备包括:处理器和存储器;
所述存储器,用于存储指令或计算机程序;
所述处理器,用于执行所述存储器中的所述指令或计算机程序,以使得所述网络设备执行权利要求1-12任一项所述的确定节点设备之间的备份路径的方法,或者执行权利要求13-19任一项所述的确定节点设备之间的备份路径的方法。
21.根据权利要求20所述的网络设备,其特征在于,所述网络设备为控制设备,所述控制设备用于确定源节点与目的节点之间的备份路径。
22.根据权利要求20所述的网络设备,其特征在于,所述网络设备为源节点,所述源节点用于确定所述源节点与目的节点之间的备份路径。
23.一种确定节点设备之间的备份路径的装置,所述备份路径用于在发生网络故障后传输所述节点设备之间的报文,其特征在于,所述装置包括:
获取单元,用于获取源节点对应的目的节点集合,所述目的节点集合包括多个目的节点,所述源节点到所述多个目的节点中的每个目的节点的最短路径发生网络故障;
第一处理单元,用于从所述目的节点集合中确定第一节点和第二节点,所述第一节点为最短路径树中父节点不属于所述目的节点集合的目的节点,从所述源节点到所述第二节点的最短路径经过所述第一节点,所述最短路径树包括发生所述网络故障后重新计算得到的从所述源节点分别到所述多个目的节点中的每个目的节点的最短路径;
第二处理单元,用于确定发生所述网络故障后与所述第一节点关联的Q节点集合,所述Q节点集合包括一个或多个Q节点,所述一个或多个Q节点中的每个Q节点到所述第一节点的最短路径未发生所述网络故障;
第三处理单元,用于响应于第一成本参数小于第二成本参数,根据目标Q节点确定所述源节点到所述第二节点的备份路径,所述目标Q节点是所述Q节点集合中的一个Q节点,所述第一成本参数为所述目标Q节点到所述第一节点的最短路径成本和所述第一节点到所述第二节点的最短路径成本之和,所述第二成本参数为所述目标Q节点到根节点的最短路径成本和所述根节点到所述第二节点的最短路径成本之和,所述根节点是根据所述网络故障的故障类型以及所述源节点确定的,所述第一节点到所述第二节点的最短路径成本根据所述最短路径树确定。
24.一种确定节点设备之间的备份路径的装置,所述备份路径用于在发生网络故障后传输所述节点设备之间的报文,其特征在于,所述装置包括:
获取单元,用于获取源节点对应的目的节点集合,所述目的节点集合包括多个目的节点,所述源节点到所述多个目的节点中的每个目的节点的最短路径发生网络故障;
第一处理单元,用于从所述目的节点集合中确定第一节点和第二节点,所述第一节点为最短路径树中父节点不属于所述目的节点集合的目的节点,从所述源节点到所述第二节点的最短路径经过所述第一节点,所述最短路径树包括发生所述网络故障后重新计算得到的从所述源节点分别到所述多个目的节点中的每个目的节点的最短路径;
第二处理单元,用于确定发生所述网络故障后与所述第一节点关联的Q节点集合,所述Q节点集合包括一个或多个Q节点,所述一个或多个Q节点中的每个Q节点到所述第一节点的最短路径未发生所述网络故障;
第三处理单元,用于响应于发生所述网络故障前所述第一节点到所述第二节点的最短路径,与发生所述网络故障后所述第一节点到所述第二节点的最短路径一致,根据所述Q节点集合确定所述源节点到所述第二节点的备份路径。
25.一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行以上权利要求1-12任一项所述的确定节点设备之间的备份路径的方法,或者执行权利要求13-19任一项所述的确定节点设备之间的备份路径的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110694342.8A CN115514700A (zh) | 2021-06-22 | 2021-06-22 | 一种确定节点设备之间的备份路径的方法、装置及设备 |
PCT/CN2022/078147 WO2022267513A1 (zh) | 2021-06-22 | 2022-02-28 | 一种确定节点设备之间的备份路径的方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110694342.8A CN115514700A (zh) | 2021-06-22 | 2021-06-22 | 一种确定节点设备之间的备份路径的方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115514700A true CN115514700A (zh) | 2022-12-23 |
Family
ID=84499149
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110694342.8A Pending CN115514700A (zh) | 2021-06-22 | 2021-06-22 | 一种确定节点设备之间的备份路径的方法、装置及设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115514700A (zh) |
WO (1) | WO2022267513A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117128968A (zh) * | 2023-08-15 | 2023-11-28 | 中国南方航空股份有限公司 | 航路数据处理方法、航路搜索方法、装置及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3881504A4 (en) * | 2018-11-13 | 2021-12-01 | Telefonaktiebolaget LM Ericsson (publ) | EFFICIENT PROCESS FOR CALCULATING EMERGENCY ROUTES |
CN111698152B (zh) * | 2019-03-15 | 2021-09-14 | 华为技术有限公司 | 一种故障保护方法、节点及存储介质 |
CN109889441B (zh) * | 2019-03-21 | 2021-05-14 | 新华三技术有限公司 | 一种数据转发方法及装置 |
CN110535763B (zh) * | 2019-07-10 | 2021-12-14 | 中移(杭州)信息技术有限公司 | 一种路由备份方法、装置、服务器及可读存储介质 |
-
2021
- 2021-06-22 CN CN202110694342.8A patent/CN115514700A/zh active Pending
-
2022
- 2022-02-28 WO PCT/CN2022/078147 patent/WO2022267513A1/zh active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117128968A (zh) * | 2023-08-15 | 2023-11-28 | 中国南方航空股份有限公司 | 航路数据处理方法、航路搜索方法、装置及设备 |
CN117128968B (zh) * | 2023-08-15 | 2024-05-07 | 中国南方航空股份有限公司 | 航路数据处理方法、航路搜索方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2022267513A1 (zh) | 2022-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10158558B1 (en) | Segment routing of packets according to a multicast distribution tree in a network | |
US11032197B2 (en) | Reroute detection in segment routing data plane | |
CN112995029B (zh) | 一种传输路径故障的处理方法、装置及系统 | |
EP3414874B1 (en) | Border gateway protocol for communication among software defined network controllers | |
CN113261245B (zh) | 网络链路或节点故障的恢复系统和方法 | |
US8619785B2 (en) | Pre-computing alternate forwarding state in a routed ethernet mesh network | |
CN111698152B (zh) | 一种故障保护方法、节点及存储介质 | |
US20170187606A1 (en) | Communication Among Network Controllers | |
US10110438B2 (en) | Control plane discovery of services | |
CN110417665B (zh) | 一种数据中心多Fabric场景的EVPN组网系统及方法 | |
CN104754025A (zh) | 可编程分布式联网 | |
CN104717081A (zh) | 一种网关功能的实现方法及装置 | |
CN113364680A (zh) | 一种sr策略的发布、接收方法及装置 | |
CN107547374B (zh) | 一种聚合路由处理方法和装置 | |
CN102932255B (zh) | 隧道路径选择的方法及装置 | |
CN117319343A (zh) | 策略路由实现方法、设备及存储介质 | |
US20120051364A1 (en) | Distributed routing according to longest match principle | |
CN115514700A (zh) | 一种确定节点设备之间的备份路径的方法、装置及设备 | |
CN114401274A (zh) | 一种通信线路创建方法、装置、设备及可读存储介质 | |
US20230344751A1 (en) | Route Processing Method, Related Apparatus, and Network System | |
CN105763448A (zh) | 一种报文传输方法和装置 | |
CN112039765B (zh) | 路由信息发送的方法、路由选路的方法和装置 | |
CN111629386B (zh) | 通信方法、系统及设备 | |
CN110830598B (zh) | Bgp会话建立、发送接口地址和别名的方法及网络设备 | |
CN111385195B (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 |