CN116366518A - 一种路由信息编辑的方法和装置 - Google Patents
一种路由信息编辑的方法和装置 Download PDFInfo
- Publication number
- CN116366518A CN116366518A CN202111621059.9A CN202111621059A CN116366518A CN 116366518 A CN116366518 A CN 116366518A CN 202111621059 A CN202111621059 A CN 202111621059A CN 116366518 A CN116366518 A CN 116366518A
- Authority
- CN
- China
- Prior art keywords
- routing
- target
- route
- information
- message
- 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 35
- 238000004590 computer program Methods 0.000 claims description 16
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 13
- 241001610351 Ipsa Species 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 5
- RNLHGQLZWXBQNY-UHFFFAOYSA-N 3-(aminomethyl)-3,5,5-trimethylcyclohexan-1-amine Chemical compound CC1(C)CC(N)CC(C)(CN)C1 RNLHGQLZWXBQNY-UHFFFAOYSA-N 0.000 description 4
- 101100256921 Ajellomyces capsulatus SID3 gene Proteins 0.000 description 4
- 101100365745 Ajellomyces capsulatus SID5 gene Proteins 0.000 description 4
- 101000840469 Arabidopsis thaliana Isochorismate synthase 1, chloroplastic Proteins 0.000 description 4
- 101100366400 Schizosaccharomyces pombe (strain 972 / ATCC 24843) spg1 gene Proteins 0.000 description 4
- 101150096768 sid4 gene Proteins 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 3
- 101100064323 Arabidopsis thaliana DTX47 gene Proteins 0.000 description 2
- 101150026676 SID1 gene Proteins 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/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/74—Address processing for routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种路由信息编辑的方法和装置,其中,该方法包括:获取待转发的初始报文,其中,初始报文用于请求将初始报文转发到目标路由节点;将目标路由节点所指示的目标路由路径与参考路由路径进行匹配,得到多个目标参考路由路径;将多个目标参考路由路径所对应的多个路由段集合确定为目标路由节点对应的路由段集合;将多个路由段集合编辑到初始报文中,得到携带目标路由信息的目标报文。通过本发明,解决了相关技术中存在的编辑路由信息时编辑空间占用率较高的问题,进而达到了降低编辑路由信息时编辑空间占用率的效果。
Description
技术领域
本发明实施例涉及报文处理领域,具体而言,涉及一种路由信息编辑的方法和装置。
背景技术
Segment Routing(分段路由)是一种源路由技术,SRv6(Segment RoutingInternet Protocol Version 6,基于互联网协议第六版转发平面的段路由)是基于IPv6(Internet Protocol Version 6,互联网协议第六版)扩展的SR(Segment Routing,分段路由)解决方案。SRv6背靠IPv6数据面进一步增强了网络可编程能力,有利于支持网络和业务可编程,打通端到端的网络通道,图1是当前SRv6报文封装格式示意图,其中,在IPv6Header后封装SRH(Segment Routing Header,段路由报文头)和SID List(SegmentIdentifier List,路由段标识列表)。SRH包含Next Header(指示跟在SID List之后报文头的类型)、Header Ext Length(SID List的长度)、Routing Type、Segment Left(剩余分段的数量)、Last Entry(SID List中最后一个SID)、Flags(8个bits的标识)以及Tag(指示报文的分组或者类型)一共7个字段。
为了将SRv6协议应用在VPN网络中,可以将SRv6协议中的HeadEnd、End节点分别作为VPN(Virtual Private Network,虚拟专用网络)网络中的PE(Provider Edge,服务提供商边缘设备)、P(Provider,服务提供商网络中的骨干路由器)节点,用于加解协议报文封装和报文转发。同时将SID0称为VPN SID,SID1-SIDn称为PATH SID。图2是当前VPN网络转发路径示意图,CE1分别向CE2和CE3发包。两个报文在服务提供商网络中的转发路径是相同的,只是根据不同的VPN SID转发到了不同的CE。换句话说,两个报文的PATH SID是相同的,只有VPN SID不同。那么就会出现VPN SID:PATH SID=N:1的情况。这样的场景常用于实际的VPN网络的部署中。当PE1收到从CE1发到CE2或CE3的报文的时候,PE1上会根据报文的入接口绑定的VPN,查找相应的VPN实例转发表,从而获得远端VPN实例的SID信息,并根据转发表的信息确定该VPN路由的出接口为SRv6 Policy隧道,PE1在原始报文上封装一层SRH+SIDList和IPv6 Header后转发。其中SID List中包含VPN SID和PATH SID。
由于在应用中,同一组PATH SID会对应多个VPN SID,相关技术中将将VPN SID和PATH SID耦合在一起,也就是说每一条路由路径单独进行编辑,如果需要编辑不同的VPNSID,但PATH SID相同的报文,会占用多个编辑SID List的表项,导致芯片资源浪费,同时这也对芯片的编辑能力提出了更高的要求。
针对相关技术中存在的编辑路由信息时编辑空间占用率较高的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种路由信息编辑的方法和装置,以至少解决相关技术中存在的编辑路由信息时编辑空间占用率较高的问题。
根据本发明的一个实施例,提供了一种路由信息编辑的方法,包括:获取待转发的初始报文,其中,所述初始报文用于请求将所述初始报文转发到目标路由节点;将所述目标路由节点所指示的目标路由路径与参考路由路径进行匹配,得到多个目标参考路由路径;将所述多个目标参考路由路径所对应的多个路由段集合确定为所述目标路由节点对应的路由段集合,其中,所述目标参考路由路径是所述参考路由路径中与所述目标路由路径匹配一致的参考路由路径;将所述多个路由段集合编辑到所述初始报文中,得到携带目标路由信息的目标报文,其中,所述目标路由信息用于指示将所述目标报文按照所述目标路由路径转发到所述目标路由节点。
可选地,所述将多个目标参考路由路径所对应的多个路由段集合确定为所述目标路由节点对应的路由段集合包括:确定所述多个目标参考路由路径对应的多个编辑器,其中,所述多个编辑器中的每个编辑器用于按照与所述每个编辑器所匹配的格式编辑对应的初始路由信息,所述初始路由信息用于指示按照与所述每个编辑器对应的目标参考路由路径进行路由;根据所述多个编辑器中的所述每个编辑器编辑的所述初始路由信息确定所述多个目标参考路由路径所对应的所述多个路由段集合;将所述多个路由段集合确定为所述目标路由节点对应的路由段集合。
可选地,所述根据所述多个编辑器中的所述每个编辑器编辑的所述初始路由信息确定所述多个目标参考路由路径所对应的所述多个路由段集合包括:获取第一编辑器编辑的第一路由信息,以及获取第二编辑器编辑的第二路由信息,其中,所述多个编辑器包括所述第一编辑器和所述第二编辑器,所述第一路由信息用于指示所述目标路由路径中隧道级路由路径的路由信息,所述第二路由信息用于指示所述目标路由路径中用户级路由路径的路由信息,所述第一路由信息包括初始路由报文头以及第一路由段集合,所述第二路由信息包括初始协议报文头以及第二路由段集合;将所述第一路由段集合和所述第二路由段集合确定为所述多个目标参考路由路径所对应的所述多个路由段集合。
可选地,所述确定所述多个目标参考路由路径对应的多个编辑器包括:确定所述多个目标参考路由路径中每个目标路由路径对应的索引信息;根据所述索引信息查找所述多个编辑器。
可选地,所述将所述多个路由段集合编辑到所述初始报文中,得到携带目标路由信息的目标报文包括:将所述多个路由段集合编辑到所述初始报文中,得到携带中间路由信息的中间报文,其中,所述中间路由信息与所述多个路由段集合具有对应关系;将所述中间路由信息调整为目标路由信息,得到携带所述目标路由信息的目标报文。
可选地,所述将所述多个路由段集合编辑到所述初始报文中,得到携带所述中间路由信息的中间报文包括:将第一编辑器编辑的第一路由信息保存在临时变量集中,以及将第二编辑器编辑的第二路由信息保存在所述临时变量集中,其中,所述第一路由信息用于指示所述目标路由路径中隧道级路由路径的路由信息,所述第二路由信息用于指示所述目标路由路径中用户级路由路径的路由信息,所述多个目标参考路由路径包括所述隧道级路由路径和所述用户级路由路径,所述第一路由信息包括初始路由报文头以及第一路由段集合,所述第二路由信息包括初始协议报文头以及第二路由段集合;在确定所述第一路由信息和所述第二路由信息全部保存在所述临时变量集中的情况下,按照目标编辑格式将所述初始协议报文头、所述初始路由报文头、所述第一路由段集合以及所述第二路由段集合编辑到所述初始报文的目标位置,得到所述中间报文。
可选地,所述将所述中间路由信息调整为目标路由信息,得到携带所述目标路由信息的目标报文包括:根据所述多个路由段集合中包括的路由段对所述中间路由信息的初始路由报文头中的字段进行更改,得到携带目标路由报文头的待处理报文;根据所述多个路由段集合中包括的路由段对所述待处理报文的初始协议报文头中的字段进行更改,得到携带所述目标路由信息的所述目标报文。
根据本发明的又一个实施例,还提供了一种路由信息编辑的装置,包括:获取模块,用于获取待转发的初始报文,其中,所述初始报文用于请求将所述初始报文转发到目标路由节点;匹配模块,用于将所述目标路由节点所指示的目标路由路径与参考路由路径进行匹配,得到多个目标参考路由路径;确定模块,用于将所述多个目标参考路由路径所对应的多个路由段集合确定为所述目标路由节点对应的路由段集合,其中,所述目标参考路由路径是所述参考路由路径中与所述目标路由路径匹配一致的参考路由路径;编辑模块,用于将所述多个路由段集合编辑到所述初始报文中,得到携带目标路由信息的目标报文,其中,所述目标路由信息用于指示将所述目标报文按照所述目标路由路径转发到所述目标路由节点。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,通过获取待转发的初始报文,其中,初始报文用于请求将初始报文转发到目标路由节点;将目标路由节点所指示的目标路由路径与参考路由路径进行匹配,得到多个目标参考路由路径;将多个目标参考路由路径所对应的多个路由段集合确定为目标路由节点对应的路由段集合,其中,目标参考路由路径是参考路由路径中与目标路由路径匹配一致的参考路由路径;将多个路由段集合编辑到初始报文中,得到携带目标路由信息的目标报文,其中,目标路由信息用于指示将目标报文按照目标路由路径转发到目标路由节点,即,将与目标路由路径存在匹配关系的多个参考路由路径对应的多个路由段集合作为目标路由路径的路由段集合,在为初始报文编辑按照目标路由路径进行转发的目标路由信息时,根据初始报文的目的路由节点确定初始报文的目标路由路径,通过匹配目标路由路径和参考路由路径从而确定与目标路由路径匹配的目标参考路由路径,通过将多个目标参考路由路径对应的多个路由段集合作为目标路由段的路由段集合,进而将多个路由段集合编辑到初始报文中得到按照目标路由路径路由的目标报文,避免了相关技术中将目标路由路径中的各个路由段耦合在一起,对每个报文的路由路径单独编辑,进而降低了对报文编辑设备的路由段的编辑空间占用,以及减少了对报文编辑设备的路由段编辑能力的要求,从而可以实现通过较少的编辑空间完成更多的路由信息的编辑,因此,解决了相关技术中存在的编辑路由信息时编辑空间占用率较高的问题,达到了降低编辑路由信息时编辑空间占用率的效果。
附图说明
图1是当前SRv6报文封装格式示意图;
图2是当前VPN网络转发路径示意图;
图3是本发明实施例的路由信息编辑的方法的移动终端硬件结构框图;
图4是根据本发明实施例的路由信息编辑的方法的流程图;
图5是根据本发明实施例的一种可选的目标报文格式示意图;
图6是根据本发明实施例的一种可选的编辑表索引示意图;
图7是根据本发明实施例的路由信息编辑的装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图3是本发明实施例的路由信息编辑的方法的移动终端硬件结构框图。如图3所示,移动终端可以包括一个或多个(图3中仅示出一个)处理器302(处理器302可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器304,其中,上述移动终端还可以包括用于通信功能的传输设备306以及输入输出设备308。本领域普通技术人员可以理解,图3所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图3所示不同的配置。
存储器304可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的路由信息编辑的方法对应的计算机程序,处理器302通过运行存储在存储器304内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器304可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器304可进一步包括相对于处理器302远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置306用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输装置306包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置306可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种路由信息编辑的方法,图4是根据本发明实施例的路由信息编辑的方法的流程图,如图4所示,该流程包括如下步骤:
步骤S402,获取待转发的初始报文,其中,所述初始报文用于请求将所述初始报文转发到目标路由节点;
步骤S404,将所述目标路由节点所指示的目标路由路径与参考路由路径进行匹配,得到多个目标参考路由路径;
步骤S406,将所述多个目标参考路由路径所对应的多个路由段集合确定为所述目标路由节点对应的路由段集合,其中,所述目标参考路由路径是所述参考路由路径中与所述目标路由路径匹配一致的参考路由路径;
步骤S408,将所述多个路由段集合编辑到所述初始报文中,得到携带目标路由信息的目标报文,其中,所述目标路由信息用于指示将所述目标报文按照所述目标路由路径转发到所述目标路由节点。
通过上述步骤,将与目标路由路径存在匹配关系的多个参考路由路径对应的多个路由段集合作为目标路由路径的路由段集合,在为初始报文编辑按照目标路由路径进行转发的目标路由信息时,根据初始报文的目的路由节点确定初始报文的目标路由路径,通过匹配目标路由路径和参考路由路径从而确定与目标路由路径匹配的目标参考路由路径,通过将多个目标参考路由路径对应的多个路由段集合作为目标路由段的路由段集合,进而将多个路由段集合编辑到初始报文中得到按照目标路由路径路由的目标报文,避免了相关技术中将目标路由路径中的各个路由段耦合在一起,对每个报文的路由路径单独编辑,进而降低了对报文编辑设备的路由段的编辑空间占用,以及减少了对报文编辑设备的路由段编辑能力的要求,从而可以实现通过较少的编辑空间完成更多的路由信息的编辑,因此,解决了相关技术中存在的编辑路由信息时编辑空间占用率较高的问题,达到了降低编辑路由信息时编辑空间占用率的效果。
在上述步骤S402提供的技术方案中,目标路由节点是初始报文的路由路径的终点,目标路由节点可以是用户设备也可以是服务提供商设备,比如,目标路由设备可以是用户网络边缘设备(如用户使用的路由器、路由交换机等等)、服务提供商网络边缘设备、服务提供商网络中的骨干路由器等等。
在上述步骤S404提供的技术方案中,目标路由路径中可以包括隧道级路由路径和用户级路由路径,或者目标路由路径中还可以只包括隧道级路由路径。
可选地,在本实施例中,多个目标路由路径的中各个目标路由路径之间可以存在一个或多个相同的路由节点,也可以是各个目标路由路径包括的路由节点是互异的,本方案对此不做限定。
可选地,在本实施例中,目标参考路由路径为在设备上已经建立的路由路径。
可选地,在本实施例中,目标路由路径的路径长度大于各个目标参考路由路径的长度,多个目标参考路由路径能够组合得到目标路由路径,比如,目标路由路径包括依次连接的节点1、节点2、节点3、节点4、节点5,在进行转发或者路由时从节点5依次发送至节点1,节点2到节点5的路径为隧道级路由路径,节点1到节点2的路径为用户级路由路径,此时参考路由路径可以是节点5到节点3的路由路径、节点3到节点2的路由路径,节点2到节点1的路由路径。
可选地,在本实施例中,各个目标参考路由路径的路径长度可以是相同的也可以是不同的,本方案对此不做限定。
在上述步骤S406提供的技术方案中,每个参考路由路径对应的路由段集合中可以但不限于包括一个或者多个路由段。
在上述步骤S408提供的技术方案中,目标路由信息是目标格式的路由信息,比如IPv6格式的路由信息、SRv6格式的路由信息等,图5是根据本发明实施例的一种可选的目标报文格式示意图,本实施例以目标报文为SRv6格式的路由信息为例,如图5所示,可以但不限于包括以下内容,初始报文在Inner Packet位置,在初始报文前面依次是SRv6路由信息(包括SRH和SID List,其中,SID List包括VPN SID和Path SID)、IPv6路由信息(包括IPv6Header、IPSA和IPDA)、Outer Ether Header。
作为一种可选地实施例,所述将多个目标参考路由路径所对应的多个路由段集合确定为所述目标路由节点对应的路由段集合包括:
确定所述多个目标参考路由路径对应的多个编辑器,其中,所述多个编辑器中的每个编辑器用于按照与所述每个编辑器所匹配的格式编辑对应的初始路由信息,所述初始路由信息用于指示按照与所述每个编辑器对应的目标参考路由路径进行路由;
根据所述多个编辑器中的所述每个编辑器编辑的所述初始路由信息确定所述多个目标参考路由路径所对应的所述多个路由段集合;
将所述多个路由段集合确定为所述目标路由节点对应的路由段集合。
可选地,在本实施例中,编辑器是用于编辑路由信息的,编辑器可以是编辑表的形式,在该编辑表中,存储着编辑路由信息的固定字段,或者,编辑器还可以是分装好的包含用于编辑路由信息的代码的脚本包,本方案对此不做限定。
作为一种可选地实施例,所述根据所述多个编辑器中的所述每个编辑器编辑的所述初始路由信息确定所述多个目标参考路由路径所对应的所述多个路由段集合包括:
获取第一编辑器编辑的第一路由信息,以及获取第二编辑器编辑的第二路由信息,其中,所述多个编辑器包括所述第一编辑器和所述第二编辑器,所述第一路由信息用于指示所述目标路由路径中隧道级路由路径的路由信息,所述第二路由信息用于指示所述目标路由路径中用户级路由路径的路由信息,所述第一路由信息包括初始路由报文头以及第一路由段集合,所述第二路由信息包括初始协议报文头以及第二路由段集合;
将所述第一路由段集合和所述第二路由段集合确定为所述多个目标参考路由路径所对应的所述多个路由段集合。
可选地,在本实施例中,第一编辑器的数量可以是一个可以是多个,比如目标路由路径有依次排列的SID1、SID2、SID3、SID4、SID5、组成,其中SID2、SID3、SID4、SID5是隧道级路由路径的路由段,SID1为用户级路由路径的路由段,此时第一编辑器可以是一个能够编辑SID2、SID3、SID4、SID5路由信息的编辑器,或者第一编辑器还可以是两个编辑器,一个用于编辑SID2、SID3的路由信息,另一个用于编辑SID4、SID5的路由信息本方案对此不做限定。
可选地,在本实施例中,协议报文头是按照是将报文按照某种协议转发的报文头,协议报文头可以但不限于包括IPv6协议报文头、IPv4协议报文头等等。
可选地,在本实施例中,路由报文头是对路由路径进行分段路由的报文头,比如,路由报文头可以是SRH报文头。
作为一种可选地实施例,所述确定所述多个目标参考路由路径对应的多个编辑器包括:
确定所述多个目标参考路由路径中每个目标路由路径对应的索引信息;
根据所述索引信息查找所述多个编辑器。
图6是根据本发明实施例的一种可选的编辑表索引示意图,在本实施例中编辑器为用于编辑路由信息的编辑表,如图6所示,初始报文(Raw Packet)中携带有请求路由到的目的路由节点信息,通过对初始报文进行解析,从而可以根据目的路由节点信息在报文转发表中匹配对应的目标路由路径,通过与预设的参考路由路径进行匹配,从而确定出与目标路由路径匹配的多个目标参考路由路径,从而可以将多个目标参考路由路径对应的路由段作为目标路由路径的路由段,因此,需要查找目标参考路由路径对应的编辑表,因此可以确定目标参考路由路径的索引信息(NHPtr)从而找到对应的编辑表(DsNexthop)。DsNexthop表包括重要字段{InnerEditPtr,OuterEditPtr,DestInterfaceId},InnerEditPtr用来索引SRH和Path SID的编辑信息;OuterEditPtr用来索引IPv6 Header和VPN SID的编辑信息;DestInterface用来索引出口Interface信息。DsL3EditAddIp6ExtHeader表包含几个重要信息{SRH,Path SID(1-N)},SRH用来编辑SRH信息;Path SID用来编辑SID List中除了VPN SID其他的SID,其中,根据Srv6协议的规定,SIDN同时用来编辑外层IPv6头中的IPDa。DsL3EditAddIp6Sr表包括重要字段{SidEditPtr,L2EditPtr,IPSa},SidEditPtr用来索引VPN SID的编辑信息;L2EditPtr用来索引外层二层头的编辑信息;IPSa用来编辑外层IPv6头中的IPSa。DsDestInterface表包括重要字段{RoutermacId},RoutermacId用来索引DsEgressRoutermac,获取编辑外层MacSa的信息。DsL3EditAddIp6SrVpnSid表用来编辑VPN SID;DsL2Eidt表用来编辑外层二层头,包括Vlan和MacDa。
由图6可以看出VPN SID和Path SID使用两张不同的表项编辑,即DsL3EditAddIp6ExtHeader和DsL3EditAddIp6SrVpnSid。DsNexthop使用InnerEditPtr索引DsL3EditAddIp6ExtHeader得到SRH和Path SID;使用OuterEditPtr索引DsL3EditAddIp6Sr表项,之后使用DsL3EditAddIp6Sr中的SidEditPtr索引DsL3EditAddIp6SrVpnSid得到VPNSID。这样就可以做到VPN SID和Path SID两者间灵活搭配,达到解耦的目的,节省芯片表项。
在图6的编辑表索引示意图中,整个报文编辑处理流程包括:报文在入口处理引擎(Ingress Process Engine即IPE)通过原始报文的IPDA查询转发表,获得NHPtr。接下来报文将NHPtr携带到EPE之后,根据NHPtr索引得到DsNexthop表,进一步使用InnerEditPtr、OuterEditPtr和DsDestInterfaceId索引DsL3EditAddIp6ExtHeader、DsL3EditAddIp6Sr和DsDestInterface。从DsL3EditAddIp6ExtHeader获得编辑SRH和Path SID(使用SID N编辑外层IPv6头的IPDa)的信息,从DsL3EditAddIp6Sr获得编辑外层IPv6头的IPSa、VPN SID以及外层二层头的Vlan和MACDa的信息,从DsDestInterface获取编辑外层二层头的MACSa的信息。
作为一种可选地实施例,所述将所述多个路由段集合编辑到所述初始报文中,得到携带目标路由信息的目标报文包括:
将所述多个路由段集合编辑到所述初始报文中,得到携带中间路由信息的中间报文,其中,所述中间路由信息与所述多个路由段集合具有对应关系;
将所述中间路由信息调整为目标路由信息,得到携带所述目标路由信息的目标报文。
可选地,在本实施例中,将多个路由段集合编辑到初始报文中可以是根据索引到的编辑器的先后顺序依次将各个编辑器编辑的路由信息通过设置对应的偏移值编辑到初始报文的对应位置,或者还可以将各个编辑器编辑的路由信息全部存储在临时变量集中,在确定全部路由信息都存在临时变量集中后,在按照目标报文的格式依次在临时变量集中提取相应的数据编辑到初始报文中,本方案对此不做限定。
作为一种可选地实施例,所述将所述多个路由段集合编辑到所述初始报文中,得到携带所述中间路由信息的中间报文包括:
将第一编辑器编辑的第一路由信息保存在临时变量集中,以及将第二编辑器编辑的第二路由信息保存在所述临时变量集中,其中,所述第一路由信息用于指示所述目标路由路径中隧道级路由路径的路由信息,所述第二路由信息用于指示所述目标路由路径中用户级路由路径的路由信息,所述多个目标参考路由路径包括所述隧道级路由路径和所述用户级路由路径,所述第一路由信息包括初始路由报文头以及第一路由段集合,所述第二路由信息包括初始协议报文头以及第二路由段集合;
在确定所述第一路由信息和所述第二路由信息全部保存在所述临时变量集中的情况下,按照目标编辑格式将所述初始协议报文头、所述初始路由报文头、所述第一路由段集合以及所述第二路由段集合编辑到所述初始报文的目标位置,得到所述中间报文。
可选地,在本实施例中,第一编辑器编辑的第一路由信息和第二编辑器编辑的第二路由信息可以保存在同一临时变量集中,也可以保存在不同的临时变量集中。
作为一种可选地实施例,所述将所述中间路由信息调整为目标路由信息,得到携带所述目标路由信息的目标报文包括:
根据所述多个路由段集合中包括的路由段对所述中间路由信息的初始路由报文头中的字段进行更改,得到携带目标路由报文头的待处理报文;
根据所述多个路由段集合中包括的路由段对所述待处理报文的初始协议报文头中的字段进行更改,得到携带所述目标路由信息的所述目标报文。
可选地,在本实施例中,更改的路由报文头中的字段可以但不限于包括NextHeader、Segment Left等等。
可选地,在本实施例中,更改的协议报文头中的字段可以但不限于包括NextHeader、IPDA等等。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种路由信息编辑的装置,图7是根据本发明实施例的路由信息编辑的装置的结构框图,如图7所示,该装置包括:
获取模块72,用于获取待转发的初始报文,其中,所述初始报文用于请求将所述初始报文转发到目标路由节点;
匹配模块74,用于将所述目标路由节点所指示的目标路由路径与参考路由路径进行匹配,得到多个目标参考路由路径;
确定模块76,用于将所述多个目标参考路由路径所对应的多个路由段集合确定为所述目标路由节点对应的路由段集合,其中,所述目标参考路由路径是所述参考路由路径中与所述目标路由路径匹配一致的参考路由路径;
编辑模块78,用于将所述多个路由段集合编辑到所述初始报文中,得到携带目标路由信息的目标报文,其中,所述目标路由信息用于指示将所述目标报文按照所述目标路由路径转发到所述目标路由节点。
可选地,所述确定模块包括:第一确定单元,用于确定所述多个目标参考路由路径对应的多个编辑器,其中,所述多个编辑器中的每个编辑器用于按照与所述每个编辑器所匹配的格式编辑对应的初始路由信息,所述初始路由信息用于指示按照与所述每个编辑器对应的目标参考路由路径进行路由;第二确定单元,用于根据所述多个编辑器中的所述每个编辑器编辑的所述初始路由信息确定所述多个目标参考路由路径所对应的所述多个路由段集合;第三确定单元,用于将所述多个路由段集合确定为所述目标路由节点对应的路由段集合。
可选地,所述第二确定单元用于:获取第一编辑器编辑的第一路由信息,以及获取第二编辑器编辑的第二路由信息,其中,所述多个编辑器包括所述第一编辑器和所述第二编辑器,所述第一路由信息用于指示所述目标路由路径中隧道级路由路径的路由信息,所述第二路由信息用于指示所述目标路由路径中用户级路由路径的路由信息,所述第一路由信息包括初始路由报文头以及第一路由段集合,所述第二路由信息包括初始协议报文头以及第二路由段集合;将所述第一路由段集合和所述第二路由段集合确定为所述多个目标参考路由路径所对应的所述多个路由段集合。
可选地,所述第一确定单元用于:确定所述多个目标参考路由路径中每个目标路由路径对应的索引信息;根据所述索引信息查找所述多个编辑器。
可选地,所述编辑模块包括:编辑单元,用于将所述多个路由段集合编辑到所述初始报文中,得到携带中间路由信息的中间报文,其中,所述中间路由信息与所述多个路由段集合具有对应关系;调整单元,用于将所述中间路由信息调整为目标路由信息,得到携带所述目标路由信息的目标报文。
可选地,所述编辑单元用于:将第一编辑器编辑的第一路由信息保存在临时变量集中,以及将第二编辑器编辑的第二路由信息保存在所述临时变量集中,其中,所述第一路由信息用于指示所述目标路由路径中隧道级路由路径的路由信息,所述第二路由信息用于指示所述目标路由路径中用户级路由路径的路由信息,所述多个目标参考路由路径包括所述隧道级路由路径和所述用户级路由路径,所述第一路由信息包括初始路由报文头以及第一路由段集合,所述第二路由信息包括初始协议报文头以及第二路由段集合;在确定所述第一路由信息和所述第二路由信息全部保存在所述临时变量集中的情况下,按照目标编辑格式将所述初始协议报文头、所述初始路由报文头、所述第一路由段集合以及所述第二路由段集合编辑到所述初始报文的目标位置,得到所述中间报文。
可选地,所述调整单元用于:根据所述多个路由段集合中包括的路由段对所述中间路由信息的初始路由报文头中的字段进行更改,得到携带目标路由报文头的待处理报文;根据所述多个路由段集合中包括的路由段对所述待处理报文的初始协议报文头中的字段进行更改,得到携带所述目标路由信息的所述目标报文。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种路由信息编辑的方法,其特征在于,包括:
获取待转发的初始报文,其中,所述初始报文用于请求将所述初始报文转发到目标路由节点;
将所述目标路由节点所指示的目标路由路径与参考路由路径进行匹配,得到多个目标参考路由路径;
将所述多个目标参考路由路径所对应的多个路由段集合确定为所述目标路由节点对应的路由段集合,其中,所述目标参考路由路径是所述参考路由路径中与所述目标路由路径匹配一致的参考路由路径;
将所述多个路由段集合编辑到所述初始报文中,得到携带目标路由信息的目标报文,其中,所述目标路由信息用于指示将所述目标报文按照所述目标路由路径转发到所述目标路由节点。
2.根据权利要求1所述的方法,其特征在于,所述将多个目标参考路由路径所对应的多个路由段集合确定为所述目标路由节点对应的路由段集合包括:
确定所述多个目标参考路由路径对应的多个编辑器,其中,所述多个编辑器中的每个编辑器用于按照与所述每个编辑器所匹配的格式编辑对应的初始路由信息,所述初始路由信息用于指示按照与所述每个编辑器对应的目标参考路由路径进行路由;
根据所述多个编辑器中的所述每个编辑器编辑的所述初始路由信息确定所述多个目标参考路由路径所对应的所述多个路由段集合;
将所述多个路由段集合确定为所述目标路由节点对应的路由段集合。
3.根据权利要求2所述的方法,其特征在于,所述根据所述多个编辑器中的所述每个编辑器编辑的所述初始路由信息确定所述多个目标参考路由路径所对应的所述多个路由段集合包括:
获取第一编辑器编辑的第一路由信息,以及获取第二编辑器编辑的第二路由信息,其中,所述多个编辑器包括所述第一编辑器和所述第二编辑器,所述第一路由信息用于指示所述目标路由路径中隧道级路由路径的路由信息,所述第二路由信息用于指示所述目标路由路径中用户级路由路径的路由信息,所述第一路由信息包括初始路由报文头以及第一路由段集合,所述第二路由信息包括初始协议报文头以及第二路由段集合;
将所述第一路由段集合和所述第二路由段集合确定为所述多个目标参考路由路径所对应的所述多个路由段集合。
4.根据权利要求2所述的方法,其特征在于,所述确定所述多个目标参考路由路径对应的多个编辑器包括:
确定所述多个目标参考路由路径中每个目标路由路径对应的索引信息;
根据所述索引信息查找所述多个编辑器。
5.根据权利要求1所述的方法,其特征在于,所述将所述多个路由段集合编辑到所述初始报文中,得到携带目标路由信息的目标报文包括:
将所述多个路由段集合编辑到所述初始报文中,得到携带中间路由信息的中间报文,其中,所述中间路由信息与所述多个路由段集合具有对应关系;
将所述中间路由信息调整为目标路由信息,得到携带所述目标路由信息的目标报文。
6.根据权利要求5所述的方法,其特征在于,所述将所述多个路由段集合编辑到所述初始报文中,得到携带所述中间路由信息的中间报文包括:
将第一编辑器编辑的第一路由信息保存在临时变量集中,以及将第二编辑器编辑的第二路由信息保存在所述临时变量集中,其中,所述第一路由信息用于指示所述目标路由路径中隧道级路由路径的路由信息,所述第二路由信息用于指示所述目标路由路径中用户级路由路径的路由信息,所述多个目标参考路由路径包括所述隧道级路由路径和所述用户级路由路径,所述第一路由信息包括初始路由报文头以及第一路由段集合,所述第二路由信息包括初始协议报文头以及第二路由段集合;
在确定所述第一路由信息和所述第二路由信息全部保存在所述临时变量集中的情况下,按照目标编辑格式将所述初始协议报文头、所述初始路由报文头、所述第一路由段集合以及所述第二路由段集合编辑到所述初始报文的目标位置,得到所述中间报文。
7.根据权利要求5所述的方法,其特征在于,所述将所述中间路由信息调整为目标路由信息,得到携带所述目标路由信息的目标报文包括:
根据所述多个路由段集合中包括的路由段对所述中间路由信息的初始路由报文头中的字段进行更改,得到携带目标路由报文头的待处理报文;
根据所述多个路由段集合中包括的路由段对所述待处理报文的初始协议报文头中的字段进行更改,得到携带所述目标路由信息的所述目标报文。
8.一种路由信息编辑的装置,其特征在于,包括:
获取模块,用于获取待转发的初始报文,其中,所述初始报文用于请求将所述初始报文转发到目标路由节点;
匹配模块,用于将所述目标路由节点所指示的目标路由路径与参考路由路径进行匹配,得到多个目标参考路由路径;
确定模块,用于将所述多个目标参考路由路径所对应的多个路由段集合确定为所述目标路由节点对应的路由段集合,其中,所述目标参考路由路径是所述参考路由路径中与所述目标路由路径匹配一致的参考路由路径;
编辑模块,用于将所述多个路由段集合编辑到所述初始报文中,得到携带目标路由信息的目标报文,其中,所述目标路由信息用于指示将所述目标报文按照所述目标路由路径转发到所述目标路由节点。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至7任一项中所述的方法的步骤。
10.一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至7任一项中所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111621059.9A CN116366518A (zh) | 2021-12-27 | 2021-12-27 | 一种路由信息编辑的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111621059.9A CN116366518A (zh) | 2021-12-27 | 2021-12-27 | 一种路由信息编辑的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116366518A true CN116366518A (zh) | 2023-06-30 |
Family
ID=86914962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111621059.9A Pending CN116366518A (zh) | 2021-12-27 | 2021-12-27 | 一种路由信息编辑的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116366518A (zh) |
-
2021
- 2021-12-27 CN CN202111621059.9A patent/CN116366518A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110703817B (zh) | 一种统计流量的控制方法、装置和系统 | |
CN105791214B (zh) | 一种RapidIO报文和以太网报文之间的转换方法和设备 | |
CN112491708A (zh) | IPv6报文的路由头封装方法及装置 | |
CN113259238B (zh) | 分段标识的处理方法及设备 | |
CN111510386B (zh) | 用于处理报文的方法和装置 | |
CN107925613A (zh) | 业务功能链sfc中用于转发报文的方法、装置和系统 | |
CN106992915B (zh) | 一种报文解封装处理、数据写入方法及装置 | |
CN110401599A (zh) | 数据包的处理方法及装置、存储介质、电子装置 | |
CN113259239A (zh) | 一种在混合网络中转发报文的方法、设备和系统 | |
CN107342939A (zh) | 传输数据的方法和装置 | |
CN112468396B (zh) | 主机网络性能需求可编程化的方法、设备和系统 | |
CN111355674A (zh) | 路由报文的处理方法及装置、存储介质和电子装置 | |
CN113923161A (zh) | 一种报文转发方法及装置 | |
CN112511988A (zh) | 报文转发方法、设备、系统、网络设备和存储介质 | |
CN107294849B (zh) | 业务路径的建立方法、装置及系统 | |
CN105992186B (zh) | 数据传输方法及装置 | |
CN109728968B (zh) | 获得目标传输路径的方法、相关设备及系统 | |
CN107005464B (zh) | 一种业务流数据包的处理方法及装置 | |
CN115348202A (zh) | 基于网络切片的数据传输方法、装置、设备及存储介质 | |
CN115412976A (zh) | 一种报文处理方法及相关设备 | |
CN116366518A (zh) | 一种路由信息编辑的方法和装置 | |
CN110830354B (zh) | 数据转发方法、装置、设备及存储介质 | |
CN115914142A (zh) | 报文处理方法、报文转发方法、装置及设备 | |
CN113542126A (zh) | 广义SRv6全路径压缩方法及装置 | |
CN112804130A (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 |