CN109218200B - 一种报文处理方法及装置 - Google Patents

一种报文处理方法及装置 Download PDF

Info

Publication number
CN109218200B
CN109218200B CN201811418130.1A CN201811418130A CN109218200B CN 109218200 B CN109218200 B CN 109218200B CN 201811418130 A CN201811418130 A CN 201811418130A CN 109218200 B CN109218200 B CN 109218200B
Authority
CN
China
Prior art keywords
address
node
destination
sid
deleted
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
Application number
CN201811418130.1A
Other languages
English (en)
Other versions
CN109218200A (zh
Inventor
郭威
王伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201811418130.1A priority Critical patent/CN109218200B/zh
Publication of CN109218200A publication Critical patent/CN109218200A/zh
Application granted granted Critical
Publication of CN109218200B publication Critical patent/CN109218200B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例提供一种报文处理方法及装置,应用于通信技术领域,用以解决业务流中断的问题。本申请实施例的方案包括:头节点接收业务报文,业务报文包括第一互联网协议IP头,第一IP头中包括源IP地址和第一目的IP地址,若第一目的IP地址存在于修改列表中,则为业务报文叠加封装第二IP头,以使得中间节点根据第二IP头对业务报文进行转发,其中,修改列表中包括待删除SID对应的IP地址,第二IP头包括源IP地址和第二目的IP地址,第二目的IP地址为尾节点上连接于中间节点的接口的IP地址。

Description

一种报文处理方法及装置
技术领域
本申请涉及通信技术领域,特别是涉及一种报文处理方法及装置。
背景技术
多协议标签交换(Multiprotocol Label Switching,MPLS)为一种用于快速数据包交换和路由的体系,目前可以将分段路由(Segment Routing,SR)功能应用在MPLS网络中,称为MPLS SR网络。在MPLS SR网络中,开启SR功能的设备称为SR节点,具体包括源节点、中间节点和尾节点,其中,源节点可以接收进入MPLS SR网络的报文,为报文添加标签,然后转发至中间节点,中间节点可将报文转发至尾节点,尾节点将报文中的标签剥除,再将报文转发至目的网络。
在MPLS SR网络建立后,各SR节点可根据段标识(Segment Identifier,SID)来生成标签转发表项,后续根据标签转发表项对报文进行转发,若后续需要将报文的转发方式由根据标签转发表项转发改为根据互联网协议(Internet Protocol,IP)地址转发,则各SR节点需要删除标签转发表项。由于各SR节点的处理能力存在差异,可能会导致各SR节点删除标签转发表项的速度不同。若源节点在接收到业务报文时还未删除标签转发表项,会以标签转发的方式将该业务报文转发至相邻内部节点,若该内部节点已经将标签转发表项删除,就无法对业务报文进行转发,导致业务流传输中断。
发明内容
本申请实施例的目的在于提供一种报文处理方法及装置,以避免标签转发路径上的各SR节点删除标签转发表项的速度不一致,导致的业务流传输中断的问题。具体技术方案如下:
第一方面,本申请实施例提供一种报文处理方法,所述方法应用于多协议标签交换MPLS分段路由SR网络中的头节点,所述MPLS SR网络还包括尾节点,所述头节点和所述尾节点之间包括中间节点,所述方法包括:
接收业务报文,所述业务报文包括第一互联网协议IP头,所述第一IP头中包括源IP地址和第一目的IP地址;
若所述第一目的IP地址存在于修改列表中,则为所述业务报文叠加封装第二IP头,以使得所述中间节点根据所述第二IP头对所述业务报文进行转发;所述修改列表中包括待删除段标识SID对应的IP地址;所述第二IP头包括所述源IP地址和第二目的IP地址,所述第二目的IP地址为所述尾节点上连接于中间节点的接口的IP地址。
在一种可能的实现方式中,所述方法还包括:
接收标签删除消息,所述标签删除消息携带待删除SID,用于指示所述头节点删除所述待删除SID对应的标签转发表项;
查找所述待删除SID对应的IP地址,将所述待删除SID对应的IP地址加入所述修改列表,且将所述头节点设置为临时封装状态,所述临时封装状态用于指示所述头节点在接收到所述业务报文时,若所述头节点处于临时封装状态,且所述第一目的IP地址存在于所述修改列表中,则为所述业务报文叠加封装所述第二IP头。
在一种可能的实现方式中,所述方法还包括:
在所述临时封装状态持续时间超过预设阈值前,删除所述待删除SID对应的标签转发表项。
第二方面,本申请实施例提供一种报文处理方法,所述方法应用于多协议标签交换MPLS分段路由SR网络中的中间节点,所述MPLS SR网络还包括头节点和尾节点;所述方法包括:
接收业务报文;
判断所述业务报文中是否包括第一互联网协议IP头和第二IP头;
若是,则判断所述第一IP头包括的第一目的IP地址是否存在于修改列表中,且所述第二IP头包括的第二目的IP地址是否与所述尾节点关联;所述修改列表中包括待删除段标识SID对应的IP地址;
若确定所述第一目的IP地址存在于所述修改列表中,且所述第二目的IP地址与所述尾节点相关联,则根据所述第二目的IP地址转发所述业务报文。
在一种可能的实现方式中,所述方法还包括:
接收标签删除消息,所述标签删除消息携带所述待删除SID,用于指示所述中间节点删除所述待删除SID对应的标签转发表项;
所述尾节点查找所述待删除SID对应的IP地址,将所述待删除SID对应的IP地址加入所述修改列表。
在一种可能的实现方式中,所述方法还包括:
若确定所述第一目的IP地址存在于所述修改列表中,且所述第二目的IP地址与所述尾节点关联,则删除所述待删除SID对应的标签转发表项。
第三方面,本申请实施例提供一种报文处理装置,所述装置应用于多协议标签交换MPLS分段路由SR网络中的头节点,所述MPLS SR网络还包括尾节点,所述头节点和尾节点之间包括中间节点,所述装置包括:
接收模块,用于接收业务报文,所述业务报文包括第一互联网协议IP头,所述第一IP头中包括源IP地址和第一目的IP地址;
封装模块,用于若所述第一目的IP地址存在于修改列表中,则为所述接收模块接收的所述业务报文叠加封装第二IP头,以使得中间节点根据所述第二IP头对所述业务报文进行转发;所述修改列表中包括待删除段标识SID对应的IP地址;所述第二IP头包括所述源IP地址和第二目的IP地址,所述第二目的IP地址为所述尾节点上连接于中间节点的接口的IP地址。
在一种可能的实现方式中,所述装置还包括:设置模块;
所述接收模块,还用于接收标签删除消息,所述标签删除消息携带待删除SID,用于指示所述头节点删除所述待删除SID对应的标签转发表项;
所述设置模块,用于查找所述待删除SID对应的IP地址,将所述待删除SID对应的IP地址加入所述修改列表,且将所述头节点设置为临时封装状态,所述临时封装状态用于指示所述头节点在接收到所述业务报文时,若所述头节点处于临时封装状态,且所述第一目的IP地址存在于所述修改列表中,则为所述业务报文叠加封装所述第二IP头。
在一种可能的实现方式中,所述装置还包括:删除模块;
所述删除模块,用于在所述临时封装状态持续时间超过预设阈值前,删除所述待删除SID对应的标签转发表项。
第四方面,本申请实施例一种报文处理装置,所述装置应用于多协议标签交换MPLS分段路由SR网络中的中间节点,所述MPLS SR网络还包括头节点和尾节点;所述装置包括:
接收模块,用于接收业务报文;
判断模块,用于判断所述业务报文中是否包括第一互联网协议IP头和第二IP头;若是,则判断所述第一IP头包括的第一目的IP地址是否存在于修改列表中,且所述第二IP头包括的第二目的IP地址是否与所述尾节点关联;所述修改列表中包括待删除SID对应的IP地址;
转发模块,用于若所述判断模块判断所述第一目的IP地址存在于所述修改列表中,且所述第二目的IP地址与所述尾节点关联,则根据所述第二目的IP地址转发所述业务报文。
在一种可能的实现方式中,所述装置还包括:设置模块;
所述接收模块,还用于接收标签删除消息,所述标签删除消息携带所述待删除SID,用于指示所述中间节点删除所述待删除SID对应的标签转发表项;
所述设置模块,用于查找所述待删除SID对应的IP地址,将所述待删除SID对应的IP地址加入所述修改列表。
在一种可能的实现方式中,所述装置还包括:删除模块;
所述删除模块,用于若确定所述第一目的IP地址存在于所述修改列表中,且所述第二目的IP地址与所述尾节点关联,则删除所述待删除SID对应的标签转发表项。
第五方面,本申请实施例提供一种SR节点,该SR节点包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现第一方面或第二方面中所述的方法。
第六方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面或第二方面中所述的方法。
第七方面,本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第二方面中所述的方法。
采用本申请实施例提供的方法,头节点接收到业务报文后,若确定业务报文的第一目的IP地址存在于修改列表中,则说明用于转发业务报文的标签转发表项即将被删除,所以头节点可为业务报文叠加封装第二IP头,将封装有第二IP头的业务报文发送给中间节点,由于第二IP头的第二目的IP地址为尾节点上连接中间节点的接口的IP地址,所以中间节点解析该第二IP头后可根据第二目的IP地址对该业务报文进行转发。由于业务报文转发过程中未使用到标签转发表项,所以无论各中间节点是否已经删除标签转发表项,都不会影响到业务报文的转发,避免了由于各节点删除标签转发表项的速度不一致而出现的业务流传输中断的问题。
当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种MPLS SR网络架构示意图;
图2为本申请实施例提供的一种报文处理方法的流程图;
图3为本申请实施例提供的另一种报文处理方法的流程图;
图4为本申请实施例提供的另一种报文处理方法的流程图;
图5为本申请实施例提供的一种报文处理装置的结构示意图;
图6为本申请实施例提供的另一种报文处理装置的结构示意图;
图7为本申请实施例提供的一种SR节点的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供的报文处理方法可以应用于MPLS SR网络中,该网络中包括头节点和尾节点,头节点和尾节点之间存在标签转发路径,标签转发路径中包括至少一个中间节点。
其中,头节点,也可称为源节点、入节点或末梢节点。在MPLS SR网络采用标签转发的方式时,头节点用于接收进入MPLS SR网络的报文,为该报文添加标签,然后将报文转发至中间节点。
尾节点,也可称为出节点。在采用标签转发的方式时,尾节点用于接收中间节点发送的报文,将报文中的标签剥除,再将报文转发至目的网络。
中间节点为头节点和尾节点之间的路径上的中间节点,用于将头节点发送的报文转发至尾节点。
如图1所示,图1为本申请实施例提供的一种MPLS SR网络架构的示例性示意图,该网络中包括:SR节点1、SR节点2、SR节点3、SR节点4、SR节点5和SR节点6。
其中,SR节点1为上述头节点,SR节点2至SR节点5为上述中间节点,SR节点6为上述尾节点。
每个SR节点都被配置了分段路由全局标签段(Segment Routing Global Block,SRGB)基值和SRGB的范围。SR节点6被配置了前缀对应的索引值,例如前缀可以为SR节点6的loopback(环回)地址6.6.6.6/32,对应的索引值为6,可将该索引值作为SID。SR节点6可根据自身的SRGB基值16000和前缀对应的索引值6,确定自身的入标签为16000+6=16006。
SR节点6可通过IGP协议报文将自身的SRGB基值16000和前缀对应的SID发送给SR节点5,SR节点5可根据接收到的SRGB基值16000和SID确定自身的出标签为16000+6=16006,并根据自身的SRGB基值15000和SID确定自身的入标签为15006。
同样地,SR节点5可通过内部网关协议(Interior Gateway Protocol,IGP)报文将自身的SRGB基值15000和前缀对应的SID发送给SR节点4,SR节点4可确定自身的出标签为15006,入标签为自身的SRGB基值14000+6=14006。且SR节点3、SR节点2、SR节点1也可按照相同的方法确定入标签和出标签。即通过该过程SR1至SR6均生成了标签转发表项。
后续若因为业务上的调整,SR节点6要停止使用标签转发模式进行报文转发,则SR节点1至SR节点6均需删除标签转发表项,采用IP转发表项进行报文的转发,在此过程中,SR节点1至SR节点6都要进行LSDB信息的更新,以及SPF计算,计算完成后将标签转发表项删除,然后生成新的转发表项。然而,由于各SR节点的性能不同,处理速度也不相同,假设SR节点1在未删除标签转发表项之前接收到了业务报文,SR节点1仍会根据标签转发表项在业务报文中添加标签,并将该业务报文转发给SR节点2,若SR节点2还未删除标签转发表项,则根据标签转发表项将业务报文转发给SR节点3,若此时SR节点2已经删除了标签转发表项,就无法对携带标签的业务报文进行转发,会导致业务流传输中断。
为了解决上述问题,本申请实施例中,若需要将报文转发模式由标签转发的方式切换为其他转发方式,SR节点1可设置一个临时封装状态,在该状态下为接收到的业务报文后,若确定该业务报文的目的IP地址为6.6.6.6/32(与SID对应的IP地址相同),则为业务报文额外封装一层IP头,该IP头的目的IP地址为SR节点6上,用于连接SR节点5的接口的IP地址(例如为60.1.1.2),然后将该业务报文转发给SR节点2,SR节点2再根据目的IP地址60.1.1.2对该业务报文进行转发,直至转发至SR节点6,SR节点6将额外封装的IP头剥除,可确定剩余的IP头的目的IP地址为自身的loopback地址6.6.6.6/32,则可确认业务报文转发成功。
可以看出,在由标签转发方式切换至其他转发方式的过渡时期,SR节点1可通过额外为业务报文封装IP头的方式来进行报文转发,在此过程中,无论各SR节点的标签转发表项是否已经删除均不会影响的报文的转发,进而避免了业务流传输中断。
结合图1所示的MPLS SR网络,本申请实施例提供了一种报文处理方法,该方法由MPLS SR网络中的头节点(即图1中的SR节点1)执行,如图2所示,该方法包括如下步骤:
S201、头节点接收业务报文。
其中,业务报文包括第一IP头,第一IP头中包括源IP地址和第一目的IP地址。第一目的IP地址可以为尾节点的loopback地址,例如图1中SR节点6的loopback地址6.6.6.6/32。
S202、若第一目的IP地址存在于修改列表中,则为业务报文叠加封装第二IP头,以使得中间节点根据第二IP头对业务报文进行转发。
其中,修改列表中包括待删除SID对应的IP地址。第二IP头包括源IP地址和第二目的IP地址,第二目的IP地址为尾节点上连接于中间节点的接口的IP地址。例如,其中一个中间节点与尾节点的接口1相连,则第二目的IP地址为尾节点的接口1的IP地址。
以图1的场景为例,若SR节点1确定需要删除标签转发表项,则可将待删除SID对应的IP地址6.6.6.6/32加入修改列表。然后头节点接收到业务报文时,若确定业务报文携带的第一目的IP地址为6.6.6.6/32,属于上述修改列表,则为该业务报文封装第二IP头,第二IP头的目的IP地址为SR节点6上,连接SR节点5的接口的IP地址,即60.1.1.2。
在头节点将该业务报文转发给中间节点后,中间节点可根据第二IP头的目的IP地址对该业务报文进行转发。即图1中SR节点2将该业务报文转发给SR节点3,SR节点3读取到第二IP头的第二目的IP地址为SR节点6的IP地址后,则将该业务报文转发给SR节点4,然后SR节点4根据第二目的IP地址将该业务报文转发给SR节点5,SR节点5确定业务报文中的第二目的IP地址为连接于自身的SR节点6的接口的IP地址,则通过该接口将业务报文转发给SR节点6。
可选地,在本申请实施例中,各个中间节点接收到标签删除消息后,可暂缓对标签转发表项及待删除SID的删除,将该待删除SID对应的IP地址6.6.6.6/32加入自身维护的修改列表中。在中间节点接收到业务报文后,若确定第一目的IP地址和第二目的IP地址均与尾节点关联,则证明此时删除标签转发表项不会影响到业务流的传输,即可删除该待删除SID及待删除SID对应的标签转发表项,后续使用IP转发表项进行报文的转发。
采用本申请实施例提供的方法,头节点接收到业务报文后,若确定业务报文的第一目的IP地址存在于修改列表中,则说明用于转发业务报文的标签转发表项即将被删除,所以头节点可为业务报文叠加封装第二IP头,将封装有第二IP头的业务报文发送给中间节点,由于第二IP头的第二目的IP地址为尾节点上连接中间节点的接口的IP地址,所以中间节点解析该第二IP头后可根据第二目的IP地址对该业务报文进行转发。由于业务报文转发过程中未使用到标签转发表项,所以无论各中间节点是否已经删除标签转发表项,都不会影响到业务报文的转发,避免了由于各节点删除标签转发表项的速度不一致而出现的业务流传输中断的问题。
可选地,在执行图2的流程之前,若确定需要删除标签转发表项,可以进行一些配置,然后根据配置的结果执行图2所示的流程,具体如图3所示,本申请实施例提供的报文处理方法具体包括以下步骤:
S301、头节点接收标签删除消息,标签删除消息携带待删除SID,用于指示头节点删除待删除SID对应的标签转发表项。
标签删除消息也可以为路由段撤销消息,具体用于指示头节点删除与尾节点的SID相关的标签转发表项,相应的,也需要删除该待删除SID。
S302、头节点查找待删除SID对应的IP地址,将待删除SID对应的IP地址加入修改列表,且将头节点设置为临时封装状态。
其中,临时封装状态用于指示头节点在接收到业务报文时,若头节点处于临时封装状态,且第一目的IP地址存在于修改列表中,则为业务报文叠加封装第二IP头。
具体地,头节点可查找存在该待删除SID属性的标签转发表项对应的IP地址,即该待删除SID对应的IP地址,将该待删除SID与待删除SID对应的IP地址对应存储在修改列表中。
示例性地,修改列表如表1所示。
表1
SID IP地址
6 6.6.6.6/32
201 7.7.7.7/32
S303、头节点接收业务报文。
其中,业务报文包括第一IP头,第一IP头中包括源IP地址和第一目的IP地址。第一目的IP地址可以为尾节点的loopback地址,例如图1中SR节点6的loopback地址6.6.6.6/32。
S304、头节点判断自身是否处于临时封装状态。
若是,则执行S305;若否,则根据业务报文的第一目的IP地址和自身当前存储的转发表项对业务报文进行转发。
S305、若头节点处于临时封装状态,且业务报文的第一目的IP地址存在于修改列表中,则为业务报文封装第二IP头。
为业务报文封装第二IP头的方法与上述S202中的描述相同,此处不再赘述。
S306、当头节点的临时封装状态的持续时间达到预设阈值时,头节点解除临时封装状态。
其中,预设阈值大于头节点与尾节点之间的标签转发路径上,除头节点之外的其他节点完成转发表项的更新所需的时间。换言之,在临时封装状态的持续时间达到预设阈值时,各中间节点和尾节点均已删除标签转发表项,且已配置其他转发方式对应的转发表项。
可选地,头节点在接收到标签删除消息后,可在临时封装状态持续时间超过预设阈值前,删除待删除SID对应的标签转发表项。即头节点可在自身处于临时封装状态时,删除待删除SID对应的标签转发表项,也可以在临时封装状态达到预设阈值时,删除待删除SID对应的标签转发表项。
可见,采用上述实施例为转发模式的切换过程添加了一个过渡时期,即在临时封装状态的持续时间段内,头节点可为接收到的业务报文添加第二IP头,使得各中间节点可根据第二IP头对业务报文进行转发,在临时封装状态的持续时间达到预设阈值时,各中间节点和尾节点均已删除标签转发表项,则可使用其他转发方式对应的转发表项处理业务报文,避免了由于各节点删除标签转发表项的速度不一致而出现的业务流传输中断的问题。
对应于上述实施例,本申请实施例还提供一种报文处理方法,该方法由MPLS SR网络中的中间节点(即图1中的SR节点1、SR节点2、SR节点3、SR节点4或SR节点5)执行,如图4所示,该方法包括如下步骤:
S401、中间节点接收业务报文。
可以理解的是,若中间节点为SR节点2,SR2节点2接收来自SR节点1的业务报文,若中间节点为SR节点3,则SR3接收来自SR节点2的业务报文。
S402、中间节点判断业务报文中是否包括第一IP头和第二IP头。
其中,第一IP头中包括源IP地址和第一目的IP地址,第二IP头包括源IP地址和第二目的IP地址,第二目的IP地址可以为尾节点上连接于中间节点的接口的IP地址。
第一目的IP地址可以为尾节点的loopback地址,例如图1中SR节点6的loopback地址6.6.6.6/32。第二IP头中的第二目的IP地址可以为SR节点6上,连接SR节点5的接口的IP地址,即60.1.1.2。
S403、若业务报文中包括第一IP头和第二IP头,则判断第一IP头包括的第一IP地址是否存在于修改列表中,且第二IP头包括的第二目的IP地址是否与尾节点关联。
其中,修改列表中包括待删除SID对应的IP地址。
S404、若确定第一目的IP地址存在于修改列表中,且第二目的IP地址与尾节点相关联,则根据第二目的IP地址转发业务报文。
例如,若中间节点为图1中的SR节点2,则SR节点2将该业务报文转发给SR节点3,SR节点3读取到第二IP头的第二目的IP地址为SR节点6的IP地址后,则将该业务报文转发给SR节点4,然后SR节点4根据第二目的IP地址将该业务报文转发给SR节点5,SR节点5确定业务报文中的第二目的IP地址为连接于自身的SR节点6的接口的IP地址,则通过该接口将业务报文转发给SR节点6。
采用本申请实施例提供的方法,中间节点接收到业务报文后,若确定业务报文中包括第一IP头和第二IP头,且第一IP头包括的第一IP地址存在于修改列表中,第二IP头包括的第二IP地址与尾节点关联,则可根据业务报文中的第二IP头中的第二目的IP地址转发业务报文,这样业务报文的转发过程就无需用到标签转发表项,即使各SR节点删除标签转发表项的时间不一致,也不会影响到业务报文的转发,避免了由于各节点删除标签转发表项的速度不一致而出现的业务流传输中断的问题。
可以理解的是,在执行图4的流程之前,中间节点也可接收到标签删除消息,标签删除消息携带待删除SID,用于指示中间节点删除待删除SID对应的标签转发表项,中间节点可根据标签删除消息,将待删除SID对应的IP地址加入修改列表。
其中,头节点和各中间节点均可维护修改列表,且维护的修改列表中均包括待删除SID对应的IP地址。
中间节点接收到标签删除消息时,可暂缓删除待删除SID及标签转发表项,在中间节点接收到业务报文之后,可读取业务报文的第一IP头和第二IP头,若确定第一目的IP地址存在于修改列表中,且第二目的IP地址与尾节点关联,则将待删除SID对应的标签转发表项删除。
对应于上述方法实施例,本申请实施例还提供一种报文处理装置,该装置应用于多协议标签交换MPLS SR网络中的头节点,MPLS SR网络还包括尾节点,头节点和尾节点之间还包括中间节点,如图5所示,该装置包括:接收模块501和封装模块502。
接收模块501,用于用于接收业务报文,业务报文包括第一互联网协议IP头,第一IP头中包括源IP地址和第一目的IP地址。
封装模块502,用于用于若第一目的IP地址存在于修改列表中,则为接收模块接收的业务报文叠加封装第二IP头,以使得中间节点根据第二IP头对业务报文进行转发;修改列表中包括待删除段标识SID对应的IP地址;第二IP头包括源IP地址和第二目的IP地址,第二目的IP地址为尾节点上连接于中间节点的接口的IP地址。
可选地,该装置还包括:设置模块503;
接收模块501,还用于接收标签删除消息,标签删除消息携带待删除SID,用于指示头节点删除待删除SID对应的标签转发表项;
设置模块503,用于查找待删除SID对应的IP地址,将待删除SID对应的IP地址加入修改列表,且将头节点设置为临时封装状态,临时封装状态用于指示头节点在接收到业务报文时,若头节点处于临时封装状态,且第一目的IP地址存在于修改列表中,则为业务报文叠加封装第二IP头。
可选地,该装置还包括:删除模块504;
删除模块504,用于在临时封装状态持续时间超过预设阈值前,删除待删除SID对应的标签转发表项。
本申请实施例还提供另一种报文处理装置,如图6所示,该装置应用于MPLS SR网络中的中间节点,MPLS SR网络还包括头节点和尾节点,如图6所示,该装置包括:接收模块601、判断模块602和转发模块603。
接收模块601,用于接收业务报文。
判断模块602,用于判断业务报文中是否包括第一互联网协议IP头和第二IP头;若是,则判断第一IP头包括的第一目的IP地址是否存在于修改列表中,且第二IP头包括的第二目的IP地址是否与尾节点关联;修改列表中包括待删除SID对应的IP地址。
转发模块603,用于若判断模块602判断第一目的IP地址存在于修改列表中,且第二目的IP地址与尾节点关联,则根据第二目的IP地址转发业务报文。
可选地,该装置还包括:设置模块604;
接收模块601,还用于接收标签删除消息,标签删除消息携带待删除SID,用于指示中间节点删除待删除SID对应的标签转发表项;
设置模块604,用于查找待删除SID对应的IP地址,将待删除SID对应的IP地址加入修改列表。
可选地,该装置还包括:删除模块605;
删除模块605,用于若确定第一目的IP地址存在于修改列表中,且第二目的IP地址与尾节点关联,则删除待删除SID对应的标签转发表项。
本申请实施例还提供了一种SR节点,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现上述方法实施例中由头节点或尾节点执行的步骤。
上述SR节点提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述SR节点与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一报文处理方法的步骤。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一报文处理方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

Claims (14)

1.一种报文处理方法,其特征在于,所述方法应用于多协议标签交换MPLS分段路由SR网络中的头节点,所述MPLS SR网络还包括尾节点,所述头节点和所述尾节点之间包括中间节点,所述方法包括:
接收业务报文,所述业务报文包括第一互联网协议IP头,所述第一IP头中包括源IP地址和第一目的IP地址;
若所述第一目的IP地址存在于修改列表中,则为所述业务报文叠加封装第二IP头,以使得所述中间节点根据所述第二IP头对所述业务报文进行转发;所述修改列表中包括待删除段标识SID对应的IP地址;所述第二IP头包括所述源IP地址和第二目的IP地址,所述第二目的IP地址为所述尾节点上连接于中间节点的接口的IP地址。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收标签删除消息,所述标签删除消息携带待删除SID,用于指示所述头节点删除所述待删除SID对应的标签转发表项;
查找所述待删除SID对应的IP地址,将所述待删除SID对应的IP地址加入所述修改列表,且将所述头节点设置为临时封装状态,所述临时封装状态用于指示所述头节点在接收到所述业务报文时,若所述头节点处于临时封装状态,且所述第一目的IP地址存在于所述修改列表中,则为所述业务报文叠加封装所述第二IP头。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述临时封装状态持续时间超过预设阈值前,删除所述待删除SID对应的标签转发表项。
4.一种报文处理方法,其特征在于,所述方法应用于多协议标签交换MPLS分段路由SR网络中的中间节点,所述MPLS SR网络还包括头节点和尾节点;所述方法包括:
接收业务报文;
判断所述业务报文中是否包括第一互联网协议IP头和第二IP头;
若是,则判断所述第一IP头包括的第一目的IP地址是否存在于修改列表中,且所述第二IP头包括的第二目的IP地址是否与所述尾节点关联;所述修改列表中包括待删除段标识SID对应的IP地址;
若确定所述第一目的IP地址存在于所述修改列表中,且所述第二目的IP地址与所述尾节点相关联,则根据所述第二目的IP地址转发所述业务报文。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
接收标签删除消息,所述标签删除消息携带所述待删除SID,用于指示所述中间节点删除所述待删除SID对应的标签转发表项;
查找所述待删除SID对应的IP地址,将所述待删除SID对应的IP地址加入所述修改列表。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若确定所述第一目的IP地址存在于所述修改列表中,且所述第二目的IP地址与所述尾节点关联,则删除所述待删除SID对应的标签转发表项。
7.一种报文处理装置,其特征在于,所述装置应用于多协议标签交换MPLS分段路由SR网络中的头节点,所述MPLS SR网络还包括尾节点,所述头节点和尾节点之间包括中间节点,所述装置包括:
接收模块,用于接收业务报文,所述业务报文包括第一互联网协议IP头,所述第一IP头中包括源IP地址和第一目的IP地址;
封装模块,用于若所述第一目的IP地址存在于修改列表中,则为所述接收模块接收的所述业务报文叠加封装第二IP头,以使得中间节点根据所述第二IP头对所述业务报文进行转发;所述修改列表中包括待删除段标识SID对应的IP地址;所述第二IP头包括所述源IP地址和第二目的IP地址,所述第二目的IP地址为所述尾节点上连接于中间节点的接口的IP地址。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:设置模块;
所述接收模块,还用于接收标签删除消息,所述标签删除消息携带待删除SID,用于指示所述头节点删除所述待删除SID对应的标签转发表项;
所述设置模块,用于查找所述待删除SID对应的IP地址,将所述待删除SID对应的IP地址加入所述修改列表,且将所述头节点设置为临时封装状态,所述临时封装状态用于指示所述头节点在接收到所述业务报文时,若所述头节点处于临时封装状态,且所述第一目的IP地址存在于所述修改列表中,则为所述业务报文叠加封装所述第二IP头。
9.根据权利要8所述的装置,其特征在于,所述装置还包括:删除模块;
所述删除模块,用于在所述临时封装状态持续时间超过预设阈值前,删除所述待删除SID对应的标签转发表项。
10.一种报文处理装置,其特征在于,所述装置应用于多协议标签交换MPLS分段路由SR网络中的中间节点,所述MPLS SR网络还包括头节点和尾节点;所述装置包括:
接收模块,用于接收业务报文;
判断模块,用于判断所述业务报文中是否包括第一互联网协议IP头和第二IP头;若是,则判断所述第一IP头包括的第一目的IP地址是否存在于修改列表中,且所述第二IP头包括的第二目的IP地址是否与所述尾节点关联;所述修改列表中包括待删除SID对应的IP地址;
转发模块,用于若所述判断模块判断所述第一目的IP地址存在于所述修改列表中,且所述第二目的IP地址与所述尾节点关联,则根据所述第二目的IP地址转发所述业务报文。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:设置模块;
所述接收模块,还用于接收标签删除消息,所述标签删除消息携带所述待删除SID,用于指示所述中间节点删除所述待删除SID对应的标签转发表项;
所述设置模块,用于查找所述待删除SID对应的IP地址,将所述待删除SID对应的IP地址加入所述修改列表。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括:删除模块;
所述删除模块,用于若确定所述第一目的IP地址存在于所述修改列表中,且所述第二目的IP地址与所述尾节点关联,则删除所述待删除SID对应的标签转发表项。
13.一种分段路由SR节点,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求1-3或4-6任一所述的方法步骤。
14.一种机器可读存储介质,其特征在于,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现权利要求1-3或4-6任一所述的方法步骤。
CN201811418130.1A 2018-11-26 2018-11-26 一种报文处理方法及装置 Active CN109218200B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811418130.1A CN109218200B (zh) 2018-11-26 2018-11-26 一种报文处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811418130.1A CN109218200B (zh) 2018-11-26 2018-11-26 一种报文处理方法及装置

Publications (2)

Publication Number Publication Date
CN109218200A CN109218200A (zh) 2019-01-15
CN109218200B true CN109218200B (zh) 2021-05-28

Family

ID=64993793

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811418130.1A Active CN109218200B (zh) 2018-11-26 2018-11-26 一种报文处理方法及装置

Country Status (1)

Country Link
CN (1) CN109218200B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111510387B (zh) * 2019-01-30 2021-12-14 华为技术有限公司 数据转发方法及相关装置
CN109862137B (zh) * 2019-03-28 2022-01-28 新华三技术有限公司 报文传输方法及装置
CN110266592B (zh) * 2019-06-21 2021-07-30 Ut斯达康通讯有限公司 Srv6网络与ip mpls网络的通信方法及装置
CN112398729B (zh) * 2019-08-14 2022-03-29 华为技术有限公司 一种链路状态信息的处理方法及装置
CN112422426B (zh) * 2020-10-28 2022-06-28 中盈优创资讯科技有限公司 基于sr的业务处理方法及装置
CN115134283A (zh) * 2021-03-08 2022-09-30 北京华为数字技术有限公司 一种环网保护方法及装置
CN115037690A (zh) * 2022-06-21 2022-09-09 阿里巴巴(中国)有限公司 一种流量调度方法、装置、电子设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101242335A (zh) * 2008-02-26 2008-08-13 中兴通讯股份有限公司 多链路负荷分担的处理装置、处理方法及mpls vpn网络设备
CN101848171A (zh) * 2010-07-01 2010-09-29 杭州华三通信技术有限公司 一种基于gre隧道的数据传输方法、设备和系统
CN102970224A (zh) * 2012-12-07 2013-03-13 重庆金美通信有限责任公司 一种兼容atm体制并基于ip交换网络实现mpls报文转发方法
CN103259724A (zh) * 2012-02-15 2013-08-21 中兴通讯股份有限公司 一种mpls vpn的实现方法、系统及客户边缘设备
CN104378292A (zh) * 2013-08-15 2015-02-25 华为技术有限公司 一种转发mpls数据包的方法及装置
CN107547386A (zh) * 2017-06-23 2018-01-05 新华三技术有限公司 报文转发方法及装置
CN107872389A (zh) * 2016-09-28 2018-04-03 瞻博网络公司 多归连接的网络中的对称子网间业务负载平衡
CN108111414A (zh) * 2016-11-25 2018-06-01 新华三技术有限公司 一种基于段路由的标签部署方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140376550A1 (en) * 2013-06-24 2014-12-25 Vmware, Inc. Method and system for uniform gateway access in a virtualized layer-2 network domain

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101242335A (zh) * 2008-02-26 2008-08-13 中兴通讯股份有限公司 多链路负荷分担的处理装置、处理方法及mpls vpn网络设备
CN101848171A (zh) * 2010-07-01 2010-09-29 杭州华三通信技术有限公司 一种基于gre隧道的数据传输方法、设备和系统
CN103259724A (zh) * 2012-02-15 2013-08-21 中兴通讯股份有限公司 一种mpls vpn的实现方法、系统及客户边缘设备
CN102970224A (zh) * 2012-12-07 2013-03-13 重庆金美通信有限责任公司 一种兼容atm体制并基于ip交换网络实现mpls报文转发方法
CN104378292A (zh) * 2013-08-15 2015-02-25 华为技术有限公司 一种转发mpls数据包的方法及装置
CN107872389A (zh) * 2016-09-28 2018-04-03 瞻博网络公司 多归连接的网络中的对称子网间业务负载平衡
CN108111414A (zh) * 2016-11-25 2018-06-01 新华三技术有限公司 一种基于段路由的标签部署方法和装置
CN107547386A (zh) * 2017-06-23 2018-01-05 新华三技术有限公司 报文转发方法及装置

Also Published As

Publication number Publication date
CN109218200A (zh) 2019-01-15

Similar Documents

Publication Publication Date Title
CN109218200B (zh) 一种报文处理方法及装置
US9992106B2 (en) Generating a host route
JP5915454B2 (ja) ネットワークシステム
US10148573B2 (en) Packet processing method, node, and system
CN107547243B (zh) 一种报文转发方法及装置
WO2020156166A1 (zh) 用于处理报文的方法和装置
CN109842694B (zh) 一种同步mac地址的方法、网络设备和计算机可读存储介质
CN109525501B (zh) 一种调整转发路径的方法和装置
CN114978978A (zh) 一种算力资源调度方法、装置、电子设备及介质
CN113296869B (zh) 一种虚拟机vm的迁移方法及装置
US10404598B1 (en) Managing next hop groups in routers
CN109802879B (zh) 一种数据流路由方法及装置
CN109831378B (zh) 一种报文超时回应方法及装置
CN109218182B (zh) 一种路由信息的同步方法及装置
WO2021047317A1 (zh) 报文处理方法及装置
WO2022048469A1 (zh) Mac路由的更新方法、设备及系统
WO2021179935A1 (zh) 路由确定方法、装置和网络设备
CN113472699A (zh) 一种网络表项同步方法及装置
CN113472667A (zh) 一种报文转发方法、装置、节点设备及存储介质
US9918217B1 (en) Fast roaming across a network fabric
WO2017211211A1 (zh) 一种报文转发的方法及装置
CN113852572B (zh) 一种报文处理方法及装置
CN111835643B (zh) 管理mac表的方法、网络设备、存储介质和程序产品
US12034631B2 (en) Loop avoidance communications method, device, and system
WO2023165134A1 (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