CN114448860A - 处理报文的方法、装置及计算机存储介质 - Google Patents
处理报文的方法、装置及计算机存储介质 Download PDFInfo
- Publication number
- CN114448860A CN114448860A CN202111619420.4A CN202111619420A CN114448860A CN 114448860 A CN114448860 A CN 114448860A CN 202111619420 A CN202111619420 A CN 202111619420A CN 114448860 A CN114448860 A CN 114448860A
- Authority
- CN
- China
- Prior art keywords
- tlv
- node
- processing
- srh
- network node
- 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
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
-
- 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/02—Topology update or discovery
- H04L45/021—Ensuring consistency of routing table updates, e.g. by using epoch numbers
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Abstract
本申请公开了一种处理报文的方法、装置及计算机存储介质,属于分段路由技术领域。在该方法中,网络节点接收携带SRH的报文,该SRH包括一个或多个TLV、以及TLV处理属性,其中该TLV处理属性指示网络节点是否需要处理SRH包括的TLV;网络节点根据该TLV处理属性决策对SRH包括的TLV的处理。如此,分段路由网络中的任一分段端节点该方法便可实现通过SRH来确定TLV处理属性,以确定是否需要对SRH包括的TLV进行处理。这样就无需该分段端节点本地通过本地配置的策略针对SRH包括的TLV一个一个单独进行判断,从而提高了分段端节点判断是否需要处理TLV的效率。
Description
本申请是向中国知识产权局提交的申请日为2019年6月17日、申请号为201910523355.1、发明名称为“处理报文的方法、装置及计算机存储介质”的申请的分案申请。
技术领域
本申请涉及分段路由(segment routing,SR)技术领域,特别涉及一种处理报文的方法、装置及计算机存储介质。
背景技术
SR技术是一种在网络入口部署转发路径的路由技术。SR技术可以应用在基于第六代互联网协议(internet protocol version 6,IPv6)的网络中,此时该网络还可以称为SRv6网络。在SRv6网络中转发的报文封装有分段路由头(segment routing header,SRH)。SRH中包括用于指示转发路径的字段和多个类型-长度-值(type-length-value,TLV)。不同的TLV携带不同的指示信息,比如某个TLV可以携带故障诊断请求,用于指示SRv6网络中的节点进行故障诊断。因此,当SRv6网络中的节点接收到包括SRH的报文时,需要对该报文进行处理,以确定自身需要执行哪些操作。
相关技术中,将SRv6网络入口处的具有分段路由功能的节点称为头节点(ingressnode),其他具有分段路由功能的节点称为分段端节点(segment endpoint node)。对于SRv6网络中的任一分段端节点,当该分段端节点获取到头节点或其他分段端节点下发的包括SRH的报文时,对该报文进行解析,确定SRH中包括的多个TLV。对于每个TLV,该分段端节点根据本地配置的TVL处理策略确定是否需要处理该TLV,也即是,确定是否需要根据该TLV携带的指示信息进行后续操作。如果需要,则根据该指示信息进行后续操作,如果不需要,则无需根据该指示信息进行后续操作。
在上述方法中,分段端节点根据本地配置的TLV处理策略对SRH包括的TLV进行判断,导致分段端节点处理报文的灵活性较低。
发明内容
本申请提供了一种处理报文的方法、装置及计算机存储介质,可以提高分段路由网络中的节点处理报文的灵活性。所述技术方案如下:
第一方面,提供了一种处理报文的方法。在该方法中,网络节点接收携带SRH的报文。该SRH包括一个或多个TLV、以及TLV处理属性。其中该TLV处理属性指示网络节点是否需要处理SRH包括的TLV。进而,网络节点根据TLV处理属性决策对SRH包括的TLV的处理。
在本申请实例中,分段路由网络中的任一分段端节点基于上述方式便可实现通过SRH来确定TLV处理属性,以统一确定是否需要对SRH包括的TLV进行处理。这样就无需该分段端节点本地通过本地配置的策略针对SRH包括的TLV一个一个单独进行判断,从而提高了分段端节点判断是否需要处理TLV的效率。
可选地,该SRH还包括与报文的转发路径中的多个分段端节点一一对应的多个SID。其中多个分段端节点为报文的转发路径中具有分段路由功能的节点。该网络节点为分段端节点中的任一个。如此,该TLV处理属性可以设置在网络节点对应的SID中。
由于SRH还包括与报文的转发路径中的多个分段端节点一一对应的多个SID,因此,通过SID来设置TLV处理属性可以避免对现有的SRH的格式修改太多,从而有利于本申请提供的处理报文的方法的推广。
可选地,可以采用网络节点对应的SID的功能类型来设置该TLV处理属性,或者,采用网络节点对应的SID中的字段来设置TLV该处理属性。提高了设置TLV处理属性的灵活性。
可选地,在上述网络节点根据该TLV处理属性决策对SRH包括的TLV的处理的过程中,网络节点可以从对应的SID中获取该TLV处理属性。若该TLV处理属性指示需要处理SRH包括的TLV,网络节点从SRH包括的TLV中识别出由网络节点处理的TLV。进而对识别出的TLV进行处理。若该TLV处理属性指示不需要处理SRH包括的TLV,网络节点则直接不处理SRH包括的TLV。
在确定出需要处理TLV之后,通过上述方式还可以继续确定需要处理SRH包括的TLV中的哪些TLV,以实现指定节点处理指定TLV,提高了处理报文的灵活性。
可选地,在上述网络节点从SRH包括的TLV中识别出由网络节点处理的TLV的过程中,网络节点可判断SRH包括的TLV是否包括位图字段。其中位图字段用于指定处理位图字段所属TLV的节点。对于不包括位图字段的TLV,网络节点将直接其作为由网络节点处理的TLV。对于包括位图字段的TLV,网络节点可进一步判断位图字段中是否指定网络节点为处理节点。若判断出指定网络节点为处理节点,则将位图字段所属TLV作为由网络节点处理的TLV。
可以通过TLV中新增位图字段来指定处理位图字段所属TLV的节点,进一步提高了处理报文的灵活性。
可选地,SRH还包括TLV类型,该TLV类型中指示是否包括位图字段,以便于网络节点根据TLV类型来判断SRH包括的TLV是否包括位图字段。
可以通过TLV类型来指示TLV是否包括位图字段,以提高确定TLV是否包括位图字段的效率。
可选地,上述位图字段包括与报文中的各SID一一对应的多个比特位,多个比特位的排序与各SID的排序对应。如此,在网络节点进一步判断位图字段中是否指定网络节点为处理节点的过程中,获取报文的SRH中包括的剩余节点SL字段,其中该SL字段能够指示转发路径中还未参与报文转发的剩余的分段端节点的数量。根据SL字段指示的数量便可确定网络节点对应的比特位。判断网络节点对应的比特位是否指定网络节点为处理节点。
对于任一TLV,可以直接通过SRH中已有的SL字段来确定位图字段中网络节点对应的比特位,以快速确定是否需要处理该TLV。
可选地,在该方法中,网络节点在分段路由网路中发布针对指定TLV的TLV处理能力通知报文,以使分段路由网络中的其他节点根据TLV处理能力通知报文确定网络节点是否具有处理指定TLV的能力。为了避免出现SRH中指示节点处理某个TLV,但是该节点无法处理该TLV的情况,各个节点可以预先在分段路由网络中通告自身是否具有处理某个指定TLV的能力,以保证处理报文的顺利进行。
第二方面、提供一种处理报文的方法,在该方法中,网络节点接收报文,其中网络节点为分段路由网络入口处的节点。进而网络节点在报文中添加SRH,该SRH包括一个或多个TLV、以及TLV处理属性。其中该TLV处理属性指示接收到携带SRH的报文的节点是否需要处理SRH包括的TLV。之后网络节点发送添加了SRH的报文。
当分段路由网络中的头节点基于上述方式发送包括SRH的报文时,分段路由网络中的任一分段端节点基于上述方式便可实现通过SRH来确定TLV处理属性,以确定是否需要对SRH包括的TLV进行处理。这样就无需该分段端节点本地通过本地配置的策略针对SRH包括的TLV一个一个单独进行判断,从而提高了分段端节点判断是否需要处理TLV的效率。
可选地,该SRH还包括与报文的转发路径中的多个分段端节点一一对应的多个SID。其中多个分段端节点为报文的转发路径中具有分段路由功能的节点。该TLV处理属性设置在每个分段端节点对应的SID中。
由于SRH还包括与报文的转发路径中的多个分段端节点一一对应的多个SID,因此,通过SID来设置TLV处理属性可以避免对现有的SRH的格式修改太多,从而有利于本申请提供的处理报文的方法的推广。
可选地,可以采用每个分段端节点的SID的功能类型来设置该TLV处理属性。或者,采用每个分段端节点节点的SID中的字段来设置该TLV处理属性。从而提高了设置TLV处理属性的灵活性。
可选地,TLV处理属性指示需要处理SRH包括的TLV时,该SRH中还指示SRH包括的各TLV的处理节点。通过该方式分段路由网络中的任一分段端节点在确定出需要处理TLV之后,还可以继续确定需要处理SRH包括的TLV中的哪些TLV,以实现指定节点处理指定TLV,提高了处理报文的灵活性。
可选地,SRH中的TLV中包括位图字段。其中位图字段用于指定处理位图字段所属TLV的节点。可以通过TLV中新增位图字段来指定处理位图字段所属TLV的节点,进一步提高了处理报文的灵活性。
可选地,在该方法中,网络节点还可以接收其他节点发布的针对指定TLV的TLV处理能力通知报文。其中TLV处理能力通知报文指示其他节点是否具有处理指定TLV的能力,其他节点为报文的转发路径上的多个分段端节点中任一个。如此,SRH中指示的SRH包括的各TLV的处理节点是基于TLV处理能力通知报文确定的。
为了避免出现SRH中指示节点处理某个TLV,但是该节点无法处理该TLV的情况,各个节点可以预先在分段路由网络中通告自身是否具有处理某个指定TLV的能力,如此头节点可以根据该TLV处理能力通知报文设置能够指示指定节点处理指定TLV的SRH,以保证处理报文的顺利进行。
第三方面、提供一种处理报文的方法,其特征在于,该方法包括:分段路由网络中的网络节点确定TLV处理属性,TLV处理属性用于指示网络节点是否需要处理接收到的报文携带的SRH包括的TLV;网络节点在分段路由网络中发布TLV处理属性,以使分段路由网络中其他节点存储TLV处理属性。
当分段路由网络中的任一分段端节点基于上述方式发布TLV处理属性时,该分段端节点基于上述方式可以实现通过SRH来确定TLV处理属性,以确定是否需要对SRH包括的TLV进行处理。这样就无需该分段端节点本地通过本地配置的策略针对SRH包括的TLV一个一个单独进行判断,从而提高了分段端节点判断是否需要处理TLV的效率。
可选地,TLV处理属性设置在网络节点对应的SID中。由于SRH还包括与报文的转发路径中的多个分段端节点一一对应的多个SID,因此,通过SID来设置TLV处理属性可以避免对现有的SRH的格式修改太多,从而有利于本申请提供的处理报文的方法的推广。
可选地,TLV处理属性设置在网络节点的SID中包括:采用网络节点对应的SID的功能类型来设置TLV处理属性。可选地,TLV处理属性设置在网络节点的SID中包括:采用网络节点对应的SID中的字段来设置TLV处理属性。
通过上述两种设置方式,可以在SID的功能类型中设置TLV处理属性,也可以在SID中的某些字段来设置TLV处理属性,从而提高了设置TLV处理属性的灵活性。
第四方面,提供了一种处理报文的装置。
该装置具有实现上述第一方面中处理报文方法行为的功能。该装置包括至少一个模块,该至少一个模块用于实现上述第一方面所提供的处理报文的方法;或者,
该装置具有实现上述第二方面中处理报文方法行为的功能。该装置包括至少一个模块,该至少一个模块用于实现上述第二方面所提供的处理报文的方法;或者,
该装置具有实现上述第三方面中处理报文方法行为的功能。该装置包括至少一个模块,该至少一个模块用于实现上述第三方面所提供的处理报文的方法。
第五方面,提供了一种处理报文的装置,该装置的结构中包括处理器和存储器,所述处理器被配置为用于执行所述存储器中存储的程序。所述存储设备的操作装置还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
存储器用于存储支持该装置执行上述第一方面所提供的处理报文的方法的程序,以及存储用于实现上述第一方面所提供的处理报文的方法所涉及的数据;或者,
存储器用于存储支持该装置执行上述第二方面所提供的处理报文的方法的程序,以及存储用于实现上述第二方面所提供的处理报文的方法所涉及的数据;或者,
存储器用于存储支持该装置执行上述第三方面所提供的处理报文的方法的程序,以及存储用于实现上述第三方面所提供的处理报文的方法所涉及的数据。
第六方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令。
当指令在计算机上运行时,使得计算机执行上述第一方面所述的处理报文的方法;或者,
当指令在计算机上运行时,使得计算机执行上述第二方面所述的处理报文的方法;或者,
当指令在计算机上运行时,使得计算机执行上述第三方面所述的处理报文的方法。
第七方面,提供了一种包含指令的计算机程序产品。
当该计算机程序产品在计算机上运行时,使得计算机执行上述第一方面所述的处理报文的方法;或者,
当该计算机程序产品在计算机上运行时,使得计算机执行上述第二方面所述的处理报文的方法;或者,
当该计算机程序产品在计算机上运行时,使得计算机执行上述第三方面所述的处理报文的方法。
第八方面,提供了一种处理报文的系统,该系统包括头节点和多个分段端节点,多个分段端节点为报文的转发路径中具有分段路由功能的节点,头节点为分段路由网络入口处的节点。头节点用于实现权利要求上述第二方面任一项所述的方法,对于所述多个分段端节点中任一分段端节点,该分段端节点用于实现上述第一方面任一项所述的方法。
另外,该分段端节点还用于实现上述第一方面任一项所述的方法。
附图说明
图1是本申请实施例提供的一种处理报文的系统示意图;
图2是本申请实施例提供的一种SRH的格式示意图;
图3是本申请实施例提供的一种SID的格式示意图;
图4是本申请实施例提供的一种计算机设备的结构示意图;
图5是本申请实施例提供的一种处理报文的方法流程图;
图6是本申请实施例提供的另一种处理报文的方法流程图;
图7是本申请实施例提供的一种TLV的格式示意图;
图8是本申请实施例提供的另一种处理报文的方法流程图;
图9是本申请实施例提供的一种处理报文的装置示意图;
图10是本申请实施例提供的另一种处理报文的装置示意图;
图11是本申请实施例提供的另一种处理报文的装置示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例提供的处理报文的方法进行解释说明之前,先对本申请实施例的应用场景进行解释说明。SRv6是基于源路由理念而设计的在网络中转发IPv6数据包的一种网络架构。通过SRv6网络中的头节点在IPv6报文头中插入SRH,在SRH中压入一个IPv6地址列表。通过SRv6网络中的分段端节点根据IPv6地址列表不断地更新目标地址来完成IPv6数据包的逐条转发。本申请实施例提供的处理报文的方法就应用于上述SRv6网络中。
图1是本申请实施例提供的一种处理报文的系统示意图。如图1所示,该系统100包括节点A、节点B、节点C、节点D、节点E、节点F、节点G、节点H、节点I、节点K和节点R。
节点A、节点C、节点D、节点G和节点K不具有SR功能。节点B、节点R、节点E、节点F、节点H和节点I具有SR功能。节点具有SR功能是指预先发布有该节点的SID,以便于该节点后续可以根据SRH中SID列表对报文的目的地址进行更新。图1所示的任一节点可以为路由器或交换机等设备。另外,图1所示的系统构成的网络也可以称为分段路由网络。
各个节点的角色是预先配置的。比如,可以通过网络中的控制器来配置节点B为分段路由网络的头节点,节点R、节点E、节点F、节点H和节点I为分段路由网络中的分段端节点。各个节点的角色配置之后,各个节点在接收到报文时,便可根据配置的角色对报文进行相应处理。
如图1所示,节点B接收节点A发送的报文,该报文可以为基于IPv6协议的报文,该报文包括IPv6报文头(header,Hdr)和有效载荷(pload)。IPv6报文头中的源地址(sourceaddress,SA)为节点A,目的地址(destination address,DA)为节点K。由于节点B是分段路由网络的头节点,因此,节点B可以确定该报文在分段路由网络中的转发路径。假设该转发路径为节点B、节点C、节点E、节点G、节点H和节点I。其中,节点E、节点H和节点I为具有SR功能的节点,这三个节点组成的三段链路构成了报文在分段路由网络中的分段路由链路,因此,这三个节点还可以称为报文在分段路由网络的转发路径上的分段端节点。节点B可以在该报文的头部添加SRH,其中,SRH中不仅包括节点E、节点H和节点I的地址,还包括节点K的地址。同时根据转发路径更新IPv6报文头中的目的地址为节点E。之后将更新后的报文发送至节点C。由于节点C不具有SR功能,因此,当节点C接收到报文后,直接将接收到的报文按照转发路径发送至节点E。节点E接收到报文之后,根据转发路径更新IPv6报文头中目的地址为节点H,并将更新后的报文通过节点G转发至节点H。节点G处理报文的方式和节点C处理报文的方式相同。当节点H接收到报文后,根据转发路径更新IPv6报文头中目的地址为节点I,并将更新后的报文转发至节点I。当节点I接收到报文后,根据转发路径确定自身是转发路径上的最后一个节点,则可以直接删掉报文中的SRH,将IPv6报文头中的目的地址更新为节点K,之后将处理之后的报文发送至节点K。通过上述方式,便可实现节点A通过分段路由网络将报文发送至节点K。
图2是本申请实施例提供的一种SRH的格式示意图。如图2所示,SRH包括用于指示下一个报文头类型(Next Header)的字段。用于指示SRH头的长度(Hdr Ext Len)的字段,用于指示路由类型(Routing Type)的字段。用于指示达到目前节点还应当访问的分段端节点的数量(Segment Left,SL)的字段,该字段还可以称为剩余节点字段。用于指示最后一个元素的索引(Last Entry)的字段。用于指示数据包的一些标识(Flags)的字段。用于指示同组数据包(Tag)的字段。SRH中还包括段标识(segment identification,SID)列表字段。该SID列表字段包括多个SID,每个SID可以是一个IPv6地址,用于标识具有该SID的节点。
在一些实施例中,如图3所示,每个SID是一个128比特的IPv6地址。每个SID可以包括两部分,一部分为定位(Locator)字段,另一部分为功能(Function)字段。定位字段占据128个比特位中的高比特位。功能字段占据128个比特位中的低比特位。
另外,如图2所示,SRH中还包括可选的TLV(optional type length valueobjects),通过这些可选的TLV,SRH可以实现更多的功能,比如可以实现故障诊断检测等。
图4是本申请实施例提供的一种计算机设备的结构示意图。图1中任一节点可以通过图4所示的计算机设备来实现。参见图4,该计算机设备包括至少一个处理器401,通信总线402、存储器403以及至少一个通信接口404。
处理器401可以是一个通用中央处理器(central processing unit,CPU)、特定应用集成电路(application-specific integrated circuit,ASIC)或一个或多个用于控制本申请方案程序执行的集成电路。处理器可以用于对接收到的报文进行处理,以实现本申请实施例中提供的处理报文的方法。
比如,当图1中的头节点通过图4所示的计算机设备来实现时,该处理器可以用于在接收到的报文中添加包括TLV处理属性的SRH,以便于后续分段端节点可以基于TLV处理属性决策对TLV的处理,具体功能实现可参考方法实施例中头节点的处理部分。又比如,当图1中的分段端节点通过图4所示的计算机设备来实现时,该处理器可以用于在接收到的携带SRH的报文中获取TLV处理属性,并基于TLV处理属性决策对TLV的处理,具体功能实现可参考方法实施例中分段端节点的处理部分。
通信总线402可包括一通路,在上述组件之间传送信息。
存储器403可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only Memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器403可以是独立存在,通过通信总线402与处理器401相连接。存储器403也可以和处理器401集成在一起。
其中,存储器403用于存储执行本申请方案的程序代码,并由处理器401来控制执行。处理器401用于执行存储器403中存储的程序代码。程序代码中可以包括一个或多个软件模块。图1中所示的任一节点可以通过处理器401以及存储器403中的程序代码中的一个或多个软件模块,来确定用于开发应用的数据。
通信接口404,使用任何收发器一类的装置,用于与其它设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(wireless local area networks,WLAN)等。在本申请实施例中,通信接口可以用于接收分段路由网络中的其他节点发送的报文,也可以向分段路由网络中的其他节点发送报文。
在具体实现中,作为一种实施例,计算机设备可以包括多个处理器,例如图4中所示的处理器401和处理器405。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
如图1所示,分段路由网络中的头节点在接收到报文中添加SRH,分段路由网络中的各个分段端节点在接收到包括SRH的报文时,先确定是否需要处理SRH包括的TLV,也即是,确定TLV处理策略。后续根据确定的TLV处理策略进行下一步操作。下面将通过两个实施例分别对上述两个过程展开说明。
图5是本申请实施例提供的一种处理报文的方法流程图。如图5所示,该方法包括如下步骤:
步骤501:网络节点接收报文,网络节点为分段路由网络入口处的节点。
图5所示的实施例中的网络节点为分段路由网络中的头节点。为了后续便于说明,将头节点接收到的报文称为第一报文,
如图1所示,头节点为节点B,第一报文是节点A发送的报文。其中,第一报文是基于IPv6协议的报文,相应地,第一报文包括IPv6报文头和有效载荷。
步骤502:网络节点在报文中添加SRH,SRH包括一个或多个TLV、以及TLV处理属性,TLV处理属性指示接收到包括SRH的报文节点是否需要处理SRH包括的TLV。
在本申请实施例中,为了避免需要通过本地来配置TLV处理策略,可以通过SRH来指示一种新的属性:TLV处理属性,该TLV处理属性用于指示是否需要处理TLV。因此,当头节点接收到第一报文时,头节点需要先确定包括TLV处理属性的SRH。
在一些实施中,步骤502中的SRH还包括与多个分段端节点一一对应的多个SID。多个分段端节点为报文的转发路径中具有分段路由功能的节点。因此,TLV处理属性可以设置在每个分段端节点对应的SID中,每个SID中设置的TLV处理属性用于指示与相应SID对应的分段端节点是否需要处理SRH包括的TLV,以便于后续转发路径上的分段端节点可以根据对应的SID确定TLV处理属性。在另一些实施例中,TLV处理属性也可以设置在SRH的其他字段中,以指示各个分段端节点是否需要处理SRH包括的TLV,本申请对此不做具体限定。
为了后续便于说明,将多个SID称为SID列表。该SID列表是由头节点或分段路由网络中的控制器确定的。由于分段路由网络中的各个节点的SID预先已经发布在网路中,也即是,头节点或分段路由网络中的控制器在确定SID列表之前已经获知各个节点的对应的SID,因此头节点或网控制器可以直接根据路径算法确定SID列表。如果是网控制器根据路径算法确定段标识SID列表,那么头节点可以从控制器处获取SID列表。
在一些实施例中,TLV处理属性设置在每个分段端节点对应的SID中包括:采用每个分段端节点的SID的功能类型来设置TLV处理属性。也即是,对于多个分段端节点的第一分段端节点,第一分段端节点对应的SID对应有功能类型,SID的功能类型中设置有TLV处理属性,以使SID的功能类型能够指示第一分段端节点是否需要处理TLV。比如,可以在第一分段端节点对应的SID中选择一个比特来指示功能类型。在这种情况下,第一分段端节点便可通过功能类型来确定TLV处理属性,详细内容将在下述实施例中展开说明,在此先不详细阐述。
在另一些实施例中,TLV处理属性设置在每个分段端节点节点的SID中包括:采用每个分段端节点节点的SID中的字段来设置TLV处理属性。也即是,对于多个分段端节点的第一分段端节点,第一分段端节点对应的SID包括TLV处理属性字段,TLV处理属性字段用于指示第一分段端节点是否需要处理TLV。在这种情况下,第一分段端节点便可通过SID中包括的TLV处理属性字段来确定TLV处理属性,详细内容将同样将在下述实施例中展开说明,在此先不详细阐述。
在本申请实施例中,对于多个分段端节点的第一分段端节点,如果TLV处理属性指示需要处理TLV,对于SRH包括的任一TLV,第一分段端节点后续便可直接根据该TLV携带的指示信息进行后续操作。通过上述TLV处理属性的设置可以实现通过SRH自身来确定是否需要处理SRH包括的TLV,从而实现通过SRH来指定哪些节点需要处理TLV,哪些节点不需要处理TLV,而无需通过本地配置的TLV处理策略来确定,提高了判断是否需要处理TLV的效率。
进一步地,在上述设置TLV处理属性的基础上,还可以继续对各个TLV进行设置,以实现指定节点处理指定TLV,提高了处理报文的灵活性。
在一些实施例中,TLV处理属性指示需要处理SRH包括的TLV,SRH中还指示SRH包括的各TLV的处理节点。因此,对于转发路径中的任一分段端节点,可以通过SRH来指示由该分段端节点处理的TLV。
通过SRH来指示SRH包括的各TLV的处理节点的实现方式可以为:SRH中的TLV中可以包括位图字段,位图字段用于指定处理位图字段所属TLV的节点。SRH中的TLV可以是全部的TLV,也可以部分的TLV,对此不做具体限定。比如,对于一个或多个TLV中的第一TLV,第一TLV中的位图字段指示接收到携带SRH的报文的节点能否处理第一TLV,第一TLV为一个或多个TLV中的任一个。后续第一分段端节点在接收到包括SRH的报文时,在根据TLV处理属性确定出需要处理SRH包括的TLV时,可以进一步根据第一TLV的位图字段确定是否需要处理第一TLV。
在一些实施例中,对于第一TLV,位图字段中包括与多个SID一一对应的多个比特位,每个比特位用于指示与相应SID对应的分段端节点能否处理第一TLV,第一TLV为一个或多个TLV中的任一个。通过这种设置,第一分段端节点便可确定是否需要处理第一TLV。
上述位图字段中各个比特位的设置仅仅是本申请提供的一种可能的实现方式。当然,位图字段也可以通过其他方式来指示具体有那些节点可以处理第一TLV,哪些节点无需处理第一TLV,本申请实施例在此不再一一说明。
另外,SRH还可以包括TLV类型,TLV类型中指示是否包括位图字段。比如,可以在TLV的类型字段中选择一个比特位来指示是否携带了位图字段,以便于后续分段端节点根据第一TLV的TLV类型快速确定是否包括位图字段,从而提高分段端节点确定是否处理第一TLV的效率。
另外,网络中任一分段端节点还可以预先发布针对指定TLV的TLV处理能力通知报文,TLV处理能力通知报文用于通知分段路由网络中的其他节点该分段端节点是否具有处理指定TLV的能力。此时,头节点接收该分段端节点发布的TLV处理能力通知报文,TLV处理能力通知报文用于通知该分段端节点是否具有处理指定TLV的能力。相应地,SRH中指示的SRH包括的各TLV的处理节点是基于TLV处理能力通知报文确定的。
比如,假设通过位图字段来指示由接收到携带SRH的报文的节点处理的TLV,上述指定TLV为第一TLV,上述分段端节点为第一分段端节点,此时,可以获取第一TLV的位图字段中的第一比特位,第一比特位是指多个比特位中与第一分段端节点对应的SID相对应的比特位,头节点根据预先接收到的TLV处理能力通知报文确定第一分段端节点是否具有处理第一TLV的能力。如果第一分段端节点具有处理第一TLV的能力,头节点再获取第一分段端节点的业务需求,确定第一分段端节点是否需要处理第一TLV,如果需要处理TLV,则可以将第一比特位上比特值设置为用于指示需要处理第一TLV的值。
步骤503:网络节点发送添加了SRH的报文。
为了后续便于说明,将头节点添加了SRH的报文称为第二报文。头节点在发送第二报文之后,分段路由网络中的任一分段端节点便可通过下述实施例来对第二报文进行处理。
图6是本申请实施例提供的一种处理报文的方法流程图。如图6所示,该方法包括如下步骤:
步骤601:网络节点接收携带SRH的报文,SRH包括一个或多个TLV、以及TLV处理属性,TLV处理属性指示网络节点是否需要处理SRH包括的TLV。
图6所示的实施例中的网络节点可以为分段路由网络中的任一分段端节点,为了后续便于说明,将分段路由网络中的任一分段端节点称为第一分段端节点。后续的内容均是以第一分段端节点举例进行说明,分段路由网络中的其他分段端节点处理报文的方式同样可以参考第一分段端节点。
由图5所示的实施例可知,第二报文中的SRH包括与多个分段端节点一一对应的多个SID,多个分段端节点为报文的转发路径中具有分段路由功能的节点。如图2所示,多个SID可以包括分别与分段端节点E、F、H以及I一一对应的四个SID。第一分段端节点可以为这四个分段端节点中的任一个。因此,在一些实施例中,TLV处理属性可以设置在第一分段端节点对应的SID中,以便于后续通过下述步骤602来决策对SRH包括的TLV的处理。
步骤602:网络节点根据TLV处理属性决策对SRH包括的TLV的处理。
对于第一分段端节点,当TLV处理属性设置在第一分段端节点对应的SID中时,第一分段端节点可以根据第一分段端节点对应的SID确定TLV处理属性,然后根据TLV处理属性决策对SRH包括的TLV的处理。
因此,当第一分段端节点接收到第二报文时,便可先从多个SID中确定自身对应的SID,然后根据自身对应的SID确定TLV处理属性,以便于通过确定的TLV处理属性来判断是否需要对SRH包括的TLV进行处理。另外,在本申请实施例中,预先定义第一属性为需要处理TLV的属性,第二属性为不需要处理TLV的属性。
对于分段路由网络中的任一网络节点,在发布该网络节点的一个SID时同时还发布对应的SID配置信息,用于指示该SID对应的节点具有的一些功能。基于这个场景,可以在SID配置信息的SID的功能类型中新增功能,以使该SID的功能类型能够指示是否需要处理TLV,也即是,在采用网络节点对应的SID的功能类型来设置TLV处理属性。因此,在一些实施例中,步骤602中网络节点确定TLV处理属性的实现方式可以为:根据第一分段端节点对应的SID获取SID配置信息;SID配置信息包括SID的功能类型,SID的功能类型能够指示是否需要处理TLV;根据SID配置信息中包括的SID的功能类型确定TLV处理属性。
比如,预先定义SID的功能类型为第一功能类型时,用于指示需要处理TLV;SID的功能类型为第二功能类型时,用于指示不需要处理TLV。此时,如果第一SID配置信息包括的SID的功能类型为第一功能类型,可以确定TLV处理属性为第一属性。相应地,如果第一SID配置信息包括的SID的功能类型为第二功能类型,可以确定TLV处理属性为第二属性。
上述SID的功能类型还可以用于指示SID的其他功能,在此不再详细阐述。
由于同一节点可以具有不同的SID,因此,当第一分段端节点获取到预先发布的第一分段端节点对应的SID和SID配置信息时,可以将第一分段端节点对应的SID和SID配置信息存储在SID与SID配置信息之间的对应关系中。此时,上述根据第一分段端节点对应的SID获取SID配置信息的实现方式可以为:根据第一分段端节点对应的SID,从SID与SID配置信息之间的对应关系中,获取针对第一分段端节点对应的SID的SID配置信息。
上述发布分段路由网络中的节点的一个SID和SID配置信息的主体可以是该节点自身,也可以是分段路由网络中部署的控制器,该部分内容将在下述实施例中说明,在此先不做详细说明。
上述通过SID的功能类型确定TLV处理属性的方式还可以称为隐式编码方式。
另外,如图3所示,SID包括功能字段,也可以用于指示SID对应的节点的功能。因此,在另一些实施例中,TLV处理属性设置在网络节点的SID中包括:采用网络节点对应的SID中的字段来设置TLV处理属性。步骤602中网络节点确定TLV处理属性的实现方式还可以为:从第一分段端节点对应的SID中获取TLV处理属性字段,TLV处理属性字段用于指示是否需要处理TLV;根据TLV处理属性字段确定TLV处理属性。
比如,如果预先定义TLV处理属性字段上的比特值为第一种比特值时,用于指示第一分段端节点需要处理TLV;TLV处理属性字段上的比特值为第二种比特值时,用于指示第一分段端节点不需要处理TLV。在这种场景下,如果第一分段端节点对应的SID中获取的TLV处理属性字段上的比特值为第一种比特值,则确定第一分段端节点的TLV处理属性为第一属性。相应地,如果第一分段端节点对应的SID中获取的TLV处理属性字段上的比特值为第二种比特值,则确定第一分段端节点的TLV处理属性为第二属性。
其中,TLV处理属性字段可以是SID包括的功能字段中的部分字段。比如,可以在SID包括的功能字段中选择一个比特来指示TLV处理属性。这种通过TLV处理属性字段确定TLV处理属性的方式还可以称为显示编码方式。
上述隐式编码方式和显示编码方式仅仅是通过SID来设置TLV处理属性的两种可能的实现方式,本申请实施例还可以通过其他方式来实现在SID中设置TLV处理属性。当通过其他方式在SID中设置TLV处理属性时,第一分段端节点同样可以根据设置TLV处理属性的方式来确定TLV处理属性,在此就不再一一阐述。
另外,如果是通过SRH中的其他字段来设置TLV处理属性,第一分段端节点同样可以参考上述方式来确定TLV处理属性,在此同样不再详细阐述。
当确定出第一分段端节点的TLV处理属性之后,如果TLV处理属性为第一属性,则第一分段端节点处理SRH包括的TLV。相应地,如果TLV处理属性为第二属性,则第一分段端节点确定不需要处理SRH包括的TLV,此时第一分段端节点无需根据SRH包括的TLV携带的指示信息进行后续操作。
另外,如果确定出的TLV处理属性为第一属性,对于SRH包括的任一TLV,第一分段端节点可以直接根据该TLV携带的指示信息进行后续操作。通过上述步骤601至步骤602便可实现通过TLV处理属性来指定哪些节点需要处理TLV,哪些节点不需要处理TLV,而无需通过本地配置的TLV处理策略来确定,从而提高了判断是否需要处理TLV的效率。
进一步地,基于上述图5所示的实施例可知,在上述步骤601至步骤602的基础上,在确定出第一分段端节点需要处理TLV之后,还可以继续确定第一分段端节点需要处理SRH包括的TLV中的哪些TLV,以实现指定节点处理指定TLV,提高了处理报文的灵活性。
因此,上述步骤602的实现方式还可以为:网络节点从对应的SID中获取TLV处理属性;若TLV处理属性指示需要处理SRH包括的TLV,网络节点从SRH包括的TLV中识别出由网络节点处理的TLV,对识别出的TLV进行处理;若TLV处理属性指示不需要处理SRH包括的TLV,网络节点不处理SRH包括的TLV。
在本申请实施例中,对于SRH包括的任一TLV,可以在该TLV中划分出一个位图字段,该位图字段用于指示转发路径中的哪些节点可以对该TLV进行处理。因此,网络节点从SRH包括的TLV中识别出由网络节点处理的TLV的实现方式可以为:网络节点判断SRH包括的TLV是否包括位图字段,位图字段用于指定处理位图字段所属TLV的节点;对于不包括位图字段的TLV,将其作为由网络节点处理的TLV;对于包括位图字段的TLV,网络节点进一步判断位图字段中是否指定网络节点为处理节点,若指定网络节点为处理节点,则将位图字段所属TLV作为由网络节点处理的TLV。
也即是,如果TLV处理属性用于指示网络节点需要处理SRH包括的TLV,对于一个或多个TLV中的第一TLV,如果第一TLV包括位图字段,则根据位图字段决策对第一TLV的处理,位图字段指示网络节点能否处理第一TLV,第一TLV为一个或多个TLV中的任一个。在一些实施例中,位图字段包括与多个SID一一对应的多个比特位,多个SID为第二报文各个SID。如图7所示,假设SID列表中插入了16个SID,那么可以在TLV的长度字段之后划分一个16个比特位的字段,这16个比特位与16个SID一一对应。
另外,如图2所示,SRH中包括的剩余节点字段可以指示第一分段端节点对应的SID在多个SID中的排序,因此,在一些实施例中,位图字段中包括的多个比特位的排序与多个SID的排序对应。此时,上述网络节点进一步判断位图字段中是否指定网络节点为处理节点的实现方式可以为:获取报文的SRH中包括的SL字段,SL字段能够指示转发路径中还未参与报文转发的剩余的分段端节点的数量;根据SL字段指示的数量确定网络节点对应的比特位;判断网络节点对应的比特位是否指定网络节点为处理节点。
为了后续便于说明,将第一分段端节点对应的比特位称为第一比特位。比如,多个比特位从高位到低位的排序与多个SID的排序相同,假设第一分段端节点对应的SID包括的SL字段指示的数量为0,表明第一分段端节点为转发路径方向上的最后一个分段端节点,此时可以将多个比特位上的最后一个比特位确定为第一比特位。
又比如,多个比特位从低位到高位的排序与多个SID的排序相同,假设第一分段端节点对应的SID包括的SL字段指示的数量为0,表明第一分段端节点为转发路径方向上的最后一个分段端节点,此时可以将多个比特位上第一个比特位确定为第一比特位。
由于SRH中包括的多个SID还可以称为SID列表,因此,多个SID的排序也即是多个SID在SID列表中的排序。其中,多个SID在SID列表中的排序是确定多个SID的节点预先确定,在此不再详细阐述。
另外,可以预先定义第一比特位上的比特值为第一比特值时,需要处理第一TLV,第一比特位上的比特值为第二比特值时,不需要处理第一TLV。因此,第一分段端节点在确定出第一比特位之后,如果第一比特位上的比特值为第一比特值,则处理第一TLV。相应地,如果第一比特位上的比特值为第二比特值,则不执行处理第一TLV的操作。
第一比特值和第二比特值是预先设置的。比如,第一比特值可以为1,第二比特值为可以0。
上述实现方式用于通过位图字段的方式来实现确定第一分段端节点需要处理SRH包括的TLV中的哪些TLV。基于图5所示的实施例可知,SRH还可以包括TLV类型,TLV类型中指示是否包括位图字段,网络节点根据TLV类型判断SRH包括的TLV是否包括位图字段。比如,为了兼容目前已有的TLV的格式,可以在TLV的类型字段中选择一个比特位来指示是否携带了位图字段。因此,对于SRH包括的TLV中的第一TLV,网络节点判断第一TLV是否包括位图字段的实现方式可以为:确定第一TLV的TLV类型,TLV类型用于指示第一TLV是否包括位图字段。如果TLV类型类型用于指示第一TLV是否包括位图字段,则执行通过位图字段的来确定是否需要处理第一TLV的操作。
比如,对于一个或多个TLV中的第一TLV,第一分段端节点可以先根据第一TLV的类型字段中用于指示是否携带了位图字段的比特位上的比特值,判断第一TLV中是否包括位图字段。如果第一TLV包括位图字段,则可以通过上述实现方式确定是否需要处理第一TLV。相应地,如果第一TLV不包括位图字段,此时则直接处理第一TLV。
分段路由网络中的节点可以通过上述步骤601至步骤602实现处理指定TLV,但是分段路由网络中可能部分节点不具有处理指定TLV的能力。因此,为了保证上述步骤601至步骤602的顺利执行,对于第一分段端节点,第一分段端节点还可以在分段路由网路中发布针对指定TLV的TLV处理能力通知报文,TLV处理能力通知报文用于通知分段路由网络中的其他节点第一分段端节点是否具有处理指定TLV的能力,以使分段路由网络中的其他节点可以根据该TLV处理能力通知报文确定第一分段端节点是否具有处理指定TLV的能力。假设上述指定TLV为第一TLV,对于分段路由网络中的其他节点,比如头节点,便可根据该TLV处理能力通知报文确定位图字段中第一比特位上的比特值,该部分内容已在图5所示的实施例中详细说明,在此不再赘述。
另外,由于分段路由网络中各个节点的功能是预先发布在网络中的,因此,本申请实施例还提供了另一种处理报文的方法,用于解释说明如何在网路中发布TLV处理属性。
图8是本申请实施例提供的另一种处理报文的方法流程图。如图8所示,该方法包括如下步骤:
步骤801:分段路由网络中的网络节点确定TLV处理属性,TLV处理属性用于指示网络节点是否需要处理接收到的报文携带的SRH包括的TLV。
基于图5所示的实施例可知,分段路由网络中的头节点在确定SRH时需要确定各个分段端节点的TLV处理属性。因此,分段路由网络中的网络节点需要预先发布各自的TLV处理属性,以便于其他节点能够获知该网路节点的TLV处理属性,并根据TLV处理属性进行相应操作。
步骤802:网络节点在分段路由网络中发布TLV处理属性,以使分段路由网络中其他节点存储TLV处理属性。
通过步骤802,分段路由网络中的其他节点,比如头节点或控制器便可获取并存储第一分段端节点对应的TLV处理属性,以便于后续头节点根据图5所示的实施例确定携带SRH的报文。
通过步骤801和步骤802,第一分段端节点在接收到某个包括SRH的报文时,便可确定TLV处理属性,以便于快速统一确定是否需要处理SRH包括的TLV。相对于需要第一分段端节点的本地来配置TLV处理策略来一个一个地对SRH包括的TLV进行判断,本申请实施例可以提高第一分段端节点处理报文的效率。
由上述图5和图6所示的实施例可知,TLV处理属性可以设置在分段端节点对应的SID中。因此,在网络节点发布TLV处理属性之后,SID发布节点可以确定第一分段端节点对应的SID,第一分段端节点为分段路由网络中任一分段端节点,以使第一分段端节点根据第一分段端节点对应的SID确定TLV处理属性。TLV处理属性包括第一属性,第一属性用于指示第一分段端节点需要处理TLV。TLV处理属性还可以包括第二属性,第二属性用于指示第一分段端节点不需要处理TLV。
对于第一分段端节点,上述SID发布节点可以是第一分段端节点自身,此时,是由网络节点自身发布自身的SID。也可以是分段路由网络中的控制器,在此不做具体限定。
在一些实施例中,对于分段路由网络中的任一节点,TLV处理属性设置在该网络节点的SID中包括:采用该网络节点对应的SID的功能类型来设置TLV处理属性。也即是,SID的功能类型能够指示是否需要处理TLV。在这种情况下,该网络节点可以通过图6实施例的隐式编码方式确定TLV处理属性。
在另一些实施例中,TLV处理属性设置在网络节点的SID中包括:采用该网络节点对应的SID中的字段来设置TLV处理属性。比如,该网络节点对应的SID包括TLV处理属性字段,TLV处理属性字段用于指示是否需要处理TLV。在这种情况下,该网络节点可以通过图6实施例中的显示编码方式确定TLV处理属性。
参见图9,本申请实施例提供了一种处理报文的装置,该装置包括:
接收模块901,用于执行图6实施例中的步骤601;
决策模块902,用于执行图6实施例中的步骤602。
可选地,SRH还包括与报文的转发路径中的多个分段端节点一一对应的多个段标识SID,多个分段端节点为报文的转发路径中具有分段路由功能的节点,网络节点为分段端节点中的任一个,TLV处理属性设置在网络节点对应的SID中。
可选地,TLV处理属性设置在网络节点的SID中包括:采用网络节点对应的SID的功能类型来设置TLV处理属性。
可选地,TLV处理属性设置在网络节点的SID中包括:采用网络节点对应的SID中的字段来设置TLV处理属性。
可选地,决策模块,具体用于:
网络节点从对应的SID中获取TLV处理属性;若TLV处理属性指示需要处理SRH包括的TLV,网络节点从SRH包括的TLV中识别出由网络节点处理的TLV,对识别出的TLV进行处理;若TLV处理属性指示不需要处理SRH包括的TLV,网络节点不处理SRH包括的TLV。
可选地,决策模块,具体用于:网络节点判断SRH包括的TLV是否包括位图字段,位图字段用于指定处理位图字段所属TLV的节点;对于不包括位图字段的TLV,将其作为由网络节点处理的TLV;对于包括位图字段的TLV,网络节点进一步判断位图字段中是否指定网络节点为处理节点,若指定网络节点为处理节点,则将位图字段所属TLV作为由网络节点处理的TLV。
可选地,SRH还包括TLV类型,TLV类型中指示是否包括位图字段,网络节点根据TLV类型判断SRH包括的TLV是否包括位图字段。
可选地,位图字段包括与报文中的各SID一一对应的多个比特位,多个比特位的排序与各SID的排序对应;决策模块,具体用于:获取报文的SRH中包括的剩余节点SL字段,SL字段能够指示转发路径中还未参与报文转发的剩余的分段端节点的数量;根据SL字段指示的数量确定网络节点对应的比特位;判断网络节点对应的比特位是否指定网络节点为处理节点。
可选地,该装置还包括:
发送模块,用于在分段路由网路中发布TLV处理能力通知报文,以使分段路由网络中的其他节点根据TLV处理能力通知报文确定网络节点是否具有处理TLV的能力。
需要说明的是:上述实施例提供的处理报文的装置在处理报文时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的处理报文的装置与图6实施例中处理报文的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
参见图10,本申请实施例提供了另一种处理报文的装置,该装置包括:
接收模块1001,用于执行图5实施例中的步骤501;
添加模块1002,用于执行图5实施例中的步骤502;
发送模块1003,用于执行图5实施例中的步骤503。
可选地,SRH还包括与报文的转发路径中的多个分段端节点一一对应的多个段标识SID,多个分段端节点为报文的转发路径中具有分段路由功能的节点,TLV处理属性设置在每个分段端节点对应的SID中。
可选地,TLV处理属性设置在每个分段端节点对应的SID中包括:采用每个分段端节点的SID的功能类型来设置TLV处理属性。
可选地,TLV处理属性设置在每个分段端节点节点的SID中包括:采用每个分段端节点节点的SID中的字段来设置TLV处理属性。
可选地,TLV处理属性指示需要处理SRH包括的TLV时,SRH中还指示SRH包括的各TLV的处理节点。
可选地,SRH中的TLV中包括位图字段,位图字段用于指定处理位图字段所属TLV的节点。
可选地,SRH还包括TLV类型,TLV类型中指示是否包括位图字段。
可选地,接收模块,还用于接收其他节点发布的TLV处理能力通知报文,TLV处理能力通知报文用于指示其他节点是否具有处理第一TLV的能力,其他节点为报文的转发路径中的多个分段端节点中任一个;其中,SRH中指示SRH包括的各TLV的处理节点是基于TLV处理能力通知报文确定的。
需要说明的是:上述实施例提供的处理报文的装置在处理报文时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的处理报文的装置与图5实施例中处理报文的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
参见图11,本申请实施例提供了另一种处理报文的装置,该装置包括:
确定模块,用于执行图8实施例中的步骤801;
发送模块,用于执行图8实施例中的步骤802。
可选地,TLV处理属性设置在网络节点对应的SID中。
可选地,TLV处理属性设置在网络节点的SID中包括:采用网络节点对应的SID的功能类型来设置TLV处理属性。
可选地,TLV处理属性设置在网络节点的SID中包括:采用网络节点对应的SID中的字段来设置TLV处理属性。
需要说明的是:上述实施例提供的处理报文的装置在处理报文时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的处理报文的装置与图8实施例中处理报文的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用户线(Digital Subscriber Line,DSL))或无线(例如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如:软盘、硬盘、磁带)、光介质(例如:数字通用光盘(Digital Versatile Disc,DVD))、或者半导体介质(例如:固态硬盘(Solid State Disk,SSD))等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述为本申请提供的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (20)
1.一种处理报文的方法,其特征在于,所述方法包括:
网络节点接收携带分段路由头SRH的报文,所述SRH包括一个或多个类型-长度-值TLV、以及TLV处理属性,所述TLV处理属性指示所述网络节点需要处理所述SRH包括的TLV;
所述网络节点根据所述TLV处理属性处理所述SRH包括的TLV。
2.如权利要求1所述的方法,其特征在于,所述SRH还包括与所述报文的转发路径中的多个分段端节点一一对应的多个段标识SID,所述多个分段端节点为所述报文的转发路径中具有分段路由功能的节点,所述网络节点为所述分段端节点中的任一个,所述TLV处理属性设置在所述网络节点对应的SID中。
3.如权利要求2所述的方法,其特征在于,所述TLV处理属性设置在所述网络节点的SID中包括:采用所述网络节点对应的SID的功能类型来设置所述TLV处理属性。
4.如权利要求2所述的方法,其特征在于,所述TLV处理属性设置在所述网络节点的SID中包括:采用所述网络节点对应的SID中的字段来设置所述TLV处理属性。
5.如权利要求1至4任一所述的方法,其特征在于,所述网络节点根据所述TLV处理属性处理所述SRH包括的TLV,包括:
所述网络节点从所述网络节点对应的SID中获取所述TLV处理属性;
所述网络节点从所述SRH包括的TLV中识别出由所述网络节点需要处理的TLV,对识别出的TLV进行处理。
6.如权利要求5的方法,其特征在于,所述网络节点从所述SRH包括的TLV中识别出由所述网络节点处理的TLV,包括:
所述网络节点根据所述SRH的指示从所述SRH包括的TLV中识别出由所述网络节点需要处理的TLV。
7.如权利要求5所述的方法,其特征在于,所述方法还包括:
所述网络节点在所述分段路由网络中发布针对指定TLV的TLV处理能力通知报文,以使所述分段路由网络中的其他节点根据所述TLV处理能力通知报文确定所述网络节点是否具有处理所述指定TLV的能力。
8.一种处理报文的方法,其特征在于,所述方法包括:
网络节点接收报文,所述网络节点为分段路由网络入口处的节点;
所述网络节点在所述报文中添加SRH,所述SRH包括一个或多个TLV、以及TLV处理属性,所述TLV处理属性指示第一节点需要处理所述SRH包括的TLV,所述第一节点能够接收到携带所述SRH的报文;
所述网络节点发送添加了所述SRH的报文。
9.如权利要求8所述的方法,其特征在于,所述SRH还包括与所述报文的转发路径中的多个分段端节点一一对应的多个SID,所述多个分段端节点为所述报文的转发路径中具有分段路由功能的节点,所述TLV处理属性设置在每个分段端节点对应的SID中。
10.如权利要求9所述的方法,其特征在于,所述TLV处理属性设置在每个分段端节点对应的SID中包括:采用每个分段端节点的SID的功能类型来设置所述TLV处理属性。
11.如权利要求9所述的方法,其特征在于,所述TLV处理属性设置在每个分段端节点节点的SID中包括:采用每个分段端节点节点的SID中的字段来设置所述TLV处理属性。
12.如权利要求8至11任一所述的方法,其特征在于,所述SRH还指示所述SRH包括的各TLV的处理节点。
13.如权利要求12所述的方法,其特征在于,所述方法还包括:
所述网络节点接收其他节点发布的针对指定TLV的TLV处理能力通知报文,所述TLV处理能力通知报文用于指示所述其他节点是否具有处理所述指定TLV的能力,所述其他节点为所述报文的转发路径中的多个分段端节点中任一个;
其中,所述SRH中指示所述SRH包括的各TLV的处理节点是基于所述TLV处理能力通知报文确定的。
14.一种处理报文的方法,其特征在于,所述方法包括:
分段路由网络中的网络节点确定TLV处理属性,所述TLV处理属性用于指示所述网络节点需要处理接收到的报文携带的SRH包括的TLV;
所述网络节点在所述分段路由网络中发布所述TLV处理属性,以使所述分段路由网络中其他节点存储所述TLV处理属性。
15.如权利要求14所述的方法,其特征在于,所述TLV处理属性设置在所述网络节点对应的SID中。
16.如权利要求15所述的方法,其特征在于,所述TLV处理属性设置在所述网络节点的SID中包括:采用所述网络节点对应的SID的功能类型来设置所述TLV处理属性。
17.如权利要求15所述的方法,其特征在于,所述TLV处理属性设置在所述网络节点的SID中包括:采用所述网络节点对应的SID中的字段来设置所述TLV处理属性。
18.一种处理报文的装置,其特征在于,所述装置包括存储器和处理器;
所述存储器用于存储程序指令;
所述处理器被配置为用于执行所述存储器中存储的程序指令,以使得所述装置执行如权利要求1-17任一项所述的方法。
19.一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行权利要求1-17任一项所述的方法。
20.一种处理报文的系统,所述系统包括头节点和多个分段端节点,所述多个分段端节点为报文的转发路径中具有分段路由功能的节点,所述头节点为分段路由网络入口处的节点;
所述头节点用于实现权利要求8-13任一项所述的方法,对于所述多个分段端节点中任一分段端节点,所述分段端节点用于实现权利要求1-7任一项所述的方法;
所述分段端节点还用于实现权利要求14-17任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111619420.4A CN114448860A (zh) | 2019-06-17 | 2019-06-17 | 处理报文的方法、装置及计算机存储介质 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910523355.1A CN112104552B (zh) | 2019-06-17 | 2019-06-17 | 处理报文的方法、装置及计算机存储介质 |
CN202111619420.4A CN114448860A (zh) | 2019-06-17 | 2019-06-17 | 处理报文的方法、装置及计算机存储介质 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910523355.1A Division CN112104552B (zh) | 2019-06-17 | 2019-06-17 | 处理报文的方法、装置及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114448860A true CN114448860A (zh) | 2022-05-06 |
Family
ID=73749040
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111619420.4A Pending CN114448860A (zh) | 2019-06-17 | 2019-06-17 | 处理报文的方法、装置及计算机存储介质 |
CN201910523355.1A Active CN112104552B (zh) | 2019-06-17 | 2019-06-17 | 处理报文的方法、装置及计算机存储介质 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910523355.1A Active CN112104552B (zh) | 2019-06-17 | 2019-06-17 | 处理报文的方法、装置及计算机存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220109624A1 (zh) |
EP (2) | EP4270898A1 (zh) |
CN (2) | CN114448860A (zh) |
WO (1) | WO2020253748A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112787922A (zh) * | 2019-11-01 | 2021-05-11 | 华为技术有限公司 | 一种报文处理的方法、网络节点和系统 |
CN112787922B (zh) * | 2019-11-01 | 2024-05-14 | 华为技术有限公司 | 一种报文处理的方法、网络节点和系统 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021083341A1 (zh) * | 2019-11-01 | 2021-05-06 | 华为技术有限公司 | 一种报文处理的方法、网络节点和系统 |
CN113179189A (zh) * | 2021-05-26 | 2021-07-27 | 锐捷网络股份有限公司 | 分段路由故障检测方法、装置、第一分段路由及目的路由 |
CN115426305A (zh) * | 2021-05-31 | 2022-12-02 | 华为技术有限公司 | 报文处理方法、装置及系统 |
CN115834480A (zh) * | 2021-09-16 | 2023-03-21 | 华为技术有限公司 | 获取能力、发送能力信息的方法、装置、系统及存储介质 |
CN114826999B (zh) * | 2022-03-22 | 2023-06-20 | 北京邮电大学 | 卫星网络数据传输方法及装置 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060259602A1 (en) * | 2005-05-12 | 2006-11-16 | Randall Stewart | Method and apparatus for transport level server advertisement and discovery |
CN103036877A (zh) * | 2012-12-10 | 2013-04-10 | 北京中创信测科技股份有限公司 | 一种基于tlv格式协议的编解码代码生成装置及方法 |
CN108111417B (zh) * | 2013-08-15 | 2022-12-27 | 华为技术有限公司 | 一种转发mpls数据包的方法及装置 |
CN105871721B (zh) * | 2015-01-19 | 2020-05-05 | 中兴通讯股份有限公司 | 一种段路由处理方法、处理装置及发送装置 |
US9967184B2 (en) * | 2015-07-02 | 2018-05-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Using border gateway protocol to expose maximum segment identifier depth to an external application |
WO2017141079A1 (en) * | 2016-02-15 | 2017-08-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Is-is extensions for flexible path stitching and selection for traffic transiting segment routing and mpls networks |
EP3417580B1 (en) * | 2016-02-15 | 2021-03-03 | Telefonaktiebolaget LM Ericsson (PUBL) | Techniques for exposing maximum node and/or link segment identifier depth utilizing is-is |
CN107181689B (zh) * | 2016-03-10 | 2021-09-14 | 中兴通讯股份有限公司 | 路由器之间的消息交互方法和装置 |
CN106656449B (zh) * | 2016-11-02 | 2019-11-22 | 华为技术有限公司 | 一种协商周期的方法、设备和系统 |
CN108156077B (zh) * | 2016-12-02 | 2021-11-12 | 中兴通讯股份有限公司 | 一种基于IPv6数据平面的分段路由转发方法及装置 |
CN108737128B (zh) * | 2017-04-13 | 2022-10-28 | 中兴通讯股份有限公司 | 一种实现带内操作管理维护ioam的方法及装置 |
US10432523B2 (en) * | 2017-05-31 | 2019-10-01 | Juniper Networks, Inc. | Routing protocol signaling of multiple next hops and their relationship |
US10506083B2 (en) * | 2017-06-27 | 2019-12-10 | Cisco Technology, Inc. | Segment routing gateway storing segment routing encapsulating header used in encapsulating and forwarding of returned native packet |
CN113872859A (zh) * | 2017-07-14 | 2021-12-31 | 华为技术有限公司 | IPv6分段路由隧道建立方法 |
US10469367B2 (en) * | 2017-10-04 | 2019-11-05 | Cisco Technology, Inc. | Segment routing network processing of packets including operations signaling and processing of packets in manners providing processing and/or memory efficiencies |
CN109756425B (zh) * | 2017-11-07 | 2022-01-18 | 中国电信股份有限公司 | 组播转发方法、装置以及bfr |
US11558288B2 (en) * | 2018-09-21 | 2023-01-17 | Cisco Technology, Inc. | Scalable and programmable mechanism for targeted in-situ OAM implementation in segment routing networks |
US10812377B2 (en) * | 2018-10-12 | 2020-10-20 | Cisco Technology, Inc. | Methods and apparatus for use in providing transport and data center segmentation in a mobile network |
CN109379359B (zh) * | 2018-10-19 | 2021-09-07 | 苏州盛科通信股份有限公司 | SRv6数据包的处理方法和装置 |
-
2019
- 2019-06-17 CN CN202111619420.4A patent/CN114448860A/zh active Pending
- 2019-06-17 CN CN201910523355.1A patent/CN112104552B/zh active Active
-
2020
- 2020-06-17 WO PCT/CN2020/096662 patent/WO2020253748A1/zh unknown
- 2020-06-17 EP EP23177553.7A patent/EP4270898A1/en active Pending
- 2020-06-17 EP EP20826250.1A patent/EP3972207B1/en active Active
-
2021
- 2021-12-15 US US17/552,210 patent/US20220109624A1/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112787922A (zh) * | 2019-11-01 | 2021-05-11 | 华为技术有限公司 | 一种报文处理的方法、网络节点和系统 |
CN112787922B (zh) * | 2019-11-01 | 2024-05-14 | 华为技术有限公司 | 一种报文处理的方法、网络节点和系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3972207A4 (en) | 2022-07-06 |
CN112104552B (zh) | 2021-12-28 |
US20220109624A1 (en) | 2022-04-07 |
CN112104552A (zh) | 2020-12-18 |
WO2020253748A1 (zh) | 2020-12-24 |
EP3972207B1 (en) | 2023-07-26 |
EP3972207A1 (en) | 2022-03-23 |
EP4270898A1 (en) | 2023-11-01 |
EP3972207C0 (en) | 2023-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112104552B (zh) | 处理报文的方法、装置及计算机存储介质 | |
KR102555671B1 (ko) | 패킷 처리 방법, 관련 기기 및 컴퓨터 저장 매체 | |
CN109688057B (zh) | 基于ipv6的段路由网络的报文转发方法及装置 | |
CN113259239A (zh) | 一种在混合网络中转发报文的方法、设备和系统 | |
US20160248859A1 (en) | Method and system for dynamic discovery of service functions | |
CN112468396B (zh) | 主机网络性能需求可编程化的方法、设备和系统 | |
US20220255857A1 (en) | Packet Processing Method, Network Node, and System | |
FI123532B (fi) | Menetelmä ja laite reititysdatan mainostuksen ohjaamiseksi | |
CN112448888A (zh) | 一种在sr网络中转发报文的方法、设备和系统 | |
EP3965382A1 (en) | Method and device for implementing service function processing | |
JP7448597B2 (ja) | メッセージ生成方法および装置ならびにメッセージ処理方法および装置 | |
CN114205282B (zh) | SRv6 Policy的调度方法、系统、路由器和控制器 | |
CN115242698A (zh) | 报文转发方法、装置、网络设备及存储介质 | |
CN114124793A (zh) | 转发报文、发布转发指示信息和通告报文的方法及设备 | |
CN108390822B (zh) | 路由发布方法和装置 | |
US11451513B2 (en) | Notification device and notification method | |
CN113055268A (zh) | 隧道流量负载均衡的方法、装置、设备及介质 | |
CN112787922B (zh) | 一种报文处理的方法、网络节点和系统 | |
CN113965386B (zh) | 工控协议报文处理方法、装置、设备及存储介质 | |
CN112702263B (zh) | 转发报文的方法及装置 | |
CN113497794B (zh) | 一种切换路由的方法及装置 | |
CN115695084A (zh) | 报文处理方法、装置及通信系统 | |
CN117499327A (zh) | 数据传输方法、切片关系映射方法、电子设备和介质 | |
CN113364684A (zh) | 一种信息处理方法、边缘计算平台及存储介质 | |
CN112787922A (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 |