CN113507414B - 一种报文处理方法及装置 - Google Patents
一种报文处理方法及装置 Download PDFInfo
- Publication number
- CN113507414B CN113507414B CN202110736583.4A CN202110736583A CN113507414B CN 113507414 B CN113507414 B CN 113507414B CN 202110736583 A CN202110736583 A CN 202110736583A CN 113507414 B CN113507414 B CN 113507414B
- Authority
- CN
- China
- Prior art keywords
- label
- indication information
- mpls
- stack
- specified
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种报文处理方法及装置,应用于多协议标签交换MPLS网络中的入口节点,所述MPLS网络还包括中间节点;该方法为:接收业务报文;在所述业务报文的MPLS标签栈中封装指定标签时,在所述MPLS标签栈的设定位置处增加用于识别所述指定标签的指示信息;将封装后的业务报文发送给中间节点,以使所述中间节点根据所述指定标签的指示信息从所述业务报文中解析出所述指定标签。由此,在对报文进行负载分担时,提高了中间节点的标签识别能力。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种报文处理方法及装置。
背景技术
随着用户网络的不断扩展,网络业务范围也逐渐增大,用户通过负载分担技术来获得节点之间更大的带宽。在多协议标签交换网络(Multi-Protocol Label Switch,MPLS)中的隧道负载分担时,隧道的P节点(Transit节点,也即中间节点)在转发过程中,通常会提取MPLS报文中承载的IP内容作为负载分担的HASH KEY。如果不能提取出MPLS报文,则只能使用MPLS标签栈的最顶层作为负载分担的HASH KEY。因为MPLS标签最顶层并不能详细描述报文的底层协议,所以作为HASH KEY的MPLS顶层标签几乎没有差异,导致现网负载分担不均衡的问题日益严重。用户可以通过使用逐包方式来进行规避负载分担不均衡问题,但是逐包存在失序问题,会影响业务体验。而流标签和熵标签实现了不解析内层负载的情况下对不同的数据流的负载分担。具体实现分别为:对于熵标签,在两端的PE节点上开启熵标签功能后,入口PE生成熵标签并封装到公网标签内层中,以使P节点根据熵标签进行负载分担;而对于流标签,在两端的PE节点上开启了L2VPN流标签功能后,入口PE对报文进行封装时,会在PW(Pseudowire,伪线)标签内层增加一个流标签字段,不同的数据流可以添加不同的流标签,然后P节点根据流标签进行负载分担。
但是在利用熵标签或流标签进行负载分担时会存在以下问题:熵标签在公网标签内层中的位置不固定,如果存在隧道嵌套,且内层隧道使能了熵标签,熵标签会封装在内外层隧道标签之间;而中间节点(P节点)在使用熵标签时,需要从MPLS标签栈的栈顶开式逐层向内解析,效率比较低。而对于流标签,流标签的位置虽然固定,但是没有明显的标识;而且由于流标签的标签值字段为随机值,在下行PE识别过程中,使用流标签查找标签转发表时容易误命中其他标签的表项,需要进一步识别,处理相对复杂。
发明内容
有鉴于此,本申请提供一种报文处理方法及装置,用以在对报文进行负载分担时,提高中间节点的标签识别能力。
具体地,本申请是通过如下技术方案实现的:
根据本申请的第一方面,提供一种报文处理方法,应用于多协议标签交换MPLS网络中的入口节点,所述MPLS网络还包括中间节点;所述方法,包括:
接收业务报文;
在所述业务报文的MPLS标签栈中封装指定标签时,在所述MPLS标签栈的设定位置处增加用于识别所述指定标签的指示信息;
将封装后的业务报文发送给中间节点,以使所述中间节点根据所述指定标签的指示信息从所述业务报文中解析出所述指定标签。
根据本申请的第二方面,提供另一种报文处理方法,应用于多协议标签交换MPLS网络中的除入口节点之外的其他节点,所述其他节点为中间节点和/或出口节点;所述方法,包括:
接收业务报文;
若从所述业务报文的MPLS标签栈中解析出指定标签的指示信息,则根据所述指示信息从所述业务报文中解析出所述指定标签。
根据本申请的第三方面,提供一种报文处理装置,设置于多协议标签交换MPLS网络中的入口节点,所述MPLS网络还包括中间节点;所述装置,包括:
接收模块,用于接收业务报文;
封装处理模块,用于在所述业务报文的MPLS标签栈中封装指定标签时,在所述MPLS标签栈的设定位置处增加用于识别所述指定标签的指示信息;
发送模块,用于将封装后的业务报文发送给中间节点,以使所述中间节点根据所述指定标签的指示信息从所述业务报文中解析出所述指定标签。
根据本申请的第四方面,提供另一种报文处理装置,设置于多协议标签交换MPLS网络中的除入口节点之外的其他节点,所述其他节点为中间节点和/或出口节点;所述装置,包括:
接收模块,用于接收业务报文;
解析模块,用于若从所述业务报文的MPLS标签栈中解析出指定标签的指示信息,则根据所述指示信息从所述业务报文中解析出所述指定标签。
根据本申请的第五方面,提供一种电子设备,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的计算机程序,处理器被计算机程序促使执行本申请实施例第一方面或第二方面所提供的方法。
根据本申请的第六方面,提供一种机器可读存储介质,机器可读存储介质存储有计算机程序,在被处理器调用和执行时,计算机程序促使处理器执行本申请实施例第一方面或第二方面所提供的方法。
本申请实施例的有益效果:
MPLS组网中的入口节点通过在发往MPLS网络中其他节点的业务报文中的MPLS标签栈中封装指定标签和用于识别该指定标签的指示信息,使得中间节点基于该指示信息可以快速且准确地识别出业务报文中的指定标签,进而基于识别出的指定标签达到负载分担的目的,由此提高了MPLS组网中中间节点识别指定标签的能力和识别准确度。
附图说明
图1是本申请实施例提供的一种报文处理方法的流程示意图;
图2a是本申请实施例提供的一种各节点对熵标签的处理方式及熵标签的指示信息在MPLS标签栈中的位置示意图;
图2b是本申请实施例提供的一种各节点对流标签的处理方式及流标签的指示信息在MPLS标签栈中的位置示意图;
图3是本申请实施例提供的另一种报文处理方法的流程示意图;
图4是本申请实施例提供的一种报文处理装置的结构示意图;
图5是本申请实施例提供的另一种报文处理装置的结构示意图;
图6是本申请实施例提供的一种实施报文处理方法的电子设备的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
下面对本申请提供的报文处理方法进行详细地说明。
参见图1,图1是本申请提供的一种报文处理方法的流程图,应用于多协议标签交换MPLS网络中的入口节点,该MPLS网络还包括中间节点,该方法可包括如下所示步骤:
S101、接收业务报文。
本步骤中,该业务报文为接入MPLS组网的设备发送的,接入MPLS组网的设备可以为用户网络边缘CE设备;由此,MPLS的入口节点会接收到接入该入口节点的CE设备发送的业务报文。
需要说明的是,该入口节点可以但不限于为入口服务提供商网络边缘PE设备,简称入口PE设备。
S102、在所述业务报文的MPLS标签栈中封装指定标签时,在MPLS标签栈的设定位置处增加用于识别所述指定标签的指示信息。
本步骤中,不同的指定标签其在MPLS标签栈中的设定位置不同。根据所要封装的指定标签的实际类型,在对应的设定位置处封装指定标签的指示信息,该指示信息用于定位指定标签。同时,在MPLS标签栈中指定标签的固定位置处添加该指定标签。实际应用中,入口节点可以与中间节点、出口节点会进行协商处理,以协商是否需要携带指定标签的指示信息。
S103、将封装后的业务报文发送给中间节点,以使所述中间节点根据指定标签的指示信息从业务报文中解析出指定标签。
本步骤中,入口节点在MPLS标签栈中封装了指定标签和用于识别指定标签的指示信息后,就可以将封装后的业务报文发送给中间节点。这样一来,中间节点基于约定的位置(上述设定位置)就可以先从MPLS标签栈中提取出指示信息,然后基于提取出的指示信息定位指定标签的位置,由此一来,通过在MPLS标签栈中增加用于识别指定标签的指示信息,使得中间节点接收到业务报文时,基于该指示信息快速解析出指定标签,从而就可以基于指定标签进行业务报文的负载分担处理。
需要说明的是,上述中间节点可以但不限于为P设备。
通过实施本申请提供的报文处理方法,MPLS组网中的入口节点通过在发往MPLS网络中其他节点的业务报文中的MPLS标签栈中封装指定标签和用于识别该指定标签的指示信息,使得中间节点基于该指示信息可以快速且准确地识别出业务报文中的指定标签,进而基于识别出的指定标签达到负载分担的目的,由此提高了MPLS组网中中间节点识别指定标签的能力和识别准确度。
可选地,可以按照下述过程执行步骤S102:当指定标签为熵标签时,则在MPLS标签栈的栈底增加熵标签的指示信息;当指定标签为流标签时,则在MPLS标签栈中流标签所在层的上一层增加流标签的指示信息。
具体地,当指定标签为熵标签时,则在MPLS标签栈的栈底增加该熵标签的指示信息,参考图2a所示的各节点对熵标签的处理方式及熵标签的指示信息在MPLS标签栈中的位置,当入口节点为入口PE设备,也即上行PE设备时,上行PE设备在业务报文的MPLS标签栈中添加了熵标签(ELI+EL)外,也在MPLS标签栈的栈底位置增加了熵标签的指示信息。
更进一步地,当指定标签为熵标签时,该熵标签的指示信息包括指示类型和熵标签距离指示信息的偏移,具体请参考表1所示的熵标签的指示信息的具体内容,其中,表1中Msg_Type用于表示标签类型,位宽为2bits。当Msg_Type取值为1时,表示指示信息对应的指定标签为熵标签;此外,表1中的Entropy_offset用于表示熵标签距离该指示信息的偏移,位宽为6bits。
表1
需要说明的是,表1中Labelid用于表示指示信息的标识符,长度为20bits,取值一般为7,也称7标签;S表示MPLS标签栈栈底标识位,长度为1bit;exp字段用于表示优先级,长度为3bits。
可选地,当指定标签为流标签时,则在MPLS标签栈中流标签所在层的上一层增加该流标签的指示信息,参考图2b所示的各节点对流标签的处理方式及流标签的指示信息在MPLS标签栈中的位置,当入口节点为入口PE设备,也即上行PE设备时,上行PE设备在业务报文的MPLS标签栈中添加了流标签(Flow Label)外,也在MPLS标签栈中流标签所在层的上一层添加流标签的指示信息,例如图2b中流标签在MPLS标签栈的栈底,流标签位于MPLS标签栈的倒数第一层,则在MPLS标签栈的倒数第二层添加流标签的指示信息。
更进一步地,当指定标签为流标签时,该流标签的指示信息包括标签类型和指示信息的标识符,参考表2所示,需要说明的是,该流标签的指示信息与熵标签的指示信息都可以称作7标签,两者的格式相同,只是取值不同,而且流标签的指示信息和熵标签的指示信息本身也表示一种标签。
表2
需要说明的是,表2中Msg_Type用于表示标签类型,位宽为2bits。当Msg_Type取值为2时,表示指示信息对应的指定标签为流标签;此外,表2中的Entropy_offset,位宽为6bits对于流标签来说,无实际含义,在封装流标签时,Entropy_offset的取值为0。此外,表2中的Lableid用于表示流标签的指示信息,也称作7标签,取值一般为7;exp和S的含义与表1中的exp和S的含义相同,此处不再一一介绍。
需要说明的是,在实施本实施例提供的报文处理方法之前,入口节点需要在本地使能支持熵标签或流标签的功能,然后才能按照本申请上述提供的熵标签或流标签的处理过程对业务报文进行处理。这样一来,通过按照上述方法对业务报文进行封装后转发,使得中间节点或出口节点可以快速且准确地从业务报文中解析出熵标签或流标签,然后执行后续处理。
可选地,基于同一发明构思,本申请还提供了一种报文处理方法,应用于MPLS网络中除入口节点之外的其他节点,该其他节点包括入口节点和/或出口节点,上述其他节点实施报文处理方法时,可以按照图3所示的流程实施,包括以下步骤:
S301、接收业务报文。
本步骤中,当其他节点为中间节点时,中间节点会接收到入口节点发送的业务报文,其中,入口节点的业务报文是按照图1所示的流程转发的,即,转发的业务报文中封装了指定标签和指定标签的指示信息。
而当其他节点为出口节点时,则该业务报文是中间节点转发的业务报文,但该业务报文是入口节点按照图1所示的流程封装处理后的报文。
S302、若从所述业务报文的MPLS标签栈中解析出指定标签的指示信息,则根据所述指示信息从所述业务报文中解析出所述指定标签。
本步骤中,当其他节点接收到业务报文后,可以判断是否能够从该业务报文的MPLS标签栈中指示信息所在位置处解析出指示信息,若成功解析出指示信息,则根据指示信息所指示的位置从MPLS标签栈中解析出指定标签。由此,可以快速且准确地解析出入口节点封装的指定标签,以便走后续流程。
可选地,本实施例提供的报文处理方法,还包括:当其他节点为出口节点时,则从所述业务报文的MPLS标签栈中删除所述指示信息和指定标签。
具体地,当其他节点为出口节点时,出口节点会接收到中间节点转发的业务报文,此时出口节点会删除解析到的指定标签和指定标签的指示信息,然后将业务报文转发到目的方。
可选地,上述指定标签包括熵标签和流标签。当指定标签为熵标签时,该指定标签的指示信息位于业务报文的MPLS标签栈的栈底,具体请参考图2a所示的熵标签及熵标签的指示信息在MPLS标签栈中的位置;当指定标签为流标签时,则该流标签的指示信息位于该业务报文的MPLS标签栈中该流标签所在层的上一层,具体请参考图2b所示的流标签及流标签的指示信息在MPLS标签栈中的位置。
在此基础上,当知道标签为熵标签时,该熵标签的指示信息包括标签类型和熵标签距离指示信息的偏移,则在此基础上,可以按照下述过程执行步骤S302:若基于解析出的标签类型确认所述指定标签为熵标签,则根据所述偏移从所述MPLS标签栈中解析出所述熵标签。
具体来说,参考表1所示,以熵标签的指示信息中的偏移Entropy_offset=2为例进行说明,则当中间节点从MPLS标签栈的栈底解析出指示信息后,例如,若从MPLS标签栈的栈底解析出的Labelid的取值为7,则确认该MPLS标签栈中具有指定标签的指示信息;然后继续从MPLS标签栈的栈底解析出标签类型标签类型,若基于该指示信息中的标签类型Msg_Type的取值(如Msg_Type=1)确认该指示信息对应的指定标签为熵标签,则可以继续从指示信息中解析出偏移Entropy_offset,可以确认偏移Entropy_offset为2,则中间节点可以以指示信息所在位置为基准,向上偏移2,找到的标签记为熵标签EL,然后将找到的熵标签作为哈希因子HASH KEY进行业务报文的负载分担处理,参考图2a所示的P设备(中间节点)的处理过程。
更进一步地,当出口节点接收到中间节点通过负载分担转发的业务报文后,从该业务报文中删除熵标签(ELI+EL),同时还删除熵标签的指示信息,也请参考图2a所示,图2a中的下行PE设备为出口节点。
此外,当指定标签为流标签时,流标签的指示信息包括标签类型,参考表2所示。当尾节点从业务报文的MPLS标签栈的倒数第二层中解析出指示信息后,例如若从MPLS标签栈的倒数第二层解析出的Labelid的取值为7,则确认该MPLS标签栈中具有指定标签的指示信息;然后继续从MPLS标签栈的倒数第二层解析出标签类型Msg_Type,若基于指示信息中的标签类型Msg_Type(如Msg_Type=2)确认该指定标签为流标签时,尾节点就可以在MPLS标签栈的倒数第一层解析出流标签,从而实现了流标签和其他标签之间的隔离,避免了直接查找到流标签(随机值),误命中标签转发表后,需要再进一步检查是否为流标签的问题,也即出口节点可以准确且快速地解析出流标签。然后删除整个MPLS标签栈,也请参考图2b所示的下行PE设备(出口节点)。
需要说明的是,中间节点和出口节点在解析熵标签或流标签之前,同样需要使能熵标签或流标签功能。对于出口节点来说,出口节点在使能熵标签或流标签功能后,需要向入口节点发送LDP mapping报文,该LDP mapping报文的TLV字段中增加了是否支持携带指定标签的指示信息的能力,这样一来,当入口节点接收到LDP mapping报文后,可以从该LDPmapping报文中解析出TLV值,以确认出口节点是否具有按照指示信息解析熵标签或流标签的功能。
需要说明的是,当中间节点不具备按照指示信息解析熵标签功能时,或者从标签栈中解析出的Labelid的取值不为7时,就需要按照现有技术提供的方案进行标签处理,即从栈顶开始逐层解析,以解析出熵标签。
当出口节点未使能熵标签或流标签功能时,则按照现有的LDP mapping协商方式,出口节点不会收到利用图1所示的流程发送的业务报文,这样一来也就不影响该出口节点按照现有的方法对熵标签的识别。
基于同一发明构思,本申请还提供了与上述入口节点侧实施的报文处理方法对应的报文处理装置。入口节点侧的报文处理装置的实施具体可以参考上述对入口节点侧的报文处理方法的描述,此处不再一一论述。
参见图4,图4是本申请一示例性实施例提供的一种报文处理装置,设置于多协议标签交换MPLS网络中的入口节点,所述MPLS网络还包括中间节点;该装置,包括:
接收模块401,用于接收业务报文;
封装处理模块402,用于在所述业务报文的MPLS标签栈中封装指定标签时,在所述MPLS标签栈的设定位置处增加用于识别所述指定标签的指示信息;
发送模块403,用于将封装后的业务报文发送给中间节点,以使所述中间节点根据所述指定标签的指示信息从所述业务报文中解析出所述指定标签。
可选地,上述封装处理模块402,具体用于当所述指定标签为熵标签时,则在所述MPLS标签栈的栈底增加所述熵标签的指示信息;当所述指定标签为流标签时,则在所述MPLS标签栈中所述流标签所在层的上一层增加所述流标签的指示信息。
可选地,基于上述任一实施例,上述指定标签的指示信息包括标签类型;以及当所述指定标签为熵标签时,所述熵标签的指示信息还包括所述熵标签距离所述指示信息的偏移。
基于同一发明构思,本申请还提供了与上述其他节点侧实施的报文处理方法对应的报文处理装置。其他节点侧的报文处理装置的实施具体可以参考上述对其他节点侧的报文处理方法的描述,此处不再一一论述。
参见图5,图5是本申请一示例性实施例提供的一种报文处理装置,设置于多协议标签交换MPLS网络中的除入口节点之外的其他节点,所述其他节点为中间节点和/或出口节点;上述装置,包括:
接收模块501,用于接收业务报文;
解析模块502,用于若从所述业务报文的MPLS标签栈中解析出指定标签的指示信息,则根据所述指示信息从所述业务报文中解析出所述指定标签。
可选地,基于上述实施例,本实施例中,当所述指定标签为熵标签时,所述指定标签的指示信息位于所述业务报文的MPLS标签栈的栈底;当所述指定标签为流标签时,则所述流标签的指示信息位于所述MPLS标签栈中所述流标签所在层的上一层。
可选地,基于上述任一实施例,本实施例中,当所述指定标签为熵标签时,所述指示信息包括标签类型和所述熵标签距离所述指示信息的偏移;则
上述解析模块502,具体用于若基于解析出的标签类型确认所述指定标签为熵标签,则根据所述偏移从所述MPLS标签栈中解析出所述熵标签。
可选地,基于上述任一实施例,当其他节点为出口节点时,则本实施例提供的报文处理装置,还包括:
删除模块(图中未示出),用于从所述业务报文的MPLS标签栈中删除所述指示信息和所述指定标签。
基于同一发明构思,本申请实施例提供了一种电子设备,该电子设备可以但不限于为上述入口节点、中间节点和出口节点中的设备。如图6所示,该电子设备,包括处理器601和机器可读存储介质602,机器可读存储介质602存储有能够被处理器601执行的计算机程序,处理器601被计算机程序促使执行本申请任一实施例所提供的报文处理方法。此外,该电子设备还包括通信接口603和通信总线604,其中,处理器601,通信接口603,机器可读存储介质602通过通信总线604完成相互间的通信。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM)、DDR SRAM(Double Data Rate Synchronous Dynamic Random Access Memory,双倍速率同步动态随机存储器),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
另外,本申请实施例提供了一种机器可读存储介质,机器可读存储介质存储有计算机程序,在被处理器调用和执行时,计算机程序促使处理器执行本申请实施例所提供的报文处理方法。
对于电子设备以及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
上述装置中各个单元/模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元/模块可以是或者也可以不是物理上分开的,作为单元/模块显示的部件可以是或者也可以不是物理单元/模块,即可以位于一个地方,或者也可以分布到多个网络单元/模块上。可以根据实际的需要选择其中的部分或者全部单元/模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (9)
1.一种报文处理方法,其特征在于,应用于多协议标签交换MPLS网络中的入口节点,所述MPLS网络还包括中间节点;所述方法,包括:
接收业务报文;
在所述业务报文的MPLS标签栈中封装指定标签时,在所述MPLS标签栈的设定位置处增加用于识别所述指定标签的指示信息,不同的指定标签其在MPLS标签栈中的设定位置不同,当所述指定标签为熵标签时,则在所述MPLS标签栈的栈底增加所述熵标签的指示信息;当所述指定标签为流标签时,则在所述MPLS标签栈中所述流标签所在层的上一层增加所述流标签的指示信息,所述指定标签的指示信息包括标签类型和MPLS标签栈栈底标识位;
将封装后的业务报文发送给中间节点,以使所述中间节点根据所述指定标签的指示信息从所述业务报文中解析出所述指定标签。
2.根据权利要求1所述的方法,其特征在于,
当所述指定标签为熵标签时,所述熵标签的指示信息还包括所述熵标签距离所述指示信息的偏移。
3.一种报文处理方法,其特征在于,应用于多协议标签交换MPLS网络中的除入口节点之外的其他节点,所述其他节点为中间节点和/或出口节点;所述方法,包括:
接收业务报文;
若从所述业务报文的MPLS标签栈中解析出指定标签的指示信息,则根据所述指示信息从所述业务报文中解析出所述指定标签,所述指定标签的指示信息位于所述MPLS标签栈的设定位置处,不同的指定标签其在MPLS标签栈中的设定位置不同;当所述指定标签为熵标签时,所述指定标签的指示信息位于所述业务报文的MPLS标签栈的栈底;当所述指定标签为流标签时,则所述流标签的指示信息位于所述MPLS标签栈中所述流标签所在层的上一层,所述指定标签的指示信息包括标签类型和MPLS标签栈栈底标识位。
4.根据权利要求3所述的方法,其特征在于,当所述指定标签为熵标签时,所述指示信息包括所述熵标签距离所述指示信息的偏移;则
若从所述业务报文的MPLS标签栈中解析出指定标签的指示信息,根据所述指示信息从所述业务报文中解析出所述指定标签,包括:
若基于解析出的标签类型确认所述指定标签为熵标签,则根据所述偏移从所述MPLS标签栈中解析出所述熵标签。
5.根据权利要求3所述的方法,其特征在于,还包括:
当所述其他节点为出口节点时,则从所述业务报文的MPLS标签栈中删除所述指示信息和所述指定标签。
6.一种报文处理装置,其特征在于,设置于多协议标签交换MPLS网络中的入口节点,所述MPLS网络还包括中间节点;所述装置,包括:
接收模块,用于接收业务报文;
封装处理模块,用于在所述业务报文的MPLS标签栈中封装指定标签时,在所述MPLS标签栈的设定位置处增加用于识别所述指定标签的指示信息,不同的指定标签其在MPLS标签栈中的设定位置不同,当所述指定标签为熵标签时,则在所述MPLS标签栈的栈底增加所述熵标签的指示信息;当所述指定标签为流标签时,则在所述MPLS标签栈中所述流标签所在层的上一层增加所述流标签的指示信息,所述指定标签的指示信息包括标签类型和MPLS标签栈栈底标识位;
发送模块,用于将封装后的业务报文发送给中间节点,以使所述中间节点根据所述指定标签的指示信息从所述业务报文中解析出所述指定标签。
7.一种报文处理装置,其特征在于,设置于多协议标签交换MPLS网络中的除入口节点之外的其他节点,所述其他节点为中间节点和/或出口节点;所述装置,包括:
接收模块,用于接收业务报文;
解析模块,用于若从所述业务报文的MPLS标签栈中解析出指定标签的指示信息,则根据所述指示信息从所述业务报文中解析出所述指定标签,所述指定标签的指示信息位于所述MPLS标签栈的设定位置处,不同的指定标签其在MPLS标签栈中的设定位置不同;当所述指定标签为熵标签时,所述指定标签的指示信息位于所述业务报文的MPLS标签栈的栈底;当所述指定标签为流标签时,则所述流标签的指示信息位于所述MPLS标签栈中所述流标签所在层的上一层,所述指定标签的指示信息包括标签类型和MPLS标签栈栈底标识位。
8.根据权利要求7所述的装置,其特征在于,当所述指定标签为熵标签时,所述指示信息包括标签类型和所述熵标签距离所述指示信息的偏移;
所述解析模块,具体用于若基于解析出的标签类型确认所述指定标签为熵标签,则根据所述偏移从所述MPLS标签栈中解析出所述熵标签。
9.根据权利要求7所述的装置,其特征在于,当所述其他节点为出口节点时,所述装置,还包括:
删除模块,用于从所述业务报文的MPLS标签栈中删除所述指示信息和所述指定标签。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110736583.4A CN113507414B (zh) | 2021-06-30 | 2021-06-30 | 一种报文处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110736583.4A CN113507414B (zh) | 2021-06-30 | 2021-06-30 | 一种报文处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113507414A CN113507414A (zh) | 2021-10-15 |
CN113507414B true CN113507414B (zh) | 2023-09-19 |
Family
ID=78009723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110736583.4A Active CN113507414B (zh) | 2021-06-30 | 2021-06-30 | 一种报文处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113507414B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117938745A (zh) * | 2022-03-11 | 2024-04-26 | 中兴通讯股份有限公司 | 信息处理方法、生成方法、节点、头节点、控制器、介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624601A (zh) * | 2011-01-28 | 2012-08-01 | 华为技术有限公司 | 一种数据报文发送方法、网络装置及网络系统 |
CN104243311A (zh) * | 2013-06-08 | 2014-12-24 | 华为技术有限公司 | 报文处理的方法及路由器 |
CN108111416A (zh) * | 2017-12-15 | 2018-06-01 | 盛科网络(苏州)有限公司 | 直接识别mpls内部封装报文的方法 |
CN112217724A (zh) * | 2019-07-11 | 2021-01-12 | 中兴通讯股份有限公司 | 路由管理方法、装置、网络设备和可读存储介质 |
CN112368980A (zh) * | 2018-07-13 | 2021-02-12 | 华为技术有限公司 | 用于在网业务的mpls扩展头 |
CN112769738A (zh) * | 2019-11-05 | 2021-05-07 | 中兴通讯股份有限公司 | DetNet数据包处理方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3543952B2 (ja) * | 2000-07-21 | 2004-07-21 | 日本電気株式会社 | Mplsパケット転送方法およびパケット交換機 |
US20150222531A1 (en) * | 2014-02-03 | 2015-08-06 | Broadcom Corporation | Prefix-based Entropy Detection in MPLS Label Stacks |
US9525622B2 (en) * | 2014-03-17 | 2016-12-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Label stack encoding and processing to enable OAM procedures for service segments in segment routed (SR) networks |
US9749229B2 (en) * | 2015-07-01 | 2017-08-29 | Cisco Technology, Inc. | Forwarding packets with encapsulated service chain headers |
-
2021
- 2021-06-30 CN CN202110736583.4A patent/CN113507414B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624601A (zh) * | 2011-01-28 | 2012-08-01 | 华为技术有限公司 | 一种数据报文发送方法、网络装置及网络系统 |
CN104243311A (zh) * | 2013-06-08 | 2014-12-24 | 华为技术有限公司 | 报文处理的方法及路由器 |
CN108111416A (zh) * | 2017-12-15 | 2018-06-01 | 盛科网络(苏州)有限公司 | 直接识别mpls内部封装报文的方法 |
CN112368980A (zh) * | 2018-07-13 | 2021-02-12 | 华为技术有限公司 | 用于在网业务的mpls扩展头 |
CN112217724A (zh) * | 2019-07-11 | 2021-01-12 | 中兴通讯股份有限公司 | 路由管理方法、装置、网络设备和可读存储介质 |
CN112769738A (zh) * | 2019-11-05 | 2021-05-07 | 中兴通讯股份有限公司 | DetNet数据包处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113507414A (zh) | 2021-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11979322B2 (en) | Method and apparatus for providing service for traffic flow | |
CN107566272B (zh) | 转发表建立方法及数据转发方法 | |
CN102404197B (zh) | 分组的伪线层中包括的数据路径处理信息 | |
CN105024985B (zh) | 一种报文处理方法及装置 | |
US8804736B1 (en) | Network tunneling using a label stack delimiter | |
WO2018019131A1 (zh) | 报文转发方法及装置 | |
US9985892B1 (en) | System and method for providing congestion notification in layer 3 networks | |
WO2019205806A1 (zh) | 数据包的处理方法及装置、存储介质、电子装置 | |
RU2005136879A (ru) | Идентификатор источника для нахождения мас-адреса | |
US10110487B1 (en) | Signaling priority information for encapsulated packets | |
CN109525501B (zh) | 一种调整转发路径的方法和装置 | |
CN113014486A (zh) | 一种bier报文转发方法、装置、设备和存储介质 | |
US20160112337A1 (en) | Dynamically Offloading Flows from a Service Chain | |
CN112019433A (zh) | 一种报文转发方法和装置 | |
CN113950811B (zh) | 扩展bgp保护以用于sr路径入口保护 | |
CN113507414B (zh) | 一种报文处理方法及装置 | |
CN110166361B (zh) | 一种报文转发方法及装置 | |
US20210281507A1 (en) | Parameter notification and obtaining methods and devices, and storage medium | |
WO2020125651A1 (zh) | 标签属性识别方法、装置、设备及存储介质 | |
CN109831378B (zh) | 一种报文超时回应方法及装置 | |
EP4020903B1 (en) | Method and apparatus for preventing traffic bypassing | |
CN113726652B (zh) | 一种通告信息的处理方法、装置及存储介质 | |
CN112367251A (zh) | 转发信息库表项检测方法、检测设备及网络设备 | |
CN107770071B (zh) | 一种基于OpenFlow的MPLS报文处理方法及装置 | |
CN114978985B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |