CN116723147A - 一种基于分段路由的转发控制方法、报文转发方法及装置 - Google Patents
一种基于分段路由的转发控制方法、报文转发方法及装置 Download PDFInfo
- Publication number
- CN116723147A CN116723147A CN202310478221.9A CN202310478221A CN116723147A CN 116723147 A CN116723147 A CN 116723147A CN 202310478221 A CN202310478221 A CN 202310478221A CN 116723147 A CN116723147 A CN 116723147A
- Authority
- CN
- China
- Prior art keywords
- segment
- node
- path
- segment identifier
- group
- 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 118
- 238000004422 calculation algorithm Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 13
- 238000005516 engineering process Methods 0.000 description 26
- 230000000903 blocking effect Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000008901 benefit 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
- 238000012545 processing Methods 0.000 description 3
- 230000001934 delay Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- 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/12—Shortest path evaluation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例公开了一种基于分段路由的转发控制方法,控制器根据目标网络拓扑所确定的符合路径约束条件的目标报文转发路径包括实链路和/或虚链路,其中,一条虚链路可以由多条实链路构成。指示目标转发路径的段标识列表包括:用于指示目标转发路径中包括的实链路的链路段标识,和/或,用于指示目标转发路径中包括的虚链路的节点段标识,节点段标识对应的节点为该节点段标识指示的虚链路的目的节点。当目标转发路径中包括虚链路时,段标识列表中仅需要包括指示该虚链路的节点段标识即可,无需包括组成该虚链路的多条实链路中各个链路的链路段标识。从而段标识列表中包括的段标识数量变少了,使得报文中可以携带更多净荷,提升了网络性能。
Description
本申请是申请日为2020年3月6日、申请号为202010152492.1、发明名称为“一种基于分段路由的转发控制方法、报文转发方法及装置”的申请的分案申请。
技术领域
本申请涉及通信领域,尤其涉及一种基于分段路由的转发控制方法、报文转发方法及装置。
背景技术
分段路由(segment routing,SR)可以用于指导报文转发。具体地,基于分段路由的多协议标签交换(Multi-Protocol Label Switching,MPLS)技术可以将分段路由技术应用于多协议标签交换(Multi-Protocol Label Switching,MPLS)技术中,用于指导报文转发。基于互联网协议第6版段路由(segment routing internet protocol version 6,SRv6)技术,可以将分段路由技术应用于互联网协议第六版(internet protocol version6,IPv6)报文的转发。
传统的利用分段路由技术指导报文转发时,存在报文载荷效率低、进一步导致网络性能低的问题。
发明内容
本申请实施例提供了一种基于分段路由的转发控制方法和基于分段路由的报文转发方法,可以提升网络性能。
第一方面,本申请实施例提供了一种基于分段路由的转发控制方法,该方法可以由控制器执行,控制器在确定用于指示满足路径约束条件的目标报文转发路径的段标识列表时,可以确定出包括段标识数量较少的段标识列表,从而减少段标识列表所占的数据量,使得报文中可以携带更多的净荷,从而提升网络性能。具体地,控制器可以获取目标网络拓扑和路径约束条件,并根据目标网络拓扑确定指示满足路径约束条件的报文转发路径的段标识列表,该段标识列表可以用于指导报文转发。其中,路径约束条件用于指示报文转发路径需要满足的性能要求,目标网络拓扑包括虚链路和实链路,实链路用于指示节点之间的邻接链路,虚链路用于在节点间存在不是邻接链路的最短路径时指示节点间的最短路径。具体地,控制器所确定的目标报文转发路径包括实链路和/或虚链路,相应的所确定的段标识列表包括:用于指示目标转发路径中包括的实链路的链路段标识,和/或,用于指示目标转发路径中包括的虚链路的节点段标识,其中,节点段标识对应的节点为该节点段标识指示的虚链路的目的节点。当目标转发路径中包括虚链路时,表示报文转发至指示该虚链路的节点段标识对应的节点时,需要经过若干个中间节点的转发,即需要经过多条实链路进行转发。要实现将报文转发至指示该虚链路的节点段标识对应的节点,若如传统技术中那样仅利用实链路确定段标识列表,则段标识列表中需要前述多条实链路中各个链路的链路段标识,而在本申请中,段标识列表中仅需要包括指示该虚链路的节点段标识即可。由此可见,利用本申请实施例的方案,与传统技术相比,所确定的段标识列表中包括的段标识数量变少了,从而使得段标识列表所占的数据量变少了,进一步地,使得报文中可以携带更多的净荷,从而提升网络性能。
在一种可能的实现方式中,满足路径约束条件的报文转发路径可能有多条。一条报文转发路径可以对应一个段标识列表。为了尽可能提升网络性能,前述目标转发路径可以是该多条报文转发路径中对应段标识数量最少的报文转发路径。
在一种可能的实现方式中,为了使得控制器能够快速确定出对应段标识数量最少的目标报文转发路径,从而确定出包括段标识数量最少的段标识列表。控制器可以将目标网络拓扑中的实链路和虚链路的路径开销设置为相同的值。这样一来,控制器则可以根据该目标网络拓扑和最短路径算法快速计算得到包含段标识数量最少的段标识列表。
在一种可能的实现方式中,控制器可以将目标网络拓扑中的实链路和虚链路的路径开销设置为1。这样一来,利用最短路径算法计算得到的目标报文转发路径的路径开销,即为指示目标转发路径的段标识列表包括的段标识数量。
在一种可能的实现方式中,目标网络拓扑可以是控制器预先构建的。具体地,控制器获取第一网络拓扑,第一网络拓扑由节点和节点间的邻接链路构成。换言之,第一网络拓扑中包括实链路,不包括虚链路。控制器获取第一网络拓扑之后,可以基于第一网络拓扑构建目标网络拓扑,目标网络拓扑中除了实链路之外,还包括虚链路。虚链路用于在节点间存在不是邻接链路的最短路径时指示该最短路径。控制器获取第一网络拓扑之后,可以对计算第一网络拓扑中的任意两个节点之间的最短路径,并且在两个节点中间存在不是实链路的最短路径时,在第一网络拓扑的基础上增加这两个节点之间的虚链路。
在一种可能的实现方式中,控制器确定该段标识列表之后,可以将该段标识列表发送给目标转发路径的头节点,以使得头节点基于该段标识列表转发报文。具体地,头节点可以将该段标识列表应用于传统的SRv6技术和SR MPLS技术中,从而完成报文转发。由于段标识列表包括的段标识的数量比传统技术所确定的段标识列表包括的段标识数量少,从而使得报文中包括的段标识的数据量变少了,相应的,报文中可携带的净荷的数据量变多了,从而提升了网络性能。
在一种可能的实现方式中,为了进一步优化网络性能,控制器可以不将整个段标识列表发送给头节点,而是对该段标识列表进行分组。控制器可以将该N个段标识分成m个段标识组发送给目标转发路径中的m个节点,一个段标识组可以用于指示一个子路径,该m子路径构成完整的转发路径。其中,该m个段标识组中的前(m-1)个段标识组中,一个段标识组包括该N个段标识中的K个段标识以及一个粘连段标识,第i个段标识组中的粘连段标识用于标识第(i+1)个段标识组。第i个段标识组中的最后一个段标识为第i个粘连节点的节点段标识,或者,第i个段标识组中的最后一个段标识用于指示达到第i个粘连节点的邻接链路。若N是K的整数倍,则第m个段标识组包括该N个段标识中的最后K个段标识,若N不是K的整数倍,则第m个段标识组包括该N个段标识中的最后b个段标识,b等于N除以K得到的余数。控制器将m个段标识组发送给m个节点在具体实现时,可以将第一个段标识组发送给头节点,将第j个段标识组和第j个段标识组的粘连段标识,对应发送给第(j-1)个粘连节点,j小于或者等于m,大于或者等于2。由于头节点接收到的段标识组中包括的段标识数量为K,而K是一个较小的值例如K等于3,因此,利用该方法,对于SRv6报文而言,可以减少分段路由头所占的数据量,从而使得一条SRv6报文可以携带更多的净荷,对于SR MPLS报文而言,可以减少标签栈所占的数据量,从而使得一条SR MPLS报文可以携带更多的净荷,从而提升了网络性能。
在一种可能的实现方式中,考虑到时延、带宽、抖动和丢包率均可以体现路径的性能,因此,路径约束条件可以包括时延约束条件、带宽约束条件、抖动约束条件以及丢包率约束条件中的其中一项或者多项。
第二方面,本申请实施例提供了一种报文转发方法,该方法可以由头节点执行,具体地,头节点可以获取第一段标识组,该第一段标识组包括多个段标识和一个粘连段标识,该粘连段标识用于标识第二段标识组。该第一段标识组是控制器发送给头节点时。在报文转发时,头节点获取第一报文之后,可以将第一段标识组添加至第一报文的报文中,并转发添加了第一段标识组的第一报文。第一节点转发添加了第一段标识组的第一报文时,第一段标识组中的多个段标识可以用于指导第一报文在头节点和第一粘连节点之间的转发。第一粘连节点接收到报文之后,可以根据粘连段标识确定指导报文转发的第二段标识组。由于第一段标识组中包括的段标识数量为K,而K是一个较小的值例如K等于3,因此,第一报文中可以携带更多的净荷,相应提升了网络性能。
在一种可能的实现方式中,若第一报文是SRv6报文,则第一报文的报文头包括分段路由头,头节点可以将第一段标识组添加至第一报文的分段路由头中。若第一报文是SRMPLS报文,则第一报文的报文头包括标签栈,头节点可以将第一段标识添加至第一报文的标签栈中。
第三方面,本申请实施例提供了一种报文转发方法,该方法可以由粘连节点执行。以第一粘连节点为例,第一粘连节点可以接收第一报文,第一报文中包括粘连段标识。第一粘连节点接收到第一报文之后,可以根据粘连段标识、以及粘连段标识和第二段标识组之间的对应关系,得到第二段标识组。而后,第一粘连节点将第二段标识组添加至第一报文的报文头中,并转发添加了第二段标识组的第一报文。由于携带净荷的数据量由头节点确定,而第二段标识组中包括的段标识数量小于或者第一段标识组中包括的段标识数量,因此,粘连节点在进行报文转发时,不会丢失净荷。利用本申请实施例的方案,可以在保证报文正常转发的情况下,提升网络性能。
在一种可能的实现方式中,若第一报文是SRv6报文,则第一报文的报文头包括分段路由头,第一粘连节点可以将第二段标识组添加至第一报文的分段路由头中。若第一报文是SR MPLS报文,则第一报文的报文头包括标签栈,第一粘连节点可以将第二段标识添加至第一报文的标签栈中。
第四方面,本申请实施例提供了一种基于分段路由的转发控制装置,包括:获取单元和确定单元。获取单元用于获取目标网络拓扑,所述目标网络拓扑包括虚链路和实链路,所述实链路用于指示节点之间的邻接链路,所述虚链路用于在节点间存在不是邻接链路的最短路径时指示所述最短路径;所述获取单元还用于获取路径约束条件,所述路径约束条件用于指示报文转发需要满足的性能要求;确定单元用于根据所述目标网络拓扑,确定指示满足所述路径约束条件的目标报文转发路径的段标识列表,所述段标识列表用于指导报文转发;其中:所述目标报文转发路径包括实链路和/或虚链路,所述段标识列表包括:用于指示所述目标转发路径中包括的实链路的链路段标识,和/或,用于指示所述目标转发路径包括的虚链路的节点段标识,所述节点段标识对应的节点为所述节点段标识指示的虚链路的目的节点。
在一种可能的实现方式中,所述目标报文转发路径为满足所述路径约束条件的报文转发路径中对应段标识数量最少的报文转发路径。
在一种可能的实现方式中,所述确定单元具体用于:根据所述目标网络拓扑和最短路径算法,确定指示满足所述路径约束条件的报文转发路径的段标识列表,所述虚链路的路径开销和所述实链路的路径开销被设置为相同的值。
在一种可能的实现方式中,所述虚链路的路径开销和所述实链路的路径开销被设置为1。
在一种可能的实现方式中,所述目标网络拓扑通过如下方式构建:获取第一网络拓扑,所述第一网络拓扑由节点和节点间的邻接链路构成;对于所述第一网络拓扑中的任意两个节点,执行如下操作,以得到所述目标网络拓扑:基于所述第一网络拓扑计算所述两个节点之间的最短路径;若所述两个节点间存在不是邻接链路的最短路径,在所述第一网络拓扑上增加所述两个节点之间的虚链路。
在一种可能的实现方式中,所述装置还包括第一发送单元。第一发送单元用于将所述段标识列表包括的N个段标识以K为拆分基准分成m个段标识组发送给所述目标转发路径的m个节点,其中,m等于N除以K向上取整得到的数值,所述m个段标识组中的前(m-1)个段标识组中,一个段标识组包括所述N个段标识中的K个段标识以及一个粘连段标识,第i个段标识组中的粘连段标识用于标识第(i+1)个段标识组,若N是K的整数倍,则第m个段标识组包括所述N个段标识中的最后K个段标识,若N不是K的整数倍,则第m个段标识组包括所述N个段标识中的最后b个段标识,b等于N除以K得到的余数,第i个段标识组中的最后一个段标识为第i个粘连节点的节点段标识,或者,第i个段标识组中的最后一个段标识用于指示达到第(i+1)个粘连节点的邻接链路,i大于或者等于1,且小于或者等于(m-1);其中:所述发送单元具体用于将第一个段标识组发送给头节点,以指示头节点根据接收到的段标识组将报文转发给第一个粘连节点,并将第j个段标识组和第j个段标识组的段标识组标识,发送给第(j-1)个粘连节点,以指示第(j-1)个粘连节点根据所述第j个段标识组的粘连段标识确定第j个段标识组,并根据第j个段标识组转发所述报文,其中,j大于或者等于2,小于或者等于m。
在一种可能的实现方式中,所述装置还包括第二发送单元。第二发送单元用于将所述段标识列表发送给所述目标转发路径的头节点。
在一种可能的实现方式中,所述路径约束条件,包括以下任意一项或者多项:时延约束条件、带宽约束条件、抖动约束条件和丢包率约束条件。
第五方面,本申请实施例提供了一种报文转发装置,应用于头节点,所述装置包括:获取单元、添加单元和转发单元。获取单元用于获取第一段标识组,所述第一段标识组包括多个段标识和一个粘连段标识,所述粘连段标识用于标识第二段标识组,所述第一段标识组来自于控制器;所述获取单元还用于获取第一报文;添加单元用于将所述第一段标识组添加至所述第一报文的报文头中;转发单元用于转发添加了所述第一段标识组的第一报文,其中,所述多个段标识用于指导所述第一报文在所述头节点和第一粘连节点之间的转发,所述粘连段标识用于所述第一粘连节点获取用于指导报文转发的第二段标识组。
在一种可能的实现方式中,所述添加单元具体用于:将所述第一段标识组添加至所述第一报文的分段路由头中,所述第一报文为基于互联网协议第6版段路由SRv6报文,所述第一报文的报文头包括所述分段路由头;或者,将所述第一段标识组添加至所述第一报文的标签栈中,所述第一报文为基于段路由的多协议标签交换SR MPLS报文,所述第一报文的报文头包括所述标签栈。
第六方面,本申请实施例提供了一种报文转发装置,该装置应用于粘连节点,所述装置包括:接收单元、确定单元、添加单元和转发单元。接收单元用于接收第一报文,所述第一报文中包括粘连段标识;确定单元用于根据所述粘连段标识以及所述粘连段标识和第二段标识组之间的对应关系,得到所述第二段标识组,所述对应关系来自于控制器;添加单元用于将所述第二段标识组添加至所述第一报文的报文头中;转发单元用于转发添加了所述第二段标识组的第一报文。
在一种可能的实现方式中,所述添加单元具体用于:将所述第二段标识组添加至所述第一报文的分段路由头中,所述第一报文为基于互联网协议第6版段路由SRv6报文,所述第一报文的报文头包括所述分段路由头;或者,将所述第二段标识组添加至所述第一报文的标签栈中,所述第一报文为基于段路由的多协议标签交换SR MPLS报文,所述第一报文的报文头包括所述标签栈。
第七方面,本申请实施例提供了一种设备。所述设备包括处理器和存储器。所述存储器用于存储指令或计算机程序。所述处理器用于执行所述存储器中的所述指令或计算机程序,执行以上第一方面任意一项所述的方法,或者执行以上第二方面任意一项所述的方法,或者执行以上第三方面任意一项所述的方法。
第八方面,本申请实施例提供了一种计算机可读存储介质,包括指令或计算机程序,当其在计算机上运行时,使得计算机执行以上第一方面任意一项所述的方法,或者执行以上第二方面任意一项所述的方法,或者执行以上第三方面任意一项所述的方法。
第九方面,本申请实施例提供了一种包含指令或计算机程序的计算机程序产品,当其在计算机上运行时,使得计算机执行以上第一方面任意一项所述的方法,或者执行以上第二方面任意一项所述的方法,或者执行以上第三方面任意一项所述的方法。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种SRv6报文的报文头的示意图;
图2为本申请实施例提供的一种报文转发方法的示意图;
图3为本申请实施例提供的一种基于分段路由的转发控制方法的流程示意图;
图4为本申请实施例提供的一种构建目标网络拓扑的流程示意图;
图5为本申请实施例提供的一种网络拓扑的结构示意图;
图6为本申请实施例提供的报文转发方法的流程示意图;
图7为本申请实施例提供的报文转发方法的流程示意图;
图8为本申请实施例提供的一种基于分段路由的转发控制装置的示意图;
图9为本申请实施例提供的报文转发装置的结构示意图;
图10为本申请实施例提供的报文转发装置的结构示意图;
图11为本申请实施例提供的设备的结构示意图。
具体实施方式
本申请实施例提供了一种基于分段路由的转发控制方法和基于分段路由的报文转发方法,用于解决利用分段路由技术用于指导报文转发时,存在报文载荷效率低、进一步导致网络性能低的问题。
为方便理解,首先以SRv6技术为例分段路由技术如何指导报文转发。
利用SRv6技术转发报文时,由头节点指定完整的报文转发路径,中间节点根据头节点指示的转发路径指导报文转发,直至将报文转发至目的节点。其中:利用SRv6技术转发的报文,也可以被称为SRv6报文。具体地,可以参见图1进行理解,图1为本申请实施例提供的一种SRv6报文的报文头的示意图。如图1所示,SRv6报文的报文结构为IPv6报文头101,分段路由头(segment routing header,SRH)102和净荷103。其中,分段路由头102包括指示报文转发路径的段标识列表(segment identifier list,SID list)。该段标识列表可以由若干个IPv6地址构成,该IPv6地址用于指示报文转发过程中经过的中间节点。或者,段标识列表可以携带若干个邻接链路的标识,邻接链路的标识用于指示报文转发所经过的邻接链路。前述IPv6地址和邻接链路的标识均为128比特(bit)。当然,分段路由头102中还可以包括其它字段,例如路由头部类型(routing type),此处不再一一列举说明。
本发明实施例中的两个节点之间的邻接链路,指的是用于该两个节点直接通信的链路,当其中一个节点通过该邻接链路向另一个节点发送报文时,该另一个节点为该前一节点的下一跳。
以下结合图2介绍利用SRv6技术进行报文转发时,头节点以及各中间节点转发报文的具体方式。图2为本申请实施例提供的一种报文转发方法的示意图。如图2所示,头节点201确定报文依次经过节点202和节点203转发至目的节点204。头节点201获取的SRv6报文的分段路由头中携带地址列表1,该地址列表1中包括3个IPv6地址,分别为地址2,地址3和地址4,其中:地址2为节点202的地址、地址3为节点203的地址、地址4为节点204的地址。节点201获取SRv6报文之后,对分段路由头中的地址列表进行分析,确定转发的下一节点为节点202,故而节点201将该SRv6报文转发至节点202。节点202接收到的SRv6报文中也包括前述地址列表1。节点202接收到该SRv6报文之后,确定地址2的下一个地址为地址3,从而确定转发的下一节点为节点203,故而节点202将该SRv6报文转发至节点203,依次类推,节点203接收到的SRv6报文中也包括前述地址列表1,节点203接收到该SRv6报文之后,确定地址3的下一个地址为地址4,从而确定转发的下一节点为节点204,故而节点203将该SRv6报文转发至节点204,从而完成报文转发。
需要说明的是,前述节点201、节点202、节点203和节点204均为支持SRv6技术的节点。虽然图2中未示出,但是节点201在将SRv6报文转发至节点202的过程中,也可以经过若干个其它节点。另外,图2以分段路由头102中携带节点的IPv6地址为例进行说明,但是,分段路由头102中也可以用于携带若干个邻接链路的标识,具体报文转发方式与携带IPv6地址的转发方式相同,此处不再赘述。
在实际应用中,以太报文的长度需要在一个合理的范围内,即以太报文的数据量不可以太大。而SRv6报文由三部分组成,即IPv6报文头101,分段路由头102和净荷103。可以理解的是,若段标识列表中包括的段标识的数量很多,则会导致分段路由头102所占的数据量比较大。而整个SRv6报文的数据量不能超过一定的阈值,分段路由头102所占的数据量比较大,则会影响净荷103的数据量。净荷103的数据量越小,则导致整个网络的网络性能比较低。因为相对于净荷103的数据量比较大而言,净荷103的数据量越小,一条报文流则需要划分成更多条报文来进行转发,报文数量越多,则会消耗更多的网络资源。对于一条报文流而言,完成该报文流转发所消耗的网络资源越少,则对应网络性能越高,反之,完成该报文流转发所消耗的网络资源越多,则对应网络性能越低。
类似的,当利用SR MPLS技术转发报文时,前述段标识列表位于报文头的标签栈中,若标签栈所占的数据量较大,则会导致净荷所占的数据量较少,相应也会存在网络性能低的问题。关于利用SR MPLS技术转发报文的报文转发流程,此处不再详细说明。
传统技术中,在利用分段路由技术转发报文时,可以由控制器确定报文转发路径,并将指示该报文转发路径的段标识列表发送给头节点。但是,传统技术所确定的段标识列表往往包括的段标识数量比较多,导致网络性能较低。发明人发现,传统技术中段标识列表包括段标识数量比较多的原因在于,在确定段标识列表时,是基于原始的网络拓扑进行计算的,段标识列表中的段标识均为指示邻接链路的链路段标识,此处提及的原始的网络拓扑,可以对应于下文提及的第一网络拓扑。
为了解决这个问题,本申请实施例提供了一种基于分段路由的转发控制方法,具体地,控制器在确定用于指示满足路径约束条件的目标报文转发路径的段标识列表时,可以确定出包括段标识数量较少的段标识列表,从而减少段标识列表所占的数据量,使得报文中可以携带更多的净荷,从而提升网络性能。以下结合附图对该方法进行介绍。
参见图3,该图为本申请实施例提供的一种基于分段路由的转发控制方法的流程示意图。图3所示的报文转发方法,可以通过如下S101-S103实现。
S101:控制器获取目标网络拓扑。
在本申请实施例中,控制器例如可以为网络管理设备。目标网络拓扑包括虚链路和实链路,实链路用于指示节点之间的邻接链路,虚链路用于在节点间的实链路不是最短路径的情况下指示节点之间的最短路径,或者,虚链路用于在节点间存在不是邻接链路的最短路径时指示节点间的最短路径。换言之,若节点A和节点B之间存在虚链路,且不存在实链路,则表示节点A和节点B之间存在一条或者多条最短路径。若节点A和节点B之间存在虚链路,也存在实链路,则表示节点A和节点B之间的实链路不是最短路径,或者,表示节点A和节点B之前的最短路径有多条,并且,节点A和节点B之间的实链路也是最短路径。在本申请实施例中,目标网络拓扑可以是控制器预先构建的。具体地,参见图4,该图为本申请实施例提供的一种构建目标网络拓扑的流程示意图。图4所示的方法,可以通过如下S201-S203实现。
S201:控制器获取第一网络拓扑,第一网络拓扑由节点和节点间的邻接链路构成。
在本申请实施例中,控制器能够从网络设备处获得第一网络拓扑,第一网络拓扑由节点和节点间的邻接链路构成,换言之,第一网络拓扑中包括网络中存在的各个实链路。具体地,网络中的各网络设备可以利用内部网关协议(Interior Gateway Protocol,IGP)收集网络拓扑,并利用边界网关协议(Border Gateway Protocol,BGP)将收集的网络拓扑进行汇总之后上报给控制器,从而使得控制器可以获得第一网络拓扑。当然,控制器还可以从网络设备处获取各个实链路对应的性能参数,例如获取各实链路对应的开销(cost)、时延、带宽、抖动以及丢包率等性能参数。从而得到第一网络拓扑中各实链路的性能参数。
控制器获取第一网络拓扑之后,可以基于第一网络拓扑构建目标网络拓扑,目标网络拓扑中除了包括S201中提及的实链路之外,还包括虚链路。虚链路用于在节点间存在不是邻接链路的最短路径时指示该最短路径。控制器获取第一网络拓扑之后,可以对第一网络拓扑中的任意两个节点执行S202至S203,从而得到目标网络拓扑。
S202:控制器基于第一网络拓扑计算两个节点之间的最短路径。
S203:若该两个节点之间存在不是邻接链路的最短路径,控制器在第一网络拓扑上增加该两个节点之间的虚链路。
关于S202和S203,需要说明的是,控制器获取第一网络拓扑之后,可以根据第一网络拓扑中实链路的路径开销计算该两个节点之间的最短路径。具体地,控制器可以利用SPF算法计算两个节点之间的一条或多条最短路径,从而建立等价多路径路由(equal-costmulti-path routing,ECMP)。其中,最短路径即为IGP开销最短路由。计算得到该两个节点之间的最短路径之后,即可确定是否需要在这两个节点间增加虚链路。具体地,当两个节点之间存在实链路时,若该两个节点之间的实链路不是最短路径,或者,虽然该两个节点间的实链路是最短路径,但是还存在其它路径也是最短路径,则需要在节点间增加虚链路。换言之,若两个节点间的实链路是这两个节点间的唯一最短路径,则无需增加虚链路,否则,控制器可以在这两个节点间增加虚链路。当两个节点之间不存在实链路时,则这两个节点之间的最短路径必然不是实链路,相应地,控制器在这两个节点间增加虚链路。
在本申请实施例中,控制器在第一网络拓扑中增加虚链路时,还可以对应计算所添加的虚链路对应的性能参数,以便于后续根据该虚链路的性能参数以及实链路的性能参数计算符合路径约束条件的目标报文转发路径。
具体地,虚链路对应的性能参数为时延、带宽、抖动和丢包率中的其中一项或者多项。虚链路对应的性能参数,可以根据组成该虚链路的多条实链路的性能参数计算得到。例如,虚链路的时延是组成该虚链路的各条实链路的时延之和,虚链路的带宽为组成该虚链路的各条实链路的带宽的最小值,虚链路的抖动为组成该虚链路的各条实链路的抖动的最大值,虚链路的丢包率为组成该虚链路的各条实链路的丢包率之和。考虑到在实际应用中,第一网络拓扑以及各实链路的性能参数会发生改变,因此,在本申请实施例中,前述目标网络拓扑和各个虚链路对应的性能参数可以按照一定的周期进行更新。
另外,考虑到在实际应用中,两个节点间可能存在多条非邻接链路的最短路径,即虚链路可以用于指示多条不是实链路的最短路径,对于这种情况,虚链路对应的性能参数,可以根据该多条非邻接链路的最短路径分别对应的性能参数确定。例如,可以将该多条非邻接链路的最短路径的最差性能参数作为该虚链路的性能参数。举例说明,可以将该多条非邻接链路的最短路径的时延的最大值作为该虚链路的时延,将该多条非邻接链路的最短路径的带宽的最小值作为该虚链路的带宽,该多条非邻接链路的最短路径的抖动的最大值作为该虚链路的抖动,该多条非邻接链路的最短路径的丢包率的最大值作为该虚链路的丢包率。采用这种方式确定虚链路的性能参数的好处在于,当两个节点间存在多条不是邻接链路的最短路径时,即虚链路可以用于指示多条不是邻接链路的最短路径时,由于虚链路的性能参数指的是该多条不是邻接链路的最短路径的最差性能,从而使得在实际报文转发过程中,无论报文转发实际所经过的最短路径是那一条路径,均能够满足前述路径约束条件。
关于第一网络拓扑和目标网络拓扑,可以结合图5进行理解,图5为本申请实施例提供的一种网络拓扑的结构示意图。
图5左侧所示的网络拓扑中,一个圆圈代表一个节点,圆圈中的数字代表节点编号,实线表示实链路,实线上的数字表示路径开销。从图5可以看出,节点1和节点2之间的实链路的路径开销为100,从节点1依次经过节点5、节点4、节点3到达节点2的路径开销为40,从节点1依次经过节点5、节点6、节点3到达节点2的路径开销为40,由此可见,节点1和节点2之间的实链路不是最短路径,且存在两条最短路径。故节点1和节点2之间存在虚链路。另外,节点2和节点4之间无实链路,故而节点2和节点4之间的最短路径不可能是实链路,故而节点2和节点4之间存在虚链路。节点3和节点4之间的实链路为唯一最短路径,故而节点3和节点4之间无虚链路。依次类推,可以确定任意两个节点之间是否存在虚链路,进一步得到目标网络拓扑。如图5右侧所示,图5右侧即为目标网络拓扑的示意图,图5右侧所示的目标网络拓扑中,既包括实链路,也包括虚链路。
S102:控制器获取路径约束条件,该路径约束条件用于指示报文转发需要满足的性能要求。
在本申请实施例中,考虑到不同的业务对业务报文的传输性能有着不同的要求。例如,一些业务要求传输时延尽量低,而另一些业务则要求传输带宽尽量大。因此,确定出满足传输性能要求的报文转发条件尤为重要。鉴于此,在本申请实施例中,控制器在确定指示目标报文转发路径的段标识列表时,可以结合路径约束条件来确定。本申请实施例不具体限定该路径约束条件,由于时延、带宽、抖动和丢包率均可以体现路径的性能,因此,路径约束条件可以包括时延约束条件、带宽约束条件、抖动约束条件以及丢包率约束条件中的其中一项或者多项。
在本申请实施例中,控制器可以从其它设备处获取该路径约束条件,也可以通过人机交互接口获取该路径约束条件,本申请实施例不做具体限定。关于路径约束条件,例如可参见下表1进行理解,表1示出了目的IP地址为10.98.48.5的报文流的路径约束条件的标识为Q1,目的IP地址为10.164.19.5的报文流的路径约束条件的标识为Q2。其中,Q1例如可以为传输时延小于2ms,传输带宽大于50M;Q2例如可以为传输带宽大于100M。
表1
S103:控制器根据目标网络拓扑,确定指示满足该路径约束条件的目标报文转发路径的段标识列表,该段标识列表用于指导报文转发。
控制器获取目标网络拓扑之后,可以根据目标网络拓扑中的实链路、虚链路以及实链路和虚链路对应的性能参数,计算符合路径约束条件的目标报文转发路径。具体地,控制器可以根据SPF算法计算符合路径约束条件的目标报文转发路径。在本申请实施例中,目标报文转发路径由实链路和/或虚链路构成。
在本申请实施例中,目标报文转发路径符合路径约束条件,指的是目标报文转发路径的性能参数符合路径约束条件所指示的性能要求。若路径约束条件包括时延约束条件,则目标报文转发路径满足路径约束条件,指的是目标报文转发路径的时延小于时延约束条件指示的时延最大值。若路径约束条件包括带宽约束条件,则目标报文转发路径满足路径约束条件,指的是目标报文转发路径的带宽大于带宽约束条件指示的带宽最小值。若路径约束条件包括抖动约束条件,则目标报文转发路径满足路径约束条件,指的是目标报文转发路径的抖动小于抖动约束条件指示的抖动最大值。若路径约束条件包括丢包率约束条件,则目标报文转发路径满足路径约束条件,指的是目标报文转发路径对应的丢包率小于丢包率约束条件指示的丢包率最大值。
其中,目标报文转发路径的性能参数,可以根据构成该目标报文转发路径的各段链路的性能参数得到。例如,目标报文转发路径的时延是组成该目标报文转发路径的各条链路的时延之和,目标报文转发路径的带宽为组成该目标报文转发路径的各条链路的带宽的最小值,目标报文转发路径的抖动为组成该目标报文转发路径的各条链路的抖动的最大值,目标报文转发路径的丢包率为组成该目标报文转发路径的各条链路的丢包率之和。
确定目标报文转发路径之后,控制器可以进一步确定指示目标报文转发路径的段标识列表。
关于该段标识列表,需要说明的是,该段标识列表可以包括N个按序排列的段标识,该N个按序排列的段标识指示报文转发过程中依次经过的实链路或虚链路。具体地,该N个段标识包括节点段标识和/或链路段标识。节点段标识例如可以为该节点的IPv6地址,或者为该节点的节点标识,本申请实施例不做具体限定。链路段标识例如可以为邻接链路的链路标识,该邻接链路的链路标识可以为128比特,也可以小于128比特,本申请实施例不做具体限定。如上所述,目标报文转发路径由实链路和/或虚链路组成,在本申请实施例中,段标识列表中包括指示目标转发路径中包括的实链路的链路标识,以及包括指示目标转发路径中包括的虚链路的节点段标识,其中,节点段标识对应的节点为该节点段标识指示的虚链路的目的节点。关于指示虚链路的节点段标识,需要说明的是,若第一节点段标识为第一节点的IPv6地址,而第一节点段标识用于指示第一虚链路,则第一虚链路中的目的节点为该第一节点段标识对应的节点。关于段标识列表,现结合图5进行说明,假设目标转发路径包括节点1至节点3之间的虚链路以及节点3和节点4之间的实链路,其中节点1为头节点。则目标转发路径的段标识列表为:节点3的节点段标识以及指示节点3和节点4之间的实链路的链路段标识。
通过以上描述可知,利用本申请实施例的方案,当目标转发路径中包括虚链路时,表示报文转发至指示该虚链路的节点段标识对应的节点时,需要经过若干个中间节点的转发,即需要经过多条实链路进行转发。要实现将报文转发至指示该虚链路的节点段标识对应的节点,若如传统技术中那样仅利用实链路确定段标识列表,则段标识列表中需要前述多条实链路中各个链路的链路段标识,而在本申请中,段标识列表中仅需要包括指示该虚链路的节点段标识即可。由此可见,利用本申请实施例的方案,与传统技术相比,所确定的段标识列表中包括的段标识数量相较于传统技术而言变少了,从而使得段标识列表所占的数据量变少了,进一步地,使得报文中可以携带更多的净荷,从而提升网络性能。
从该目标转发路径的首节点到该目标转发路径的尾节点的满足路径约束条件的报文转发路径可能有多条。一条报文转发路径可以对应一个段标识列表。为了尽可能提升网络性能,前述目标转发路径可以是该多条报文转发路径中对应段标识数量最少的报文转发路径。
当目标转发路径为满足路径约束条件的报文转发路径中对应段标识数量最少的报文转发路径时,确定目标报文转发路径可以有多种实现方式,以下介绍两种可能的实现方式。
在本申请实施例的一种实现方式中,控制器可以首先根据目标网络拓扑确定能够指示满足前述路径约束条件的多个报文转发路径,而后,控制器分别确定出该多个报文转发路径对应的段标识列表,并将包括段标识数量最少的段标识列表对应的报文转发路径确定为目标报文转发路径。
在本申请实施例的一个实现方式中,控制器构建目标网络拓扑之后,为了使得控制器能够快速确定出目标报文转发路径,从而确定出包括段标识数量最少的段标识列表。控制器可以将目标网络拓扑中的实链路和虚链路的路径开销设置为相同的值,例如均设置为1,又如均设置为2。这样一来,控制器则可以根据该目标网络拓扑和最短路径算法快速计算得到包含段标识数量最少的段标识列表。因为最短路径算法的原理即为计算路径开销最小的路径,而由于实链路和虚链路的开销均相同,即在目标网络拓扑中,无论虚链路是由多少条实链路构成的,但是其路径开销也相当于一条邻接链路的开销。故而控制器计算得到的最小开销即为段标识数量的最小值。采用这种方式,可以快速确定指示目标报文转发路径的、包含段标识数量最少的段标识列表,而且可以节省计算资源。可以理解的是,当目标网络拓扑中的实链路和虚链路的路径开销均设置为1时,利用最短路径算法计算得到的目标报文转发路径的路径开销,即为指示目标转发路径的段标识列表包括的段标识数量。
在本申请实施例中,控制器利用最短路径算法和目标拓扑计算满足路径约束条件的目标报文转发路径时,可以利用K条最短路径算法(k-shortest paths,KSP)计算得到K条报文转发路径,而后,确定该K条报文转发路径是否满足前述路径约束条件,并将满足路径约束条件且对应路径开销最小的报文转发路径确定为目标报文转发路径。
在本申请实施例的一种实现方式中,控制器确定该段标识列表之后,可以将该段标识列表发送给目标报文转发路径的头节点,以使得头节点基于该段标识列表转发报文。具体地,头节点可以将该段标识列表应用于传统的SRv6技术和SR MPLS技术中,从而完成报文转发。由于S103中的段标识列表包括的段标识的数量比传统技术所确定的段标识列表包括的段标识数量少,从而使得报文中包括的段标识的数据量变少了,相应的,报文中可携带的净荷的数据量变多了,从而提升了网络性能。
在另一种实现方式中,考虑到有可能虽然S103中的段标识列表包括的段标识的数量比传统技术所确定的段标识列表包括的段标识数量少,但是S103中的段标识列表包括的段标识数量还是比较多,从而导致SRv6报文中分段路由头所占的数据量、或者SR MPLS报文中标签组所占的数据量还是比较大,从而使得网络性能不能得以明显提升。鉴于此,在本申请实施例的又一种实现方式中,当S103中的段标识列表包括的数量比较大时,控制器不再将整个段标识列表发送给头节点,而是对该段标识列表进行分组。即不再由头节点指定完整的转发路径,而是将转发路径划分成若干个子路径,头节点用于指示若干子路径中的第一个子路径。具体地,当N大于K时,控制器可以以K为单元对N进行分组。具体地,则控制器可以将该N个段标识分成m个段标识组发送给m个节点。其中,K为小于或者等于第一阈值的整数,第一阈值例如可以等于3。第一阈值的取值例如可以为预先确定的最大段标识深度(maximum SID depth,MSD),该MSD可以根据报文载荷效率计算得到,也可以是一个预设的值,本申请实施例不做具体限定。
在本申请实施例中,控制器可以将该N个段标识分成m个段标识组发送给目标报文转发路径中包括的m个节点,一个段标识组可以用于指示一个子路径,该m子路径构成完整的转发路径。其中,该m个段标识组中的前(m-1)个段标识组中,一个段标识组包括该N个段标识中的K个段标识以及一个粘连段标识,第i个段标识组中的粘连段标识用于标识第(i+1)个段标识组。第i个段标识组中的最后一个段标识为第i个粘连节点的节点段标识,或者,第i个段标识组中的最后一个段标识用于指示达到第i个粘连节点的邻接链路。若N是K的整数倍,则第m个段标识组包括该N个段标识中的最后K个段标识,若N不是K的整数倍,则第m个段标识组包括该N个段标识中的最后b个段标识,b等于N除以K得到的余数。
关于粘连节点,需要说明的是,粘连节点指的是可以从控制器处接收段标识组的节点,粘连节点除了可以从控制器处接收段标识组之外,还可以进行报文转发。
控制器将该N个段标识分成m个段标识组发送给m个节点在具体实现时,可以通过如下步骤A-步骤B实现。
步骤A:控制器将第一个段标识组发送给头节点。
步骤B:控制器将第j个段标识组和第j个段标识组的粘连段标识,对应发送给第(j-1)个粘连节点,j小于或者等于m,大于或者等于2。
如上可知,第一个段标识组包括K个段标识和第二个段标识组的粘连段标识。具体地,第一个段标识组包括该N个段标识组中的前K个段标识组,且该K个段标识组的排列顺序,与该K个段标识组在该N个段标识中的排列顺序相同。可以理解的是,第一段标识组中的K个段标识,可以用于指示S103中提及的目标报文转发路径的一部分,即S103中提及的目标报文转发路径为完整的目标报文转发路径,而第一段标识组所指示的目标报文转发路径为该完整转发路径的一部分。在本申请实施例中,第一个段标识组除了包括K个段标识组之外,还包括第二个段标识组的粘连段标识。第一个段标识组中的最后一个段标识为第一个粘连节点的节点段标识,或者,第一段标识组中的最后一个段标识,用于指示达到第一个粘连节点的邻接链路。换言之,第一节点若根据第一粘连段标识进行报文转发,可以将报文转发至第一个粘连节点。
对于前述m个节点中除头节点之外的粘连节点而言,控制器可以将第j个段标识组和第j个段标识组的粘连段标识,对应发送给第(j-1)个粘连节点。需要说明的是,第(j-1)个粘连节点接收到的段标识组中包括的段标识,其排列顺序与该段标识在前述N个段标识中的排列顺序相同。
第(j-1)个粘连节点接收到第j个段标识组和第j个段标识组的粘连段标识之后,可以保存第j个段标识组和第j个段标识组的粘连段标识之间的映射关系。这样一来,当第(j-1)个粘连节点接收到报文时,若该报文中包括第j个段标识组的粘连段标识,则第(j-1)个节点即可根据第j个段标识组的粘连段标识确定第j个段标识组,并根据第j个段标识组转发报文,从而完成该报文的转发。
关于步骤A和步骤B,现举例说明,例如:假设K等于3,N等于6,则控制器将该6个段标识划分成2个段标识组发给2个节点,即发送给头节点和一个粘连节点,其中,第一个段标识组包括该6个段标识中的前3个段标识和第二个段标识组的粘连段标识,第二个段标识组包括该6个段标识中的后3个段标识。控制器将第一个段标识组发送给头节点,并将第二个段标识组的粘连段标识和第二个段标识组发送给该粘连节点。其中,第一个段标识组的最后一个段标识为该粘连节点的节点段标识,或者,第一个段标识组的最后一个段标识用于指示到达该粘连节点的邻接链路。
又如:假设K等于3,N等于7,则控制器将该7个段标识划分成3个段标识组发给3个节点,即发送给头节点和两个粘连节点。其中,第一个段标识组包括该7个段标识中的前3个段标识和第二个段标识组的粘连段标识;第二个段标识组包括该7个段标识中的第4个段标识至第6个段标识、以及第三个段标识组的粘连段标识;第三个段标识组包括该7个段标识中的最后一个段标识。控制器将第一个段标识组发送给头节点,并将第二个段标识组的粘连段标识和第二个段标识组发送给第一个粘连节点,将第三个段标识组的粘连段标识和第三个段标识组发送给第二个粘连节点。其中,第一个段标识组的最后一个段标识为第一个粘连节点的节点段标识,或者,第一个段标识组的最后一个段标识用于指示到达第一个粘连节点的邻接链路。第二个段标识组的最后一个段标识为第二个粘连节点的节点段标识,或者,第二个段标识组的最后一个段标识用于指示到达第二个粘连节点的邻接链路。
通过以上描述可知,由于头节点接收到的段标识组中包括的段标识数量为K,而K是一个较小的值例如K等于3,因此,利用该方法,对于SRv6报文而言,可以减少分段路由头所占的数据量,从而使得一条SRv6报文可以携带更多的净荷,对于SR MPLS报文而言,可以减少标签栈所占的数据量,从而使得一条SR MPLS报文可以携带更多的净荷,从而提升了网络性能。
以上对本申请实施例提供的转发控制方法进行了介绍。接下来结合附图介绍头节点根据接收到的段标识组转发报文的方式,以及介绍粘连节点根据接收到的段标识组以及粘连段标识转发报文的方式。
参见图6,该图为本申请实施例提供的报文转发方法的流程示意图。图6所示的方法,可以由头节点执行,该包括S301-S303。
S301:头节点获取第一段标识组,该第一段标识组包括多个段标识和一个粘连段标识,该粘连段标识用于标识第二段标识组。
在本申请实施例中,第一段标识组即为步骤A中提及的第一个段标识组,如上文所述,第一段标识组可以包括K个段标识和第二个段标识组的粘连段标识,因此,S301中的粘连段标识即为步骤B中提及的第二个段标识组的粘连段标识,此处提及的第二段标识组即为步骤B中提及的第二个段标识组。即该粘连段标识用于标识第二个段标识组。在本申请实施例中,第一段标识组所包括的K个段标识组中的最后一个段标识,为第一粘连节点的节点段标识,或者,第一段标识组所包括的K个段标识中的最后一个段标识,用于指示到达第一粘连节点的邻接链路,此处提及的第一粘连节点,即为上文步骤B中的第一个粘连节点。
S302:头节点获取第一报文,并将第一段标识组添加至第一报文的报文头中。
需要说明的是,头节点可以自身生成第一报文,也可以从其它设备处获取第一报文,本申请实施例不作具体限定。该第一报文为需要通过该目标报文转发路径转发的报文,如目的IP地址为10.98.48.5的报文。若第一报文是SRv6报文,则第一报文的报文头包括分段路由头,头节点可以将第一段标识组添加至第一报文的分段路由头中。若第一报文是SRMPLS报文,则第一报文的报文头包括标签栈,头节点可以将第一段标识添加至第一报文的标签栈中。
需要说明的是,控制器也可以确定不止一条具有相同段标识数的目标报文转发路径,并将该不止一条目标报文转发路径分别对应的段标识列表发送给该头节点。相应地,该头节点可以将获取的报文分担到该不止一条目标报文转发路径上发送,相应地,当通过其中一条目标报文转发路径发送获取的报文时,将该目标报文转发路径对应的段标识列表添加到该报文的报文中。
S303:头节点转发添加了第一段标识组的第一报文。
头节点将第一段标识组添加至第一报文的报文头中之后,则可以转发该第一报文。由于第一段标识组所包括的K个段标识组中的最后一个段标识,为第一粘连节点的节点段标识,或者,第一段标识组所包括的K个段标识中的最后一个段标识,用于指示到达第一粘连节点的邻接链路。因此,头节点转发的第一报文,会转发至第一粘连节点。具体地,第一段标识组中的多个段标识可以用于指导第一报文在头节点和第一粘连节点之间的转发。第一粘连节点接收到第一报文之后,可以根据第一粘连段标识获取第二段标识组,并根据第二段标识组转发接收到的报文。
在本申请实施例中,若第一报文是SRv6报文,则头节点可以按照传统的SRv6报文的转发方式转发添加了第一段标识组的第一报文。若第一报文是SR MPLS报文,头节点可以按照传统的SR MPLS报文的转发方式转发添加了第一段标识组的第一报文。关于传统的SRv6报文的转发方式以及SR MPLS报文的转发方式,此处不再详细描述。
参见图7,该图为本申请实施例提供的报文转发方法的流程示意图。图7所示的方法,可以由粘连节点执行,以下以第一粘连节点为执行主体为例进行说明,图7所示的方法包括S401-S404。
S401:第一粘连节点接收第一报文,第一报文中包括粘连段标识。
S402:第一粘连节点根据粘连段标识、以及粘连段标识和第二段标识组之间的对应关系,得到第二段标识组。
通过以上步骤B可知,第一粘连节点中存储有第二个段标识组和第二个段标识组的粘连段标识之间的对应关系。S402中提及的第二段标识组即为步骤B中提及的第二个段标识组。换言之,第一粘连节点中存储有第二段标识组和粘连段标识的对应关系。当第一粘连节点接收到第二报文之后,即可根据第二报文中携带的粘连段标识、以及本地存储的粘连段标识和第二段标识组之间的对应关系,得到第二段标识组。从而根据第二段标识组对第一报文进行转发。
S403:第一粘连节点将第二段标识组添加至第一报文的报文头中。
在本申请实施例中,若第一报文是SRv6报文,则第一报文的报文头包括分段路由头,第一粘连节点可以将第二段标识组添加至第一报文的分段路由头中。若第一报文是SRMPLS报文,则第一报文的报文头包括标签栈,第一粘连节点可以将第二段标识添加至第一报文的标签栈中。
S404:第一粘连节点转发添加了第二段标识组的第一报文。
在本申请实施例中,若第一报文是SRv6报文,则第一粘连节点可以按照传统的SRv6报文的转发方式转发添加了第二段标识组的第一报文。若第一报文是SR MPLS报文,第一粘连节点可以按照传统的SR MPLS报文的转发方式转发添加了第二段标识组的第一报文。关于传统的SRv6报文的转发方式以及SR MPLS报文的转发方式,此处不再详细描述。
关于以上实施例提供的转发控制方法和报文转发方法,现举例说明,假设K=3。控制器确定段标识列表包括5个段标识,按序分别为<20001,20008,20012,20007,20002>,其中,20012为节点E的节点段标识,控制器将段标识组<20001,20008,20012,100>下发给头节点D,并将段标识组<20007,20002>和粘连段标识100下发给节点E,其中100为粘连段标识,用于标识段标识组<20007,20002>。头节点D可以执行以上S301-S303将报文转发至节点E,节点E可以执行S401-S404将报文转发至目的节点。
需要说明的是,考虑到目前大部分业务对应的报文流均为老鼠流,因此,若能将以上实施例提供的方法应用在对于老鼠流的转发控制和报文转发上,则能有效改善网络性能。若将以上实施例提供的方法应用在对于老鼠流的转发控制上,则前文提及的路径约束条件,例如可以是基于老鼠流对应的业务所确定的。当然,以上实施例提供的转发控制方法以及报文转发方法,也可以应用于对大象流的转发控制以及报文转发,本申请实施例不做具体限定。
基于以上实施例提供的基于分段路由的转发控制方法,本申请实施例还提供了对应的装置,以下结合附图介绍该装置。参见图8,该图为本申请实施例提供的一种基于分段路由的转发控制装置的结构示意图。图8所示的基于分段路由的转发控制装置,可以应用于控制器,用于执行以上方法实施例提供的由控制器执行的基于分段路由的转发控制方法。
图8所示的基于分段路由的转发控制装置800,例如可以包括获取单元801和确定单元802。
获取单元801用于获取目标网络拓扑,所述目标网络拓扑包括虚链路和实链路,所述实链路用于指示节点之间的邻接链路,所述虚链路用于在节点间存在不是邻接链路的最短路径时指示所述最短路径。
所述获取单元801还用于获取路径约束条件,所述路径约束条件用于指示报文转发需要满足的性能要求。
确定单元802用于根据所述目标网络拓扑,确定指示满足所述路径约束条件的目标报文转发路径的段标识列表,所述段标识列表用于指导报文转发。
其中:所述目标报文转发路径包括实链路和/或虚链路,所述段标识列表包括:用于指示所述目标转发路径中包括的实链路的链路段标识,和/或,用于指示所述目标转发路径包括的虚链路的节点段标识,所述节点段标识对应的节点为所述节点段标识指示的虚链路的目的节点。
在一种可能的实现方式中,所述目标报文转发路径为满足所述路径约束条件的报文转发路径中对应段标识数量最少的报文转发路径。
在一种可能的实现方式中,所述确定单元802具体用于:根据所述目标网络拓扑和最短路径算法,确定指示满足所述路径约束条件的报文转发路径的段标识列表,所述虚链路的路径开销和所述实链路的路径开销被设置为相同的值。
在一种可能的实现方式中,所述虚链路的路径开销和所述实链路的路径开销被设置为1。
在一种可能的实现方式中,所述目标网络拓扑通过如下方式构建:
获取第一网络拓扑,所述第一网络拓扑由节点和节点间的邻接链路构成;
对于所述第一网络拓扑中的任意两个节点,执行如下操作,以得到所述目标网络拓扑:
基于所述第一网络拓扑计算所述两个节点之间的最短路径;
若所述两个节点间存在不是邻接链路的最短路径,在所述第一网络拓扑上增加所述两个节点之间的虚链路。
在一种可能的实现方式中,所述装置还包括第一发送单元,第一发送单元用于将所述段标识列表包括的N个段标识以K为拆分基准分成m个段标识组发送给所述目标报文转发路径中的m个节点,其中,m等于N除以K向上取整得到的数值,所述m个段标识组中的前(m-1)个段标识组中,一个段标识组包括所述N个段标识中的K个段标识以及一个粘连段标识,第i个段标识组中的粘连段标识用于标识第(i+1)个段标识组,若N是K的整数倍,则第m个段标识组包括所述N个段标识中的最后K个段标识,若N不是K的整数倍,则第m个段标识组包括所述N个段标识中的最后b个段标识,b等于N除以K得到的余数,第i个段标识组中的最后一个段标识为第i个粘连节点的节点段标识,或者,第i个段标识组中的最后一个段标识用于指示达到第(i+1)个粘连节点的邻接链路,i大于或者等于1,且小于或者等于(m-1)。
其中:所述发送单元具体用于将第一个段标识组发送给头节点,以指示头节点根据接收到的段标识组将报文转发给第一个粘连节点,并将第j个段标识组和第j个段标识组的段标识组标识,发送给第(j-1)个粘连节点,以指示第(j-1)个粘连节点根据所述第j个段标识组的粘连段标识确定第j个段标识组,并根据第j个段标识组转发所述报文,其中,j大于或者等于2,小于或者等于m。
在一种可能的实现方式中,所述装置还包括:第二发送单元,第二发送单元用于将所述段标识列表发送给所述目标报文转发路径的头节点。
在一种可能的实现方式中,所述路径约束条件,包括以下任意一项或者多项:时延约束条件、带宽约束条件、抖动约束条件和丢包率约束条件。
由于所述装置800是与以上方法实施例提供的由控制器执行的基于分段路由的转发控制方法对应的装置,所述装置800的各个单元的具体实现,均与以上方法实施例为同一构思,因此,关于所述装置800的各个单元的具体实现,可以参考以上方法实施例中对于由控制器执行的基于分段路由的转发控制方法的描述部分,此处不再赘述。
基于以上实施例提供的基于分段路由的报文转发方法,本申请实施例还提供了对应的装置,以下结合附图介绍该装置。
参见图9,该图为本申请实施例提供的一种基于分段路由的报文转发装置的结构示意图。图9所示的基于分段路由的报文转发装置,可以应用于头节点,用于执行以上方法实施例提供的由头节点执行的基于分段路由的报文转发方法。
图9所示的基于分段路由的报文转发装置900,例如可以包括获取单元901、添加单元902和转发单元903。
获取单元901用于获取第一段标识组,所述第一段标识组包括多个段标识和一个粘连段标识,所述粘连段标识用于标识第二段标识组,所述第一段标识组来自于控制器。
所述获取单元901还用于获取第一报文。
添加单元902用于将所述第一段标识组添加至所述第一报文的报文头中。
转发单元903用于转发添加了所述第一段标识组的第一报文,其中,所述多个段标识用于指导所述第一报文在所述头节点和第一粘连节点之间的转发,所述粘连段标识用于所述第一粘连节点获取用于指导报文转发的第二段标识组。
在一种可能的实现方式中,所述添加单元902具体用于:
将所述第一段标识组添加至所述第一报文的分段路由头中,所述第一报文为基于互联网协议第6版段路由SRv6报文,所述第一报文的报文头包括所述分段路由头;或者,
将所述第一段标识组添加至所述第一报文的标签栈中,所述第一报文为基于段路由的多协议标签交换SR MPLS报文,所述第一报文的报文头包括所述标签栈。
由于所述装置900是与以上方法实施例提供的由头节点执行的基于分段路由的报文转发方法对应的装置,所述装置900的各个单元的具体实现,均与以上方法实施例为同一构思,因此,关于所述装置900的各个单元的具体实现,可以参考以上方法实施例中对于由头节点执行的基于分段路由的报文转发方法的描述部分,此处不再赘述。
参见图10,该图为本申请实施例提供的一种基于分段路由的报文转发装置的结构示意图。图10所示的基于分段路由的报文转发装置,可以应用于第一粘连节点,用于执行以上方法实施例提供的由第一粘连节点执行的基于分段路由的报文转发方法。
图10所示的基于分段路由的报文转发装置1000,例如可以包括接收单元1001、确定单元1002、添加单元1003和转发单元1004。
接收单元1001用于接收第一报文,所述第一报文中包括粘连段标识。
确定单元1002用于根据所述粘连段标识以及所述粘连段标识和第二段标识组之间的对应关系,得到所述第二段标识组,所述对应关系来自于控制器。
添加单元1003用于将所述第二段标识组添加至所述第一报文的报文头中。
转发单元1004用于转发添加了所述第二段标识组的第一报文。
在一种可能的实现方式中,所述添加单元1003具体用于:
将所述第二段标识组添加至所述第一报文的分段路由头中,所述第一报文为基于互联网协议第6版段路由SRv6报文,所述第一报文的报文头包括所述分段路由头;或者,
将所述第二段标识组添加至所述第一报文的标签栈中,所述第一报文为基于段路由的多协议标签交换SR MPLS报文,所述第一报文的报文头包括所述标签栈。
由于所述装置1000是与以上方法实施例提供的由第一粘连节点执行的基于分段路由的报文转发方法对应的装置,所述装置1000的各个单元的具体实现,均与以上方法实施例为同一构思,因此,关于所述装置1000的各个单元的具体实现,可以参考以上方法实施例中对于由第一粘连节点执行的基于分段路由的报文转发方法的描述部分,此处不再赘述。
需要说明的是,前述提及的基于分段路由的转发控制装置800、基于分段路由的报文转发装置900和基于分段路由的报文转发装置1000。其硬件结构可以为如图11所示的结构,图11为本申请实施例提供的一种设备的结构示意图。
请参阅图11所示,设备1100包括:处理器1110、通信接口1120和和存储器1130。其中设备1100中的处理器1110的数量可以一个或多个,图11中以一个处理器为例。本申请实施例中,处理器1110、通信接口1120和存储器1130可通过总线系统或其它方式连接,其中,图11中以通过总线系统1140连接为例。
处理器1110可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。处理器1110还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
存储器1130可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(random-access memory,RAM);存储器1130也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器1130还可以包括上述种类的存储器的组合。
当设备1100对应前述基于分段路由的转发控制装置800时,存储器1130例如可以存储第一网络拓扑、目标网络拓扑、目标网络拓扑中各虚链路的性能参数、以及目标网络拓扑中各实链路的性能参数等等;当设备1100对应前述基于分段路由的报文转发装置900时,存储器1130例如可以存储第一段标识组;当设备1100对应前述基于分段路由的报文转发装置1000时,存储器1130例如可以存储第二段标识组和粘连段标识之间的对应关系。
可选地,存储器1130存储有操作系统和程序、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,程序可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。处理器1110可以读取存储器1130中的程序,实现本申请实施例提供的基于分段路由的转发控制方法或者基于分段路由的报文转发方法。
总线系统1140可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线系统1140可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请实施例还提供了一种计算机可读存储介质,包括指令或计算机程序,当其在计算机上运行时,使得计算机执行以上实施例提供的基于分段路由的转发控制方法或者基于分段路由的报文转发方法。
本申请实施例还提供了一种包含指令或计算机程序的计算机程序产品,当其在计算机上运行时,使得计算机执行以上实施例提供的基于分段路由的转发控制方法或者基于分段路由的报文转发方法。
本申请中提到的装置或设备,可以是网络设备,比如交换机、路由器,也可以是服务器,也可以是网络设备或服务器的一部分。在一些实施例中,本申请的装置或设备,也可以是部署在设备或网络中的功能模块。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑业务划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各业务单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件业务单元的形式实现。
集成的单元如果以软件业务单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的业务可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些业务存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已。
以上,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (19)
1.一种基于分段路由的转发控制方法,其特征在于,包括:
获取目标网络拓扑,所述目标网络拓扑包括虚链路和实链路,所述实链路用于指示节点之间的邻接链路,所述虚链路用于在节点间存在不是邻接链路的最短路径时指示所述最短路径;
根据所述目标网络拓扑,确定指示满足路径约束条件的目标报文转发路径的段标识列表,所述路径约束条件用于指示报文转发需要满足的性能要求,所述段标识列表用于指导报文转发;
其中,所述目标报文转发路径包括实链路和/或虚链路,所述段标识列表包括:用于指示所述目标转发路径中包括的实链路的链路段标识,和/或,用于指示所述目标转发路径包括的虚链路的节点段标识,所述节点段标识对应的节点为所述节点段标识指示的虚链路的目的节点。
2.根据权利要求1所述的方法,其特征在于,所述目标报文转发路径为满足所述路径约束条件的报文转发路径中对应段标识数量最少的报文转发路径。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述目标网络拓扑,确定指示满足路径约束条件的目标报文转发路径的段标识列表,包括:
根据所述目标网络拓扑和最短路径算法,确定指示满足所述路径约束条件的所述目标报文转发路径的段标识列表,所述虚链路的路径开销和所述实链路的路径开销被设置为相同的值。
4.根据权利要求3所述的方法,其特征在于,所述虚链路的路径开销和所述实链路的路径开销被设置为1。
5.根据权利要求1-4任意一项所述的方法,其特征在于,所述目标网络拓扑通过如下方式构建:
获取第一网络拓扑,所述第一网络拓扑由节点和节点间的邻接链路构成;
对于所述第一网络拓扑中的任意两个节点,执行如下操作,以得到所述目标网络拓扑:
基于所述第一网络拓扑计算所述两个节点之间的最短路径;
若所述两个节点间存在不是邻接链路的最短路径,在所述第一网络拓扑上增加所述两个节点之间的虚链路。
6.根据权利要求1-5任意一项所述的方法,其特征在于,所述方法还包括:
将所述段标识列表包括的N个段标识以K为拆分基准分成m个段标识组发送给所述目标报文转发路径中的m个节点,其中,m等于N除以K向上取整得到的数值,所述m个段标识组中的前(m-1)个段标识组中,一个段标识组包括所述N个段标识中的K个段标识以及一个粘连段标识,第i个段标识组中的粘连段标识用于标识第(i+1)个段标识组,若N是K的整数倍,则第m个段标识组包括所述N个段标识中的最后K个段标识,若N不是K的整数倍,则第m个段标识组包括所述N个段标识中的最后b个段标识,b等于N除以K得到的余数,第i个段标识组中的最后一个段标识为第i个粘连节点的节点段标识,或者,第i个段标识组中的最后一个段标识用于指示达到第(i+1)个粘连节点的邻接链路,i大于或者等于1,且小于或者等于(m-1);
其中,将第一个段标识组发送给头节点,以指示头节点根据接收到的段标识组将报文转发给第一个粘连节点,将第j个段标识组和第j个段标识组的段标识组标识发送给第(j-1)个粘连节点,以指示第(j-1)个粘连节点根据所述第j个段标识组的粘连段标识确定第j个段标识组,并根据第j个段标识组转发所述报文,其中,j大于或者等于2,小于或者等于m。
7.根据权利要求1-5任意一项所述的方法,其特征在于,所述方法还包括:
将所述段标识列表发送给所述目标报文转发路径的头节点。
8.根据权利要求1-7任意一项所述的方法,其特征在于,所述路径约束条件,包括以下任意一项或者多项:
时延约束条件、带宽约束条件、抖动约束条件和丢包率约束条件。
9.一种基于分段路由的转发控制装置,其特征在于,包括:
获取单元,用于获取目标网络拓扑,所述目标网络拓扑包括虚链路和实链路,所述实链路用于指示节点之间的邻接链路,所述虚链路用于在节点间存在不是邻接链路的最短路径时指示所述最短路径;
确定单元,用于根据所述目标网络拓扑,确定指示满足路径约束条件的目标报文转发路径的段标识列表,所述路径约束条件用于指示报文转发需要满足的性能要求,所述段标识列表用于指导报文转发;
其中,所述目标报文转发路径包括实链路和/或虚链路,所述段标识列表包括:用于指示所述目标转发路径中包括的实链路的链路段标识,和/或,用于指示所述目标转发路径包括的虚链路的节点段标识,所述节点段标识对应的节点为所述节点段标识指示的虚链路的目的节点。
10.根据权利要求9所述的装置,其特征在于,所述目标报文转发路径为满足所述路径约束条件的报文转发路径中对应段标识数量最少的报文转发路径。
11.根据权利要求9或10所述的装置,其特征在于,所述确定单元,具体用于:
根据所述目标网络拓扑和最短路径算法,确定指示满足所述路径约束条件的报文转发路径的段标识列表,所述虚链路的路径开销和所述实链路的路径开销被设置为相同的值。
12.根据权利要求11所述的装置,其特征在于,所述虚链路的路径开销和所述实链路的路径开销被设置为1。
13.根据权利要求9-12任意一项所述的装置,其特征在于,所述目标网络拓扑通过如下方式构建:
获取第一网络拓扑,所述第一网络拓扑由节点和节点间的邻接链路构成;
对于所述第一网络拓扑中的任意两个节点,执行如下操作,以得到所述目标网络拓扑:
基于所述第一网络拓扑计算所述两个节点之间的最短路径;
若所述两个节点间存在不是邻接链路的最短路径,在所述第一网络拓扑上增加所述两个节点之间的虚链路。
14.根据权利要求9-13任意一项所述的装置,其特征在于,所述装置还包括:
第一发送单元,用于将所述段标识列表包括的N个段标识以K为拆分基准分成m个段标识组发送给所述目标报文转发路径中的m个节点,其中,m等于N除以K向上取整得到的数值,所述m个段标识组中的前(m-1)个段标识组中,一个段标识组包括所述N个段标识中的K个段标识以及一个粘连段标识,第i个段标识组中的粘连段标识用于标识第(i+1)个段标识组,若N是K的整数倍,则第m个段标识组包括所述N个段标识中的最后K个段标识,若N不是K的整数倍,则第m个段标识组包括所述N个段标识中的最后b个段标识,b等于N除以K得到的余数,第i个段标识组中的最后一个段标识为第i个粘连节点的节点段标识,或者,第i个段标识组中的最后一个段标识用于指示达到第(i+1)个粘连节点的邻接链路,i大于或者等于1,且小于或者等于(m-1);
其中,所述发送单元具体用于将第一个段标识组发送给头节点,以指示头节点根据接收到的段标识组将报文转发给第一个粘连节点,并将第j个段标识组和第j个段标识组的段标识组标识发送给第(j-1)个粘连节点,以指示第(j-1)个粘连节点根据所述第j个段标识组的粘连段标识确定第j个段标识组,并根据第j个段标识组转发所述报文,其中,j大于或者等于2,小于或者等于m。
15.根据权利要求9-13任意一项所述的装置,其特征在于,所述装置还包括:
第二发送单元,用于将所述段标识列表发送给所述目标报文转发路径的头节点。
16.根据权利要求9-15任意一项所述的装置,其特征在于,所述路径约束条件,包括以下任意一项或者多项:
时延约束条件、带宽约束条件、抖动约束条件和丢包率约束条件。
17.一种网络设备,其特征在于,包括:处理器和存储器;
所述存储器,用于存储指令或计算机程序;
所述处理器,用于执行所述指令或计算机程序,执行权利要求1-8任意一项所述的方法。
18.一种计算机可读存储介质,其特征在于,包括指令或计算机程序,当其在计算机上运行时,使得计算机执行以上权利要求1-8任意一项所述的方法。
19.一种计算机程序产品,其特征在于,包括程序代码,当计算机运行所述计算机程序产品时,使得所述计算机执行以上权利要求1-8任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310478221.9A CN116723147A (zh) | 2020-03-06 | 2020-03-06 | 一种基于分段路由的转发控制方法、报文转发方法及装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010152492.1A CN113364679B (zh) | 2020-03-06 | 2020-03-06 | 一种基于分段路由的转发控制方法、报文转发方法及装置 |
CN202310478221.9A CN116723147A (zh) | 2020-03-06 | 2020-03-06 | 一种基于分段路由的转发控制方法、报文转发方法及装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010152492.1A Division CN113364679B (zh) | 2020-03-06 | 2020-03-06 | 一种基于分段路由的转发控制方法、报文转发方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116723147A true CN116723147A (zh) | 2023-09-08 |
Family
ID=77524190
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010152492.1A Active CN113364679B (zh) | 2020-03-06 | 2020-03-06 | 一种基于分段路由的转发控制方法、报文转发方法及装置 |
CN202310478221.9A Pending CN116723147A (zh) | 2020-03-06 | 2020-03-06 | 一种基于分段路由的转发控制方法、报文转发方法及装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010152492.1A Active CN113364679B (zh) | 2020-03-06 | 2020-03-06 | 一种基于分段路由的转发控制方法、报文转发方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN113364679B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116405431A (zh) * | 2021-12-27 | 2023-07-07 | 中兴通讯股份有限公司 | 一种数据处理方法、网络节点和计算机可读存储介质 |
CN116915685B (zh) * | 2023-09-06 | 2023-12-12 | 新华三技术有限公司 | 报文传输方法、装置及电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105594167B (zh) * | 2013-10-18 | 2019-04-26 | 华为技术有限公司 | 转发报文的方法、控制器、转发设备和网络系统 |
US10063463B2 (en) * | 2014-12-16 | 2018-08-28 | Cisco Technology, Inc. | Node protection for segment routing adjacency segments |
WO2016102008A1 (en) * | 2014-12-23 | 2016-06-30 | Telefonaktiebolaget L M Ericsson (Publ) | Path computation in a segment routing network |
CN105871721B (zh) * | 2015-01-19 | 2020-05-05 | 中兴通讯股份有限公司 | 一种段路由处理方法、处理装置及发送装置 |
CN107342939B (zh) * | 2016-04-29 | 2020-02-14 | 华为技术有限公司 | 传输数据的方法和装置 |
CN110557337B (zh) * | 2018-05-30 | 2021-12-28 | 中兴通讯股份有限公司 | 一种分段路由路径计算方法、装置及计算机存储介质 |
-
2020
- 2020-03-06 CN CN202010152492.1A patent/CN113364679B/zh active Active
- 2020-03-06 CN CN202310478221.9A patent/CN116723147A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN113364679B (zh) | 2023-04-18 |
CN113364679A (zh) | 2021-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110636001B (zh) | 发送网络性能参数、计算网络性能的方法和网络节点 | |
CN112054960B (zh) | 一种路径计算方法、装置及设备 | |
KR102620026B1 (ko) | 패킷 처리 방법, 관련 기기 및 컴퓨터 저장 매체 | |
US11882026B2 (en) | Method and node for packet transmission in network | |
JP7327876B2 (ja) | パケット転送経路を決定するための方法及びシステム、並びに、ネットワークノード | |
US10050809B2 (en) | Adaptive load balancing for single active redundancy using EVPN designated forwarder election | |
CN108141416B (zh) | 一种报文处理方法、计算设备以及报文处理装置 | |
US8817798B2 (en) | Constraining topology size and recursively calculating routes in large networks | |
US8976697B2 (en) | Network status mapping | |
CN110943924B (zh) | 网络中分段源路由的方法及存储介质 | |
CN112187649B (zh) | 一种报文转发方法、报文处理方法及装置 | |
US20170195203A1 (en) | Method, apparatus, and system for implementing packet loss detection | |
CN113364679B (zh) | 一种基于分段路由的转发控制方法、报文转发方法及装置 | |
EP2880550A1 (en) | Connection mesh in mirroring asymmetric clustered multiprocessor systems | |
US11258723B2 (en) | Data processing method and apparatus, and switching device using footprint queues | |
CN114448877A (zh) | 路径切换方法、设备及系统 | |
Vanamoorthy et al. | Congestion-free transient plane (CFTP) using bandwidth sharing during link failures in SDN | |
WO2018054197A1 (en) | Method and apparatus for path selecting | |
EP3905613A1 (en) | Method for sending and obtaining assert message and network node | |
CN112511449A (zh) | 一种报文流乱序检测方法、报文处理方法及装置 | |
CN110838965B (zh) | 一种隧道建立方法以及接收节点 | |
CN118158095A (zh) | 一种报文处理方法及装置 | |
CN117527668A (zh) | 数据传输方法、装置、网络设备及存储介质 | |
CN113141311A (zh) | 一种用于获取转发信息的方法及装置 | |
CN117997821A (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 |