CN116915685A - 报文传输方法、装置及电子设备 - Google Patents
报文传输方法、装置及电子设备 Download PDFInfo
- Publication number
- CN116915685A CN116915685A CN202311147651.9A CN202311147651A CN116915685A CN 116915685 A CN116915685 A CN 116915685A CN 202311147651 A CN202311147651 A CN 202311147651A CN 116915685 A CN116915685 A CN 116915685A
- Authority
- CN
- China
- Prior art keywords
- node
- sid
- adhesion
- srv
- policy
- 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
- 238000000034 method Methods 0.000 title claims abstract description 74
- 230000005540 biological transmission Effects 0.000 title claims abstract description 61
- 230000000903 blocking effect Effects 0.000 claims description 120
- 239000000853 adhesive Substances 0.000 claims description 20
- 230000001070 adhesive effect Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 13
- 238000005538 encapsulation Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 101100064323 Arabidopsis thaliana DTX47 gene Proteins 0.000 description 3
- 101000840469 Arabidopsis thaliana Isochorismate synthase 1, chloroplastic Proteins 0.000 description 3
- 101150026676 SID1 gene Proteins 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 101100256916 Caenorhabditis elegans sid-1 gene Proteins 0.000 description 2
- 101100256922 Caenorhabditis elegans sid-3 gene Proteins 0.000 description 2
- 101100256921 Ajellomyces capsulatus SID3 gene Proteins 0.000 description 1
- 101100366400 Schizosaccharomyces pombe (strain 972 / ATCC 24843) spg1 gene Proteins 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 239000007787 solid Substances 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/34—Source routing
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供一种报文传输方法、装置及电子设备。本申请实施例在依据数据流在SRv6网络中的转发路径确定需要进行路径粘连时,从转发路径经由的所有节点中选择出粘连节点,为转发路径的首节点和每一粘连节点生成对应的段路由流量工程策略并下发至首节点和粘连节点,将多个标签栈通过粘连节点相关联起来;首节点的SID列表至少包括该数据流在SRv6网络传输时依次经由的各粘连节点的段路由流量工程策略所对应的BSID,以使数据报文按照首节点的SID列表记录的标签沿着各粘连节点进行传输,在传输至各粘连节点时,按照各粘连节点的SID列表记录的标签进行传输,实现了在报文转发路径较长的情况下也能够以段路由的方式进行转发。
Description
技术领域
本申请涉及网络通信技术领域,特别涉及报文传输方法、装置及电子设备。
背景技术
SR(Segment Routing,段路由)采用源节点路径选择机制,预先在源节点配置好路径所要经过段的SID(Segment Identifier,段标识),当报文经过SR节点时,该节点根据报文的SID对报文进行转发。由于设备支持的标签栈深度有限,比如设备A支持的标签栈深度为5,而设备A至设备B的转发路径包含10个SID(即10个标签),则标签栈无法一次容纳转发路径包含的全部10个SID,即在报文传输过程中无法仅使用一个标签栈完成报文的转发,此时无法采用段路由的方式进行报文传输。
发明内容
有鉴于此,本申请提供一种报文传输方法、装置及电子设备,以解决相关技术中因设备支持的标签栈深度有限而导致的无法采用段路由进行传输的问题。
本申请提供的技术方案如下:
根据本申请第一方面的实施例,提出了一种报文传输方法,该方法应用于控制器,该方法包括:
当依据数据流在SRv6网络中的转发路径确定需要进行路径粘连时,从数据流在SRv6网络经由的所有节点中选择出粘连节点;
为每一粘连节点生成对应的段路由流量工程策略SRv6 TE Policy并下发至该粘连节点;任一粘连节点的SRv6 TE Policy绑定了对应的绑定段标识BSID,不同粘连节点的SRv6 TE Policy绑定不同的BSID;粘连节点的SRv6 TE Policy包括SID列表,所述SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定;所述任一粘连节点的SRv6 TE Policy用于指导所述数据流沿着该SRv6 TE Policy包括的SID列表中的首个标签至最后一个标签传输;
为所述转发路径的首节点生成对应的SRv6 TE Policy并下发至首节点;SRv6 TEPolicy包括SID列表,该SID列表至少包括所述数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID,首节点的SRv6 TE Policy用于指导所述数据流从该首节点开始沿着各粘连节点的传输。
可选的,所述从数据流在SRv6网络经由的所有节点中选择出粘连节点包括:
将所述转发路径作为当前路径;
依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点;
若当前粘连节点至所述转发路径的尾节点所经由的标签数大于N,则确定所述数据流从当前粘连节点开始传输经由N层标签后的剩余路径;
将所述剩余路径作为当前路径,返回依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点的步骤,直至当前粘连节点至所述尾节点所经由的标签数不大于N。
可选的,所述转发路径由节点SID和/或链路SID组成;
所述依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点包括:
若当前路径的首个SID为节点SID,则将该节点SID所标识的节点作为当前粘连节点;
若当前路径的首个SID为链路SID,则在该链路SID所标识的链路的入节点为所述首节点时,将该链路SID所标识的链路的出节点作为当前粘连节点,在该链路SID所标识的链路的入节点不为所述首节点时,将所述入节点作为当前粘连节点。
可选的,当所述数据流从粘连节点开始传输所经由的首个SID为链路SID时,所述N为K+1;
当所述数据流从粘连节点开始传输所经由的首个SID为节点SID时,所述N为K。
可选的,若所述转发路径的尾节点不存在由边界网关协议BGP分配的私网标签,则所述首节点的SID列表还包括:所述尾节点的节点SID;所述尾节点的节点SID被作为该SID列表中的最后一个SID。
可选的,所述下发SRv6 TE Policy至粘连节点和首节点包括:
若所述转发路径的首个SID为链路SID,则计算所述首节点的SID列表中记录的标签数量与设定值之间的差值,若所述差值小于或等于所述首节点支持的最大标签栈深度,则下发SRv6 TE Policy至粘连节点和首节点;
若所述转发路径的首个SID为节点SID,则当所述首节点的SID列表中记录的标签数量小于或等于所述首节点支持的最大标签栈深度时,下发SRv6 TE Policy至粘连节点和首节点。
根据本申请第二方面的实施例,提出了一种报文传输方法,该方法应用于网络节点,所述网络节点是第一方面所述的方法中的节点;该方法包括:
若本节点为转发路径的首节点,则在接收到数据报文时,将首节点的SID列表中包括的用于转发所述数据报文的标签封装至所述数据报文的段路由头SRH中并转发;其中,所述首节点的SID列表至少包括所述数据报文所属的数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID;
若本节点为转发路径中的粘连节点,则在接收到数据报文时,依据本粘连节点的BSID将本粘连节点的SID列表中包括的用于转发所述数据报文的标签作为新的外层SRH封装至所述数据报文的原SRH之外并转发;其中,所述粘连节点的SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定。根据本申请第三方面的实施例,提出了一种报文传输装置,该装置包括:
选择单元,用于当依据数据流在SRv6网络中的转发路径确定需要进行路径粘连时,从数据流在SRv6网络经由的所有节点中选择出粘连节点;
下发单元,用于为每一粘连节点生成对应的段路由流量工程策略SRv6 TE Policy并下发至该粘连节点;任一粘连节点的SRv6 TE Policy绑定了对应的绑定段标识BSID,不同粘连节点的SRv6 TE Policy绑定不同的BSID;粘连节点的SRv6 TE Policy包括SID列表,所述SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定;所述任一粘连节点的SRv6 TE Policy用于指导所述数据流沿着该SRv6 TE Policy包括的SID列表中的首个标签至最后一个标签传输;
为所述转发路径的首节点生成对应的SRv6 TE Policy并下发至首节点;SRv6 TEPolicy包括SID列表,该SID列表至少包括所述数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID,首节点的SRv6 TE Policy用于指导所述数据流从该首节点开始沿着各粘连节点的传输。
可选的,所述选择单元具体用于:
将所述转发路径作为当前路径;
依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点;
若当前粘连节点至所述转发路径的尾节点所经由的标签数大于N,则确定所述数据流从当前粘连节点开始传输经由N层标签后的剩余路径;
将所述剩余路径作为当前路径,返回依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点的步骤,直至当前粘连节点至所述尾节点所经由的标签数不大于N;
和/或,所述转发路径由节点SID和/或链路SID组成;
所述选择单元具体用于:
若当前路径的首个SID为节点SID,则将该节点SID所标识的节点作为当前粘连节点;
若当前路径的首个SID为链路SID,则在该链路SID所标识的链路的入节点为所述首节点时,将该链路SID所标识的链路的出节点作为当前粘连节点,在该链路SID所标识的链路的入节点不为所述首节点时,将所述入节点作为当前粘连节点;
和/或,当所述数据流从粘连节点开始传输所经由的首个SID为链路SID时,所述N为K+1;
当所述数据流从粘连节点开始传输所经由的首个SID为节点SID时,所述N为K;
和/或,若所述转发路径的尾节点不存在由边界网关协议BGP分配的私网标签,则所述首节点的SID列表还包括:所述尾节点的节点SID;所述尾节点的节点SID被作为该SID列表中的最后一个SID;
和/或,所述下发单元具体用于:
若所述转发路径的首个SID为链路SID,则计算所述首节点的SID列表中记录的标签数量与设定值之间的差值,若所述差值小于或等于所述首节点支持的最大标签栈深度,则下发SRv6 TE Policy至粘连节点和首节点;
若所述转发路径的首个SID为节点SID,则当所述首节点的SID列表中记录的标签数量小于或等于所述首节点支持的最大标签栈深度时,下发SRv6 TE Policy至粘连节点和首节点。
根据本申请第四方面的实施例,提出了一种报文传输装置,与第三方面所述的装置相配合,以实现数据报文的传输,该装置用于:
若本节点为转发路径的首节点,则在接收到数据报文时,将首节点的SID列表中包括的用于转发所述数据报文的标签封装至所述数据报文的段路由头SRH中并转发;其中,所述首节点的SID列表至少包括所述数据报文所属的数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID;
若本节点为转发路径中的粘连节点,则在接收到数据报文时,依据本粘连节点的BSID将本粘连节点的SID列表中包括的用于转发所述数据报文的标签作为新的外层SRH封装至所述数据报文的原SRH之外并转发;其中,所述粘连节点的SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定。
根据本申请第五方面的实施例,提出了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面或第二方面所述的方法。
由以上技术方案可见,本申请实施例在依据数据流在SRv6网络中的转发路径确定需要进行路径粘连时,从该数据流在SRv6网络中经由的所有节点中选择出粘连节点,为每一粘连节点生成对应的段路由流量工程策略SRv6 TE Policy并下发至该粘连节点,将多个标签栈通过粘连节点相关联起来;同时为转发路径的首节点生成对应的SRv6 TE Policy并下发至首节点,该首节点的SID列表至少包括该数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID,以使数据报文按照首节点的SID列表记录的标签沿着各粘连节点进行传输,在传输至每一粘连节点时,进一步按照每一粘连节点的SID列表记录的标签进行传输,解决了相关技术中因设备支持的标签栈深度有限而导致的无法采用段路由进行转发的问题,使得在报文转发路径较长的情况下也能够以段路由的方式进行转发。
附图说明
此处的附图被并入说明书中并构成说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种采用相关技术中报文传输方法的具体转发路径和配置示意图;
图2为本申请实施例提供的报文传输方法的实现流程图;
图3为本申请实施例提供的确定粘连点的具体方法实现流程图;
图4为本申请实施例提供的另一种报文传输方法的流程图;
图5为本申请实施例提供的一种报文传输的具体路径示意图;
图6为本申请实施例提供的另一种报文传输的具体路径示意图;
图7为本申请实施例提供的一种电子设备的示意结构图;
图8为本申请实施例提供的一种报文传输装置结构图;
图9为本申请实施例提供的另一种报文传输装置结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
为了对本申请进行更清楚的描述,首先结合图1介绍相关技术中无法仅使用一个标签栈完成报文传输时的技术方案。图1为本申请实施例提供的一种采用相关技术中报文传输方法的具体转发路径和配置示意图。
如图1所示,数据流以端到端的方式从设备A传输至设备L,假设图中各设备支持的标签栈深度均为4。设备A为该转发路径的首节点,设备L作为该段转发路径的尾节点,该转发路径对应的标签共有11个,而各设备支持的标签栈深度仅为4,显然此时只使用一个标签栈是无法完成数据流在整条转发路径上的转发的。
相关技术中提出在设备上部署SRv6 TE Policy(Segment Routing TrafficEngineering Policy,段路由流量工程策略),该SRv6 TE Policy可以部署在转发路径所经由的各设备上,用于标识部署了SRv6 TE Policy的设备至该SRv6 TE Policy对应的目的节点的转发隧道。其中,SRv6 TE Policy中的配置信息可以包括:
1)BSID(Binding Segment Identifier,绑定段标识),用于将数据流引导至该BSID所属的SRv6 TE Policy中,以使得该数据流中的数据报文按照该SRv6 TE Policy的SID列表(segment-list,段列表)中记录的标签进行转发;
2)目的节点的IPv6(Internet Protocol Version 6,互联网协议第6版)地址,用于标识数据流在本SRv6 TE Policy中转发的目的节点;
3)SID列表,用于记录本SRv6 TE Policy中首节点至目的节点的转发路径对应的标签。
容易理解的是,当转发路径包括的标签数量超过转发器所支持的标签栈深度时,一个标签栈无法携带整条SID列表的标签,控制器需要为转发器分配多个标签栈,在合适的节点下发标签栈的同时分配一种特殊的标签,通过该特殊标签将这些标签栈关联起来,实现逐段转发。这种特殊的标签称为粘连标签,这个合适的节点称为粘连节点。
相关技术中粘连节点的选取方式较为简单,即根据设备支持的标签栈深度选取相应的粘连节点,在介绍选取粘连节点的方法之前,首先对SRv6(Segment Routing InternetProtocol Version 6,基于第六版互联网协议的分段路由)协议中的数据报文传输方法进行说明:
转发路径的首节点接收到数据报文时,将首节点的SRv6 TE Policy的SID列表中记录的标签按照SID列表中的排列顺序封装至该数据报文的SRH(Segment Routing Head,段路由头)中,并将该数据报文按照SRH中封装标签的顺序进行转发。其中,SRH包含两个关键字段:Segment left(SL指针)以及Segment List(段列表),其中Segment List用于记录封装至SRH中的SID列表中的标签。当SL指针指向segment List中的SID时,将数据报文依据该SID对应的路径进行转发;同时将SL指针进行减1操作,指针指向新的SID,以使报文依据新的SID对应的路径进行转发,当SL=0时,节点弹出SRH报文头,对报文进行下一步处理。
在转发过程中,当SL指向的标签为BSID时,会将该数据报文与该数据报文的SRH看作一个新数据报文,为该新数据报文在外层再封装一个外层SRH,该外层SRH中记录的标签为该BSID对应的SRv6 TE Policy的SID列表中记录的标签。
SRv6协议中规定,数据流在SRv6中的转发路径是由SID组成的,其中SID包括链路SID(记作END-X)以及节点SID(记作END);若一段转发路径的首个SID为链路SID,则在对数据流所包含的数据报文进行转发时可以不将该链路SID封装至SRH中,从而减少一个标签的占用;若一段转发路径的首个SID为节点SID,则需要将该跳对应的标签封装至SRH中。需要强调的是,在本申请中,若无特殊描述,首个SID不包括首节点的节点SID。
作为一个实施例,假设设备支持的标签栈深度为3,一段转发路径从当前节点开始按照数据流传输顺序包括SID0、SID1、SID2以及SID3共4个标签,其中SID0为链路SID,若首节点部署了SRv6 TE Policy,则该在SRv6 TE Policy的segment-list中记录的标签为(SID0;SID1;SID2;SID3),对数据流中的数据报文进行转发时,只需将(SID1;SID2;SID3)封装至该数据报文的SRH中即可完成正常转发,当前节点在进行数据报文的转发时会直接将数据报文沿着SID0所对应的链路进行转发,故无需再将SID0封装至数据报文的SRH中。在本申请实施例中将会多次使用到上述协议的规定,后文出现时将不会详述。
相关技术中选取粘连节点的方式为根据设备支持的标签栈深度选取相应的粘连节点,假设各设备支持的标签栈深度为N,若转发路径中的首个SID为链路SID,则选择数据流经由N层标签从当前节点开始传输所到达的节点作为粘连节点;若转发路径中的首个SID为节点SID,则选择数据流经由N-1层标签从当前节点开始传输所到达的节点作为粘连节点。比如以图1的转发路径为例,各设备支持的标签栈深度为4,由于转发路径中的首个SID为链路SID,则选择数据流经由4层标签从当前节点开始传输所到达的节点作为粘连节点。如图1所示,数据流从当前节点即设备A开始经由4层标签(1::1;2::1;3::1;4::1)传输所到达的节点为设备E,故将设备E作为第一个粘连节点,以此类推,将设备I作为第二个粘连节点。
相关技术在首个节点与各粘连节点均部署SRv6 TE Policy,各SRv6 TE Policy的segment-list中记录的标签为上述数据流经由的4层标签以及数据流经由4层标签从当前节点开始传输所到达的节点的BSID。经过上述描述可以理解的是,由于图1中转发路径中的首个SID为链路SID,在对数据报文进行转发时无需将各SID列表中的首个标签封装至该数据报文的SRH中。
然而,由于SRv6协议中规定,当BSID在转发时处于SRH中SL=0的位置,即BSID在封装时处于标签栈的最后一个位置时,会直接处理下一个报文头,而不是将对应的标签栈封装到一个新的外层SRH头,这种情况会导致该数据报文被丢弃,使得数据报文无法进行正常转发。相关技术中的方案中,由于私网标签(将于下文详述,此处不再赘述)的存在,数据流由设备A转发至设备E的过程不会出现问题,而数据流在由设备E转发至设备I时会出现BSID2处于SL=0的位置的情况,从而将该数据报文丢弃,导致转发失败,也就是说,相关技术中的方案只能够进行一次路径粘连,在进行多次路径粘连时会存在BSID处于SRH中SL=0的位置的情况,导致数据流无法按照转发路径正常传输。
为解决相关技术中存在的问题,下面对本申请实施例进行描述:
请参考图2,图2为本申请实施例提供的一种报文传输方法的实现流程图。该方法应用于控制器,作为一个实施例,该控制器可以是SRv6网络中的控制器。如图2所示,该流程可以包括以下步骤:
步骤201,依据数据流在SRv6网络中的转发路径确定需要进行路径粘连。
在本实施例中,用户会预先设置数据流转发路径的首节点与尾节点,以确定首节点至尾节点的转发路径。确定SRv6网络中的转发路径的方法可以是控制器基于用户服务等级协议SLA需求计算首节点至尾节点的转发路径,也可以是由用户对转发路径进行手动配置。上述转发路径的确定过程为相关技术中的常规方法,此处不再赘述。
其中,转发路径可以由节点SID和/或链路SID组成,转发路径中的链路SID对应一条确定的链路,表示数据流通过该确定的链路由该链路的入节点传输至该链路的出节点,记作END-X;转发路径中的节点SID对应一个确定的节点,表示数据流由入节点传输至该确定的节点,但并不对其具体经由的链路进行限定,记作END。通常由控制器通过SLA需求计算出的转发路径均由链路SID组成,而由用户进行手动配置的转发路径则可以由节点SID或链路SID或二者的组合组成。
在本实施例中,可选的,确定需要进行路径粘连的具体方法可以是:
若首节点支持的标签栈深度小于数据流通过转发路径转发所需的标签的数量,确定需要进行路径粘连。
在确定是否需要进行路径粘连时,可以依据转发路径的首个SID的类型确定数据流通过转发路径转发所需的标签的数量:若转发路径的首个SID为节点SID,则确定转发路径包括的所有SID的总数量为数据流通过转发路径转发所需的标签的数量;若转发路径的首个SID为链路SID,则确定转发路径对应的除首个SID之外的SID的总数量(即转发路径对应的所有SID的总数量减1)为数据流通过转发路径转发所需的标签的数量。
在确定需要进行路径粘连后,执行步骤202。
步骤202,从数据流在SRv6网络中经由的所有节点中选择出粘连节点。
在本实施例中,为解决相关技术中只能进行一次路径粘连的问题,以需要至少进行两次粘连为例,在确定需要进行路径粘连后,需要从数据流在SRv6网络中经由的所有节点中选择出至少两个粘连节点。
在本实施例中,可选的,从数据流在SRv6网络中经由的所有节点中选择出粘连节点的具体方法可以是:
将所述转发路径作为当前路径;
依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点;
若当前粘连节点至所述转发路径的尾节点所经由的标签数大于N,则确定所述数据流从当前粘连节点开始传输经由N层标签后的剩余路径;
将所述剩余路径作为当前路径,返回依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点的步骤,直至当前粘连节点至所述尾节点所经由的标签数不大于N。
其中,需要强调的是,在本申请中,当前粘连节点至尾节点所经由的标签数也不包括当前粘连节点的节点SID(若存在)。
在本实施例中,进一步地,所述转发路径由节点SID和/或链路SID组成;
所述依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点包括:
若当前路径的首个SID为节点SID,则将该节点SID所标识的节点作为当前粘连节点;
若当前路径的首个SID为链路SID,则在该链路SID所标识的链路的入节点为所述首节点时,将该链路SID所标识的链路的出节点作为当前粘连节点,在该链路SID所标识的链路的入节点不为所述首节点时,将所述入节点作为当前粘连节点。
在本实施例中,N的具体取值可以由以下方法确定:
当所述数据流从粘连节点开始传输所经由的首个SID为链路SID时,所述N为K+1;
当所述数据流从粘连节点开始传输所经由的首个SID为节点SID时,所述N为K。
其中,K表示该粘连节点所支持的最大标签栈深度。
在本实施例中,选择粘连节点的具体方法与流程将于下文结合图3中的流程图进行较为直观地详述,此处不再赘述。
至此结束对步骤202的描述,下面执行步骤203。
步骤203,为每一粘连节点生成对应的段路由流量工程策略SRv6 TE Policy并下发至该粘连节点。
在本实施例中,沿用了相关技术中的段路由流量工程策略SRv6 TE Policy,本实施例在确定出各粘连节点后,在各粘连节点部署SRv6 TE Policy。其中,任一粘连节点的SRv6 TE Policy绑定了对应的绑定段标识BSID,不同粘连节点的SRv6 TE Policy绑定不同的BSID;粘连节点的SRv6 TE Policy包括SID列表,所述SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定;所述任一粘连节点的SRv6 TE Policy用于指导所述数据流沿着该SRv6 TE Policy包括的SID列表中的首个标签至最后一个标签传输。
在本实施例中,各粘连节点的SRv6 TE Policy均绑定了对应的绑定段标识BSID,且不同粘连节点的SRv6 TE Policy绑定不同的BSID;以便于后续对数据流进行转发时通过各粘连节点对应的BSID定位到该粘连节点的SRv6 TE Policy。
在本实施例中,如上文所描述的,若一段转发路径的首个SID为链路SID,则在对数据流所包含的数据报文进行转发时可以不将该链路SID封装至SRH中,从而减少一个标签的占用,此时当一个粘连节点从该节点开始的首个SID为链路SID时,由于转发时不会将该链路SID封装至SRH中,故该粘连节点的SID列表中最多能够记录N=K+1个标签(即1个不会封装至SRH中、不占用标签栈深度的该链路SID对应的标签,以及K个会封装至SRH中的后续路径的标签);当一个粘连节点从该节点开始的首个SID为节点SID时,由于转发时会将该节点SID封装至SRH中,故该粘连节点的SID列表中最多能够记录N=K个标签。同时容易理解的是,当从该粘连节点开始至整条转发路径的尾节点之间的标签层数M小于或等于N时,表明该粘连节点为该转发路径的最后一个粘连节点。
在本实施例中,将每一粘连节点生成的SRv6 TE Policy下发至粘连节点,具体下发过程将于下文详述,此处不再赘述。
在为每一粘连节点生成对应的段路由流量工程策略SRv6 TE Policy后,执行步骤204。
步骤204,为转发路径的首节点生成对应的SRv6 TE Policy并下发至首节点。
在本实施例中,为所述数据流在SRv6网络中传输的转发路径的首节点生成对应的SRv6 TE Policy,其中,SRv6 TE Policy包括SID列表,该SID列表至少包括所述数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID,首节点的SRv6TE Policy用于指导所述数据流从该首节点开始沿着各粘连节点的传输。
在本实施例中,首个节点的SID列表至少包括所述数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID,在数据报文转发至首节点时,将上述各粘连节点对应的BSID封装至该数据报文的SRH中,并按照封装顺序进行转发,在转发至第一个BSID对应的SRv6 TE Policy时,会将原数据报文与该数据报文的SRH作为一个新数据报文,为该新数据报文在外层再封装一个外层SRH,该外层SRH中记录的标签为上述第一个BSID对应的SRv6 TE Policy的SID列表中记录的标签。需要注意的是,与上文所描述的一致,若当前路径的首个SID为链路SID,则可以不将该链路SID封装至SRH中。
在本实施例中,可选的,若所述转发路径中首个SID为链路SID,则所述首节点的SID列表还包括:该链路SID。
其中,转发路径的首个SID为链路SID时,将该链路SID作为SID列表中排序最前的标签记录在该首个节点的SID列表中,但依据上文描述易知,虽然将该链路SID记录在了首节点的SID列表中,但在转发时并不会将该链路SID封装至数据报文的SRH中。
在本实施例中,可选的,若转发路径的尾节点不存在由边界网关协议BGP分配的私网标签,则首节点的SID列表还包括:所述尾节点的节点SID;所述尾节点的节点SID被作为该SID列表中的最后一个SID。
其中,通常用户在部署业务时都会部署VPN,此时会由边界网关协议BGP为该转发路径的尾节点分配一个私网标签,数据报文在到达转发路径的首个节点时,私网标签会被默认封装在SRH的标签栈SL=0的位置,但不会占用一个标签栈深度,所以在存在私网标签的情况下,此时该数据报文的SRH中能够封装的标签数量与标签栈深度相等。需要注意的是,私网标签只会存在于首节点封装的SRH中,这也解释了相关技术中第一次路径粘连不会出现问题的原因。此外,私网标签也不会被记录在首节点的SID列表中。
同时,也会存在用户只部署了公网业务,未部署VPN,边界网关协议BGP并未在转发路径的尾节点分配私网标签的情况,在此情况下为了防止BSID处于SRH的标签栈中SL=0的位置,需要在转发路径的首节点部署的SRv6 TE Policy的SID列表中排序最后的位置(即该SID列表中最后一个SID的位置)添加尾节点的节点SID,记作END SID,与私网标签不同,该尾节点的节点SID会被记录在首节点的SID列表中,并在封装至SRH时也会占用一个标签栈深度,所以不存在私网标签的情况下,此时该数据报文的SRH中能够封装的标签数量为标签栈深度减1(即减去END SID占用的一个标签栈深度)。在配置过程中,控制器可以预先识别尾节点是否存在私网标签,从而确定是否需要在首节点的SID列表中添加尾节点的节点SID。
在本实施例中,可选的,步骤203以及步骤204中,下发SRv6 TE Policy至粘连节点和首节点的方法可以是:
若所述转发路径的首个SID为链路SID,则计算所述首节点的SID列表中记录的标签数量与设定值之间的差值,若所述差值小于或等于所述首节点支持的最大标签栈深度,则下发SRv6 TE Policy至粘连节点和首节点;
若所述转发路径的首个SID为节点SID,则当所述首节点的SID列表中记录的标签数量小于或等于首节点支持的最大标签栈深度时,下发SRv6 TE Policy至粘连节点和首节点。
其中,在确定首节点的SID列表中记录的标签后,可以将需要封装至数据报文SRH的标签的数量与设备支持的标签栈深度相比较,若需要封装至数据报文SRH的标签的数量小于或等于设备支持的标签栈深度,则表明该方案是可执行的,此时将生成的各SRv6 TEPolicy对应下发至首个节点与各粘连节点;若需要封装至数据报文SRH的标签的数量大于设备支持的标签栈深度,则表示该方案无法对报文进行正确转发,结束流程,不将上述生成的各SRv6 TE Policy对应下发至首个节点与各粘连节点。
具体地,若所述转发路径的首个SID为链路SID,则计算所述首节点的SID列表中记录的标签数量与设定值之间的差值,该设定值可以取1,表示无需封装至SRH中的链路SID,若所述差值小于或等于所述个节点支持的最大标签栈深度,则表明上述对各节点的配置是满足转发要求的,则下发SRv6 TE Policy至粘连节点和首节点;
若所述转发路径的首个SID为节点SID,则首节点的SID列表中记录的标签数量与需要封装至SRH中的标签数量一致,当所述首节点的SID列表中记录的标签数量小于或等于首节点支持的最大标签栈深度时,表明上述对各节点的配置是满足转发要求的,则下发SRv6 TE Policy至粘连节点和首节点。
至此,结束对图2中报文传输方法的步骤的描述。
本实施例在依据数据流在SRv6网络中的转发路径确定需要进行路径粘连时,从该数据流在SRv6网络中经由的所有节点中选择出粘连节点,为每一粘连节点生成对应的段路由流量工程策略SRv6 TE Policy并下发至该粘连节点,将多个标签栈通过粘连节点相关联起来;同时为转发路径的首节点生成对应的SRv6 TE Policy并下发至首节点,该首节点的SID列表至少包括该数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID,以使数据报文按照首节点的SID列表记录的标签沿着各粘连节点进行传输,在传输至每一粘连节点时,进一步按照每一粘连节点的SID列表记录的标签进行传输,解决了相关技术中因设备支持的标签栈深度有限而导致的无法采用段路由进行转发的问题,使得在报文转发路径较长的情况下也能够以段路由的方式进行转发。
下面结合图3对上述步骤202中从所述数据流在SRv6网络中经由的所有节点中选择出粘连节点的具体方法进行描述。
请参考图3,图3为本申请实施例提供的一种确定粘连节点的具体方法流程图。如图3所示,该流程可以包括以下步骤:
步骤301,将转发路径作为当前路径。
在本实施例中,转发路径可以由控制器计算确定,也可以由用户手动配置确定。接下来执行步骤302。
步骤302,判断当前路径的首个SID是链路SID还是节点SID。
在本实施例中,当识别出当前路径中当前路径的首个SID是链路SID时,执行步骤303,当识别出当前路径中当前路径的首个SID是节点SID时,执行步骤304。
步骤303,判断该链路SID所标识的链路的入节点是否为首节点。
在本实施例中,判断该链路SID所标识的链路的入节点是否为首节点的主要目的是区分步骤302中的当前路径是由步骤301确定的还是由步骤312确定的。
当该链路SID所标识的链路的入节点为首节点时,执行步骤305;当该链路SID所标识的链路的入节点不是首节点时,执行步骤306。
步骤304,将该节点SID所标识的节点作为当前粘连节点。
在本实施例中,在步骤302中识别出当前路径的首个SID是节点SID时执行本步骤,在当前路径的首个SID是节点SID时,直接将将该节点SID所标识的节点作为当前粘连节点。
步骤304执行结束后,下面继续执行步骤307。
步骤305,将该链路SID所标识的链路的出节点作为当前粘连节点。
在本实施例中,在步骤303中判断出该链路SID所标识的链路的入节点为首节点时执行本步骤,当首个SID是链路SID且该链路SID所标识的链路的入节点为首节点时,将该链路SID所标识的链路的出节点作为当前粘连节点。
作为一个实施例,当前路径中的首个SID是链路SID,该链路SID所标识的链路是一条由设备A传输至设备B的链路,则该设备A为该链路的入节点,设备B为出节点,此时将该链路SID所标识的链路的出节点(即设备B)作为当前粘连节点。
步骤305执行结束后,下面继续执行步骤307。
步骤306,将该入节点作为当前粘连节点。
在本实施例中,在步骤303中判断出该链路SID所标识的链路的入节点不是首节点时执行本步骤,当首个SID是链路SID且该链路SID所标识的链路的入节点不是首节点时,将该入节点作为当前粘连节点。
作为一个实施例,当前路径中的首个SID是链路SID,该链路SID所标识的链路是一条由设备C传输至设备D的链路,则该链路的入节点为设备C,出节点为设备D,若设备C不是整条转发路径的首节点,此时将该入节点(即设备C)作为当前粘连节点。
步骤306执行结束后,下面继续执行步骤307。
步骤307,判断数据流从粘连节点开始传输所经由的首个SID为链路SID还是节点SID。
在本实施例中,在步骤304、步骤305或步骤306中确定当前粘连节点后执行本步骤。当识别出从当前粘连节点开始传输所经由的首个SID是链路SID时,执行步骤308,当识别出从目标节点开始传输所经由的首个SID是节点SID时,执行步骤309。
步骤308,判断转发路径上从当前粘连节点至尾节点所经由的标签数是否大于N=K+1。
在本实施例中,在步骤307识别出从当前粘连节点开始传输所经由的首个SID是链路SID时,执行本步骤。若从当前粘连节点开始传输所经由的首个SID是链路SID,转发时可以不将该链路SID封装至数据报文的SRH中,不占用一个标签栈深度,由于设备支持的标签栈深度为K,容易理解的是:
在从当前粘连节点开始传输所经由的首个SID是节点SID的情况下,转发路径上从当前粘连节点至尾节点所经由的标签数小于或等于K+1(即1个不会封装至SRH中,不占用标签栈深度的链路SID对应的标签,以及K个会封装至SRH中的后续路径的标签)时,表示当前粘连节点是该转发路径的最后一个粘连节点,即由当前粘连节点至尾节点所经由的所有标签均能够记录在当前粘连点的SID列表中,此时执行步骤310;
在从当前粘连节点开始传输所经由的首个SID是链路SID的情况下,转发路径上从当前粘连节点至尾节点所经由的标签数大于K+1时,表示当前粘连节点不是该转发路径的最后一个粘连节点,即由当前粘连节点至尾节点所经由的所有标签无法全部记录在当前粘连点的SID列表中,此时执行步骤311。
其中,需要注意的是,此处判断当前粘连节点至尾节点所经由的标签数时,均不将当前粘连节点对应的标签(若存在)包括在内。
步骤309,判断转发路径上从当前粘连节点至尾节点所经由的标签数是否大于N=K。
在本实施例中,识别出转发路径中从当前粘连节点开始传输所经由的首个SID是节点SID时,执行本步骤。若从当前粘连节点开始传输所经由的首个SID是节点SID,转发时仍需要将该节点SID封装至数据报文的SRH中,会占用一个标签栈深度,由于设备支持的标签栈深度为K,容易理解的是:
在从当前粘连节点开始传输所经由的首个SID是节点SID的情况下,转发路径上从当前粘连节点至尾节点所经由的标签数小于或等于K(即K个会封装至SRH中的后续路径的标签)时,表示当前粘连节点是该转发路径的最后一个粘连节点,即由当前粘连节点至尾节点所经由的所有标签均能够记录在当前粘连点的SID列表中,此时执行步骤310;
在从当前粘连节点开始传输所经由的首个SID是节点SID的情况下,转发路径上从当前粘连节点至尾节点所经由的标签数大于K时,表示当前粘连节点不是该转发路径的最后一个粘连节点,即由当前粘连节点至尾节点所经由的所有标签无法全部记录在当前粘连点的SID列表中,此时执行步骤312。
其中,需要注意的是,此处判断当前粘连节点至尾节点所经由的标签数时,均不将当前粘连节点对应的标签(若存在)包括在内。
步骤310,确定转发路径上从当前粘连节点至尾节点所经由的标签为当前粘连节点对应的标签。
在本实施例中,在步骤308或步骤309判断结果为否时执行本步骤。如步骤308与步骤309中各自第一种情况的描述,在从当前粘连节点开始传输所经由的首个SID是链路SID的情况下,转发路径上从当前粘连节点至尾节点所经由的标签数小于或等于K+1;或在从当前粘连节点开始传输所经由的首个SID是节点SID的情况下,转发路径上从当前粘连节点至尾节点所经由的标签数小于或等于K时,均表示当前粘连节点是该转发路径的最后一个粘连节点,即由当前粘连节点至尾节点所经由的所有标签均能够记录在当前粘连点的SID列表中,此时确定转发路径上从当前粘连节点至尾节点所经由的标签为当前粘连节点对应的标签,结束确定粘连节点的流程。
步骤311,确定数据流从当前路径上当前粘连节点开始传输经由N层标签后的剩余路径。
在本实施例中,在步骤308或步骤309中判断结果为是时执行本步骤。如步骤308以及步骤309中第二种情况的描述,转发路径上从当前粘连节点至尾节点所经由的标签数大于N时,表示当前粘连节点不是该转发路径的最后一个粘连节点,即由当前粘连节点至尾节点所经由的所有标签无法全部记录在当前粘连点的SID列表中,此时确定数据流从当前粘连节点开始传输所经由的N层标签,即从当前粘连节点开始传输所经由的连续前N个SID,将该N层标签记录至当前节点的SID列表中。进一步地,确定数据流从当前粘连节点开始传输经由N层标签后的剩余路径。下面继续执行步骤312。
其中,需要注意的是,此处确定数据流从当前粘连节点开始传输所经由的N层标签时,均不将当前粘连节点对应的标签(若存在)包括在内。
步骤312,将剩余路径作为当前路径,返回至步骤302判断当前路径中第一跳是入节点到下一节点之间的链路还是入节点到下一节点的步骤。
在本实施例中,在步骤311中确定剩余路径后执行本步骤。由于步骤311中确定了当前粘连节点不是转发路径中的最后一个粘连节点,故还需确定该转发路径中的下一个粘连节点,将当前粘连节点的SID列表都填充至达到标签栈深度上限后,将确定出的数据流从当前路径上当前粘连节点开始传输经由N层标签后的剩余路径作为新的当前路径,返回至步骤302判断当前路径中首个SID是链路SID还是首个SID是节点SID的步骤,进行下一个粘连点的确定,直至当前粘连节点至尾节点所经由的标签数不大于N,即确定出的当前粘连节点是转发路径中的最后一个粘连节点为止。
至此结束图3对粘连节点选择方法的描述。
本实施例依据当前路径中首个SID的类型确定当前粘连节点,并通过将转发路径上从当前粘连节点至尾节点所经由的标签数与标签栈深度相比较,确定出当前粘连节点是否为转发路径的最后一个粘连节点,若是,结束确定粘连节点的流程,若否,则进一步根据数据流从当前粘连节点开始传输所经由的标签确定出剩余路径,将剩余路径作为新的当前路径,继续循环上述步骤,直至确定出所有的粘连节点,完成了各粘连节点的确定。
请参考图4,图4为本申请实施例提供的另一种报文传输方法的流程图。该方法应用于网络节点,该网络节点为图2流程图中所示方法中的节点。如图4所示,该流程可以包括以下步骤:
步骤401,若本节点为转发路径的首节点,则在接收到数据报文时,将首节点的SID列表中包括的用于转发所述数据报文的标签封装至所述数据报文的段路由头SRH中并转发;其中,所述首节点的SID列表至少包括所述数据报文所属的数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID;
若本节点为转发路径中的粘连节点,则在接收到数据报文时,依据本粘连节点的BSID将本粘连节点的SID列表中包括的用于转发所述数据报文的标签作为新的外层SRH封装至所述数据报文的原SRH之外并转发;其中,所述粘连节点的SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定。
其中,关于数据报文的转发方法已经在图1处进行介绍,此处不再赘述。
至此结束对图4中另一种报文传输方法的流程图的描述。
下面通过具体实施例来详细描述本申请提出的报文传输方法。
请参考图5,图5为本申请实施例示出的一条报文传输的具体路径,该路径由控制器基于用户SLA需求计算得出,全部由链路SID组成,其中,报文通过端到端的传输方式从设备A传输至设备L,具体路径为A、B、C、D、E、F、G、H、I、J、K、L,每相邻两个设备之间均由确定的链路连接,具体如图5所示。该转发路径的尾节点即设备L中不存在私网标签,各设备支持的标签栈深度为4。下面进行该方法的具体描述。
在本实施例中,在首节点接收到数据报文时,控制器依据该数据报文所属的数据流在SRv6网络中的转发路径确定其是否需要进行路径粘连,由于该转发路径共包括11个标签,而各设备支持的标签栈深度为4,显然首节点支持的标签栈深度4小于所述数据流通过所述转发路径转发所需的标签的数量10(由于首个SID1::1为链路SID,无需封装至SRH中),确定需要进行路径粘连。
确定需要进行路径粘连之后,从数据流在SRv6网络中经由的所有节点中选择粘连节点。具体地,上述控制器将转发路径作为当前路径,识别当前路径中首个SID是链路SID还是节点SID,图5中转发路径的首个SID为1::1,为链路SID,该链路SID所标识的链路为由设备A传输至设备B的链路,此时该链路的入节点为设备A,出节点为设备B,由于该链路的入节点即设备A是转发路径的首节点,故将该链路的出节点即设备B作为当前粘连节点。
在确定设备B为当前粘连节点之后,确定数据报文从设备B开始传输所经由的首个SID为2::1,为链路SID,此时判断转发路径上从当前粘连节点至尾节点所经由的标签数是否大于N,此时N=K+1=4+1=5。显然从当前粘连节点即设备B至尾节点即设备L所经由的标签数为10,大于5,确定当前粘连节点不是该转发路径的最后一个粘连节点。确定数据流从当前粘连节点即设备B开始传输所经由的5层标签,即(2::1;3::1;4::1;5::1;6::1),在设备B生成SRv6 TE Policy,将该SRv6 TE Policy记为Policy2,该Policy2的BSID记为BSID1,Policy2的SID列表中存放的标签为(2::1;3::1;4::1;5::1;6::1);
同时确定数据流从设备B开始传输经由5层标签后的剩余路径,此时剩余路径为(7::1;8::1;9::1;a::1;b::1),将剩余路径作为当前路径,返回识别当前路径中首个SID是链路SID还是节点SID的步骤。
此时识别出当前路径的首个SID 7::1是链路SID,该链路SID所标识的链路为由设备G传输至设备F的链路,此时该链路的入节点为设备G,出节点为设备F,由于该链路的入节点即设备G不是转发路径的首节点,故将该链路的入节点即设备G作为当前粘连节点。
在确定设备G为当前粘连节点之后,确定数据报文从当前粘连节点即设备G开始传输所经由的首个SID为7::1,为链路SID,此时判断转发路径上从当前粘连节点至尾节点所经由的标签数是否大于N,此时N=K+1=4+1=5。显然从当前粘连节点即设备B至尾节点设备L所经由的标签数为5,不大于5,确定当前粘连节点是该转发路径的最后一个粘连节点。确定当前粘连节点设备G至尾节点设备L所经由的标签为当前粘连节点对应的标签即(7::1;8::1;9::1;a::1;b::1),在设备G部署SRv6 TE Policy,该SRv6 TE Policy记为Policy3,该Policy3的BSID记为BSID2,Policy3的SID列表中存放的标签为(7::1;8::1;9::1;a::1;b::1)。
下面控制器为数据流在SRv6网络中的首节点即设备A生成对应的SRv6 TEPolicy,其中,在设备A生成SRv6 TE Policy,将该SRv6 TE Policy记为Policy1,设备A的SID列表至少包括数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID,即BSID1以及BSID2;由于转发路径中从首个节点即设备A开始的第一跳为入节点到下一节点之间的链路,则设备A的SID列表还记录了该链路对应的标签即1::1,由于该转发路径的尾节点设备L中不存在私网标签,则需要将设备L的节点SID即END SID作为该SID列表中的最后一个SID,则Policy1的SID列表中存放的标签为(1::1;BSID1;BSID2;ENDSID)。
需要注意的是,在对数据报文进行转发时,上述三个Policy的SID列表中存放的首个标签均无需封装至数据报文的SRH中。
由于转发路径中首个SID是链路SID,设备A的SID列表中记录的标签数量为5,该标签数量减1(减去上述链路SID1::1)后等于首个节点支持的最大标签栈深度4,则表明上述SRv6 TE Policy的配置方法是可以应用在实际配置中的,此时将Policy1、2、3的SRv6 TEPolicy配置信息下发至对应的设备A、B、G中进行配置。
在将上述Policy1、2、3的SRv6 TE Policy配置信息下发至对应的设备A、B、G之后,将当前接收到的数据报文按照Policy1的SID列表中记录的标签进行转发,由于Policy1的SID列表中第一个标签1::1为链路SID,故只需将(BSID1;BSID2;END SID)封装至第一层SRH中,由于添加了尾节点被配置的节点标识END SID,END SID会处于SRH中SL=0的位置,故BSID不会处于SL=0的位置;
按照第一个标签1::1将数据报文由设备A转发至设备B,下面按照第一层SRH封装标签的顺序将当前接收的数据报文找到BSID1对应的Policy2即设备B,Policy2的SID列表中记录的标签为(2::1;3::1;4::1;5::1;6::1),由于第一个标签2::1为链路,故只需将(3::1;4::1;5::1;6::1)封装至第二层SRH中,并按照顺序将当前接收的数据报文先由设备B依据标签2::1转发至设备C,再按照第二层SRH中封装的标签顺序转发至设备D、设备E、设备F至设备G;
转发至设备G后,将该第二层SRH剥离,继续按照第一层SRH中的标签顺序转发至BSID2对应的设备G,将数据报文引导至BSID2对应的Policy3中,由于Policy3的SID列表中记录的标签为(7::1;8::1;9::1;a::1;b::1),由于第一个标签7::1为链路,故只需将(8::1;9::1;a::1;b::1)封装至第三层SRH中,并按照顺序将当前接收的数据报文先由设备G依据标签7::1转发至设备H,再按照第三层SRH中封装的标签顺序转发至设备I、设备J、设备K至设备L,在转发至设备L后,将第三层SRH剥离,继续按照第一层SRH中的标签顺序转发至END SID对应的设备,END SID对应的设备也是设备L,则完成数据报文的传输。
至此,结束结合图5中的实际转发路径对本实施例中报文传输方法的描述。
请参考图6,图6为本申请实施例提供的另一种报文传输的具体路径示意图,其中,如图6所示,数据流由设备A传输至设备G,具体为A、B、C、D、E、F、G,且转发路径包括链路SID以及节点SID,该转发路径的尾节点即设备G存在私网标签,私网标签记为d,各设备支持的标签栈深度为2。下面进行该方法的具体描述。
在本实施例中,在首节点接收到数据报文时,控制器依据该数据报文所属的数据流在SRv6网络中的转发路径确定其是否需要进行路径粘连,由于该转发路径共包括6个标签,而各设备支持的标签栈深度为2,显然首个节点支持的标签栈深度2小于所述数据流通过所述转发路径转发所需的标签的数量6,确定需要进行路径粘连。
确定需要进行路径粘连之后,控制器从该接收到的数据报文所属的数据流在SRv6网络中经由的所有节点中选择粘连节点。具体地,控制器将转发路径作为当前路径,识别当前路径中首个SID是链路SID还是节点SID,图6中当前路径首个SID为10::8,是设备B的节点SID,此时直接将该节点SID所标识的节点即设备B作为当前粘连节点。
在确定设备B为当前粘连节点之后,确定数据报文从当前粘连节点开始传输所经由的首个SID为20::2,为链路SID,此时判断转发路径上从当前粘连节点至尾节点所经由的标签数是否大于N=K+1=2+1=3。显然从当前粘连节点即设备B至尾节点设备G所经由的标签数为5,大于3,确定当前粘连节点不是该转发路径的最后一个粘连节点。确定数据流从当前粘连节点即设备B开始传输所经由的3层标签,即(20::2;30::8;40::2),在设备B生成SRv6TE Policy,将该SRv6 TE Policy记为Policy2,该Policy2的BSID记为BSID1,Policy2的segment-list中存放的标签为(20::2;30::8;40::2)。
同时确定当前接收到的数据报文所属的数据流从当前路径上当前粘连节点即设备B开始传输经由3层标签后的剩余路径即(50::8;60::2),将该段剩余路径作为当前路径,返回识别当前路径中首个SID是链路SID还是节点SID的步骤。
此时识别出当前路径中首个SID为50::8,为节点SID,此时直接将该节点SID所标识的节点即设备F作为当前粘连节点。
在确定设备F为当前粘连节点之后,确定数据报文从当前粘连节点开始传输所经由的首个SID为60::2,为链路SID,此时判断转发路径上从当前粘连节点至尾节点所经由的标签数是否大于N=3。显然从当前粘连节点即设备F至尾节点设备G所经由的标签数为1,不大于3,确定当前粘连节点是该转发路径的最后一个粘连节点。确定转发路径上从当前粘连节点即设备F至尾节点即设备G所经由的标签为当前粘连节点对应的标签,即(60::2),在设备F部署SRv6 TE Policy,该SRv6 TE Policy记为Policy3,该Policy3的BSID记为BSID2,Policy3的SID列表中存放的标签为(60::2)。
下面控制器为转发路径的首节点即设备A生成对应的SRv6 TE Policy,其中,在设备A生成SRv6 TE Policy,将该SRv6 TE Policy记为Policy1,设备A的SID列表至少包括当前接收到的数据报文所属的数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TEPolicy所对应的BSID,即BSID1以及BSID2;由于转发路径中从首个节点即设备A开始的首个SID为节点SID,则设备A的SID列表无需记录该节点SID,由于该转发路径的尾节点中存在私网标签,则无需将尾节点即设备G的节点SID作为设备A的SID列表中的最后一个SID,则Policy1的SID列表中存放的标签为(BSID1;BSID2)。
需要注意的是,在对当前接收到的数据报文进行转发时,上述Policy2与Policy3的SID列表中存放的首个标签均无需封装至数据报文的SRH中,且该粘连节点对应的节点SID,即B设备的节点SID10::8以及F设备的节点SID50::8,均无需放入该粘连节点的SID列表中。
由于转发路径中首个SID为10::8,为节点SID,首节点设备A的SID列表中记录的标签数量为2,该标签数量等于首节点即设备A支持的最大标签栈深度2,则表明上述SRv6 TEPolicy的配置方法可以应用于实际配置中,最终将Policy1、2、3的SRv6 TE Policy配置信息下发至对应的设备A、B、F中进行配置。
在将上述Policy1、2、3的SRv6 TE Policy配置信息下发至对应的设备A、B、F之后,将当前接收到的数据报文按照Policy1的SID列表中记录的标签进行转发,首先将Policy1的SID列表中记录的标签(BSID1;BSID2)封装至第一层SRH中,由于私网标签d被默认封装在SRH的标签栈SL=0的位置,故BSID2不会处于SL=0的位置;
按照第一层SRH封装标签的顺序将当前接收的数据报文首先转发至BSID1对应的Policy2即设备B,Policy2的SID列表中记录的标签为(20::2;30::8;40::2),由于第一个标签20::2为链路,故只需将(30::8;40::2)封装至第二层SRH中,可以直接依据标签20::2将数据报文由设备B转发至设备C,再按照第二层SRH中封装的标签顺序转发至设备D与设备E;
转发至设备E后,将该第二层SRH剥离,继续按照第一层SRH中的标签顺序转发至BSID2对应的设备F,将数据报文引导至BSID2对应的Policy3中,由于Policy3中仅有一个标签且为60::2的链路,故无需封装第三层SRH,直接将数据报文由设备F依据标签60::2转发至设备G,完成数据报文的传输。
至此,结束结合图6中的实际转发路径对本实施例中报文传输方法的描述。
通过上述的报文传输方法,实现了多次路径粘连,使得在转发路径较长的情况下也可以成功对报文进行传输。
图7示出了根据本申请的一示例性实施例的电子设备的示意结构图。请参考图7,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成终端交互装置。当然,除了软件实现方式之外,本申请并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图8,图8为本申请实施例提供的一种报文传输装置结构图。如图8所示,该报文传输装置可以包括选择单元801以及下发单元802。其中:
选择单元801,用于当依据数据流在SRv6网络中的转发路径确定需要进行路径粘连时,从数据流在SRv6网络经由的所有节点中选择出粘连节点;
下发单元802,用于为每一粘连节点生成对应的段路由流量工程策略SRv6 TEPolicy并下发至该粘连节点;任一粘连节点的SRv6 TE Policy绑定了对应的绑定段标识BSID,不同粘连节点的SRv6 TE Policy绑定不同的BSID;粘连节点的SRv6 TE Policy包括SID列表,所述SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定;所述任一粘连节点的SRv6 TEPolicy用于指导所述数据流沿着该SRv6 TE Policy包括的SID列表中的首个标签至最后一个标签传输;
为所述转发路径的首节点生成对应的SRv6 TE Policy并下发至首节点;SRv6 TEPolicy包括SID列表,该SID列表至少包括所述数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID,首节点的SRv6 TE Policy用于指导所述数据流从该首节点开始沿着各粘连节点的传输。
可选的,所述选择单元801具体用于:
将所述转发路径作为当前路径;
依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点;
若当前粘连节点至所述转发路径的尾节点所经由的标签数大于N,则确定所述数据流从当前粘连节点开始传输经由N层标签后的剩余路径;
将所述剩余路径作为当前路径,返回依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点的步骤,直至当前粘连节点至所述尾节点所经由的标签数不大于N;
和/或,所述转发路径由节点SID和/或链路SID组成;
所述选择单元801具体用于:
若当前路径的首个SID为节点SID,则将该节点SID所标识的节点作为当前粘连节点;
若当前路径的首个SID为链路SID,则在该链路SID所标识的链路的入节点为所述首节点时,将该链路SID所标识的链路的出节点作为当前粘连节点,在该链路SID所标识的链路的入节点不为所述首节点时,将所述入节点作为当前粘连节点;
和/或,当所述数据流从粘连节点开始传输所经由的首个SID为链路SID时,所述N为K+1;
当所述数据流从粘连节点开始传输所经由的首个SID为节点SID时,所述N为K;
和/或,若所述转发路径的尾节点不存在由边界网关协议BGP分配的私网标签,则所述首节点的SID列表还包括:所述尾节点的节点SID;所述尾节点的节点SID被作为该SID列表中的最后一个SID;
和/或,所述下发单元802具体用于:
若所述转发路径的首个SID为链路SID,则计算所述首节点的SID列表中记录的标签数量与设定值之间的差值,若所述差值小于或等于所述首节点支持的最大标签栈深度,则下发SRv6 TE Policy至粘连节点和首节点;
若所述转发路径的首个SID为节点SID,则当所述首节点的SID列表中记录的标签数量小于或等于所述首节点支持的最大标签栈深度时,下发SRv6 TE Policy至粘连节点和首节点。
至此,结束对图8中报文传输装置的描述。
请参考图9,图9为本申请实施例提供的另一种报文传输装置结构图,该装置与图8所示的装置相配合,以实现数据报文的转发。如图9所示,该报文传输装置901可以用于:
若本节点为转发路径的首节点,则在接收到数据报文时,将首节点的SID列表中包括的用于转发所述数据报文的标签封装至所述数据报文的段路由头SRH中并转发;其中,所述首节点的SID列表至少包括所述数据报文所属的数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID;
若本节点为转发路径中的粘连节点,则在接收到数据报文时,依据本粘连节点的BSID将本粘连节点的SID列表中包括的用于转发所述数据报文的标签作为新的外层SRH封装至所述数据报文的原SRH之外并转发;其中,所述粘连节点的SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定。
至此,完成图9中报文传输装置的描述。
对应地,在本实施例中,本申请实施例还提供了一种计算机可读存储介质,上述计算机可读存储介质上存储有若干计算机指令,上述计算机指令被执行时,能够实现本申请上述示例公开的方法。
示例性的,上述计算机可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,计算机可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (11)
1.一种报文传输方法,其特征在于,该方法应用于控制器,该方法包括:
当依据数据流在SRv6网络中的转发路径确定需要进行路径粘连时,从数据流在SRv6网络经由的所有节点中选择出粘连节点;
为每一粘连节点生成对应的段路由流量工程策略SRv6 TE Policy并下发至该粘连节点;任一粘连节点的SRv6 TE Policy绑定了对应的绑定段标识BSID,不同粘连节点的SRv6TE Policy绑定不同的BSID;粘连节点的SRv6 TE Policy包括SID列表,所述SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定;所述任一粘连节点的SRv6 TE Policy用于指导所述数据流沿着该SRv6 TE Policy包括的SID列表中的首个标签至最后一个标签传输;
为所述转发路径的首节点生成对应的SRv6 TE Policy并下发至首节点;SRv6 TEPolicy包括SID列表,该SID列表至少包括所述数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID,首节点的SRv6 TE Policy用于指导所述数据流从该首节点开始沿着各粘连节点的传输。
2.根据权利要求1所述的方法,其特征在于,所述从数据流在SRv6网络经由的所有节点中选择出粘连节点包括:
将所述转发路径作为当前路径;
依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点;
若当前粘连节点至所述转发路径的尾节点所经由的标签数大于N,则确定所述数据流从当前粘连节点开始传输经由N层标签后的剩余路径;
将所述剩余路径作为当前路径,返回依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点的步骤,直至当前粘连节点至所述尾节点所经由的标签数不大于N。
3.根据权利要求2所述的方法,其特征在于,所述转发路径由节点SID和/或链路SID组成;
所述依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点包括:
若当前路径的首个SID为节点SID,则将该节点SID所标识的节点作为当前粘连节点;
若当前路径的首个SID为链路SID,则在该链路SID所标识的链路的入节点为所述首节点时,将该链路SID所标识的链路的出节点作为当前粘连节点,在该链路SID所标识的链路的入节点不为所述首节点时,将所述入节点作为当前粘连节点。
4.根据权利要求1至3任一所述的方法,其特征在于,当所述数据流从粘连节点开始传输所经由的首个SID为链路SID时,所述N为K+1;
当所述数据流从粘连节点开始传输所经由的首个SID为节点SID时,所述N为K。
5.根据权利要求1所述的方法,其特征在于,若所述转发路径的尾节点不存在由边界网关协议BGP分配的私网标签,则所述首节点的SID列表还包括:所述尾节点的节点SID;所述尾节点的节点SID被作为该SID列表中的最后一个SID。
6.根据权利要求1所述的方法,其特征在于,所述下发SRv6 TE Policy至粘连节点和首节点包括:
若所述转发路径的首个SID为链路SID,则计算所述首节点的SID列表中记录的标签数量与设定值之间的差值,若所述差值小于或等于所述首节点支持的最大标签栈深度,则下发SRv6 TE Policy至粘连节点和首节点;
若所述转发路径的首个SID为节点SID,则当所述首节点的SID列表中记录的标签数量小于或等于所述首节点支持的最大标签栈深度时,下发SRv6 TE Policy至粘连节点和首节点。
7.一种报文传输方法,其特征在于,该方法应用于网络节点,所述网络节点是权利要求1至6中任一项所述的方法中的节点;该方法包括:
若本节点为转发路径的首节点,则在接收到数据报文时,将首节点的SID列表中包括的用于转发所述数据报文的标签封装至所述数据报文的段路由头SRH中并转发;其中,所述首节点的SID列表至少包括所述数据报文所属的数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID;
若本节点为转发路径中的粘连节点,则在接收到数据报文时,依据本粘连节点的BSID将本粘连节点的SID列表中包括的用于转发所述数据报文的标签作为新的外层SRH封装至所述数据报文的原SRH之外并转发;其中,所述粘连节点的SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定。
8.一种报文传输装置,其特征在于,该装置包括:
选择单元,用于当依据数据流在SRv6网络中的转发路径确定需要进行路径粘连时,从数据流在SRv6网络经由的所有节点中选择出粘连节点;
下发单元,用于为每一粘连节点生成对应的段路由流量工程策略SRv6 TE Policy并下发至该粘连节点;任一粘连节点的SRv6 TE Policy绑定了对应的绑定段标识BSID,不同粘连节点的SRv6 TE Policy绑定不同的BSID;粘连节点的SRv6 TE Policy包括SID列表,所述SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定;所述任一粘连节点的SRv6 TE Policy用于指导所述数据流沿着该SRv6 TE Policy包括的SID列表中的首个标签至最后一个标签传输;
为所述转发路径的首节点生成对应的SRv6 TE Policy并下发至首节点;SRv6 TEPolicy包括SID列表,该SID列表至少包括所述数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID,首节点的SRv6 TE Policy用于指导所述数据流从该首节点开始沿着各粘连节点的传输。
9.根据权利要求8所述的装置,其特征在于,所述选择单元具体用于:
将所述转发路径作为当前路径;
依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点;
若当前粘连节点至所述转发路径的尾节点所经由的标签数大于N,则确定所述数据流从当前粘连节点开始传输经由N层标签后的剩余路径;
将所述剩余路径作为当前路径,返回依据当前路径中首个SID的类型,确定当前路径中的当前粘连节点的步骤,直至当前粘连节点至所述尾节点所经由的标签数不大于N;
和/或,所述转发路径由节点SID和/或链路SID组成;
所述选择单元具体用于:
若当前路径的首个SID为节点SID,则将该节点SID所标识的节点作为当前粘连节点;
若当前路径的首个SID为链路SID,则在该链路SID所标识的链路的入节点为所述首节点时,将该链路SID所标识的链路的出节点作为当前粘连节点,在该链路SID所标识的链路的入节点不为所述首节点时,将所述入节点作为当前粘连节点;
和/或,当所述数据流从粘连节点开始传输所经由的首个SID为链路SID时,所述N为K+1;
当所述数据流从粘连节点开始传输所经由的首个SID为节点SID时,所述N为K;
和/或,若所述转发路径的尾节点不存在由边界网关协议BGP分配的私网标签,则所述首节点的SID列表还包括:所述尾节点的节点SID;所述尾节点的节点SID被作为该SID列表中的最后一个SID;
和/或,所述下发单元具体用于:
若所述转发路径的首个SID为链路SID,则计算所述首节点的SID列表中记录的标签数量与设定值之间的差值,若所述差值小于或等于所述首节点支持的最大标签栈深度,则下发SRv6 TE Policy至粘连节点和首节点;
若所述转发路径的首个SID为节点SID,则当所述首节点的SID列表中记录的标签数量小于或等于所述首节点支持的最大标签栈深度时,下发SRv6 TE Policy至粘连节点和首节点。
10.一种报文传输装置,其特征在于,与权利要求8或9中所述的装置相配合,以实现数据报文的传输,该装置用于:
若本节点为转发路径的首节点,则在接收到数据报文时,将首节点的SID列表中包括的用于转发所述数据报文的标签封装至所述数据报文的段路由头SRH中并转发;其中,所述首节点的SID列表至少包括所述数据报文所属的数据流在SRv6网络传输时依次经由的各粘连节点的SRv6 TE Policy所对应的BSID;
若本节点为转发路径中的粘连节点,则在接收到数据报文时,依据本粘连节点的BSID将本粘连节点的SID列表中包括的用于转发所述数据报文的标签作为新的外层SRH封装至所述数据报文的原SRH之外并转发;其中,所述粘连节点的SID列表包括所述数据流从该粘连节点开始传输所经由的M层标签,M小于或等于N,N由该粘连节点所支持的最大标签栈深度K确定。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311147651.9A CN116915685B (zh) | 2023-09-06 | 2023-09-06 | 报文传输方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311147651.9A CN116915685B (zh) | 2023-09-06 | 2023-09-06 | 报文传输方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116915685A true CN116915685A (zh) | 2023-10-20 |
CN116915685B CN116915685B (zh) | 2023-12-12 |
Family
ID=88358669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311147651.9A Active CN116915685B (zh) | 2023-09-06 | 2023-09-06 | 报文传输方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116915685B (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105871721A (zh) * | 2015-01-19 | 2016-08-17 | 中兴通讯股份有限公司 | 一种段路由处理方法、处理装置及发送装置 |
CN110661700A (zh) * | 2018-06-30 | 2020-01-07 | 华为技术有限公司 | 一种传输路径故障的处理方法、装置及系统 |
US20200127913A1 (en) * | 2018-10-22 | 2020-04-23 | Cisco Technology, Inc., A California Corporation | Packet Network Interworking Including Segment Routing |
CN112511428A (zh) * | 2020-03-10 | 2021-03-16 | 中兴通讯股份有限公司 | 报文封装方法、报文转发方法、通告方法、电子设备、和存储介质 |
US20210092044A1 (en) * | 2016-02-15 | 2021-03-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Techniques for exposing maximum node and/or link segment identifier depth utilizing ospf |
CN113162852A (zh) * | 2021-03-25 | 2021-07-23 | 烽火通信科技股份有限公司 | 一种sr粘连节点配置的方法和装置 |
CN113364679A (zh) * | 2020-03-06 | 2021-09-07 | 华为技术有限公司 | 一种基于分段路由的转发控制方法、报文转发方法及装置 |
CN113411259A (zh) * | 2021-06-30 | 2021-09-17 | 新华三技术有限公司 | 一种报文转发方法、装置及设备 |
CN113472658A (zh) * | 2021-06-29 | 2021-10-01 | 新华三信息安全技术有限公司 | 一种报文封装方法、报文转发方法及装置 |
CN113746729A (zh) * | 2020-05-28 | 2021-12-03 | 华为技术有限公司 | 绑定段标识的处理方法及设备 |
CN113810288A (zh) * | 2021-09-17 | 2021-12-17 | 新华三信息安全技术有限公司 | 一种报文回程方法及装置 |
CN114244771A (zh) * | 2017-07-07 | 2022-03-25 | 华为技术有限公司 | Pecp分段路由路径分段标签绑定扩展 |
CN115102900A (zh) * | 2021-03-05 | 2022-09-23 | 中兴通讯股份有限公司 | 报文转发方法、系统、存储介质及电子装置 |
CN115460123A (zh) * | 2022-08-29 | 2022-12-09 | 新华三技术有限公司合肥分公司 | 一种报文转发方法及装置 |
CN115622930A (zh) * | 2021-07-15 | 2023-01-17 | 华为技术有限公司 | 一种报文处理方法以及相关装置 |
CN115695338A (zh) * | 2021-07-30 | 2023-02-03 | 华为技术有限公司 | 一种报文转发的方法及网络设备 |
-
2023
- 2023-09-06 CN CN202311147651.9A patent/CN116915685B/zh active Active
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105871721A (zh) * | 2015-01-19 | 2016-08-17 | 中兴通讯股份有限公司 | 一种段路由处理方法、处理装置及发送装置 |
US20210092044A1 (en) * | 2016-02-15 | 2021-03-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Techniques for exposing maximum node and/or link segment identifier depth utilizing ospf |
CN114244771A (zh) * | 2017-07-07 | 2022-03-25 | 华为技术有限公司 | Pecp分段路由路径分段标签绑定扩展 |
CN114070782A (zh) * | 2018-06-30 | 2022-02-18 | 华为技术有限公司 | 一种传输路径故障的处理方法、装置及系统 |
CN110661700A (zh) * | 2018-06-30 | 2020-01-07 | 华为技术有限公司 | 一种传输路径故障的处理方法、装置及系统 |
US20200127913A1 (en) * | 2018-10-22 | 2020-04-23 | Cisco Technology, Inc., A California Corporation | Packet Network Interworking Including Segment Routing |
CN113364679A (zh) * | 2020-03-06 | 2021-09-07 | 华为技术有限公司 | 一种基于分段路由的转发控制方法、报文转发方法及装置 |
CN112511428A (zh) * | 2020-03-10 | 2021-03-16 | 中兴通讯股份有限公司 | 报文封装方法、报文转发方法、通告方法、电子设备、和存储介质 |
CN113746729A (zh) * | 2020-05-28 | 2021-12-03 | 华为技术有限公司 | 绑定段标识的处理方法及设备 |
CN116582476A (zh) * | 2020-05-28 | 2023-08-11 | 华为技术有限公司 | 绑定段标识的处理方法及设备 |
CN115102900A (zh) * | 2021-03-05 | 2022-09-23 | 中兴通讯股份有限公司 | 报文转发方法、系统、存储介质及电子装置 |
CN113162852A (zh) * | 2021-03-25 | 2021-07-23 | 烽火通信科技股份有限公司 | 一种sr粘连节点配置的方法和装置 |
CN113472658A (zh) * | 2021-06-29 | 2021-10-01 | 新华三信息安全技术有限公司 | 一种报文封装方法、报文转发方法及装置 |
CN113411259A (zh) * | 2021-06-30 | 2021-09-17 | 新华三技术有限公司 | 一种报文转发方法、装置及设备 |
CN115622930A (zh) * | 2021-07-15 | 2023-01-17 | 华为技术有限公司 | 一种报文处理方法以及相关装置 |
CN115695338A (zh) * | 2021-07-30 | 2023-02-03 | 华为技术有限公司 | 一种报文转发的方法及网络设备 |
CN113810288A (zh) * | 2021-09-17 | 2021-12-17 | 新华三信息安全技术有限公司 | 一种报文回程方法及装置 |
CN115460123A (zh) * | 2022-08-29 | 2022-12-09 | 新华三技术有限公司合肥分公司 | 一种报文转发方法及装置 |
Non-Patent Citations (4)
Title |
---|
MARCO POLVERINI; ANTONIO CIANFRANI; MARCO LISTANTI: "Interface Counters in Segment Routing v6: a powerful instrument for Traffic Matrix Assessment", 《2018 9TH INTERNATIONAL CONFERENCE ON THE NETWORK OF THE FUTURE (NOF)》 * |
SOFTBANK CORP, CISCO SYSTEMS: "C4-190269 "5GC UP Function consideration from network programmability aspect"", 3GPP TSG_CT\\WG4_PROTOCOLLARS_EX-CN4, no. 4 * |
唐永林;刘锋;: "SRv6的分段标识符结构的改善", 电信科学, no. 04 * |
石鸿伟;黄凤芝;: "基于关键节点的分段路由标签栈压缩算法", 电子技术与软件工程, no. 12 * |
Also Published As
Publication number | Publication date |
---|---|
CN116915685B (zh) | 2023-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016115850A1 (zh) | 一种段路由处理方法、处理装置及发送装置 | |
CN109981457A (zh) | 一种报文处理的方法、网络节点和系统 | |
CN110661700B (zh) | 一种传输路径故障的处理方法、装置及系统 | |
CN112087386B (zh) | 一种报文处理的方法、设备和系统 | |
WO2018054397A1 (zh) | 业务功能链检测路径的方法和装置 | |
US8718062B2 (en) | Method, device and system for establishing pseudo wire | |
WO2018019131A1 (zh) | 报文转发方法及装置 | |
CN112019433B (zh) | 一种报文转发方法和装置 | |
CN113207192B (zh) | 一种报文转发方法及装置 | |
US11743204B2 (en) | Tunnel establishment method, apparatus, and system | |
US20200162367A1 (en) | Data stream transmission | |
CN111490937B (zh) | 一种建立跨域转发路径的方法、装置及系统 | |
US20230179510A1 (en) | Method for sending and forwarding packet, head node, forwarding node and storage medium | |
WO2021088629A1 (zh) | DetNet数据包处理方法及装置 | |
CN107547386B (zh) | 报文转发方法及装置 | |
CN115460123A (zh) | 一种报文转发方法及装置 | |
CN115280745B (zh) | 随流检测方法和电子设备 | |
CN116915685B (zh) | 报文传输方法、装置及电子设备 | |
CN109873766A (zh) | 报文传输方法和装置 | |
CN113904985A (zh) | 一种段列表获取方法、报文转发方法、装置及电子设备 | |
CN107086960B (zh) | 一种报文传输方法和装置 | |
US11489768B2 (en) | Method for creating inter-domain bidirectional tunnel, communication method and device, and storage medium | |
CN116418729A (zh) | 一种报文转发方法及装置 | |
CN110661674A (zh) | 检测业务链连通性的方法和系统 | |
CN109661037A (zh) | 一种sfc报文转发方法及设备 |
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 |