CN111385194A - 一种网络路径收敛的方法以及相关设备 - Google Patents
一种网络路径收敛的方法以及相关设备 Download PDFInfo
- Publication number
- CN111385194A CN111385194A CN201811640864.4A CN201811640864A CN111385194A CN 111385194 A CN111385194 A CN 111385194A CN 201811640864 A CN201811640864 A CN 201811640864A CN 111385194 A CN111385194 A CN 111385194A
- Authority
- CN
- China
- Prior art keywords
- node
- converged
- convergence
- path
- nodes
- 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.)
- Granted
Links
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/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- 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/18—Loop-free operations
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种网络路径收敛的方法以及设备。其中,本申请实施例提供的一种网络路径收敛的方法包括:网络发生故障后,故障邻接设备获取节点收敛关系,节点收敛关系包括待收敛节点之间的收敛顺序,待收敛节点为最优路径会经过故障链路的节点,最优路径为待收敛节点到达目的地节点的路径中,路径开销最小的路径;故障邻接设备对应于每个待收敛节点计算一个用于替代故障链路的实际开销值的调整开销值;根据计算结果和收敛顺序,将待收敛节点对应的调整开销值作为故障链路的实际开销值有序发布,其中,调整开销值用于控制待收敛节点按照收敛顺序进行收敛。
Description
技术领域
本申请涉及通信领域,尤其涉及一种网络路径收敛的方法以及相关设备。
背景技术
网际协议地址(internet protocol,IP)网络中,网络设备节点(简称为节点)通常会部署内部网关协议(interior gateway protocol,IGP),由于所有网络设备节点按照相同的选路算法计算IP数据流的转发路径,因此所有网络设备节点计算的路径都一致,从而可以保证数据流可以从源网络设备节点转发到目的网络设备节点。
IGP协议响应于网络中链路故障,并快速使全网收敛到相同的转发路径上,以减少链路故障对用户业务转发的影响。每个网络设备节点都是独立计算并下发转发表(forwardinformation database,FIB),网络设备节点根据FIB表完成收敛。IGP协议可以通过最短路径优先(shortest path first,SPF)算法计算一条最优转发路径,该最优转发路径经过的所有链路的路径费用(cost)值之和是最小的。在链路故障发生时,全网拓扑可以通过IGP协议通告,保证全网转发路径一致。
但是不同网络设备节点选路计算和转发表下发的时间不能保证完全相同,就会导致在部分局部链路上形成环路。环路是指,如果网络中相邻的两台网络设备节点转发路径不一致,数据流就会在这两台网络设备节点之间互相转发,一直到数据流的生存时间(timeto live,TTL)耗尽,报文丢弃,造成数据流的丢失以及网络连接的中断。
发明内容
本申请实施例提供了一种网络路径收敛的方法以及相关设备,用于通过有序的发布链路的调整费用值,控制网络拓扑中各个网络设备节点的有序收敛,避免不同网络设备节点收敛时间不一致导致环路问题。
本申请的第一方面提供了一种网络路径收敛的方法,包括
网络发生故障后,故障邻接设备获取节点收敛关系,节点收敛关系包含第一收敛顺序,第一收敛顺序为故障时经过故障链路的各最优路径上的节点的收敛顺序;
故障邻接设备对应于节点收敛关系中的每个节点计算一个用于替代故障链路的实际费用值的调整费用值;
根据第一收敛顺序,将每个节点对应的调整费用值作为故障链路的实际费用值有序发布,其中,调整费用值用于控制每个节点按照节点收敛关系进行收敛。
在本申请实施例中,故障邻接设备检测当前网络是否发生故障,该网络故障包括链路故障或网络设备节点的故障,链路故障的链路以及与故障网络设备节点相连的链路也称为故障链路。需要说明的是,除了故障邻接设备检测当前网络是否发生故障以外,还可以为故障邻接设备接收其它网络管理设备对当前网络的检测结果,并根据检测结果确定当前网络是否发生故障,这里的其它网络设备可以包括路由器或服务器等。
当检测当前网络发生故障后,故障邻接设备获取该网络中节点收敛关系,该节点收敛关系包括待收敛节点之间的收敛顺序,待收敛节点为最优路径会经过故障链路的节点,最优路径为待收敛节点到达目的地节点的路径中,路径开销最小的路径。故障邻接设备对应与节点收敛关系中每个待收敛节点,计算与每一个节点对应的调整开销值,该调整开销值用于替代故障链路的实际开销值,节点收敛关系中的每个节点接收到调整开销值后,根据该调整开销值计算转发路径。故障邻接设备在计算了对应于节点收敛关系中各个节点的调整开销值后,根据收敛顺序将每个节点所对应的调整开销值有序发布,节点收敛关系中的各个节点在接收到调整开销值后,该调整开销值的作用与故障链路的实际开销值相同,各个节点使用该调整开销值计算路径并收敛。故障邻接设备通过向节点收敛关系中的各个节点有序发布调整开销值,使得各个节点按照节点收敛关系中的收敛顺序进行收敛,避免了网络环路的发生。
在第一方面的一种可能设计中,故障邻接设备对应于节点收敛关系中的每个待收敛节点计算一个用于替代故障链路的实际开销值的调整开销值,包括:故障邻接设备根据待收敛节点的收敛顺序依次取待收敛节点作为应收敛节点,需要说明的是,当有多个节点的顺位是一致的时候,取同一顺位的多个节点,所取的节点称为应收敛节点。每取一次应收敛节点,故障邻接设备基于应收敛节点计算一次故障链路的调整开销值,该应收敛节点对应的调整开销值称为调整开销值,故障邻接设备在计算完一次调整开销值后,将调整开销值向节点收敛关系中各个待收敛节点发布该调整开销值。向各个待收敛节点发布完成调整开销值后,故障邻接设备接着按照收敛顺序取下一个节点作为应收敛节点,计算对应该节点的调整开销值并发布,直到计算完成收敛顺序中最后一个节点对应的调整开销值并发布。故障邻接设备按照收敛顺序取节点收敛关系中的节点,并使用所取的节点计算调整开销值,使得故障邻接设备是有序地计算调整开销值,以便于后续有序地发布调整开销值,避免了网络环路的发生。
在第一方面的一种可能设计中,根据计算结果和收敛顺序,将待收敛节点对应的调整开销值作为故障链路的实际开销值有序发布,包括:
故障邻接设备每计算一次调整开销值,故障邻接设备确定本次的计算结果与上次的计算结果是否相同,在确定本次的计算结果与上次的计算结果不同后,将本次计算得到的调整开销值发布。
在第一方面的一种可能设计中,收敛顺序为在网络故障发生后,故障邻接设备获取节点收敛关系,其中,该节点收敛关系既可以是故障邻接设备根据网络拓扑中各个节点的相关信息在网络故障发生前生成并存储在该故障邻接设备中,也可以在网络故障发生后,根据相关信息生成的。该节点收敛关系生成的设备既可以是故障邻接设备,也可以是其它管理设备,例如服务器或路由器等,此处不作限定。
在网络故障发生后,故障邻接设备获取的节点收敛关系中,收敛顺序按节点收敛关系中待收敛节点的路径开销差升序排列,其中,路径开销差为节点的最优路径与次优路径之间的路径开销差值,最优路径为待收敛节点经过故障链路到达目的地节点路径开销最小的路径,次优路径为待收敛节点未经过故障链路到达目的地节点的路径开销最小的路径。在网络故障发生的情况下,节点收敛关系中收敛顺序依照路径开销差升序排列,使得故障邻接设备是有序地计算调整开销值,以便于后续有序地发布调整开销值,避免了网络环路的发生。
在第一方面的一种可能设计中,故障链路的调整开销值为大于应收敛节点的次优路径的费用值。在网络故障的情况下,由于节点收敛关系中各个节点在接收到调整开销值后,会使用该调整开销值作为当前节点的最优路径的路径开销值。调整开销值在大于应收敛节点的次优路径的费用值的情况下,应收敛节点的原次优路径的路径开销值低于原最优路径的路径开销值,根据最短路径优先原则(shortest path first,SPF),应收敛节点会使用路径开销值最低的路径进行转发,此时,应收敛节点会使用原次优路径进行转发而不再使用原最优路径,保障了应收敛节点可以完成收敛。
在第一方面的一种可能设计中,故障邻接设备基于应收敛节点计算一次故障链路的调整开销值,具体包括:
采用如下方法计算故障链路的调整开销值:
Rbase=COST(base)+Rn(m,diff)+x,
其中,Rbase表示故障链路的调整开销值,COST(base)表示故障链路的实际开销值,Rn(m,diff)表示节点n的路径开销差,节点n为应收敛节点,x为大于0的正整数,且x小于或等于Rn(spf)-Rn+1(spf),其中,Rn(spf)表示节点n的最优路径的路径开销值,Rn+1(spf)表示节点n+1的最优路径的路径开销值,节点n+1为收敛顺序中应收敛节点的下一节点。当x大于应收敛节点与收敛顺序中相对于应收敛节点的下一节点之间最优路径路径费用值的差值时,可能存在不应收敛的节点依然进行收敛的情况,因此,对调整费用值计算公式中的x进行了限定,避免无序收敛的发生。
在第一方面的一种可能设计中,节点收敛关系还包含第二收敛顺序,第二收敛顺序为网络故障恢复时,节点收敛关系中每个节点的收敛顺序。
在第一方面的一种可能设计中,网络发生故障之后,方法还包括:故障邻接设备检测网络故障是否恢复;若恢复,则故障邻接设备获取节点收敛关系中的第二收敛顺序;故障邻接设备对应于第二收敛顺序中的每个节点计算一个用于替代故障链路的实际费用值的调整费用值,故障恢复后计算的调整费用值,称为第二调整费用值;根据节点收敛关系中的第二收敛顺序,将每个节点对应的第二调整费用值作为故障链路的实际费用值有序发布。
网络故障发生后,故障邻接设备检测当前网络故障是否恢复,该网络故障是否恢复包括故障的链路或故障的网络设备节点可以正常通信,需要说明的是,除了故障邻接设备检测当当前网络故障是否恢复以外,还可以为故障邻接设备接收其它网络管理设备对当前网络的检测结果,并根据检测结果确定当前网络故障是否恢复,这里的其它网络设备可以包括路由器或服务器等。
当检测当前故障恢复后,故障邻接设备获取该网络中节点收敛关系,该节点收敛关系包含了发生网络故障时经过故障链路的各条最优路径上节点的收敛顺序,将故障恢复后的收敛顺序称为第二收敛顺序。故障邻接设备对应与节点收敛关系中每个节点,计算与每一个节点对应的调整费用值,该调整费用值用于替代故障链路的实际费用值,节点收敛关系中的每个节点接收到调整费用值后,根据该调整费用值计算转发路径。故障邻接设备在计算了对应于节点收敛关系中各个节点的调整费用值后,根据节点收敛关系中各个节点的收敛顺序将每个节点所对应的调整费用值有序发布,节点收敛关系中的各个节点在接收到调整费用值后,该调整费用值的作用与故障链路的实际费用值相同,各个节点使用该调整费用值计算路径并收敛。故障邻接设备通过向节点收敛关系中的各个节点有序发布调整费用值,使得各个节点按照一定顺序进行收敛,避免了网络环路的发生。
在第一方面的一种可能设计中,第二收敛顺序为网络故障恢复后,故障邻接设备获取节点收敛关系中的收敛顺序,其中,该第二收敛顺序既可以是故障邻接设备根据网络拓扑中各个节点的相关信息在网络故障恢复前次生成并存储在该故障邻接设备中,也可以在网络故障发生后,根据相关信息生成的。该第二收敛顺序生成的设备既可以是故障邻接设备,也可以是其它管理设备,例如服务器或路由器等,此处不作限定。
在网络故障恢复后,故障邻接设备获取的第二收敛顺序中,第二收敛顺序按节点收敛关系中每个节点的路径费用差降序排列,其中,路径费用差为节点的最优路径与次优路径之间的路径费用差值,最优路径为节点经过故障链路到达目的地节点路径费用最小的路径,次优路径为节点未经过故障链路到达目的地节点的路径费用最小的路径。在网络故障恢复的情况下,节点收敛关系中第二收敛顺序依照路径费用差降序排列,使得故障邻接设备是有序地计算调整费用值,以便于后续有序地发布调整费用值,避免了网络环路的发生。
在第一方面的一种可能设计中,故障链路的第二调整费用值为小于应收敛节点的次优路径的费用值。需要说明的是,在网络故障恢复后,进行路径收敛前,节点收敛关系中各个节点是按照原次优路径进行转发,此时对于各个节点来说,当前的最优路径为原次优路径,这里的原指的是网络故障发生前。由于节点收敛关系中各个节点在接收到调整费用值后,会使用该调整费用值作为当前节点的最优路径的路径费用值。调整费用值在小于应收敛节点的次优路径的费用值的情况下,应收敛节点的原最优路径的路径费用值低于原次优路径的路径费用值,根据最短路径优先原则(shortest path first,SPF),应收敛节点会使用路径费用值最低的路径进行转发,此时,应收敛节点会使用原最优路径进行转发而不再使用原次优路径,保障了应收敛节点可以完成收敛。
在第一方面的一种可能设计中,故障邻接设备基于应收敛节点计算一次故障链路的调整开销值,具体包括:
采用如下方法计算故障链路的调整开销值:
Rbase=COST(base)+Rn(m,diff)-x,
其中,Rbase表示故障链路的调整开销值,COST(base)表示故障链路的实际开销值,Rn(m,diff)表示节点n的路径开销差,节点n为应收敛节点,x为大于0的正整数,且x小于或等于Rn(spf)-Rn+1(spf),其中,Rn(spf)表示节点n的最优路径的路径开销值,Rn+1(spf)表示节点n+1的最优路径的路径开销值,节点n+1为收敛顺序中应收敛节点的下一节点。当x大于应收敛节点与收敛顺序中相对于应收敛节点的下一节点之间最优路径路径费用值的差值时,可能存在不应收敛的节点依然进行收敛的情况,因此,对调整费用值计算公式中的x进行了限定,避免无序收敛的发生。
在第一方面的一种可能设计中,故障邻接设备根据待收敛节点的收敛顺序依次取待收敛节点作为应收敛节点,包括:故障邻接设备取收敛顺序中排在第一的节点作为应收敛节点,在使用该应收敛节点计算对应的调整开销值并有序发送,每隔预设时长后按收敛顺序取下一节点作为应收敛节点,直至取到最后一个节点并使用该最后一个节点作为应收敛节点计算对应的的调整开销值并有序发送。需要说明的是,该预设时长应大于或等于该网络拓扑中节点完成网络路径收敛时长最大值,收敛顺序包括收敛顺序或收敛顺序,当收敛顺序为收敛顺序时,对应的调整开销值为调整开销值,当收敛顺序为收敛顺序时,对应的调整开销值为调整开销值。通过设定预设时长,自动化地从节点收敛关系中获取应收敛节点,由于该预设时长大于或等于该网络拓扑中节点完成网络路径收敛时长最大值,保证了在发送下一节点所对应的调整开销值之前,网络拓扑中所有的节点均完成了使用本次调整开销值进行网络路径收敛的操作,提升了网络路径收敛的自动化程度。
在第一方面的一种可能设计中,故障邻接设备根据待收敛节点的收敛顺序依次取待收敛节点作为应收敛节点,包括:
故障邻接设备取收敛顺序中排在第一的节点作为应收敛节点,在使用该应收敛节点计算对应的调整开销值并有序发送;在接收到该应收敛节点返回的收敛完成响应后,按收敛顺序取下一节点作为应收敛节点,直至取到最后一个节点并使用该最后一个节点作为应收敛节点计算对应的的调整开销值并有序发送,收敛顺序包括收敛顺序或收敛顺序,当收敛顺序为收敛顺序时,对应的调整开销值为调整开销值,当收敛顺序为收敛顺序时,对应的调整开销值为调整开销值。在接收应收敛节点的完成收敛响应后取下一节点作为应收敛节点直至最后一个节点,在保证节点收敛关系中各个节点均完成收敛的同时,提升了网络路径收敛的效率。
本申请的第二方面提供了一种故障邻接设备,包括:
获取单元,用于网络发生故障后,获取节点收敛关系,节点收敛关系包括待收敛节点之间的收敛顺序,待收敛节点为最优路径会经过故障链路的节点,最优路径为待收敛节点到达目的地节点的路径中,路径开销最小的路径;
计算单元,用于对应于每个待收敛节点计算一个用于替代故障链路的实际开销值的调整开销值;
发布单元,用于根据计算单元的计算结果和收敛顺序,将待收敛节点对应的调整开销值作为故障链路的实际开销值有序发布,其中,调整开销值用于控制待收敛节点按照节点收敛关系进行收敛。
在本申请的第二方面中,故障邻接设备的组成单元还可以执行前述第一方面以及各种可能的实现方式中所描述的步骤,详见前述对第一方面以及各种可能的实现方式中的说明。
本申请的第三方面提供了一种故障邻接设备,包括:接收器、发射器、处理器、存储器以及总线系统;
其中,存储器用于存储程序和指令;
接收器与发射器用于在处理器的控制下接收或发送信息;
处理器用于执行存储器中的程序;
总线系统用于连接存储器、收发器以及处理器,以使存储器、收发器以及处理器进行通信;
其中,处理器用于调用存储器中的程序指令,执行前述第一方面以及各种可能的实现方式中所描述的步骤,详见前述对第一方面以及各种可能的实现方式中的说明。
在本申请的第四方面中,本申请提供了一种芯片系统,该芯片系统包括处理器,用于支持网络设备实现上述方面中所涉及的功能,例如,例如发送或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,芯片系统还包括存储器,存储器,用于保存网络设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
在本申请的第五方面中,提供了一种系统,该系统包括上述故障邻接设备。
在本申请的第六方面中,提供了一种计算机可读存储介质,用于存储计算机程序,该计算机程序包括用于执行第一方面可能实现方式中的方法的指令。
在本申请的第七方面中,提供了一种计算机程序产品,计算机程序产品包括:计算机程序代码,当计算机程序代码在计算机上运行时,使得计算机执行上述第一方面可能实现方式中的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
通过有序的发布链路的调整费用值,控制网络拓扑中各个网络设备节点的有序收敛,避免不同网络设备节点收敛时间不一致导致环路问题。
附图说明
图1a是本申请实施例的网络路径收敛的方法的一个实施环境网络拓扑示意图;
图1b为是本申请实施例中故障邻接设备的一个结构示意图;
图1c为是本申请实施例中故障邻接设备的另一个结构示意图;
图2为本申请实施例中网络路径收敛的方法的一种实施例示意图;
图3为本申请实施例提供的一种应用场景示意图;
图4为本申请实施例提供的另一种应用场景示意图;
图5为本申请实施例提供的一种故障邻接设备的结构示意图;
图6为本申请实施例提供的另一种故障邻接设备的结构示意图。
具体实施方式
本申请实施例提供了一种网络路径收敛的方法、相关设备以及系统,用于IP网络中,通过有序的发布链路的路径开销值,控制网络拓扑中各个网络设备节点的有序收敛,避免不同网络设备节点收敛时间不一致导致环路问题。
在介绍本实施例之前,首先介绍本实施例中可能出现的几个概念。应理解的是,以下的概念解释可能会因为本实施例的具体情况有所限制,但并不代表本申请仅能局限于该具体情况,以下概念的解释伴随不同实施例的具体情况可能也会存在差异。
为了方便理解本申请的各个实施例,首先介绍本申请中可能出现的几个概念。应理解的是,以下的概念解释可能会因为本申请的具体情况有所限制,但并不代表本申请仅能局限于该具体情况,以下概念的解释伴随不同实施例的具体情况可能也会存在差异。
一、互联网协议地址(internet protocol address,IP),缩写为IP地址(IPaddress),是分配给用户上网使用的网际协议(internet protocol,IP)的设备的数字标签。常见的IP地址分为IPv4与IPv6两大类,但是也有其他不常用的小分类。
二、内部网关协议(interior gateway protocol,IGP)是在一个自治网络内网关(主机和路由器)间交换路由信息的协议。路由信息能用于网际协议(IP)或者其它网络协议来说明路由传送是如何进行的。互联网被分成多个域或多个自治系统。一个域(domain)是一组主机和使用相同路由选择协议的网络设备节点集合,并由单一机构管理。IGP协议包括路由信息协议(routing information protocol,RIP)、开放式最短路径优先协议(openshortest path first,OSPF)、中间系统到中间系统路由协议(intermediate system-to-intermediate system,IS-IS)内部网关路由协议(interior gateway routing protocol,IGRP)以及增强内部网关路由协议(enhanced interior gateway routing protocol,EIGRP)等,其中,RIP、IGRP、BGP是距离矢量协议,OSPF和ISIS是数据链路状态协议。
三、OSPF是数据链路状态协议,采用的最短路径优先算法(shortest path first,SPF)计算转发路径,SPF算法又称为最小生成树算法(dijkstar)。SPF算法是OSPF路由协议的基础。在OSPF路由协议中,最短路径树(shortest path tree,SPT)的树干长度,即OSPF路由器至每一个目的地路由器的距离,称为OSPF的开销值(cost),SPF使用cost作为度量值,cost被分配到网络设备节点的每个接口,默认情况下到某个特定目的地的路径开销是这台网络设备节点到目的地之间的所有链路出接口的开销之和。为了生成路由表(forwardinginformation base,FIB),网络设备节点运行SPF最短路径优先算法构建最短路径树,以本网络设备节点自己作为路由树的根。SPF算法计算出到网络上每一个网络设备节点的开销最低的路径,网络设备节点将这些路径的路由存入自己的FIB表。
四、环路,环路是指在网络中多台网络设备节点之间,数据流量从一台网络设备节点发出后,又会从其他网络设备节点转发回来,在多台网络设备节点之间循环转发,一直到IP报文(message)头中生存时间(time to live,TTL)减到0,将报文丢弃的现象。举例说明:如果网络设备节点A上的路由的下一跳指向网络设备节点B,网络设备节点B上相同目的地址路由的下一跳指向网络设备节点A,则在相邻的两台网络设备节点A<-->B之间就会形成最简单的环路。
在IP网络中,通常会部署IGP协议用于动态响应网络中链路或节点故障,并快速使全网收敛(convergence)到相同的转发路径上,以减少对用户业务转发的影响。IGP协议通过SPF算法计算一条最优路径,该最优路径经过的所有链路的cost值之和是最小的。在链路故障发生时,虽然全网拓扑可以通过IGP协议通告,保证全网转发路径一致。但是网络中每个IGP节点都是独立计算并下发FIB表,不同设备收敛下表完成时间不一致,就会导致在部分局部链路上形成转发环路,造成网络中断。
五、快速重路由(Fast Reroute,FRR)旨在当网络中链路或者节点失效后,为这些重要的节点或链路提供备份保护,实现快速重路由,减少链路或节点失效时对流量的影响,使流量实现快速恢复。
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
除非上下文另有特定清楚的描述,本申请中的元件和组件,数量既可以单个的形式存在,也可以多个的形式存在,本申请并不对此进行限定。本申请中的步骤虽然用标号进行了排列,但并不用于限定步骤的先后次序,除非明确说明了步骤的次序或者某步骤的执行需要其他步骤作为基础,否则步骤的相对次序是可以调整的。可以理解,本文中所使用的术语“和/或”涉及且涵盖相关联的所列项目中的一者或一者以上的任何和所有可能的组合。
本申请提出的网络路径收敛的方法既可以部署于与不稳定链路相邻的网络设备节点中,也可以部署于该网络拓扑中的所有网络设备节点中,还可以部署于该网络拓扑中的一个集中管理装置中,此处不作限定。其中,该集中管理装置可以是独立于IGP域的一个设备,该设备可以路由器或交换机,也可以是运行在该设备上的一个应用程序,还可以是集成在该设备上的功能模块等。集中管理装置可以是IGP域中的一个路由器,也可以是集成在该路由器上的功能模块。集中管理装置可以是软件定义网络(software defined network,SDN)中的控制器或网管设备,也可以是该设备上的一个应用程序,还可以是集成在该设备上的功能模块等。部署有该网络路径收敛的方法的网络设备节点可以与该网络拓扑中的所有网络设备节点建立IGP监控协议会话,以监控各个网络设备节点之间IGP的运行情况,当某个网络设备节点之间的链路发生故障时,与该故障链路相邻且部署有该网络路径收敛的方法的网络设备节点可以根据IGP监控协议会话,进行故障诊断,并由该故障链路相邻网络设备节点来运行本发明实施例中的网络路径收敛方法。本发明实施例中将与故障链路相邻的网络设备节点称为故障邻接设备。其中,故障链路是指不可用的网络链路,可以包括链路本身发生故障,或与链路相连的下一跳节点发生故障,也可以包括人为设置的链路或节点不可用。
请参阅图1a,图1a是本申请实施例的网络路径收敛的方法的一个实施环境网络拓扑示意图。
图1a所示实施环境可用于实现本申请任意一实施例或实现方式的网络路径收敛的方法,包括网络设备节点R0至网络设备节点R1、R2、R3、R4、R5、R6、R7、R8以及R9,网络设备节点R0与网络设备节点R9中各个节点可通过无线或有线网络实现连接。无线网络实现连接的方式可以是WiFi(wireless-fidelity)链路、蓝牙基本速率(basic rate,BR)/增强数据率(enhanced data rate,EDR)链路、低功耗蓝牙(bluetooth low energy,BLE)链路、近场通信(near field communication,NFC)链路等近场通信方式,还可以是移动网络链路等远程通信方式。其中,WiFi链路用于大数据量高速传输及上网传输,存在功耗较高的特点,举例说明,WiFi链路还可以分为:WiFi站点(station)链路,WiFi点对点(peer to peer,P2P)链路和WiFi接入点(access point,AP)链路,其中,WiFi Station链路采用连接路由器上网的模式,WiFi P2P链路采用WiFi直连的模式,WiFi AP链路采用WiFi建立AP的模式。蓝牙BR/EDR链路即经典蓝牙,用于低速短距离长时间连接,存在功耗较低的特点,蓝牙BLE链路用于低速短距离短时间连接,存在功耗很低的特点,NFC链路用于接近式安全传输。移动网络链路用于远程数据传输,但是需要付费给运营商。
网络设备节点R0至网络设备节点R9中各个节点为具有独立地址和具有传送或接收数据功能的对应网络相连的设备,可包括个人计算机、工作站、服务器、交换机、路由器、或其他网络设备。各个网络设备节点通过通信线路连接,形成一定的几何关系,即形成对应网络的拓扑结构。网络设备节点R0至网络设备节点R9中各个节点还可以为对应网络的控制器,可包括台式机、笔记本电脑、个人数字助理、智能电话、平板电脑等终端设备中的至少一种。该对应网络可以为二级或三级网络结构,此处不作限定。
图1a中所示的网络设备节点间的数值表示该段链路的开销值。
网络设备节点的数目根据实际应用场景决定,不对实际可应用的网络设备节点的数目进行限定,本申请中出现的节点是指网络中的网络设备节点。本申请实施例中以图1a的网络设备节点R0至网络设备节点R9中10个网络设备节点进行说明。
图1a所示为由网络设备节点R0至网络设备节点R9组成的一个网络拓扑示意图,该网络拓扑应用于IGP协议时,可称为IGP域。IGP域即为自治系统,一个自治系统就是处于一个管理机构控制之下的网络设备节点和网络群组,该管理机构也可以视为一个网络设备节点。它可以是一个网络设备节点直接连接到一个局域网(local area network,LAN)上,同时也连接到互联网(internet)上;它可以是一个由企业骨干网互连的多个局域网。在一个自治系统中的所有网络设备节点相互连接,运行相同的路由协议,同时分配同一个自治系统编号。IGP域内,网络设备节点网络设备节点器之间建立连接,即网络设备节点与网络设备节点之间建立IGP会话,通过IGP会话传输信息。换言之,IGP域内,网络设备节点与网络设备节点之间采用相同的IGP进行信息传输,例如采用OSPF协议进行信息传输。
假设数据流flow1经过路径网络设备节点R0发往目的地网络设备节点R9,数据流flow2经过路径网络设备节点R5发往目的地网络设备节点R9。根据图1a中所示的各链路的开销值以及SPF算法可知,数据流flow1经过如下路径网络设备节点R0、网络设备节点R1、网络设备节点R2、网络设备节点R3到达目的地网络设备节点R9。数据流flow2经过如下路径网络设备节点R5、网络设备节点R4、网络设备节点R1、网络设备节点R2、网络设备节点R3到达目的地网络设备节点R9。当网络设备节点R1至网络设备节点R2之间的链路,简称R1-R2链路发生故障时,与该故障链路相邻的网络设备节点R1或R2可以通过IGP监控协议会话感知链路故障,并触发使用SPF算法重新计算转发最优路径,并通过相关路由协议(如:IGP路由协议)发布R1-R2链路故障通告,该故障通告用于指示该IGP域中的所有网络设备节点重新计算转发最优路径,其它网络设备节点在重新计算了转发最优路径后,收敛至计算所得的转发最优路径。该故障通告通常为R1-R2链路cost值。以网络设备节点R1发布R1-R2链路故障通告为例在收敛过程中,本申请实施例,由网络设备节点R1(即故障邻接设备)通过计算和有序发布故障链路R1-R2的cost值,来控制网络设备节点R4,网络设备节点R5的收敛顺序,避免环路的产生。
具体的控制方法如下:R1-R2链路正常的情况下,网络设备节点R1发布R1-R2链路cost值,此时,各个网络设备节点根据该cost值使用SPF算法计算转发最优路径(SPF路径),R0网络设备节点上的SPF路径为R0、R1、R2、R3、R9,R1网络设备节点上的SPF路径为R1、R2、R3、R9;R4网络设备节点上的SPF路径为R4、R1、R2、R3、R9;R5网络设备节点上的SPF路径为R5、R4、R1、R2、R3、R9。
当R1-R2链路发生故障时,最优路径经过故障链路的网络设备节点需要进行收敛,这些网络设备节点成为待收敛节点。待收敛节点可通过R空间来表示。R空间为一个网络设备节点集合,R空间中的所有网络设备节点到达目的网络设备节点的最优路径都会经过故障链路,例如R{R0、R1、R4、R5}。
故障发生后,与R1-R2链路相邻的网络设备节点R1(即邻接故障节点)获取节点收敛关系。该节点收敛关系包括待收敛节点和待收敛节点间的收敛顺序。节点收敛关系可以是预先获取并存储在故障邻接节点中的,也可以是要收敛时,再获取的。节点收敛关系中的收敛顺序以收敛过程中不产生环路为原则来生成。例如,R1-R2链路故障时,可按R5、R4、R0、R1的收敛顺序进行收敛。
网络设备节点R1按照收敛顺序有序的发布R1-R2链路的cost值。其中,R1-R2链路的cost值是基于收敛顺序计算得到的(本发明实施例中将该计算得到的cost值称为故障链路的调整cost值),并不是R1-R2链路的实际cost值。以收敛顺序是R5、R4、R0、R1为例,网络设备节点R1发布R1-R2链路cost值为1901,此时,R空间中的各个节点根据该cost值计算SPF路径,网络设备节点R1上的SPF路径为R1、R2、R3、R9;网络设备节点R4上的SPF路径为R4、R1、R2、R3、R9;网络设备节点R5上的SPF路径为R5、R6、R7、R2、R3、R9,只有网络设备节点R5的SPF路径发生变化,网络设备节点R5的下一跳从网络设备节点R4变为R6,发生收敛。
当网络设备节点R5发生收敛完成后,即收敛至新的SPF路径后,网络设备节点R1发布R1-R2链路cost值为2101,此时,R空间中的各个节点根据该cost值计算SPF路径,网络设备节点R1上的SPF路径为R1、R2、R3、R9;网络设备节点R4上的SPF路径为R4、R5、R6、R7、R2、R3、R9;网络设备节点R5上的SPF路径为R5、R6、R7、R2、R3、R9,只有网络设备节点R4的SPF路径发生变化,网络设备节点R4的下一跳从网络设备节点R1变为R5,发生收敛。网络设备节点R4收敛完成后,由于网络设备节点R0与网络设备节点R1收敛不会产生环路,因此R1不需要再发布新的R1-R2链路cost值,直接发布R1-R2链路的实际链路状态,完成该IGP域的网络路径收敛。需要说明的是,该cost值根据实际情况决定,1901与2101仅为举例说明,不对实际cost值进行限定。
应用本申请中的网络路径收敛的方法可由故障邻接设备来执行,本申请中提出的故障邻接设备如图1b所示,图1b为是本申请实施例中故障邻接设备的一个结构示意图。故障邻接设备中包含有协议处理设备以及线卡处理设备,其中,协议处理设备以及线卡处理设备可以是独立于网络设备节点的硬件设备,例如路由器等,也可以集成于路由器中的硬件设备,例如是主控板等。一台协议处理设备可以与一台线卡处理设备建立连接,也可以根据实际需求与多台线卡处理设备建立连接以提升协议处理设备的收发能力,如图1c所示,图1c为是本申请实施例中故障邻接设备的另一个结构示意图,图1c中协议处理设备与线卡处理设备1至线卡处理设备n建立连接,n为大于1的正整数。
协议处理设备中包含有:有序收敛运算模块、SPF运算模块、网络拓扑库、有序收敛库以及路由协议处理模块,线卡处理设备中包含有:转发表适配模块、报文分发模块以及转发模块。
下面以执行有序发布cost值的过程为例,说明故障邻接设备中各个模块的功能:转发模块通过网络芯片(networking processor)以及媒体介入控制层芯片(media accesscontrol,MAC)接收IGP域中各个网络设备节点的IP数据报文,线卡处理设备中的报文分发模块将该IP数据报文转发至协议处理设备中的路由协议处理模块,路由协议处理模块对该IP数据报文进行循环冗余校验(cyclic redundancy check,CRC),当CRC校验无误后,路由协议处理模块对该IP数据报文进行解析并将解析结果存储至网络拓扑库中。
有序收敛运算模块获取网络拓扑库中来自各个网络设备节点的IP数据报文解析结果,生成节点收敛关系并将该节点收敛关系存入有序收敛库中,路由协议处理模块获取有序收敛库中存储的节点收敛关系,路由协议处理模块根据获取得到的节点收敛关系,生成对应网络设备节点的链路cost值,通过线卡处理设备中的报文分发模块以及转发模块向IGP域中的各个网络设备节点发送该链路cost值。
其中,上述各个模块既可以是运行于硬件设备中的软件模块,也可以是独立的硬件设备,例如,线卡处理设备中的转发模块可以为NP处理芯片以及MAC芯片,也可以是运行于NP处理芯片以及MAC芯片中的应用程序,此处不作限定。
下面将结合实施例和附图介绍本申请中网络路径收敛的方法,本申请所提供的网络路径收敛的方法包括以下实施例,具体地:
参阅图2,图2为本申请实施例中网络路径收敛的方法的一种实施例示意图,本实施例可以应用在网络故障发生后的链路故障的路径收敛流程中,也可应用网络故障发生后的链路故障恢复的路径收敛流程中。本申请实施例中网络路径收敛的方法的一种实施例包括:
201、故障邻接节点获取节点收敛关系。
本实施例中,故障邻接设备获取节点收敛关系。该节点收敛关系包括该故障邻接设备所部署的网络拓扑中的R空间内的各节点(即待收敛节点)和R空间内的各节点间的收敛顺序。该收敛顺序可根据R空间内各个节点所对应的路径开销差排序生成。生成节点收敛关系的方式如下,为了便于理解,请参阅表1,表1为网络拓扑中所有网络节点设备的示意表。表1中展示R0、R1、R4以及R5这4个网络节点设备的相关信息,Rn(spf)为网络节点设备Rn的SPF路径费用值,该SPF路径开销值为网络节点设备Rn(下面简称节点Rn)到达目的地网络节点设备R9(下面简称目的地节点R9)的最优路径的路径开销值,Rm是该最优路径上的故障邻接设备(即该设备下一跳为故障链路)。n和m可能为0、1、4、以及5中任一数字。Rn(m,sub-spf)为节点Rn到达目的地节点R9且不经过故障邻接设备Rm的次优路径开销值,由Rm设备使用SPF算法计算获得。Rn(m,diff)为节点Rn到达目的地节点R9且经过故障邻接节点Rm最优路径的路径开销与次优路径Rn(m,sub-spf)的路径开销差。故障邻接设备依据Rn(m,diff)的大小顺序对R0、R1、R4以及R5这4个网络节点设备进行排序,生成节点收敛关系。
在本申请的一个示例中,步骤201获取节点收敛关系之前,本申请实施例提供的网络路径收敛的方法还可以包括如下步骤:
(1)、获取网络状态信息。
网络状态信息包括有该网络节点设备与其它网络节点设备之间的链路可用情况。包括:当故障邻接设备部署于该网络拓扑中的一个网络节点设备时,该故障邻接设备获取该网络节点设备的网络状态信息,包括有该网络节点设备与其它网络节点设备之间的链路连接情况。该故障邻接设备既可以部署于该网络拓扑中的一个网络节点设备,也可以部署于该网络拓扑中所有网络节点设备。当故障邻接设备以独立硬件设备的形式部署于该网络拓扑时,该故障邻接设备获取该网络拓扑中所有网络节点设备之间的所有链路连接情况,此处不作限定。
(2)、判断网络状态信息是否满足路径收敛条件。
获取网络状态信息后可进行如下操作,当该网络状态信息为链路通信中断情况时,即该链路两端端口检测不到数据的发送或接收时,可判断当前该链路处于链路故障状态,符合链路故障收敛条件。当该链路处于故障状态后,故障邻接设备检测到该链路两端端口数据的发送或接收时,即该网络状态信息处于链路通信正常情况时,可判断当前该链路处于链路故障恢复状态,符合链路故障恢复收敛条件。
当判断为链路故障收敛条件时,收敛关系中的收敛顺序按Rn(m,diff)的升序排列,具体为:R5、R4、R0、R1;当判断为链路故障恢复收敛条件时,收敛顺序按Rn(m,diff)降序排列,具体为R1、R0、R4、R5。
需要说明的是,当任意多个网络节点设备的Rn(m,diff)出现相等情况时,节点收敛关系中Rn(m,diff)相等的网络节点设备的顺位相等,也可以任意选择其发送的顺序。需要说明的是,表1中的Rn(spf)、Rn(m,sub-spf)以及Rn(m,diff)所对应的数值为仅供举例说明使用,不作限定。
表1
网络节点设备 | Rn(spf) | Rn(m,sub-spf) | Rn(m,diff) |
R0 | 1200 | 2500 | 1300 |
R1 | 1100 | 2400 | 1300 |
R4 | 1200 | 2300 | 1100 |
R5 | 1300 | 2200 | 900 |
202、故障邻接设备根据节点收敛关系计算故障链路的调整开销值。
本实施例中,故障邻接设备按节点收敛关系中的收敛顺序依次取节点收敛关系中的待收敛节点作为应收敛节点。下面以取节点n作为应收敛节点为例进行说明。
获取应收敛节点的路径开销差,即获取Rn(m,diff)。故障邻接设备还获取故障链路的实际开销值,命名为COST(base)。根据Rn(m,diff)以及COST(base)计算与应收敛节点Rn相对应的调整开销值,各个网络设备节点使用接收得到的调整开销值,代替原先故障链路的实际开销值计算转发路径。下面分别介绍链路故障状态下计算调整开销值以及链路故障恢复状态下计算调整开销值。
(1)、链路故障状态:链路故障状态情况下,故障邻接设备获取的收敛顺序按各待收敛节点的路径开销差升序排列。
由于网络设备节点的转发路径会选择最优路径进行转发,即选择路径开销最低的路径,因此,当链路故障状态时,R空间内的各个网络设备节点需要有序收敛至新的SPF网络路径中。R空间内各个网络设备节点(即待收敛节点)计算新的SPF网络路径需要使用故障链路的开销值。本发明实施例计算故障链路的调整开销值来替代故障链路的实际开销值,若故障邻接设备将计算得到的调整开销值作为故障链路的实际开销值下发至R空间内各个网络设备节点后,R空间内各个网络设备节点可使用该调整开销值进行SPF运算,生成新的网络路径并收敛至该网络路径中。
链路发生链路故障前,R空间内的Rn节点的最优路径的路径开销为Rn(spf),其中,Rn(spf)=COST(base)+k。
COST(base)为故障链路的实际开销值,k为Rn节点到达目的地节点R9除故障链路的路径开销以外的其它路径开销。
Rn(m,sub-spf)为Rn节点的次优路径开销值,Rn节点的最优路径与次优路径的路径开销差为Rn(m,diff)。
Rn(m,sub-spf)=COST(base)+Rn(m,diff)+k;
当链路故障状态时,故障邻接设备将计算得到的新的故障链路的路径开销值即新的COST(base)下发至R空间内的各个网络设备节点中时,R空间内的各个网络设备节点根据该新的COST(base)进行SPF运算,生成新的Rn(spf),称为Rn’(spf),将该新的COST(base)称为Rbase。当故障邻接设备为Rbase赋值为COST(base)+Rn(n,diff)+x时,x为大于0的正整数,此时节点An最优路径的路径开销值为Rn’(spf)为:
Rn’(spf)=Rbase+k=COST(base)+Rn(m,diff)+x+k;
Rn’(spf)小于Rn(m,sub-spf),因此,此时Rn节点的最优路径为链路故障状态前的次优路径,此时Rn节点会收敛至该次优路径中。
具体为:节点收敛关系为{R5、R4、R0、R1}。由于当前节点收敛关系中第一个网络设备节点为R5,因此首先计算R5所对应的调整开销值。首先获取R5的路径开销差,即R5(m,diff)=900,其次获取链路链路的实际开销值,即COST(base)。X取值为1,COST(base)+k取值为1000,计算节点R5所对应的调整开销值为:
Rbase=COST(base)+k+R5(m,diff)+1;
Rbase=1000+900+1=1901。
(2)、网络故障恢复状态:网络故障恢复状态情况下,收敛关系中的收敛顺序依照Rn(m,diff)的降序排列。此时,故障邻接设备可以先判断链路故障恢复后的最优路径的路径开销值(Rm(spf))是否小于故障状态下的最优路径的路径开销值(Rm’(spf)),如果小于或等于则进入下述有序收敛步骤,若大于,则发布故障链路的实际开销值。即:
若Rm(spf)>Rm’(spf);
则Rbase=COST(base)。
若Rm(spf)≤Rm’(spf);
则进入如下步骤:
故障链路发生故障前,R空间内的Rn节点的最优路径经过故障链路,其最优路径的路径开销用Rn(spf),故障前Rn节点的次优路径为当前最优路径Rn”,该路径的路径开销为Rn”(spf)。两个路径的路径开销差为Rn(m,diff)。具体的,
Rn”(spf)=Rn(m,sub-spf);
Rn”(spf)=COST(base)+Rn(m,diff)+k;
当故障链路为链路故障恢复状态时,故障邻接设备将新的故障链路的路径开销值即新的COST(base)下发至R空间内的各个网络设备节点中时,R空间内的各个网络设备节点根据该新的COST(base)进行SPF运算,生成新的Rn(spf),将该新的COST(base)称为Rbase。当故障邻接设备为Rbase赋值为COST(base)+Rn(m,diff)-x时,x为大于0的正整数,此时节点Rn最优路径的路径开销值为Rn”’(spf)为:
Rn”’(spf)=Rbase+k=COST(base)+Rn(m,diff)-x+k;
Rn”’(spf)小于Rn”(spf),因此,此时Rn节点的最优路径为链路故障状态前的最优路径,此时Rn节点会收敛至该最优路径中。
具体为:{R1、R0、R4、R5}。由于当前节点收敛关系中第一个网络设备节点为R1,因此首先计算R1所对应的调整开销值。首先获取R1的路径开销差,即R1(m,diff),其次获取链路故障状态的故障链路的实际路径开销值,即COST(base)。X取值为1,COST(base)+k取值为1000,计算节点R1所对应的调整开销值为:
Rbase=COST(base)+R1(m,diff)-1;
Rbase=1000+1300-1=2499。
需要说明的是,故障邻接设备既可以将节点收敛关系中所有网络设备节点所对应的调整开销值计算完成后,再进入步骤203;也可以计算完成节点收敛关系中的一个网络设备节点所对应的调整开销值后,进入步骤203,在完成步骤203后,继续计算节点收敛关系中下一个网络设备节点所对应的调整开销值,直到节点收敛关系中所有的网络设备节点所对应的调整开销值均计算完成并发送后,结束操作,此处不作限定。
203、故障邻接设备发布故障链路的调整开销值。
本实施例中,故障邻接设备在计算完成调整开销值后,可向R空间中的网络设备节点依照节点收敛关系的顺序发送调整开销值。发送的方法包括:
(1)、广播:
链路故障状态时,故障邻接设备依照节点收敛关系的顺序:R5、R4、R0、R1发送调整开销值,首先,向网络设备节点R5、R4、R0以及R1发送对应于R5的调整开销值,其次等待一定的预设时长后,向网络设备节点R5、R4、R0以及R1发送对应于R4的调整开销值,再等待一定的预设时长后,向网络设备节点R5、R4、R0以及R1发送对应于R0的调整开销值,再等待一定的预设时长后,向网络设备节点R5、R4、R0以及R1发送对应于R1的调整开销值。故障邻接设备向网络设备节点R5、R4、R0以及R1发送对应于R1的调整开销值完成后,结束操作。该预设时长由R空间中各个网络设备节点完成网络路径收敛的最长时间决定,一般可以设置为500毫秒。
链路故障恢复状态时,故障邻接设备依照节点收敛关系的顺序:R1、R0、R4、R5发送调整开销值,具体发送的方法与链路故障状态时类似,此处不再赘述。
(2)、单播:
链路故障状态时,故障邻接设备依照节点收敛关系的顺序:R5、R4、R0、R1发送调整开销值,首先,向R5发送R5所对应的调整开销值,当故障邻接设备接收得到R5完成网络路径收敛的指令时,向R4发送R4所对应的调整开销值,当故障邻接设备接收得到R4完成网络路径收敛的指令时,向R0发送R0所对应的调整开销值,当故障邻接设备接收得到R0完成网络路径收敛的指令时,向R1发送R1所对应的调整开销值。故障邻接设备向网络设备节点R1发送对应于R1的调整开销值完成后,结束操作。
链路故障恢复状态时,故障邻接设备依照节点收敛关系的顺序:R1、R0、R4、R5发送调整开销值,具体发送的方法与链路故障状态时类似,此处不再赘述。
本申请实施例中,提供了一种网络路径收敛的方法,故障邻接设备可以通过对网络拓扑中各个网络设备节点的路径开销差进行排序生成节点收敛关系,获取该节点收敛关系,根据该节点收敛关系生成与该节点收敛关系中各个网络设备节点所对应的调整开销值,发送调整开销值使得节点收敛关系中的各个网络设备节点按照一定的顺序有序的收敛至新的网络路径中,避免了环路的产生。
在图1以及图2对应的实施例的基础上,接下来针对图3至图4所示的网络路径收敛的方法的应用场景进行距离说明,接下来以网络设备节点R1作为故障邻接设备,R1-R2链路为故障链路进行示例说明。
如图3所示,图3为本申请实施例提供的一种应用场景示意图。在网络故障情况下,本申请实施例提供的网络路径收敛的方法的一种应用场景包括如下过程:
S1、切换至备份路径;
步骤S1中,故障邻接设备R1(下面简称R1节点),中的转发模块将原先通过R1-R2链路传输的数据,通过备份路径进行传输,以保证数据的正常转发,该备份路径可以包括快速重路由(fast reroute,FRR)。转发模块执行FRR切换操作。
S2、计算R5的调整开销值;
步骤S2中,根据如表1所示的节点收敛关系,由于当前是网络故障的情况,因此调整开销值使用公式Rbase=COST(base)+Rn(m,diff)+x进行计算。
首先取节点R5作为应收敛节点,计算对应于R5的调整开销值。由表1可知:R5(m,diff)为900,cost(1,2)为1000,此时取x为1进行计算。R5的调整开销值为1901。
节点R1在计算得到对应于R5的调整开销值后,发送该调整开销值至节点收敛关系中各个节点,R1、R0、R4以及R5节点在接收到该调整开销值后,使用该调整开销值更新各自节点设备中的网络拓扑库并通过SPF运算模块计算新的转发路径,由于调整开销值为1901,因此,只有在R5中计算的新的转发路径为最优路径,R5节点的下一跳从R4节点切换至R6节点,完成R5节点的网络路径收敛。
S3、计算R4的调整开销值;
步骤S3中,等待一定的预设时长或接收到节点收敛关系中节点收敛完成响应后,R1节点取节点收敛关系中R4节点作为应收敛节点,计算对应于R4的调整开销值。由表1可知:R4(m,diff)为1100,cost(1,2)为1000,此时取x为1进行计算。R4的调整开销值为2101。
节点R1在计算得到对应于R4的调整开销值后,发送该调整开销值至节点收敛关系中各个节点,R1、R0、R4以及R5节点在接收到该调整开销值后,使用该调整开销值更新各自节点设备中的网络拓扑库并通过SPF运算模块计算新的转发路径,由于调整开销值为2101,因此,只有在R4中计算的新的转发路径为最优路径,R4节点的下一跳从R1节点切换至R5节点,完成R4节点的网络路径收敛。
S4、计算R1的调整开销值。
步骤S4中,等待一定的预设时长或接收到节点收敛关系中节点收敛完成响应后,R1节点取节点收敛关系中R1节点作为应收敛节点,计算对应于R0的调整开销值。由表1可知:R1(m,diff)为1300,cost(1,2)为1000,此时取x为1进行计算。R0的调整开销值为2301。
节点R1在计算得到对应于R1的调整开销值后,发送该调整开销值至节点收敛关系中各个节点,R1、R0、R4以及R5节点在接收到该调整开销值后,使用该调整开销值更新各自节点设备中的网络拓扑库并通过SPF运算模块计算新的转发路径,由于调整开销值为2301,R0节点下一跳节点仅可以为R1节点,因此,只有在R1中计算的新的转发路径为最优路径,R1节点的下一跳从R2节点切换至R4节点,完成R1节点的网络路径收敛。至此完成节点收敛队列中所有节点的可序收敛。
本申请实施例中,在网络故障之后,通过有序的发布链路的调整开销值,控制网络拓扑中各个网络设备节点的有序收敛,避免不同网络设备节点收敛时间不一致导致环路问题。
如图4所示,图4为本申请实施例提供的另一种应用场景示意图。在网络故障恢复情况下,本申请实施例提供的网络路径收敛的方法的一种应用场景包括如下过程:
A1、检测是否满足收敛条件;
步骤A1中,当前网络为网络故障恢复的情况下,即故障链路R1-R2链路恢复为正常链路的情况下,R1节点检测当前网络是否满足收敛条件,具体检测步骤如下,计算R1-R2链路是否满足如下条件:[cost(1,2)+R2(spf)]是否大于R1(spf),其中cost(1,2)为R1-R2链路的路径开销值,R1(spf)为R1节点的当前最优路径开销值,R2(spf)为R2节点的当前最优路径开销值,若大于则满足收敛条件,则直接使用cost(1,2)作为调整开销值,此时不会造成网络环路,若小于等于,则进入步骤A2。
A2、计算R1的调整开销值;
步骤A2中,根据如表1所示的节点收敛关系,由于当前是网络故障恢复的情况,因此调整开销值使用公式Rbase=COST(base)+Rn(m,diff)-x进行计算。
首先取节点R1作为应收敛节点,计算对应于R1的调整开销值。由表1可知:R1(m,diff)为1300,cost(1,2)为1000,此时取x为1进行计算。R1的调整开销值为2299。
节点R1在计算得到对应于R1的调整开销值后,发送该调整开销值至节点收敛关系中各个节点,R1、R0、R4以及R5节点在接收到该调整开销值后,使用该调整开销值更新各自节点设备中的网络拓扑库并通过SPF运算模块计算新的转发路径,由于调整开销值为2299,因此,只有在R1中计算的新的转发路径为最优路径,R1节点的下一跳从R4节点切换至R2节点,完成R1节点的网络路径收敛。
A3、计算R4的调整开销值;
步骤A3中,等待一定的预设时长或接收到节点收敛关系中节点收敛完成响应后,R1节点取节点收敛关系中R4节点作为应收敛节点,计算对应于R4的调整开销值。由表1可知:R4(m,diff)为1100,cost(1,2)为1000,此时取x为1进行计算。R4的调整开销值为2099。
节点R1在计算得到对应于R4的调整开销值后,发送该调整开销值至节点收敛关系中各个节点,R1、R0、R4以及R5节点在接收到该调整开销值后,使用该调整开销值更新各自节点设备中的网络拓扑库并通过SPF运算模块计算新的转发路径,由于调整开销值为2099,因此,只有在R4中计算的新的转发路径为最优路径,R4节点的下一跳从R5节点切换至R1节点,完成R4节点的网络路径收敛。
A4、计算R5的调整开销值。
步骤A4中,等待一定的预设时长或接收到节点收敛关系中节点收敛完成响应后,取节点R5作为应收敛节点,计算对应于R5的调整开销值。由表1可知:R5(m,diff)为900,cost(1,2)为1000,此时取x为1进行计算。R5的调整开销值为1899。
节点R1在计算得到对应于R5的调整开销值后,发送该调整开销值至节点收敛关系中各个节点,R1、R0、R4以及R5节点在接收到该调整开销值后,使用该调整开销值更新各自节点设备中的网络拓扑库并通过SPF运算模块计算新的转发路径,由于调整开销值为1899,因此,只有在R5中计算的新的转发路径为最优路径,R5节点的下一跳从R6节点切换至R4节点,完成R5节点的网络路径收敛。至此完成节点收敛队列中所有节点的可序收敛。
本申请实施例中,在网络故障恢复之后,通过有序的发布链路的调整开销值,控制网络拓扑中各个网络设备节点的有序收敛,避免不同网络设备节点收敛时间不一致导致环路问题。
本申请实施例提供的故障邻接设备,请参阅图5所示,故障邻接设备500包括:
接收器501、发射器502、处理器503和存储器504(其中故障邻接设备500中的处理器503的数量可以一个或多个,图5中以一个处理器为例)。在本申请的一些实施例中,接收器501、发射器502、处理器503和存储器504可通过总线或其它方式连接,其中,图5中以通过总线连接为例。
存储器504可以包括只读存储器和随机存取存储器,并向处理器503提供指令和数据。存储器504的一部分还可以包括非易失性随机存取存储器(英文全称:non-volatilerandom access memory,英文缩写:NVRAM)。存储器504存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
处理器503控制网络设备的操作,处理器503还可以称为中央处理单元(英文全称:Central Processing Unit,英文简称:CPU)。具体的应用中,网络设备的各个组件通过总线系统耦合在一起,其中总线系统除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都称为总线系统。
上述本申请实施例揭示的方法可以应用于处理器503中,或者由处理器503实现。处理器503可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器503中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器503可以是通用处理器、数字信号处理器(英文全称:digital signal processing,英文缩写:DSP)、专用集成电路(英文全称:application specific integrated circuit,英文缩写:ASIC)、现场可编程门阵列(英文全称:field-programmable gate array,英文缩写:FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器504,处理器503读取存储器504中的信息,结合其硬件完成上述方法的步骤。
接收器501可用于接收输入的数字或字符信息,以及产生与网络设备的相关设置以及功能控制有关的信号输入,发射器502可包括显示屏等显示设备,发射器502可用于通过外接接口输出数字或字符信息。
本申请实施例中,处理器503,用于执行图1(a)至图4提供的网络路径收敛的方法。
应理解,本申请实施例中提及的处理器可以是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DR RAM)。
需要说明的是,当处理器为通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)集成在处理器中。应注意,本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
接下来,请参阅图6所示,本申请实施例还提供一种故障邻接设备600,包括:
获取单元601,用于网络发生故障后,故障邻接设备600通过获取单元601获取节点收敛关系,节点收敛关系包括待收敛节点之间的收敛顺序,待收敛节点为最优路径会经过故障链路的节点,最优路径为待收敛节点到达目的地节点的路径中,路径开销最小的路径;
计算单元602,用于对应于每个待收敛节点计算一个用于替代故障链路的实际开销值的调整开销值;
发布单元603,用于根据计算单元602的计算结果和收敛顺序,将待收敛节点对应的调整开销值作为故障链路的实际开销值有序发布,其中,调整开销值用于控制待收敛节点按照节点收敛关系进行收敛。
在本申请实施例中,故障邻接设备600检测当前网络是否发生故障,该网络故障包括链路故障或网络设备节点的故障,链路故障的链路以及与故障网络设备节点相连的链路也称为故障链路。需要说明的是,除了故障邻接设备600检测当前网络是否发生故障以外,还可以为故障邻接设备600接收其它网络管理设备对当前网络的检测结果,并根据检测结果确定当前网络是否发生故障,这里的其它网络设备可以包括路由器或服务器等。
当检测当前网络发生故障后,故障邻接设备600通过获取单元601获取该网络中节点收敛关系,该节点收敛关系包括待收敛节点之间的收敛顺序,待收敛节点为最优路径会经过故障链路的节点,最优路径为待收敛节点到达目的地节点的路径中,路径开销最小的路径。故障邻接设备600对应与节点收敛关系中每个待收敛节点,通过计算单元602计算与每一个节点对应的调整开销值,该调整开销值用于替代故障链路的实际开销值,节点收敛关系中的每个节点接收到调整开销值后,根据该调整开销值计算转发路径。故障邻接设备600在计算了对应于节点收敛关系中各个节点的调整开销值后,根据收敛顺序将每个节点所对应的调整开销值通过发布单元603有序发布,节点收敛关系中的各个节点在接收到调整开销值后,该调整开销值的作用与故障链路的实际开销值相同,各个节点使用该调整开销值计算路径并收敛。故障邻接设备600通过向节点收敛关系中的各个节点有序发布调整开销值,使得各个节点按照节点收敛关系中的收敛顺序进行收敛,避免了网络环路的发生。
在本申请的一些实施例中,故障邻接设备600包括:
计算单元602,具体用于根据待收敛节点的收敛顺序依次取取待收敛节点作为应收敛节点,每取一次应收敛节点,故障邻接设备600基于应收敛节点计算一次故障链路的调整开销值。
本申请实施例中,故障邻接设备600对应于节点收敛关系中的每个待收敛节点通过计算一个用于替代故障链路的实际开销值的调整开销值,包括:故障邻接设备600根据根据待收敛节点的收敛顺序依次取待收敛节点作为应收敛节点,需要说明的是,当有多个节点的顺位是一致的时候,获取单元601取同一顺位的多个节点,所取的节点称为应收敛节点。获取单元601每取一次应收敛节点,故障邻接设备600基于应收敛节点使用计算单元602计算一次故障链路的调整开销值,该应收敛节点对应的调整开销值称为调整开销值,故障邻接设备600使用计算单元602在计算完一次调整开销值后,将调整开销值通过发布单元603向节点收敛关系中各个节点发布该调整开销值。向各个节点发布完成调整开销值后,故障邻接设备600接着使用获取单元601按照收敛顺序取下一个节点作为应收敛节点,使用计算单元602计算对应该节点的调整开销值并通过发布单元603发布,直到计算完成收敛顺序中最后一个节点对应的调整开销值并发布。故障邻接设备600按照收敛顺序通过获取单元601取节点收敛关系中的节点,并使用所取的节点通过计算单元602计算调整开销值,使得故障邻接设备600是有序地使用计算单元602计算调整开销值,以便于后续有序地通过发布单元603发布调整开销值,避免了网络环路的发生。
在本申请的一些实施例中,发布单元603具体用于在计算单元602每计算一次调整开销值后,确定本次的计算结果与上次的计算结果是否相同,在确定本次的计算结果与上次的计算结果不同后,将本次计算得到的调整开销值发布。
本申请实施例中,发布单元603在计算单元602每计算一次调整开销值后,确定本次的计算结果与上次计算单元602的计算结果是否相同,在确定本次的计算结果与上次的计算结果不同后,将本次计算得到的调整开销值发布。
在本申请的一些实施例中,在网络故障后,若故障链路处于故障状态,获取单元601获取的节点收敛关系中的收敛顺序按待收敛节点的路径开销差升序排列,其中,路径开销差为待收敛节点的最优路径与次优路径之间的路径开销的差值,次优路径为待收敛节点未经过故障链路到达目的地节点的路径中,路径开销最小的路径。
在本申请的一些实施例中,故障链路的调整开销值为大于应收敛节点的次优路径的开销值。
本申请实施例中,收敛顺序为在网络故障发生后,故障邻接设备600通过获取单元601获取节点收敛关系,其中,该节点收敛关系既可以是故障邻接设备600根据网络拓扑中各个节点的相关信息在网络故障发生前生成并存储在该故障邻接设备600中,也可以在网络故障发生后,根据相关信息生成的。该节点收敛关系生成的设备既可以是故障邻接设备600,也可以是其它管理设备,例如服务器或路由器等,此处不作限定。
在网络故障发生后,故障邻接设备600通过获取单元601获取的节点收敛关系中,收敛顺序按节点收敛关系中每个节点的路径开销差升序排列,其中,路径开销差为节点的最优路径与次优路径之间的路径开销差值,最优路径为节点经过故障链路到达目的地节点路径开销最小的路径,次优路径为节点未经过故障链路到达目的地节点的路径开销最小的路径。在网络故障发生的情况下,节点收敛关系中收敛顺序依照路径开销差升序排列,使得故障邻接设备600是有序地计算调整开销值,以便于后续有序地发布调整开销值,避免了网络环路的发生。
在本申请的一些实施例中,故障链路的调整开销值大于应收敛节点的次优路径的开销值。
本申请实施例中,故障链路的调整开销值为大于应收敛节点的次优路径的开销值。在网络故障的情况下,由于节点收敛关系中各个节点在接收到调整开销值后,会使用该调整开销值作为当前节点的最优路径的路径开销值。调整开销值在大于应收敛节点的次优路径的开销值的情况下,应收敛节点的原次优路径的路径开销值低于原最优路径的路径开销值,根据最短路径优先原则(shortest path first,SPF),应收敛节点会使用路径开销值最低的路径进行转发,此时,应收敛节点会使用原次优路径进行转发而不再使用原最优路径,保障了应收敛节点可以完成收敛。
在本申请的一些实施例中,故障邻接设备600包括:
计算单元602,具体用于采用如下方法计算故障链路的调整开销值:
Rbase=COST(base)+Rn(m,diff)+x,
其中,Rbase表示故障链路的调整开销值,COST(base)表示应收敛节点的最优路径的路径开销值,Rn(m,diff)表示应收敛节点n的路径开销差,应收敛节点n为经过故障链路的各最优路径上的节点中的一个节点,x为大于0的正整数,且x小于或等于Rn(spf)-Rn+1(spf),其中,Rn(spf)表示节点n的最优路径的路径开销值,Rn+1(spf)表示节点n+1的最优路径的路径开销值,节点n+1为收敛顺序中应收敛节点的下一节点。
在本申请的一些实施例中,节点收敛关系还包含收敛顺序,收敛顺序为故障恢复时,每个节点的收敛顺序。
在本申请的一些实施例中,故障邻接设备600还包括:
获取单元601,具体用于在网络故障后,若故障链路处于故障恢复状态,获取的节点收敛关系中的收敛顺序按待收敛节点的路径开销差降序排列。
本申请实施例中,网络故障发生后,故障邻接设备600检测当前故障链路是否处于故障恢复状态,该故障链路是否恢复包括故障的链路或故障的网络设备节点可以正常通信,需要说明的是,除了故障邻接设备600检测当前故障链路是否恢复以外,还可以为故障邻接设备600接收其它网络管理设备对当前故障链路的检测结果,并根据检测结果确定当前故障链路是否恢复,这里的其它网络设备可以包括路由器或服务器等。
当检测当前故障链路处于故障恢复状态后,故障邻接设备600获取该网络中节点收敛关系,该节点收敛关系包括待收敛节点之间的收敛顺序,待收敛节点为最优路径会经过故障链路的节点,最优路径为待收敛节点到达目的地节点的路径中,路径开销最小的路径。故障邻接设备600对应与节点收敛关系中每个待收敛节点,计算与每一个节点对应的调整开销值,该调整开销值用于替代故障链路的实际开销值,节点收敛关系中的待收敛节点接收到调整开销值后,根据该调整开销值计算转发路径。故障邻接设备600在计算了对应于节点收敛关系中待收敛节点的调整开销值后,根据收敛顺序将待收敛节点所对应的调整开销值有序发布,节点收敛关系中的各个待收敛节点在接收到调整开销值后,该调整开销值的作用与故障链路的实际开销值相同,各个待收敛节点使用该调整开销值计算路径并收敛。故障邻接设备600通过向节点收敛关系中的各个待收敛节点有序发布调整开销值,使得各个待收敛节点按照节点收敛关系中的收敛顺序进行收敛,避免了网络环路的发生。
在本申请的一些实施例中,收敛顺序按节点收敛关系中每个节点的路径开销差降序排列。
本申请实施例中,收敛顺序为网络故障恢复后,故障邻接设备600通过获取单元601获取节点收敛关系中的收敛顺序,其中,该收敛顺序既可以是故障邻接设备600根据网络拓扑中各个节点的相关信息在网络故障恢复前次生成并存储在该故障邻接设备600中,也可以在网络故障发生后,根据相关信息生成的。该收敛顺序生成的设备既可以是故障邻接设备600,也可以是其它管理设备,例如服务器或路由器等,此处不作限定。
在网络故障恢复后,故障邻接设备600通过获取单元601获取的收敛顺序中,收敛顺序按节点收敛关系中每个节点的路径开销差降序排列,其中,路径开销差为节点的最优路径与次优路径之间的路径开销差值,最优路径为节点经过故障链路到达目的地节点路径开销最小的路径,次优路径为节点未经过故障链路到达目的地节点的路径开销最小的路径。在网络故障恢复的情况下,节点收敛关系中收敛顺序依照路径开销差降序排列,使得故障邻接设备600是有序地计算调整开销值,以便于后续有序地发布调整开销值,避免了网络环路的发生。
在本申请的一些实施例中,故障链路的调整开销值为小于应收敛节点的次优路径的路径开销值。
本申请实施例中,故障链路的调整开销值为小于应收敛节点的次优路径的路径开销值。需要说明的是,在故障链路处于故障恢复状态后,进行路径收敛前,节点收敛关系中各个节点是按照原次优路径进行转发,此时对于各个节点来说,当前的最优路径为原次优路径,这里的原指的是网络故障发生前。由于节点收敛关系中各个节点在接收到调整开销值后,会使用该调整开销值作为当前节点的最优路径的路径开销值。调整开销值在小于应收敛节点的次优路径的费用值的情况下,应收敛节点的原最优路径的路径开销值低于原次优路径的路径开销值,根据最短路径优先原则(shortest path first,SPF),应收敛节点会使用路径开销值最低的路径进行转发,此时,应收敛节点会使用原最优路径进行转发而不再使用原次优路径,保障了应收敛节点可以完成收敛。
在本申请的一些实施例中,计算单元602,采用如下方法计算故障链路的调整开销值:
Rbase=COST(base)+Rn(m,diff)-x,
其中,Rbase表示故障链路的调整开销值,COST(base)表示故障链路的实际开销值,Rn(m,diff)表示节点n的路径开销差,节点n为应收敛节点,x为大于0的正整数,且x小于或等于Rn(spf)-Rn+1(spf),其中,Rn(spf)表示节点n的最优路径的路径开销值,Rn+1(spf)表示节点n+1的最优路径的路径开销值,节点n+1为收敛顺序中应收敛节点的下一节点。当x大于应收敛节点与收敛顺序中相对于应收敛节点的下一节点之间最优路径路径开销值的差值时,可能存在不应收敛的节点依然进行收敛的情况,因此,对调整开销值计算公式中的x进行了限定,避免无序收敛的发生。
在本申请的一些实施例中,故障邻接设备600包括:
获取单元601,具体用于故障邻接设备600通过获取单元601取节点收敛关系中收敛顺序排在的节点作为应收敛节点,每隔预设时长后按收敛顺序取下一节点作为应收敛节点,直至最后一个节点。
本申请实施例中,故障邻接设备600将每个节点对应的调整开销值作为故障链路的实际开销值通过发布单元603有序发布,包括:故障邻接设备600通过获取单元601取收敛顺序中排在的节点作为应收敛节点,在使用该应收敛节点通过计算单元602计算对应的调整开销值并通过发布单元603有序发送,每隔预设时长后按收敛顺序通过获取单元601取下一节点作为应收敛节点,直至取到最后一个节点并使用该最后一个节点作为应收敛节点计算对应的的调整开销值并有序发送。需要说明的是,该预设时长应大于或等于该网络拓扑中节点完成网络路径收敛时长最大值,收敛顺序包括收敛顺序或收敛顺序,当收敛顺序为收敛顺序时,对应的调整开销值为调整开销值,当收敛顺序为收敛顺序时,对应的调整开销值为调整开销值。通过设定预设时长,自动化地从节点收敛关系中获取应收敛节点,由于该预设时长大于或等于该网络拓扑中节点完成网络路径收敛时长最大值,保证了在发送下一节点所对应的调整开销值之前,网络拓扑中所有的节点均完成了使用本次调整开销值进行网络路径收敛的操作,提升了网络路径收敛的自动化程度。
在本申请的一些实施例中,故障邻接设备600包括:
获取单元601,具体用于故障邻接设备600通过获取单元601取节点收敛关系中收敛顺序排在的节点作为应收敛节点;
在接收到应收敛节点返回的收敛完成响应后,按收敛顺序取下一节点作为应收敛节点,直至最后一个节点。
本申请实施例中,故障邻接设备600通过获取单元601取收敛顺序中排在的节点作为应收敛节点,在使用该应收敛节点通过计算单元602计算对应的调整开销值并有序发送;在接收到该应收敛节点返回的收敛完成响应后,按收敛顺序通过获取单元601取下一节点作为应收敛节点,直至取到最后一个节点并使用该最后一个节点作为应收敛节点计算对应的的调整开销值并有序发送,收敛顺序包括收敛顺序或收敛顺序,当收敛顺序为收敛顺序时,对应的调整开销值为调整开销值,当收敛顺序为收敛顺序时,对应的调整开销值为调整开销值。在接收应收敛节点的完成收敛响应后取下一节点作为应收敛节点直至最后一个节点,在保证节点收敛关系中各个节点均完成收敛的同时,提升了网络路径收敛的效率。
应理解,获取单元601用于执行上述实施例中故障邻接设备的获取操作,计算单元602用于执行上述实施例中故障邻接设备计算调整开销值的操作,发布单元用于执行上述实施例中故障邻接设备发布调整开销值的操作。
例如,在一种实现方式中,获取单元601用于执行图2中步骤201中获取节点收敛关系的相关获取操作,包括有获取网络状态信息,节点的路径开销值等;计算单元602用于执行图2中步骤202中计算调整开销值的相关计算操作,包括有计算节点的路径开销差,计算节点的调整开销值等;发布单元603用于执行图2中步骤203中发布计算单元602计算得到的调整开销值至网络拓扑的节点。
又例如,在再一种实现方式中,获取单元601用于执行图3中步骤S2、步骤S3和步骤S4中R1节点顺序获取节点收敛关系中节点的相关操作;计算单元602用于执行图3中步骤S2、步骤S3和步骤S4中R1节点根据获取单元601获取得到节点的相关信息,计算调整开销值的相关操作;发布单元602用于执行图3中步骤S2、步骤S3和步骤S4中R1节点发布调整开销值的相关操作。
又例如,在再一种实现方式中,获取单元601用于执行图4中步骤A2、步骤A3和步骤A4中R1节点顺序获取节点收敛关系中节点的相关操作;计算单元602用于执行图4中步骤A2、步骤A3和步骤A4中R1节点根据获取单元601获取得到节点的相关信息,计算调整开销值的相关操作;发布单元602用于执行图4中步骤A2、步骤A3和步骤A4中R1节点发布调整开销值的相关操作。
作为本实施例的另一种形式,提供一种计算机可读存储介质,其上存储有指令,该指令被执行时执行上述述图2或图3所示方法实施例中网络路径收敛的方法。
作为本实施例的另一种形式,提供一种包含指令的计算机程序产品,该指令被执行时执行上述图2或图3所示方法实施例中网络路径收敛的方法。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块。在本申请中出现的对步骤进行的命名或者编号,并不意味着必须按照命名或者编号所指示的时间/逻辑先后顺序执行方法流程中的步骤,已经命名或者编号的流程步骤可以根据要实现的技术目的变更执行次序,只要能达到相同或者相类似的技术效果即可。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (25)
1.一种网络路径收敛的方法,其特征在于,包括:
网络发生故障后,故障邻接设备获取节点收敛关系,所述节点收敛关系包括待收敛节点之间的收敛顺序,所述待收敛节点为最优路径会经过故障链路的节点,所述最优路径为所述待收敛节点到达目的地节点的路径中,路径开销最小的路径;
所述故障邻接设备对应于每个待收敛节点计算一个用于替代故障链路的实际开销值的调整开销值;
根据计算结果和所述收敛顺序,将所述待收敛节点对应的所述调整开销值作为所述故障链路的所述实际开销值有序发布,其中,所述调整开销值用于控制所述待收敛节点按照所述收敛顺序进行收敛。
2.根据权利要求1所述的方法,其特征在于,所述故障邻接设备对应于每个待收敛节点计算一个用于替代故障链路的实际开销值的调整开销值,包括:
所述故障邻接设备根据所述待收敛节点的收敛顺序依次取所述待收敛节点作为应收敛节点,每取一次所述应收敛节点,所述故障邻接设备基于所述应收敛节点计算一次所述故障链路的调整开销值。
3.根据权利要求2所述的方法,其特征在于,所述根据计算结果和所述收敛顺序,将所述待收敛节点对应的所述调整开销值作为所述故障链路的所述实际开销值有序发布,包括:
每计算一次所述调整开销值,所述故障邻接设备确定本次的计算结果与上次的计算结果是否相同,在确定本次的计算结果与上次的计算结果不同后,将本次计算得到的所述调整开销值发布。
4.根据权利要求2或3所述的方法,其特征在于,在所述网络故障后,若所述故障链路处于故障状态,获取的所述节点收敛关系中的收敛顺序按所述待收敛节点的路径开销差升序排列,其中,所述路径开销差为所述待收敛节点的最优路径与次优路径之间的路径开销的差值,所述次优路径为所述待收敛节点未经过所述故障链路到达所述目的地节点的路径中,路径开销最小的路径。
5.根据权利要求4所述的方法,其特征在于,所述故障链路的所述调整开销值大于所述应收敛节点的所述次优路径的开销值。
6.根据权利要求4或5所述的方法,其特征在于,所述故障邻接设备基于所述应收敛节点计算一次所述故障链路的所述调整开销值,具体包括:
采用如下方法计算所述故障链路的所述调整开销值:
Rbase=COST(base)+Rn(m,diff)+x,
其中,所述Rbase表示所述故障链路的调整开销值,所述COST(base)表示所述故障链路的实际开销值,所述Rn(m,diff)表示所述节点n的路径开销差,所述节点n为所述应收敛节点,所述x为大于0的正整数,且所述x小于或等于Rn(spf)-Rn+1(spf),其中,Rn(spf)表示所述节点n的最优路径的路径开销值,Rn+1(spf)表示节点n+1的最优路径的路径开销值,所述节点n+1为所述收敛顺序中所述应收敛节点的下一节点。
7.根据权利要求2至6中任一项所述的方法,其特征在于,在所述网络故障后,若所述故障链路处于故障恢复状态,获取的所述节点收敛关系中的收敛顺序按所述待收敛节点的路径开销差降序排列。
8.根据权利要求7所述的方法,其特征在于,所述故障链路的所述调整开销值使得所述应收敛节点的最优路径的路径开销值小于所述应收敛节点的所述次优路径的路径开销值。
9.根据权利要求7或8所述的方法,其特征在于,所述故障邻接设备基于所述应收敛节点计算一次所述故障链路的所述调整开销值,具体包括:
采用如下方法计算所述故障链路的所述调整开销值:
Rbase=COST(base)+Rn(m,diff)-x,
其中,所述Rbase表示所述故障链路的调整开销值,所述COST(base)表示所述故障链路的实际开销值,所述Rn(m,diff)表示节点n的所述路径开销差,所述节点n为所述应收敛节点,所述x为大于0的正整数,且所述x小于或等于Rn(spf)-Rn+1(spf),其中,Rn(spf)表示所述节点n的最优路径的路径开销值,Rn+1(spf)表示节点n+1的最优路径的路径开销值,所述节点n+1为所述收敛顺序中所述应收敛节点的下一节点。
10.根据权利要求2-9任一项所述的方法,其特征在于,所述故障邻接设备根据所述待收敛节点的收敛顺序依次取所述待收敛节点作为应收敛节点,包括:
所述故障邻接设备取所述节点收敛关系中收敛顺序排在第一的节点作为所述应收敛节点,每隔预设时长后按所述收敛顺序取下一节点作为所述应收敛节点,直至最后一个节点。
11.根据权利要求2-9任一项所述的方法,其特征在于,所述故障邻接设备根据所述待收敛节点的收敛顺序依次取所述待收敛节点作为应收敛节点,包括:
所述故障邻接设备取所述节点收敛关系中收敛顺序排在第一的节点作为所述应收敛节点;
在接收到所述应收敛节点返回的收敛完成响应后,按所述收敛顺序取下一节点作为所述应收敛节点,直至最后一个节点。
12.一种故障邻接设备,其特征在于,包括:
获取单元,用于网络发生故障后,获取节点收敛关系,所述节点收敛关系包括待收敛节点之间的收敛顺序。所述待收敛节点为最优路径会经过故障链路的节点,所述最优路径为所述待收敛节点到达目的地节点的路径中,路径开销最小的路径;
计算单元,用于对应于每个待收敛节点计算一个用于替代故障链路的实际开销值的调整开销值;
发布单元,用于根据所述计算单元的计算结果和所述收敛顺序,将所述待收敛节点对应的所述调整开销值作为所述故障链路的所述实际开销值有序发布,其中,所述调整开销值用于控制所述待收敛节点按照所述节点收敛关系进行收敛。
13.根据权利要求12所述的故障邻接设备,其特征在于,
所述计算单元,具体用于根据所述待收敛节点的收敛顺序依次取取所述待收敛节点作为应收敛节点,每取一次所述应收敛节点,所述故障邻接设备基于所述应收敛节点计算一次所述故障链路的调整开销值。
14.根据权利要求13所述的故障邻接设备,其特征在于,所述发布单元具体用于在所述计算单元每计算一次所述调整开销值后,确定本次的计算结果与上次的计算结果是否相同,在确定本次的计算结果与上次的计算结果不同后,将本次计算得到的所述调整开销值发布。
15.根据权利要求13或14所述的故障邻接设备,其特征在于,在所述网络故障后,若所述故障链路处于故障状态,获取的所述节点收敛关系中的收敛顺序按所述待收敛节点的路径开销差升序排列,其中,所述路径开销差为所述待收敛节点的最优路径与次优路径之间的路径开销的差值,所述次优路径为所述待收敛节点未经过所述故障链路到达所述目的地节点的路径中,路径开销最小的路径。
16.根据权利要求15所述的故障邻接设备,其特征在于,所述故障链路的所述调整开销值大于所述应收敛节点的所述次优路径的开销值。
17.根据权利要求15或16所述的故障邻接设备,其特征在于,
所述计算单元,具体用于采用如下方法计算所述故障链路的所述调整开销值:
Rbase=COST(base)+Rn(m,diff)+x,
其中,所述Rbase表示所述故障链路的调整开销值,所述COST(base)表示所述故障链路的实际开销值,所述Rn(m,diff)表示所述节点n的路径开销差,所述节点n为所述应收敛节点,所述x为大于0的正整数,且所述x小于或等于Rn(spf)-Rn+1(spf),其中,Rn(spf)表示所述节点n的最优路径的路径开销值,Rn+1(spf)表示节点n+1的最优路径的路径开销值,所述节点n+1为所述收敛顺序中所述应收敛节点的下一节点。
18.根据权利要求13至17中任一项所述的故障邻接设备,其特征在于,
所述获取单元,具体用于在所述网络故障后,若所述故障链路处于故障恢复状态,获取的所述节点收敛关系中的收敛顺序按所述待收敛节点的路径开销差降序排列。
19.根据权利要求18所述的故障邻接设备,其特征在于,所述故障链路的所述调整开销值为小于所述应收敛节点的所述次优路径的路径开销值。
20.根据权利要求18或19所述的故障邻接设备,其特征在于,所述计算单元,具体用于采用如下方法计算所述故障链路的所述调整开销值:
Rbase=COST(base)+Rn(m,diff)-x,
其中,所述Rbase表示所述故障链路的调整开销值,所述COST(base)表示所述故障链路的实际开销值,所述Rn(m,diff)表示节点n的所述路径开销差,所述节点n为所述应收敛节点,所述x为大于0的正整数,且所述x小于或等于Rn(spf)-Rn+1(spf),其中,Rn(spf)表示所述节点n的最优路径的路径开销值,Rn+1(spf)表示节点n+1的最优路径的路径开销值,所述节点n+1为所述收敛顺序中所述应收敛节点的下一节点。
21.根据权利要求13-20任一项所述的故障邻接设备,其特征在于,所述计算单元根据所述待收敛节点的收敛顺序依次取所述待收敛节点作为应收敛节点,具体包括:
所述获取单元,具体用于取所述节点收敛关系中收敛顺序排在第一的节点作为所述应收敛节点,每隔预设时长后按所述收敛顺序取下一节点作为所述应收敛节点,直至最后一个节点。
22.根据权利要求13-20任一项所述的故障邻接设备,其特征在于,所述计算单元根据所述待收敛节点的收敛顺序依次取所述待收敛节点作为应收敛节点,具体包括:
所述获取单元,具体用于取所述节点收敛关系中收敛顺序排在第一的节点作为所述应收敛节点;
在接收到所述应收敛节点返回的收敛完成响应后,按所述收敛顺序取下一节点作为所述应收敛节点,直至最后一个节点。
23.一种故障邻接设备,其特征在于,包括:接收器、发射器、处理器、存储器以及总线系统;
其中,所述存储器用于存储程序和指令;
所述接收器与所述发射器用于在所述处理器的控制下接收或发送信息;
所述处理器用于执行所述存储器中的程序;
所述总线系统用于连接所述存储器、所述收发器以及所述处理器,以使所述存储器、所述收发器以及所述处理器进行通信;
其中,所述处理器用于调用所述存储器中的程序指令,执行如权利要求1-11中任一项所述的方法。
24.一种计算机装置,其特征在于,所述计算机装置包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1-11中任意一项所述方法的步骤。
25.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1-11中任意一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811640864.4A CN111385194B (zh) | 2018-12-29 | 2018-12-29 | 一种网络路径收敛的方法以及相关设备 |
PCT/CN2019/127459 WO2020135339A1 (zh) | 2018-12-29 | 2019-12-23 | 一种网络路径收敛的方法以及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811640864.4A CN111385194B (zh) | 2018-12-29 | 2018-12-29 | 一种网络路径收敛的方法以及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111385194A true CN111385194A (zh) | 2020-07-07 |
CN111385194B CN111385194B (zh) | 2021-02-26 |
Family
ID=71126809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811640864.4A Active CN111385194B (zh) | 2018-12-29 | 2018-12-29 | 一种网络路径收敛的方法以及相关设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111385194B (zh) |
WO (1) | WO2020135339A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023077894A1 (zh) * | 2021-11-08 | 2023-05-11 | 中兴通讯股份有限公司 | 标签处理方法、系统、装置和计算机存储介质 |
WO2023185123A1 (zh) * | 2022-04-02 | 2023-10-05 | 华为技术有限公司 | 路径计算方法、装置及系统 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111884927B (zh) * | 2020-07-16 | 2022-02-15 | 中盈优创资讯科技有限公司 | 基于ospf链路数据库的链路开销获取方法和装置 |
CN114844760B (zh) * | 2022-05-05 | 2023-07-25 | 鹏城实验室 | 一种网络故障感知与定位方法、装置、终端及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120163177A1 (en) * | 2007-06-15 | 2012-06-28 | Silver Spring Networks, Inc. | Load management in wireless mesh communications networks |
US8456982B2 (en) * | 2010-08-26 | 2013-06-04 | Verizon Patent And Licensing Inc. | System and method for fast network restoration |
CN103210616A (zh) * | 2010-11-12 | 2013-07-17 | 阿尔卡特朗讯公司 | 选路信息的预先计算 |
CN104283789A (zh) * | 2014-09-19 | 2015-01-14 | 深圳市腾讯计算机系统有限公司 | 路由收敛方法和系统 |
CN105247823A (zh) * | 2013-09-13 | 2016-01-13 | 华为技术有限公司 | 调整链路开销的方法和装置 |
-
2018
- 2018-12-29 CN CN201811640864.4A patent/CN111385194B/zh active Active
-
2019
- 2019-12-23 WO PCT/CN2019/127459 patent/WO2020135339A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120163177A1 (en) * | 2007-06-15 | 2012-06-28 | Silver Spring Networks, Inc. | Load management in wireless mesh communications networks |
US8456982B2 (en) * | 2010-08-26 | 2013-06-04 | Verizon Patent And Licensing Inc. | System and method for fast network restoration |
CN103210616A (zh) * | 2010-11-12 | 2013-07-17 | 阿尔卡特朗讯公司 | 选路信息的预先计算 |
CN105247823A (zh) * | 2013-09-13 | 2016-01-13 | 华为技术有限公司 | 调整链路开销的方法和装置 |
CN104283789A (zh) * | 2014-09-19 | 2015-01-14 | 深圳市腾讯计算机系统有限公司 | 路由收敛方法和系统 |
Non-Patent Citations (1)
Title |
---|
J. GOBEL,A.E. KRZESINSKI,M. MANDJES: "《Analysis of an ad hoc network with autonomously moving nodes》", 《2007 AUSTRALASIAN TELECOMMUNICATION NETWORKS AND APPLICATIONS CONFERENCE》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023077894A1 (zh) * | 2021-11-08 | 2023-05-11 | 中兴通讯股份有限公司 | 标签处理方法、系统、装置和计算机存储介质 |
WO2023185123A1 (zh) * | 2022-04-02 | 2023-10-05 | 华为技术有限公司 | 路径计算方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111385194B (zh) | 2021-02-26 |
WO2020135339A1 (zh) | 2020-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111385194B (zh) | 一种网络路径收敛的方法以及相关设备 | |
JP6369698B2 (ja) | トラフィック切り替え方法、デバイス、およびシステム | |
US11411853B2 (en) | Link-state advertisement LSA sending method, apparatus, and system | |
US9729473B2 (en) | Network high availability using temporary re-routing | |
EP3120508B1 (en) | Optimized approach to is-is lfa computation with parallel links | |
KR102002189B1 (ko) | 분할 아키텍처 시스템에서의 제어 트래픽의 탄력적 라우팅을 위한 방법 및 장치 | |
US10148554B2 (en) | System and methods for load placement in data centers | |
US8599683B2 (en) | System and method for changing a delivery path of multicast traffic | |
US10439880B2 (en) | Loop-free convergence in communication networks | |
EP2589189B1 (en) | Method and apparatus for dissemination of information between routers | |
CN106559246B (zh) | 集群的实现方法和服务器 | |
WO2015181663A1 (en) | Simplified approach to verify lfas in deployment | |
EP3567814B1 (en) | Method for updating routing in network, network device and system | |
US11805047B2 (en) | Method and apparatus for controlling network traffic path | |
JP2021534669A (ja) | パケット処理方法およびゲートウェイ・デバイス | |
CN103825826A (zh) | 一种动态路由的实现方法和装置 | |
Papán et al. | Analysis of existing IP Fast Reroute mechanisms | |
US11032185B2 (en) | Communication system, edge node, communication method and program | |
CN107770061B (zh) | 转发报文的方法及转发设备 | |
CN109005109B (zh) | 路由设置方法及组播组网系统 | |
WO2019212678A1 (en) | Explicit backups and fast re-route mechanisms for preferred path routes in a network | |
Kamamura et al. | Autonomous IP fast rerouting with compressed backup flow entries using OpenFlow | |
JP5597657B2 (ja) | マイクロループ防止設定方法、通信システム、及びマイクロループ防止装置 | |
CN112714061B (zh) | 路由方法和装置 | |
WO2021232190A1 (en) | Forward path planning method in massive data center networks |
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 |