CN112804149B - 一种寻找路径的方法及装置 - Google Patents

一种寻找路径的方法及装置 Download PDF

Info

Publication number
CN112804149B
CN112804149B CN202110392116.4A CN202110392116A CN112804149B CN 112804149 B CN112804149 B CN 112804149B CN 202110392116 A CN202110392116 A CN 202110392116A CN 112804149 B CN112804149 B CN 112804149B
Authority
CN
China
Prior art keywords
path
link
encapsulated
calculated
allocable bandwidth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110392116.4A
Other languages
English (en)
Other versions
CN112804149A (zh
Inventor
蒋文栋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN202110392116.4A priority Critical patent/CN112804149B/zh
Publication of CN112804149A publication Critical patent/CN112804149A/zh
Application granted granted Critical
Publication of CN112804149B publication Critical patent/CN112804149B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/20Hop count for routing purposes, e.g. TTL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/125Shortest path evaluation based on throughput or bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本说明书提供一种寻找路径的方法及装置,该方法中对于用户业务流量在封装隧道报文头以及存在服务链、或者封装了公网路径标签栈,例如封装Segment‑list的情况进行考虑,从而在计算路径时使得选路更加精确,能够更加合理的进行路径规划,实现网络的流量均衡。

Description

一种寻找路径的方法及装置
技术领域
本说明书涉及技术领域,尤其涉及一种寻找路径的方法及装置。
背景技术
近年来,SDN((Software Defined Network,软件定义网络)技术被广泛应用于各个领域和各种用户实际网络中。用户对 SDN 广域网的需求越来越多,通常广域网的调度封装技术有 RSVP(Resource ReSerVation Protocol,资源预留协议)MPLS-TE(MPLS TrafficEngineering,多协议标签交换路径工程)、 SR-TE(Segment Routing TrafficEngineering,流量工程的段路由)、SR-Policy (Segment Routing Policy,段路由策略)、基于 IPv6 的段路由 SR 的策略(简称为 SRV6-Policy)等技术,其中 SR-Policy 和SRV6-Policy 可支持的功能和场景更多,技术相对也比较先进。
传统SDN技术将业务进入隧道封装后的流量即为调度对象的流量,忽略了不同路径对于流量的影响,原因是在MPLS网络中,这种差异较小,每一跳相差4Byte,产生的误差基本可接受。
在SRV6 Policy流量调度技术中,实际转发的流量可能会远大于业务进入隧道封装后的流量。
尤其是在小包流量或转发路径较长的情况下误差会非常大。主要原因是IPV6的头占40Byte,每增加一个SID会增加16Byte(其它头忽略),相比于原始报文的大小就非常可观了。
发明内容
为克服相关技术中存在的问题,本说明书提供了一种寻找路径的方法及装置。
根据本说明书实施例的第一方面,提供一种寻找路径的方法,所述方法包括:
获取当前节点的跳数、以及用户业务流量单位时间内的包数、链路的剩余可分配带宽;
根据待计算路径上当前节点的跳数、待封装隧道报文头的大小、公网路径标签栈的大小计算封装后的用户业务流量的大小;
确定封装后的用户业务流量的大小是否符合待计算路径对应的链路的剩余可分配带宽的约束条件;
遍历网络拓扑中的起始节点和目的节点之间的所有链路,根据符合约束条件的链路拼接出最优的目标路径。
可选的,所述确定封装后的用户业务流量的大小是否符合待计算路径对应的链路的剩余可分配带宽的约束条件,包括:
根据待计算路径对应的至少一个链路的剩余可分配带宽的最小值确定待计算路径的剩余可分配带宽。
可选的,所述方法还可包括:
根据当前节点的跳数、以及公网路径标签栈的大小修正当前节点对应的前序链路的剩余可分配带宽;
根据组成待计算路径的链路的修正的剩余可分配带宽的最小值确定待计算路径的剩余可分配带宽。
可选的,根据当前节点的跳数、以及公网路径标签栈的大小修正当前节点对应的前序链路的剩余可分配带宽,包括:
根据当前节点的跳数确定待封装的公网路径标签的数量;
根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定待修正量;
根据当前节点的前序链路的剩余可分配带宽减去待修正量计算当前节点的前序链路的修正的剩余可分配带宽。
可选的,若多个待计算路径存在共享链路,则根据多个待计算路径中包含节点数的最大值确定待封装的公网路径标签的数量;
根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定共享链路的待修正量;
根据共享链路的剩余可分配带宽减去待修正量计算共享链路的修正的剩余可分配带宽。
根据本说明书实施例的第二方面,提供一种寻找路径的装置,包括:
获取模块,用于获取当前节点的跳数、以及用户业务流量单位时间内的包数、链路的剩余可分配带宽;
计算模块,用于根据待计算路径上当前节点的跳数、待封装隧道报文头的大小、公网路径标签栈的大小计算封装后的用户业务流量的大小;
判断模块用于确定封装后的用户业务流量的大小是否符合待计算路径对应的链路的剩余可分配带宽的约束条件;
拼接模块,用于遍历网络拓扑中的起始节点和目的节点之间的所有链路,根据符合约束条件的链路拼接出最优的目标路径。
可选的,所述计算模块具体用于根据待计算路径对应的至少一个链路的剩余可分配带宽的最小值确定待计算路径的剩余可分配带宽。
可选的,所述计算模块还用于用于根据当前节点的跳数、以及公网路径标签栈的大小修正当前节点对应的前序链路的剩余可分配带宽;
所述计算模块还用于根据组成待计算路径的链路的修正的剩余可分配带宽的最小值确定待计算路径的剩余可分配带宽。
可选的,所述计算模块还用根据当前节点的跳数确定待封装的公网路径标签的数量;根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定待修正量;根据当前节点的前序链路的剩余可分配带宽减去待修正量计算当前节点的前序链路的修正的剩余可分配带宽。
可选的,所述计算模块还用于若多个待计算路径存在共享链路,则根据多个待计算路径中包含节点数的最大值确定待封装的公网路径标签的数量;根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定共享链路的待修正量;根据共享链路的剩余可分配带宽减去待修正量计算共享链路的修正的剩余可分配带宽。
本说明书的实施例提供的技术方案可以包括以下有益效果:本申请所提供的寻路方法中,对于用户业务流量在封装隧道报文头以及存在服务链、或者封装了公网路径标签栈,例如封装Segment-list的情况进行考虑,从而在计算路径时使得选路更加精确,能够更加合理的进行路径规划,实现网络的流量均衡。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书一起用于解释本说明书的原理。
图1是本发明提供的SR-Policy 结构;
图2为本发明提供的一种网络架构示意图;
图3为本发明提供的一种网络拓扑示意图;
图4为本发明一实施例提供的寻路方法的流程示意图;
图5为本发明另一实施例提供的寻路方法的流程示意图;
图6为本发明提供的另一种网络拓扑的示意图;
图7为本发明提供的一种寻路装置的结构示意图;
图8为本发明提供的一种控制器的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
图1示出了一种控制器部署的 SR-Policy 结构,包括候选路径列表,每个候选路径有一个优先级,流量确定 SR Policy 后会通过优先级高的当前可用的候选路径转发,一个候选路径中又包含了多个段列表 Segment-list,又称为SID list,每个段列表Segment-list 会对应一个权重,流量会根据各个段列表 Segment-list 的权重按比例转发。
图2示出了一种实际业务场景的示例,如果到达PE1的单位时间内的业务流量为100MB,其中,单位时间内的这100MB的流量由多个64Byte+20Byte帧间隙的数据帧组成,那么到达PE1单位时间内的数据帧的个数为1248304个(100MB/84Byte),PE1会为这些流量封装三层IPv6报文头以及私网标签,由此原始的100MB的流量在封装IPv6报文头等变成了100MB+(私网标签16Byte+IPv6报文头(40Byte))×业务单位时间内报文数(1228304)=167MB;如果上面167MB的流量有50%通过Segment-list1指示的路径进行转发,那么在Segment-list1对应的路径转发的流量大小为:
(业务流量进入SRV6 Policy后的流量+SID(16Byte)×跳数(5)×报文数(1248304))×0.5=131MB;
另外50%的流量通过Segment-list2对应的路径转发,那么在Segment-list2对应的路径转发的流量大小为:
(业务流量进入SRV6 Policy后的流量+SID(16Byte)×跳数(2)×报文数(1248304))×0.5=102.5MB;
可见,在SRV6 Policy流量调度技术中,实际转发的流量可能会远大于业务流封装IPv6报文头以及私网标签前的流量。因此依然按照封装IPv6报文头以及私网标签之前的流量的大小去进行流路径的计算,很显然是不合适的。
实施例一
为了更好的说明本申请实施例所提供的方法,本申请先对实施例中可能涉及到的概念进行介绍。
LBW(LinkBandWidth)为链路的可分配带宽,组网基础配置,用户根据实际网络情况配置,通过边界网关链路状态BGP-LS(Border Gateway Protocol Link-state)技术上报控制器。
LCBW(LinkCurrentBandWidth)为链路的实时带宽,LCBW可以通过控制器主动采集或由网络设备周期性的上报控制器获得。
LRBW(LinkReservedBandWidth)为链路的剩余可分配带宽,链路剩余可分配带宽可以通过链路可分配带宽减去链路实时带宽计算,LRBW可以由控制器计算维护。
FBW(FlowBandWidth)为用户的业务带宽,可以由控制器主动采集或由网络设备周期上报控制器获得。
FPC(FlowPacketCount)为用户的业务报文单位时间的包数,控制器可以同时获得FBW和FPC,表示用户的业务带宽FBW总共的包数。
TFBW(TunnelFlowBandWidth)为用户业务流量进入SRV6 Policy隧道后的带宽,控制器根据业务带宽FBW和业务报文单位时间的包数FPC计算得到,计算公式为:TFBW =用户的业务带宽FBW + 56Byte ×用户的业务报文单位时间的包数FPC,其中56Byte包含16Byte 私网标签头和40Byte IPV6报文头。
一般来说,控制器可以通过BGP-LS技术获取到网络拓扑数据,其中网络拓扑数据包括:网络中的节点信息,例如节点标识以及链路信息,例如链路标识和链路状态,链路状态可以包括正常up状态、异常down状态等。
控制器还可以获取到链路的延时、链路的抖动、丢包率、链路的开销Cost、链路的可分配带宽LBW、链路的实时带宽LCBW。
控制器通过网络遥测Network Telemetry技术可以获取到用户的业务带宽FBW以及用户的业务报文单位时间的包数FPC。
控制器根据用户输入的路径约束条件,最终确定符合约束条件的路径,一般来说,用户会输入路径的起始节点和目的节点、最大可以经过的跳数、路径的带宽要求等。
本申请提供了一种寻找路径的方法(后文中简称寻路方法),图4示出了本申请实施例提供的寻路方法的流程示意图,该方法可以由控制器等执行,本实施例以控制器执行本实施例的方法为例,但应当理解的是,对于可以执行本申请所提供网络设备的类型并不加以限定。
如图4所示,该方法包括:
步骤101,获取当前节点的跳数、以及用户业务流量单位时间内的包数、链路的剩余可分配带宽。
对于给定的一个网络拓扑,用户可以输入起始节点和目的节点,进而控制器可以计算起始节点和目的节点之间符合链路的剩余可分配带宽的约束条件的路径,对于待寻找的符合约束条件且cost最小的路径,本实施例中称为最优的目标路径。当然,最优的目标路径可以根据实际需求而进行更改,例如,在cost相同的情况下,选择剩余可分配带宽最大的路径为最优目标路径。
当前节点可以为起始节点、目的节点或者起始节点和目的节点之间的任一节点。
一般来说,起始节点的跳数为零,起始节点的下一跳的跳数为1。以图3所示的网络拓扑图为例,若起始节点为D,那么起始节点D的下一跳C和E的跳数为1,C的下一跳B、F、E的跳数为2。这里E作为D的下一跳和C的下一跳时,其跳数是不同的。
步骤103,根据待计算路径上当前节点的跳数、待封装隧道报文头的大小、公网路径标签栈的大小计算封装后的用户业务流量的大小。
本申请以起始节点和目的节点之间符合带宽约束条件、且cost最小的路径为要寻找的最优的目标路径,目标路径是根据符合带宽约束条件的链路拼接出来的,因此本实施例中的待计算路径指的是在寻找目标路径过程中拼接得到的中间路径。对于待计算路径,在后面的实施例中会进一步的进行介绍。
具体的,可以根据如下公式进行计算:
TempPaths[i].THFBW(TunnelHopsFlowBandWidth)=用户的业务带宽 FBW +(待封装隧道报文头的大小+公网路径标签栈的大小×(TempPaths[i].HOPS+1))×用户的业务报文单位时间的包数FPC;
其中,TempPaths[i].THFBW为待计算的路径i上转发的封装后的业务流量的大小;
TempPaths[i].HOPS为待计算路径i上当前节点的跳数。
在一种可选实施方式中待封装的隧道报文头可以为IPv6报文头、或者为IPv6报文头以及私网报文头,例如VPN(Virtual Private Network,虚拟专用网络)报文头。
本实施例以用户业务流量封装的隧道报文头为IPv6报文头以及VPN报文头为例,公网路径标签栈为SID为例进行说明,但应当理解的是,用户业务流量封装的隧道报文头也可以为其他隧道类型、封装的隧道报文头的层数也并以此为限制。
步骤105,确定封装后的用户业务流量的大小是否符合待计算路径对应的链路的剩余可分配带宽的约束条件;
控制器可以获取到链路的可分配带宽LBW、以及链路的实时带宽LCBW,链路的实时带宽一般指的是链路之间的背景流量。
以图3所示的网络拓扑为例,若当前节点为D,D与C之间的链路的链路可分配带宽LBW为300M,若D与C之间的链路存在背景流量100M,那么D与C之间的链路的剩余可分配带宽LRBW即为300M-100M=200M。
根据上述步骤103可以确定出封装后的用户业务流量的带宽TempPaths[i].THFBW,例如,以图3所示的网络拓扑为例,若当前节点为D,若以到达当前节点D的用户业务报文的带宽为FBW为100M,待封装的隧道报文头以IPv6报文头(40Byte)以及16Byte的VPN隧道报文头为例,那么根据步骤103中给出计算方式,可以确定封装后的用户业务报文的大小TempPaths[i].THFBW(TunnelHopsFlowBandWidth)=用户的业务带宽 FBW(100M)+[待封装隧道报文头的大小56Byte+公网路径标签栈的大小16Byte×(TempPaths[i].HOPS+1)]×用户的业务报文单位时间的包数FPC(1248304)=186M。
进而根据链路的剩余可分配带宽LRBW与封装后的业务流量的带宽TempPaths[i].THFBW进行比较,如果链路的剩余可分配带宽LRBW大于封装后的业务流量的带宽,那么该链路即为符合约束条件的链路。
在上述示例中,D与C之间链路的剩余可分配带宽为200M,大于封装后的业务流量的带宽186M,此时D与C之间的链路符合约束条件。
步骤107,遍历网络拓扑中的起始节点和目的节点之间的所有链路,根据符合约束条件的链路拼接出最优的目标路径。
在确定出符合约束条件的链路之后,可以标记该链路为符合约束条件的链路。
进一步的,可以遍历网络拓扑中的起始节点和目的节点之间的所有链路,根据符合约束条件的链路进而拼接出符合带宽约束条件的链路。
本实施例所提供的寻路方法中,对于用户业务流量在封装隧道报文头以及存在服务链、或者封装了公网路径标签栈,例如封装Segment-list的情况进行考虑,从而在计算路径时使得选路更加精确,能够更加合理的进行路径规划,实现网络的流量均衡。
实施例二
在上述实施例的基础上,本实施例对上述实施例中的寻路方法做进一步的详细介绍。本实施例提供的方法中,以图3所示的网络拓扑为例,对上述寻路方法做进一步的说明。图5示出了本实施例提供的一种寻路方法的流程示意图,如图5所示,该方法包括:
步骤201,获取当前节点的跳数、以及用户业务流量单位时间内的包数、链路的可分配带宽;
步骤202,确定待计算路径;
具体的,可以根据步骤2031和步骤2032确定待计算的路径。
当然,确定待计算路径的方式也可以其他方式,例如可以确定当前节点入方向的的链路等等。在网络拓扑中如何选择并确定待计算的路径可以根据实际需求进行设置,本实施例中的步骤2031和步骤2032仅仅是给出一个示例。
步骤2031,确定当前节点对应的出方向的链路;
本实施例以当前节点为图3中的起始节点D为例进行说明,其中A为目的节点;其中,从起始节点到目的节点的方向即为出方向。
那么当前节点D在出方向上的链路包括:D->C和D->E。
步骤2032,将确定出的链路加入该链路对应的中间路径队列以拼接得到待计算路径,其中,中间路径队列用于存储待计算路径。
TempPaths[i]记为第i条路径对应的中间路径队列,其中i为大于等于0的整数。待计算路径是寻找符合约束条件的过程中所确定出的中间过程路径,目标路径是从这些中间路径中选取出的符合条件的最优路径。
创建的中间路径队列的数量与当前节点在出方向上的链路数量有关。例如,当前节点在出方向的链路数量为两个,则创建两个中间路径队列。
将确定出的链路D->C和D->E分别加入对应的中间路径队列TempPaths[0]和TempPaths[1]。
具体的,TempPaths[0]: {D->C};
TempPaths[1]: {D->E}。
在确定待计算路径之后,则根据步骤203可以计算出进入隧道后的用于业务流量的大小。
步骤203,根据待计算路径上当前节点的跳数、待封装隧道报文头的大小、公网路径标签栈的大小计算封装后的用户业务流量的大小。
在确定待计算路径之后,根据待计算路径上当前节点的跳数、待封装隧道报文头的大小、公网路径标签栈的大小计算峰值后的用户业务流量的大小。
具体的,以图3中起始节点D接收到的某一用户的业务流量的带宽FBW为100M、用户的业务报文单位时间的包数FPC为1248304个为例进行说明。
在进行IPv6隧道头的封装之后,即用户业务流量进入隧道后的带宽变为TFBW =186M。
根据上述实施例一中,节点D和节点C之间链路的剩余可分配带宽为190M,因此待计算路径TempPaths[0]为满足约束条件的路径;
根据同样的方式,如果链路D->E的链路可分配带宽LBW为300M,链路的实时带宽LCBW为10M可以计算出链路D->E的剩余可分配带宽LRBW为290M,那么在待计算路径1对应封装后的用户业务流量的大小TempPaths[1].THFBW=186M,在待计算路径TempPaths[1]:D->E流经的封装后的用户业务流的大小符合待计算路径对应的链路剩余可分配带宽的约束条件。
对于待计算路径的cost,为组成待计算路径对应的链路的cost之和。
如果当前节点不存在出方向的链路且当前节点不是目的节点,或者在后续封装后的用户业务流的大小不符合链路的剩余可分配带宽的约束条件,则当前节点计算路径失败,标识到达当前节点的所有待计算路径的状态为失败FAILED:即TempPaths[i].STATE=FAILED;
如果预估的封装后的用户业务流的大小符合路径对应的各个链路的剩余可分配带宽的约束条件,并且没有遍历到目的节点,则记录待计算路径的状态为正在进行中PROCESSING,即TempPaths[i].STATE=PROCESSING;
如果预估的封装后的用户业务流量的大小符合路径对应的各个链路的剩余可分配带宽的约束条件,且已经遍历到目的节点则记录待计算路径的状态为成功SUCCEED,即TempPaths[i].STATE=SUCCEED。
综上,可以获知当前待计算路径的信息如表1所示:
表1
待计算路径TempPaths[i] 封装后的用户业务流量的大小THFBW 链路的可分配带宽LBW 链路的剩余可分配带宽LRBW 当前节点跳数TempPaths[i].HOPS 路径的开销COST 待计算路径的状态TempPaths[i].STATE
TempPaths0:D->C 186M 300M 200M 0 3 PROCESSING
TempPaths1:D->E 186M 300M 290M 0 4 PROCESSING
步骤205,确定封装后的用户业务流量的大小是否符合待计算路径对应的链路的剩余可分配带宽的约束条件。
步骤207,遍历网络拓扑中的起始节点和目的节点之间的所有链路,根据符合约束条件的链路拼接出最优的目标路径。
针对步骤207中如何对符合约束条件的链路进行拼接,本实施例在下面的示例中将详细说明。
具体的,可以通过如下步骤实现:
步骤2071,根据符合约束条件的待计算路径的尾节点更新当前节点。
在上述示例中,TempPaths[0]和TempPaths[1]均为符合剩余可分配带宽约束条件的路径。
在一种可选的实施方式中,分别根据符合约束条件的路径TempPaths[0]和TempPaths[1]的尾节点C和E更新当前节点。
在另一中可选的实施方式中,由于TempPaths[0]路径的cost最小,因此,仅以TempPaths[0]的尾节点作为当前节点。
确定当前节点之后,重复执行步骤201~步骤205。
具体的,根据步骤2031可以确定出当前节点C的出方向的链路包括:
C->B;C->F;C->E。
根据步骤2032,将确定出当前节点的出方向链路加入至该链路对应的中间路径队列中。
具体的,在一种实现方式中,控制器可以根据当前节点出方向的链路的数量建立中间路径队列,并将确定出的上述链路分别加入对应的中间队列路径,同时将前序链路D->C放到中间队列的队首;
在另一种实现方式中,控制器可以根据当前节点出方向链路的数量减一建立中间路径队列,即新建两个中间路径队列,将当前节点出方向链路中的任意一个加入到原来的中间路径队列,例如,将当前节点C的出方向链路C->B加入至原中间路径队列TempPaths[0],由此拼接成待计算的路径:
TempPaths[0]:D->C->B;
复制前序链路并加入至新建的中间路径队列中,并将当前节点其他的出方向的链路加入至新建的中间路径队列中,由此拼接形成的待计算的路径为:
TempPaths[2]:D->C->F;
TempPaths[3]:D->C->E;
根据待计算路径上当前节点的跳数、待封装隧道报文头的大小、公网路径标签栈的大小计算封装后的用户业务流量的大小。
本实施例中以链路C->B、C->F、C->E的链路可分配带宽LBW为300M、链路的实时带宽LCBW均为10M,C->B、C->F、C->E链路的cost依次为10、6、5为例进行说明。
在待计算路径所对应的至少一个链路中,链路的剩余可分配带宽是否能够满足封装后的用户业务流量的需求,取决于组成待计算路径的链路中的短板。举例来说,对于一个封装后为205M的用户业务流量流经链路D->C、链路C->B,链路D->C的剩余可分配带宽为200M,链路C->B的剩余可分配带宽为290M,那么对于待计算链路D->C->B的剩余可分配带宽应该以两个链路中剩余可分配带宽的最小值进行确定。也就是由于,因此待计算路径对应的链路D->C->B的剩余可分配带宽小于封装后为205M的用户业务流量,由此不满足剩余可分配带宽的约束条件。
根据上述方式,由此可以待计算路径的信息更新为表2所示:
表2
待计算路径TempPaths[i] 封装后的用户业务流量的大小THFBW 链路的可分配带宽LBW 路径的剩余可分配带宽 当前节点跳数TempPaths[i].HOPS 路径的开销COST 待计算路径的状态TempPaths[i].STATE
TempPaths0:D->C->B 205M 300M 200M 1 13 FAILED
TempPaths1:D->E 186M 300M 290M 0 4 PROCESSING
TempPaths2:D->C->F 205M 300M 200M 1 9 FAILED
TempPaths3:D->C->E 205M 300M 200M 1 8 FAILED
根据表2可以确定节点C对应的三个出方向的链路的剩余可分配带宽均不满足要求,因此,当前节点C作为排除节点,排除节点不参与后面的寻路过程。
进一步的,根据TempPaths[1]的尾节点E作为当前节点。
当前节点E的出方向链路为E->C、E->F、E->G;重复执行上述实施例所提供的方法,以E->C、E->F、E->G的链路可分配带宽均为300,链路的实时带宽LCBW均为10M、cost依次为5、2、8为例进行说明。
由于节点C为排除节点,因此待计算路径D->C->B的路径的状态标记为failed。
由此待计算路径的信息更新为表3所示:
表3
待计算路径TempPaths[i] 封装后的用户业务流量的大小THFBW 链路的可分配带宽LBW 路径的剩余可分配带宽LRBW 当前节点跳数TempPaths[i].HOPS 路径的开销COST 待计算路径的状态TempPaths[i].STATE
TempPaths0:D->C->B 205M 300M 200M 1 13 FAILED
TempPaths1:D->E->C 205M 300M 290M 1 9 FAILED
TempPaths2:D->C->F 205M 300M 200M 1 9 FAILED
TempPaths3:D->C->E 205M 300M 200M 1 8 FAILED
TempPaths4:D->E->F 205M 300M 290M 1 6 PROCESSING
TempPaths5:D->E->G 205M 300M 290M 1 12 PROCESSING
根据上述方式,当满足寻路的截止条件时,停止继续寻路。例如,选择处于PROCESSING的路径作为待计算路径持续迭代计算,直至所有符合约束条件的待计算路径的状态均为SUCCEED或者网络拓扑中所有的链路均遍历完成。
当当前节点为节点F时,得到的待计算路径的信息更新为表4所示:
表4
Figure DEST_PATH_IMAGE001
本申请所采用的寻路方法,考虑了待计算路径对应的各个链路的剩余可分配带宽的最小值才是决定整个路径是否是最优路径的关键,通过上述方式,可以更加准确的找到最优路径。
实施例三
由于封装的公网路径标签栈的数量实际是与待计算路径上途径的节点数量有关的。为了更加精确的确定链路的剩余可分配带宽,本实施例所提供的方法中,对上述实施例中确定的链路的剩余可分配带宽进行补偿。
举例来说,如图3所示,用户业务流量在到达起始节点D时,会在起始节点为用户业务流量封装公网路径标签栈,如果流量最终确定的最优路径是D->C->B->A,那么会在起始节点D上为用户业务流量封装携带有C、B、A节点地址的3个公网路径标签栈,也就是实际的封装后的用户业务流量的大小应该为:TempPaths[i].THFBW=FBW+(56Byte+3 ×16Byte) ×FPC,但是在上述实施例中,在计算封装后的业务流量的大小时,在起始节点TempPaths[i].THFBW=FBW+(56Byte+1 × 16Byte) ×FPC,也就是,少计算了在计算封装后的业务流量大小时,少计算了2×16Byte。
由于本实施例的方法在寻路过程中,在确定最优路径之前,无法准确的确定要为用户业务流量封装的公网路径标签的数量,为了使得剩余可分配带宽与封装后的业务流量的大小关系更加准确,本实施例中,采用对链路的剩余可分配带宽进行修正的方式。
具体的,本实施例所提供的寻路方法在上述实施例的基础上,对链路的剩余可分配带宽进行修正。
在一种实现方式中,可以一边确定待计算路径路径,一边对当前节点的前序链路的剩余可分配带宽进行修正,如果组成待计算路径的链路中有链路不符合带宽要求,则无需继续计算。
在另一种实现方式中,可以在确定出最优的目标路径之后,再对目的节点的所有前序链路的剩余可分配带宽进行修正,如果组成目标路径的链路中有链路不符合带宽要求,则重新寻找最优路径。
本实施例中对上述第一种实现方式加以详细的介绍,具体的,根据当前节点的跳数、以及公网路径标签栈的大小修正当前节点对应的前序链路的剩余可分配带宽,包括:
步骤301,根据当前节点的跳数确定待封装的公网路径标签的数量;
步骤302,根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定待修正量;
步骤303,根据当前节点的前序链路的剩余可分配带宽减去待修正量计算当前节点的前序链路的修正的剩余可分配带宽。
具体的,当前节点的前序链路的修正的链路剩余可分配带宽可以通过如下方式计算:
AlgoPaths[i].Links[j].FRBW(FlowReservedBandWidth)=(TempPaths[i].Links[j].LRBW -TempPaths [i].HOPS×公网路径标签栈的大小×FPC));
其中,AlgoPaths[i].Links [j]Links [j]表示第i条路径上的第j条链路;
AlgoPaths[i].Links[j].FRBW表示第i条路径上的第j条链路的修正的剩余可分配带宽;
TempPaths[i].Links [j]. LRBW表示第i条路径上的第j条链路的剩余可分配带宽;
TempPaths [i].HOPS为待计算路径i上当前节点的跳数;
FPC为用户的业务报文单位时间的包数。
(1)起始节点D不存在前序链路,因此无需计算前序链路的修正的剩余可分配带宽。
执行步骤2031和步骤2032,根据符合约束条件的路径的尾节点更新当前节点为E;否则,则标注当前的待计算路径不符合剩余可分配带宽的约束条件。
(2)针对当前节点E对应的前序链路D->E的剩余可分配带宽:
AlgoPaths[0].Links[1].FRBW(FlowReservedBandWidth)=(TempPaths[0].Links[1]. LRBW(290M)-TempPaths [i].HOPS(1)×公网路径标签栈的大小(16Byte)×FPC(1248304))=270M;
当前节点E的出方向的链路为E->F、E->C、E->G;根据图3中给出的LBW和LCBW可以确定当前节点的出方向链路的剩余可分配带宽均为290M。
可以根据待计算路径对应的出方向链路的剩余可分配带宽以及修正后的前序链路剩余可分配带宽的最小值确定待计算路径的剩余带宽。与上面实施例道理类似的,整个待计算路径是否能够承载封装后的用户业务流量,取决于组成待计算路径对应的链路的剩余可分配带宽的短板,因此,根据待计算路径D->E->F的剩余可分配带宽为MIN(AlgoPaths[0].Links[0].FRBW,AlgoPaths[0].Links[1].FRBW)=270M;
用类似的方式对组成待计算路径D->E->C、D->E->G的链路的剩余可分配带宽进行修正。
根据上述实施例中的计算,C为排除节点。
重复执行上述步骤,继续对链路G->A和F->A进行剩余可分配带宽进行修正,在这里不再赘述。在对组成待计算路径的链路的剩余可分配带宽进行修正之后,最终可以确定出符合条件的最优目标路径的信息如表5所示:
表5
Figure DEST_PATH_IMAGE002
若确定出符合约束条件的最优路径为多个,根据多个目标路径的剩余可分配带宽确定对应转发用于业务流量的转发权重。这里的剩余可分配带宽也包括修正后的剩余可分配带宽。
具体的,根据目标路径的剩余可分配带宽与至少一个目标路径的剩余可分配带宽之和之比,确定目标路径对应的权重。
根据上述方式可以确定D->E->F->A和D->E->G->A的权重均为233/233+233=50%。
进而根据目标路径及其权重进行路径部署,例如,部署的SRV6 policy的segmentlist为:
Segment List1:{D->E->F->A} 权重 50%;
Segment List2:{D->E->G->A} 权重 50%。
由此,本实施例所提供的寻路方法中,根据寻找到的最优的目标路径对承载SRV6Policy进行部署,从而可以更好的规划路径。
实施例四
在寻路过程中,网络拓扑中可能存在共享路径,即两个以上的路径存在的公共部分的链路,这种情况就可以认为网络拓扑中存在共享路径。例如,图6示出了一种网络拓扑,起始节点为A,目的节点为H,在A和H之间存在5条路径,这五条路径存在公共部分的链路即为G->H,在本实施例中该链路称为共享链路。
由于在寻找路径的过程中,是采用用户业务流量的全部流量进行计算的,在最终寻找到符合约束条件的最优目标路径时,是需要对用户业务流量进行负载分担的,因此,对于存在共享路径的情况,用户业务流量对于共享链路的占用情况,不能简单的加和处理。举例来说,若用户业务流量为100M,以图6的网络拓扑为例,针对A->B->G->H、A->C->G->H,对于共享链路G->H计算封装后的用户业务流量,不能计算两次(也就是不能进行加和计算),因为,用户业务流量实际是要在多个目标路径上进行负载分担的。
因此,对于存在共享路径的网络拓扑,共享链路的修正的剩余可用带宽为:共享链路的剩余可用带宽-MAX(Temppath[0].HOPS……Temppath[k].HOPS)×公网路径标签栈的大小×FPC;
其中,MAX(Temppath[0].HOPS……Temppath[k].HOPS)为共用共享链路的待计算路径所包含节点数(跳数)的最大值;
即,对于共享链路修正的剩余可用带宽需要根据多个待计算路径中包含节点最多的路径进行确定。
对共享链路的修正,一般是以共享链路作为当前节点的前序链路时进行修正。例如,在图6中,对共享链路的剩余可用带宽的修正,是在当前节点为H时,对于H的前序链路G->H进行修正。
与之前的实施例中原理类似的,对于待计算路径中是否能够承载用户业务流量,取决于组成待计算路径中的链路的剩余可用带宽的短板。
因此,对于存在共享链路的情况,待计算路径的修正的剩余可用带宽为:根据包括共享链路在内的、组成待计算路径的链路中剩余可用带宽的最小值确定。
实施例五
本发明提供一种寻找路径的装置,该装置可以用于执行上述实施例一至五中的所提供的寻找路径的方法,该装置包括:
获取模块701,用于获取当前节点的跳数、以及用户业务流量单位时间内的包数、链路的剩余可分配带宽;
计算模块702,用于根据待计算路径上当前节点的跳数、待封装隧道报文头的大小、公网路径标签栈的大小计算封装后的用户业务流量的大小;
判断模块703,用于确定封装后的用户业务流量的大小是否符合待计算路径对应的链路的剩余可分配带宽的约束条件;
拼接模块704,用于遍历网络拓扑中的起始节点和目的节点之间的所有链路,根据符合约束条件的链路拼接出最优的目标路径。
可选的,所述计算模块702具体用于根据待计算路径对应的至少一个链路的剩余可分配带宽的最小值确定待计算路径的剩余可分配带宽。
可选的,所述计算模块702还用于用于根据当前节点的跳数、以及公网路径标签栈的大小修正当前节点对应的前序链路的剩余可分配带宽;
所述计算模块还用于根据组成待计算路径的链路的修正的剩余可分配带宽的最小值确定待计算路径的剩余可分配带宽。
在另一种可选的实施方式中,所述计算模块702还用根据当前节点的跳数确定待封装的公网路径标签的数量;根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定待修正量;根据当前节点的前序链路的剩余可分配带宽减去待修正量计算当前节点的前序链路的修正的剩余可分配带宽。
可选的,所述计算模块702还用于若多个待计算路径存在共享链路,则根据多个待计算路径中包含节点数的最大值确定待封装的公网路径标签的数量;根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定共享链路的待修正量;根据共享链路的剩余可分配带宽减去待修正量计算共享链路的修正的剩余可分配带宽。
本实施例提供的装置中,各个模块的实现方式以及技术效果可以参照方法实施例,本实施例中不再详细赘述。
本申请另一实施例中还提供一种控制器,图8提供了一种控制器的结构示意图,如图8所示,该控制器包括:
存储器80和处理器81,其中,
存储器80,用于存储程序指令;
处理器81,用于调用上述存储器80中存储的程序指令,按照获得的程序执行上述任一方法实施例。
更进一步地,本申请提供一种计算机存储介质,该计算机可读存储介质存储有计算机可执行指令,上述计算机可执行指令用于使上述计算机执行上述任一方法实施例。
本实施例所提供的控制器和计算机存储介质中,对于用户业务流量在封装隧道报文头以及存在服务链、或者封装了公网路径标签栈,例如封装Segment-list的情况进行考虑,从而在计算路径时使得选路更加精确,能够更加合理的进行路径规划,实现网络的流量均衡。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本申请的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
应理解的是,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种寻找路径的方法,其特征在于,包括:
获取当前节点的跳数、以及用户业务流量单位时间内的包数、链路的剩余可分配带宽;
根据待计算路径上当前节点的跳数、待封装隧道报文头的大小、公网路径标签栈的大小计算封装后的用户业务流量的大小;
确定封装后的用户业务流量的大小是否符合待计算路径对应的链路的剩余可分配带宽的约束条件;
遍历网络拓扑中的起始节点和目的节点之间的所有链路,根据符合约束条件的链路拼接出最优的目标路径。
2.根据权利要求1所述的方法,其特征在于,所述确定封装后的用户业务流量的大小是否符合待计算路径对应的链路的剩余可分配带宽的约束条件,包括:
根据待计算路径对应的至少一个链路的剩余可分配带宽的最小值确定待计算路径的剩余可分配带宽。
3.根据权利要求1所述的方法,其特征在于,还包括:
根据当前节点的跳数、以及公网路径标签栈的大小修正当前节点对应的前序链路的剩余可分配带宽;
根据组成待计算路径的链路的修正的剩余可分配带宽的最小值确定待计算路径的剩余可分配带宽。
4.根据权利要求3所述的方法,其特征在于,根据当前节点的跳数、以及公网路径标签栈的大小修正当前节点对应的前序链路的剩余可分配带宽,包括:
根据当前节点的跳数确定待封装的公网路径标签的数量;
根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定待修正量;
根据当前节点的前序链路的剩余可分配带宽减去待修正量计算当前节点的前序链路的修正的剩余可分配带宽。
5.根据权利要求4所述的方法,其特征在于,若多个待计算路径存在共享链路,则根据多个待计算路径中包含节点数的最大值确定待封装的公网路径标签的数量;
根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定共享链路的待修正量;
根据共享链路的剩余可分配带宽减去待修正量计算共享链路的修正的剩余可分配带宽。
6.一种寻找路径的装置,其特征在于,包括:
获取模块,用于获取当前节点的跳数、以及用户业务流量单位时间内的包数、链路的剩余可分配带宽;
计算模块,用于根据待计算路径上当前节点的跳数、待封装隧道报文头的大小、公网路径标签栈的大小计算封装后的用户业务流量的大小;
判断模块,用于确定封装后的用户业务流量的大小是否符合待计算路径对应的链路的剩余可分配带宽的约束条件;
拼接模块,用于遍历网络拓扑中的起始节点和目的节点之间的所有链路,根据符合约束条件的链路拼接出最优的目标路径。
7.根据权利要求6所述的装置,其特征在于,所述计算模块具体用于根据待计算路径对应的至少一个链路的剩余可分配带宽的最小值确定待计算路径的剩余可分配带宽。
8.根据权利要求6所述的装置,其特征在于,所述计算模块还用于根据当前节点的跳数、以及公网路径标签栈的大小修正当前节点对应的前序链路的剩余可分配带宽;
所述计算模块还用于根据组成待计算路径的链路的修正的剩余可分配带宽的最小值确定待计算路径的剩余可分配带宽。
9.根据权利要求6~8任一项所述的装置,其特征在于,所述计算模块还用于根据当前节点的跳数确定待封装的公网路径标签的数量;根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定待修正量;根据当前节点的前序链路的剩余可分配带宽减去待修正量计算当前节点的前序链路的修正的剩余可分配带宽。
10.根据权利要求9所述的装置,其特征在于,所述计算模块还用于若多个待计算路径存在共享链路,则根据多个待计算路径中包含节点数的最大值确定待封装的公网路径标签的数量;根据待封装的公网路径标签的数量以及待封装的公网路径标签栈的大小确定共享链路的待修正量;根据共享链路的剩余可分配带宽减去待修正量计算共享链路的修正的剩余可分配带宽。
CN202110392116.4A 2021-04-13 2021-04-13 一种寻找路径的方法及装置 Active CN112804149B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110392116.4A CN112804149B (zh) 2021-04-13 2021-04-13 一种寻找路径的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110392116.4A CN112804149B (zh) 2021-04-13 2021-04-13 一种寻找路径的方法及装置

Publications (2)

Publication Number Publication Date
CN112804149A CN112804149A (zh) 2021-05-14
CN112804149B true CN112804149B (zh) 2021-08-31

Family

ID=75816863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110392116.4A Active CN112804149B (zh) 2021-04-13 2021-04-13 一种寻找路径的方法及装置

Country Status (1)

Country Link
CN (1) CN112804149B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017035752A1 (zh) * 2015-08-31 2017-03-09 华为技术有限公司 一种数据流报头压缩传输方法、系统及控制器、节点

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9762488B2 (en) * 2014-03-06 2017-09-12 Cisco Technology, Inc. Segment routing extension headers
CN114598642A (zh) * 2018-06-25 2022-06-07 华为技术有限公司 发送网络性能参数、计算网络性能的方法和网络节点
US11070463B2 (en) * 2019-07-24 2021-07-20 Juniper Networks, Inc. Guaranteed bandwidth for segment routed (SR) paths
CN112491708A (zh) * 2020-10-15 2021-03-12 中兴通讯股份有限公司 IPv6报文的路由头封装方法及装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017035752A1 (zh) * 2015-08-31 2017-03-09 华为技术有限公司 一种数据流报头压缩传输方法、系统及控制器、节点

Also Published As

Publication number Publication date
CN112804149A (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
US6538991B1 (en) Constraint-based routing between ingress-egress points in a packet network
US6584071B1 (en) Routing with service level guarantees between ingress-egress points in a packet network
EP3414874B1 (en) Border gateway protocol for communication among software defined network controllers
ES2293218T3 (es) Control de accesos para una red orientada a paquetes, considerando las exigencias de resiliencia.
EP2904747B1 (en) Mpls segment-routing
US9013976B2 (en) Rapid alternate paths for network destinations
US6901048B1 (en) Link-level protection of traffic in a packet-switched network
US9350639B2 (en) Forwarding data in a data communications network
EP2880826B1 (en) Label distribution and route installation in a loop-free routing topology using routing arcs
US20070242607A1 (en) Method and system for controlling distribution of network topology information
US20200336406A1 (en) Path optimization based on reducing dominating set membership to essential parent devices
US20070268821A1 (en) Rpr representation in ospf-te
EP4109831A1 (en) Routing method, routing device and computer-readable storage medium
US6992979B2 (en) Maintaining information to optimize restorable dynamic routing with shared backup
EP3985941A2 (en) Path switching method, device, and system
CN103078796A (zh) 一种路由计算方法和设备
US20090323709A1 (en) Determining and Distributing Routing Paths for Nodes in a Network
JP4005600B2 (ja) パケット網における効率的なイントラドメインルーティング
US9338080B2 (en) Performing offline BGP prefix origin and path validation at route reflectors
CN113542120B (zh) 一种路径选择方法及装置、计算机可读存储介质
CN112804149B (zh) 一种寻找路径的方法及装置
US9742670B2 (en) Non-eligible distance vector protocol paths as backup paths
CN110830355A (zh) 一种数据转发方法及网络设备
US9372821B2 (en) Limited functionality link state protocol node
Li et al. Fast Reroute in Hybrid Segment Routing Network

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