报文处理的方法和装置转让专利

申请号 : CN200810167337.6

文献号 : CN101729361B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 龙昊张海燕曾理

申请人 : 华为技术有限公司

摘要 :

本发明实施例公开了一种报文处理的方法和装置,属于通信技术领域。所述方法包括:接收网络中传输的业务报文;获取所述报文中的外层标签和内层标签;根据内层标签查找匹配的节点操作,或根据所述内层标签和外层标签查找匹配的节点操作;如果查找到匹配的节点操作,则根据所述节点操作对所述报文进行处理;如果未查找到匹配的节点操作,则根据所述外层标签对所述报文进行转发。所述设备包括:接收模块、获取模块、查找模块和处理模块。本发明实施例根据业务报文的外层标签和内层标签对报文进行处理,使得网络中的多个业务可以共享一个传输路径,节约了标签资源,提高了网络的整体性能。

权利要求 :

1.一种报文处理的方法,其特征在于,所述方法包括:接收网络中传输的业务报文;

获取所述报文中的外层标签和内层标签;

根据所述内层标签查找匹配的节点操作,或根据所述内层标签和外层标签查找匹配的节点操作;

如果查找到匹配的节点操作,则根据所述节点操作对所述报文进行处理;

如果未查找到匹配的节点操作,则根据所述外层标签对所述报文进行转发;

其中,所述如果查找到匹配的节点操作,则根据所述节点操作对所述报文进行处理,具体包括:如果查找到匹配的节点操作为接收报文,则根据所述节点操作接收所述报文;

如果查找到匹配的节点操作为丢弃报文,则根据所述节点操作丢弃所述报文。

2.根据权利要求1所述的报文处理的方法,其特征在于,所述外层标签为标签交换路径LSP标签,所述内层标签为伪线PW标签。

3.根据权利要求1所述的报文处理的方法,其特征在于,所述方法还包括:如果接收网络中传输的业务报文的节点是边缘节点,则在接收网络中传输的业务报文之前,还包括:预先配置所述报文的外层标签和内层标签所对应的节点操作为丢弃报文;

相应的,所述根据所述内层标签和外层标签查找匹配的节点操作;如果查找到匹配的节点操作,则根据所述节点操作对所述报文进行处理,具体包括:根据所述内层标签和外层标签查找匹配的节点操作,当查找到匹配的节点操作为丢弃报文时,则丢弃所述报文。

4.根据权利要求2所述的报文处理的方法,其特征在于,所述网络为包括两个环LSP的环网络,所述接收网络中传输的业务报文之前,还包括:检测与相邻节点之间的链路是否发生了故障;

如果与所述相邻节点之间的链路发生了故障,则将从一个环LSP上接收到的业务报文切换到另一个环LSP上进行处理;并向所述相邻节点发送自动保护倒换APS报文,所述APS报文用于所述相邻节点接收到所述APS报文后,也将从一个环LSP上接收到的业务报文切换到另一个环LSP上进行处理。

5.根据权利要求4所述的报文处理的方法,其特征在于,所述两个环LSP是方向相反的两个环LSP或者是两个双向环LSP。

6.根据权利要求4所述的报文处理的方法,其特征在于,所述APS报文中封装有PW标签,所述PW标签的值为预设值,用于当前节点对APS报文进行识别。

7.一种报文处理的装置,其特征在于,所述装置包括:接收模块,用于接收网络中传输的业务报文;

获取模块,用于获取所述报文中的外层标签和内层标签;

查找模块,用于根据所述内层标签查找匹配的节点操作,或根据所述内层标签和外层标签查找匹配的节点操作;

处理模块,用于根据所述查找模块的查找结果,对所述报文进行处理,如果查找到匹配的节点操作,则根据所述节点操作对所述报文进行处理;如果未查找到匹配的节点操作,则根据所述外层标签对所述报文进行转发;

其中,所述处理模块,具体用于当所述查找模块查找到匹配的节点操作为接收报文时,则根据所述节点操作接收所述报文;当所述查找模块查找到匹配的节点操作为丢弃报文时,则根据所述节点操作丢弃所述报文。

8.根据权利要求7所述的报文处理的装置,其特征在于,所述外层标签为LSP标签,所述内层标签为PW标签。

9.根据权利要求7所述的报文处理的装置,其特征在于,所述装置还包括:配置模块,用于当所述装置为边缘节点时,在所述装置中,预先配置所述报文的外层标签和内层标签所对应的节点操作为丢弃报文;

相应的,所述处理模块,用于在所述查找模块根据所述内层标签和外层标签查找到匹配的节点操作为丢弃报文时,则丢弃所述报文。

10.根据权利要求8所述的报文处理的装置,其特征在于,所述网络为包括两个环LSP的环网络,所述装置还包括:检测模块,用于检测所述装置与相邻节点之间的链路是否发生了故障;

故障处理模块,用于当所述检测模块检测到与所述相邻节点之间的链路发生故障时,将从一个环LSP上接收到的业务报文切换到另一个环LSP上进行处理;

APS模块,用于当所述检测模块检测到与所述相邻节点之间的链路发生故障时,向所述相邻节点发送APS报文,所述APS报文用于所述相邻节点接收到所述APS报文后,将从一个环LSP上接收到的业务报文切换到另一个环LSP上进行处理。

11.根据权利要求10所述的报文处理的装置,其特征在于,所述两个环LSP是方向相反的两个环LSP或者是两个双向环LSP。

12.根据权利要求10所述的报文处理的装置,其特征在于,所述APS报文中封装有PW标签,所述PW标签的值为预设值,用于当前节点对APS报文进行识别。

说明书 :

报文处理的方法和装置

技术领域

[0001] 本发明涉及网络通信技术领域,特别涉及一种报文处理的方法和装置。

背景技术

[0002] 以太网和多协议标签交换(MPLS,Multi-Protocol Label Switching)是两种常见的包交换技术,以太网技术通常用于局域网,而MPLS技术通常用于核心网络,基于MPLS技术的网络能够快速地转发业务报文并能很好的支持企业虚拟专用网络(VPN,Virtual Private Network)。目前基于MPLS技术正在向传送网的方向演进。由于环网拓扑特别适合于快速业务保护倒换,因此目前的传送网通常采用环型拓扑结构,采用MPLS技术的传送网,由于光纤铺设的原因,也会承载在环形物理拓扑上。
[0003] 在MPLS网络中,相邻节点之间的连接通常是双向的连接,可以为物理的链路,也可以为逻辑上的连接;网络中的节点上通常存在很多业务流,业务报文在传输时,需要根据报文的路由信息建立标签交换路径(LSP,Label Switching Path,)的标签转发表,并保存在节点上,节点根据标签转发表建立对应的LSP对报文进行转发。
[0004] 为保证报文的正常转发,还需要提供相应的保护机制,目前的MPLS环网保护的方案中是为每条LSP建立备份的LSP,当工作LSP发生链路故障时,切换到备份的LSP上。现有技术中的MPLS环网络保护方案基于物理环拓扑,在LSP层进行业务的上下和传输路径的的切换。在该方案中,为每个被保护的LSP建立一个闭环的备份LSP,当出现链路故障时,在检测到链路故障的节点上将业务切换到备份LSP,沿着备份LSP转发到另一个故障点后切换回原LSP再继续传输。
[0005] 在对现有技术进行研究后,发明人发现:
[0006] 由于涉及标签交换,网络中的LSP无法共享给多个业务进行使用,造成LSP以及标签资源的浪费。

发明内容

[0007] 本发明实施例提供了一种报文处理的方法和装置,可以提高网络的中传输路径和标签资源的利用率。所述技术方案如下:
[0008] 一种报文处理的方法,所述方法包括:
[0009] 接收网络中传输的业务报文;
[0010] 获取所述报文中的外层标签和内层标签;
[0011] 根据所述内层标签查找匹配的节点操作,或根据所述内层标签和外层标签查找匹配的节点操作;
[0012] 如果查找到匹配的节点操作,则根据所述节点操作对所述报文进行处理;
[0013] 如果未查找到匹配的节点操作,则根据所述外层标签对所述报文进行转发;
[0014] 其中,所述如果查找到匹配的节点操作,则根据所述节点操作对所述报文进行处理,具体包括:
[0015] 如果查找到匹配的节点操作为接收报文,则根据所述节点操作接收所述报文;
[0016] 如果查找到匹配的节点操作为丢弃报文,则根据所述节点操作丢弃所述报文。
[0017] 本发明实施例还提供了一种报文处理的装置,所述装置包括:
[0018] 接收模块,用于接收网络中传输的业务报文;
[0019] 获取模块,用于获取所述报文中的外层标签和内层标签;
[0020] 查找模块,用于根据所述内层标签查找匹配的节点操作,或根据所述内层标签和外层标签查找匹配的节点操作;
[0021] 处理模块,用于根据所述查找模块的查找结果,对所述报文进行处理,如果查找到匹配的节点操作,则根据所述节点操作对所述报文进行处理;如果未查找到匹配的节点操作,则根据所述外层标签对所述报文进行转发;
[0022] 其中,所述处理模块,具体用于当所述查找模块查找到匹配的节点操作为接收报文时,则根据所述节点操作接收所述报文;当所述查找模块查找到匹配的节点操作为丢弃报文时,则根据所述节点操作丢弃所述报文。
[0023] 本发明实施例根据业务报文的外层标签和内层标签对报文进行处理,实现从同一个传输路径的不同节点上接收业务,节约了标签资源,提高了网络性能。

附图说明

[0024] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0025] 图1是本发明实施例1提供的报文处理的方法流程图;
[0026] 图2是本发明实施例2提供的报文处理的方法流程图;
[0027] 图3是本发明实施例3提供的报文处理的方法中的业务保护方法流程图;
[0028] 图4是本发明实施例3和5提供的报文处理的方法的应用场景的示意图;
[0029] 图5是本发明实施例3和5提供的报文处理的方法的应用场景的示意图;
[0030] 图6是本发明实施例3和5提供的报文处理的方法的应用场景的示意图;
[0031] 图7是本发明实施例3提供的报文处理方法的应用场景的示意图;
[0032] 图8是本发明实施例4提供的报文处理的方法流程图;
[0033] 图9是本发明实施例5提供的报文处理的方法中的业务保护方法流程图;
[0034] 图10是本发明实施例6提供的报文处理的装置的结构图。

具体实施方式

[0035] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036] 实施例1
[0037] 本发明实施例提供了一种报文处理的方法,参见图1,该方法包括:
[0038] 101:接收网络中传输的业务报文;
[0039] 102:获取该报文中的外层标签和内层标签;
[0040] 103:根据该内层标签查找匹配的节点操作;或根据该内层标签和外层标签查找匹配的节点操作;如果查找到匹配的节点操作,执行104;如果未查找到匹配的节点操作,执行105。
[0041] 104:根据该节点操作对该报文进行处理,流程结束。
[0042] 105:根据该外层标签对该报文进行转发,流程结束。
[0043] 本发明实施例根据业务报文的外层标签和内层标签对报文进行处理,实现从同一个传输路径的不同节点上接收业务,节约了标签资源,提高了网络性能。
[0044] 实施例2
[0045] 本发明实施例提供了一种报文处理的方法,该方法包括:使用外层标签和内层标签处理网络中的业务报文,外层标签用于对业务报文进行转发;内层标签用于区分不同的业务。具体的,在不同网络中,可以选取不同的外层标签和内层标签。比如在MPLS网络,可以选取LSP标签为内层标签,PW标签为内层标签。在VLAN中,可以选取外层的VLAN标签作为外层标签,内层的VLAN标签作为内层标签。
[0046] 在报文处理前,需要进行如下准备步骤:
[0047] 在网络的各个节点中预先配置处理表项,具体为:根据预设的业务报文和外层标签、内层标签的映射关系,确定网络中的各个业务报文所对应的外层标签和内层标签,并在各节点中配置各个业务报文所对应的节点操作。
[0048] 该处理表项包括:业务报文的外层标签、内层标签和Action标签,其中,Action标签为外层标签和内层标签所对应的节点操作,Action标签包括:
[0049] Drop:接收,即取下该报文,不再转发。
[0050] Drop and Continue:接收并转发,即复制一份报文在本节点接收,同时根据报文的外层标签转发报文。
[0051] Discard:丢弃,即丢弃该报文。
[0052] 在上述准备步骤完成后,网络边缘节点在用户侧接收到业务报文时,根据预设的业务报文和外层标签、内层标签的映射关系,确定该业务报文的外层标签和内层标签,将该外层标签和内层标签封装到该报文中并转发。
[0053] 网络中的节点收到该报文后,获取该报文中的外层标签和内层标签,将该报文在网络中传输到目的节点。参见图2,报文处理的具体步骤为:
[0054] 201:网络中的节点接收网络中传输的业务报文。
[0055] 202:获取该报文中的外层标签和内层标签。
[0056] 203:在预先配置的处理表项中,根据该外层标签和内层标签查找匹配的节点操作;如果查找到匹配的节点操作,则执行204,如果未查找到匹配的节点操作,则执行205。
[0057] 接收到报文的节点在查找匹配的节点操作时,同时根据外层标签和内层标签进行查找,即在该节点预先配置的处理表项中,查找与报文中的外层标签和内层标签同时匹配的处理表项,如果能查找到相匹配的处理表项,则根据该表项中的节点操作对该报文进行处理;如果未查找到匹配的处理表项,根据该外层标签对该报文进行转发。
[0058] 如表1所示为某节点的处理表项,在该表项中,外层标签为LSP标签,内层标签为PW标签,节点在接收到业务报文时,根据报文中的LSP标签和PW标签查询该表项确定节点操作。
[0059] 204:根据查找到的该节点操作对该报文进行处理,流程结束。
[0060] 205:根据该外层标签对该报文进行转发,流程结束。
[0061] 具体的,以表1中的处理表项为例进行说明,如果处理表项中有与LSP标签和PW标签同时匹配的表项,则根据该匹配表项确定相应的节点操作;如果处理表项中没有与PW标签匹配的表项,仅有与LSP标签匹配的表项,则根据LSP标签转发报文。在根据LSP标签转发报文时,可以根据LSP标签查找转发表项对报文进行转发,如表2所示为转发表项的示例。
[0062] 需要说明的是,如果接收到的报文中的外层标签与处理表项中的外层标签都不匹配,则判定为未知报文进行丢弃处理。
[0063]LSP入标签 入端口 PW标签 Action
100 3 20 Drop
200 3 40 Drop and Continue
100 3 40 Discard
[0064] 表1
[0065]LSP入标签 入端口 LSP出标签 出端口
100 3 300 5
200 3 400 6
[0066] 表2
[0067] 例如,上述的节点从端口3接收到LSP标签为100,PW标签为20的报文后,查询处理表项为Drop,则取下该报文,不再转发;当该节点从端口3接收到LSP标签为200,PW标签为40的报文后,则在本节点复制该报文,同时根据报文的LSP标签转发报文;当该节点从端口3接收到LSP标签为100,PW标签为40的报文后,查询到相应的节点操作为丢弃,则直接丢弃该报文;如果该节点从端口3接收到LSP标签为100,PW标签为30的报文,由于处理表项中没有对应的PW标签,则直接根据LSP标签进行转发,即查询表2后,在出端口将标签交换为300,从端口5转发出去;如果节点接收到LSP标签为500,PW标签为30的报文,处理表项中没有匹配的LSP标签,则判定为未知报文进行丢弃处理。
[0068] 本发明实施例根据业务报文的外层标签和内层标签对报文进行处理,实现从同一个传输路径的不同节点上接收业务,节约了标签资源,提高了网络性能。
[0069] 实施例3
[0070] 本发明实施例提供了一种环网络中报文处理的方法,并在此基础上,进一步提出了在环网络报文处理的过程中进行业务保护的方法。
[0071] 本发明实施例提供的报文处理的方法与实施例2相同,具体应用于环网络中,比如应用于MPLS环网络,在该MPLS环网络中,外层标签可以为LSP标签,内层标签可以为PW标签。
[0072] 在报文处理前,需要进行如下准备步骤:
[0073] 在该MPLS环网络中,配置两个相反方向的闭环LSP,两个闭环均包含环网络中的所有节点,配置的两个闭环LSP可以是方向相反的两个环LSP或者是两个双向环LSP。
[0074] 具体的,以A、B、C、D、E、F六个节点组成的环网为例,在环网中,配置包含全部六个节点且方向相反的两个闭环LSP:B节点到A节点的逆时针方向的LSP为LSP_CC,A节点到B节点顺时针方向的LSP为LSP_CW。
[0075] 对于每个在环网中传输的业务,根据预设的业务报文和LSP标签、PW标签的映射关系,确定业务报文的LSP标签和PW标签,并根据该LSP标签和PW标签对环网中的节点的处理表项进行预先配置,其中,每个业务报文的PW标签全网唯一,业务报文的下环节点必须进行配置,上环节点和其他中间节点需要根据具体的应用场景进行配置。需要说明的是,在环网络中,上环节点即在用户侧接收到业务报文的网络边缘节点,下环节点即报文在环网络中转发的出口节点。
[0076] 例如一个上环节点为F、下环节点为C的业务报文,在业务报文和LSP标签、PW标签的映射关系中,其PW标签为10,LSP标签为LSP_CC上的标签,映射到LSP_CC上进行转发,则在节点C上配置PW标签为10以及属于LSP_CC方向上的LSP标签所对应的节点操作为Drop;如果节点E需要在转发报文时复制一份报文,则可以在节点E中将PW标签为10以及属于LSP_CC方向上的LSP标签所对应的节点操作配置为Drop and Continue。
[0077] 在上述准备工作完成后,就可以在环网络中进行报文的转发,但此时缺少业务保护机制,不能保证业务报文处理的安全性。比如,在链路发生故障时,不能进行业务传输的保护处理,造成业务报文丢失。
[0078] 进一步的,为保证报文在环网络中转发的安全性,在报文处理前,还可以进行网络业务的保护,参见图3,在该MPLS环网上进行业务保护的方法为:
[0079] 301:环网络中的相邻节点之间进行链路检测。
[0080] 302:当有节点检测到链路故障时,则将该节点设置为回绕(Wrapping)状态,将发生故障的链路所对应的端口设置为故障端口,并发送自动保护倒换(APS,Automatic Protection Switching)报文。
[0081] 进一步的,在APS报文的协议处理单元中,APS报文包括:
[0082] 故障端口信息,其中故障端口为检测到故障的环端口,可以为正向端口或反向端口,通常规定接收报文的入端口为正向端口,转发报文的出端口为反向端口。
[0083] 发送节点标识(Destination identification identity),其中发送节点即检测到链路故障并发送APS报文的节点。
[0084] 目的节点标识(Source identification identity),其中目的节点为发生故障的链路或节点的相邻相关节点。
[0085] 保护倒换请求信息:包括触发APS的倒换类型,如信号失效SF(Signal Fail)或无请求NR(No Request)。在本实施例中,节点检测到链路故障时,则发送的APS报文中的保护倒换请求信息的倒换类型为信号失效。
[0086] 具体的,当环网中的节点检测到链路故障时,进入Wrapping状态,并分别在两个环LSP上发送APS报文,即分别在APS报文中封装LSP_CC和LSP_CW方向上的LSP标签后在相应的环LSP上传输,其中APS报文的PW标签为预设的特殊值,该特殊的PW标签用于APS报文与业务报文进行区分。
[0087] 303:环网中的节点接收并根据特殊的PW标签识别出该APS报文后,则发送给当前节点的APS模块进行处理,进行业务保护的相应操作。具体方法为;
[0088] 1)如果当前节点已经处于Wrapping状态,则忽略该APS报文。
[0089] 2)如果当前节点处于正常状态,且通过目的节点标识判断出当前节点不是该APS报文的目的节点,则根据将该APS报文中的LSP标签转发该APS报文。
[0090] 3)如果当前节点处于正常状态,且通过目的节点标识判断当前节点是该APS报文的目的节点,则进入Wrapping状态,并根据该APS报文中的故障端口信息将当前节点上对应的端口设置为故障端口。具体方法为:当APS报文中的故障端口信息为发送节点的正向端口时,则将当前节点反向端口设为故障端口;反之,当APS报文中的故障端口信息为发送节点的反向端口时,则将当前节点的正向端口设为故障端口。
[0091] 例如,节点E到节点D方向上的链路发生了故障,节点D检测到正向端口出现了故障,则分别在两个环LSP上发送APS报文,其中故障端口信息为正向端口,发送节点标识为节点D的标识,目的节点标识为节点E的标识,保护倒换请求信息中的倒换类型为信号失效。节点E在接收到APS报文后,识别出本节点为目的节点,故障端口为正向端口,则将本节点的反向端口设置为故障端口,即将面向节点D的出端口设置为故障端口。
[0092] 进入Wrapping状态的节点,将所有从非故障端口向故障端口发送的业务报文都进行LSP方向的切换,即将报文中的LSP标签切换为反向的LSP标签,并根据切换后的LSP标签对报文进行处理。
[0093] 在上述准备步骤和业务保护步骤执行之后,就可以在该环网络中转发报文,并且转发报文具有一定的安全性,具体步骤为:
[0094] 1)由上环节点在业务报文的外层封装LSP标签和PW标签,并根据LSP标签转发报文。例如报文的LSP标签属于LSP_CC上的标签,则按照逆时针方向转发报文。
[0095] 2)其他节点在接收到报文后,如果当前节点处于Wrapping状态,则按照业务保护的方法对报文进行处理;如果当前节点正常,则获取报文中的LSP标签和PW标签,并根据LSP标签和PW标签查询处理表项,当能查找到相应的节点操作时,则根据节点操作对报文进行处理;当未查找到匹配的节点操作时,则根据LSP标签对报文进行转发。
[0096] 下面结合具体的应用场景介绍该MPLS环网络中业务报文处理的方法和业务保护的方法。
[0097] 参见图4,在节点A、B、C、D、E、F组成的环网中,对于上环节点为F,下环节点为C的业务报文,在业务报文和LSP标签、PW标签的映射关系中,该报文的PW标签为10,LSP标签为LSP_CC上的标签,在LSP_CC方向上进行转发;对于上环节点为C,下环节点为F的业务报文,在业务报文和LSP标签、PW标签的映射关系中,该报文的PW标签为12,LSP标签为LSP_CW上的标签,在LSP_CW方向上进行转发。
[0098] 第一种应用场景:链路和节点都正常,以节点F向节点C传输业务为例进行说明,则在节点C的处理表项中,预先配置LSP_CC方向上的LSP标签和PW标签为10的业务报文的节点操作为Drop。
[0099] 在该场景中报文处理的过程如下:
[0100] 401:在该业务报文到达节点F后,节点F根据预设的报文和LSP标签、PW标签的映射关系,在报文中封装该报文的LSP标签和PW标签,其中LSP标签为LSP_CC上的标签,PW标签为10。封装后在LSP_CC方向上将该报文处理到节点E。
[0101] 402:节点E在收到报文后,获取报文中的LSP标签和PW标签,根据LSP标签和PW标签查找相应的节点操作。由于在节点E的配置表项中没有预先配置该LSP标签和PW标签所对应的操作,则节点E根据LSP标签确定报文的转发方向为LSP_CC,在LSP_CC方向上将该报文处理到节点D,节点D按照相同的方法将报文处理到节点C。
[0102] 403:节点C在收到报文后,获取报文中的LSP标签和PW标签,根据LSP标签和PW标签查找相应的节点操作,查找到为Drop,则将报文解封装并接收。
[0103] 第二种应用场景:链路发生双向故障,以节点F向节点C传输业务为例进行说明,则在节点C的处理表项中,预先配置LSP_CC方向上的LSP标签和PW标签为10的业务报文的节点操作为Drop。
[0104] 在该场景中业务保护的过程如下:
[0105] 参见图5,在节点A、B、C、D、E、F组成的环网中的各个节点都正常,但节点E和节点D之间的链路发生了故障,节点D和节点E检测到链路故障后进入Wrapping状态,将故障链路对应的端口设置为故障端口,并在两个LSP方向上同时发送APS报文,且APS报文中的保护倒换请求为信号失效。补充说明的是,节点D和节点E接收到APS报文后,获取报文中的LSP标签和PW标签,由节点E的APS模块处理,APS模块判断本节点目前状态为Wrapping状态,则忽略所接收到的APS报文。
[0106] 在该场景中报文处理的过程如下:
[0107] 501:在该业务报文到达F节点后,节点F根据预设的报文和LSP标签、PW标签的映射关系,在报文中封装该报文的LSP标签和PW标签,其中LSP标签为LSP_CC上的标签,PW标签为10。封装后在LSP_CC方向上将该报文转发到节点E。
[0108] 502:由于节点E处于Wrapping状态,并且业务报文的在节点E的入端口为非故障端口,但出端口为故障端口,业务报文从非故障端口向故障端口进行传输,因此节点E将该报文从LSP_CC上切换到LSP_CW上进行传输,即将报文的LSP标签切换为LSP_CW方向上的标签,并根据切换后的LSP_CW方向上的LSP标签和PW标签查找相应的节点操作,由于在节点E的配置表项中没有预先配置LSP标签和PW标签所对应的操作,则节点E根据LSP标签确定报文转发方向为LSP_CW,则根据切换后的LSP标签在LSP_CW上将报文转发到F。
[0109] 503:节点F在收到报文后,获取报文中的LSP标签为LSP_CW方向上的LSP标签,PW标签为10,并根据LSP标签和PW标签查找相应的操作,由于没有预先配置相应的节点操作,则根据LSP标签在LSP_CW方向将该报文转发到节点A,节点A按照相同的方法将报文转发到节点B,节点B将报文转发到节点C。
[0110] 504:节点C在收到报文后,获取报文中的LSP标签信息和PW标签信息,查找到LSP_CW方向上的LSP标签和PW标签为10所对应的节点操作,由于没有预先配置相应的节点操作,则根据LSP标签将该报文转发到节点D。
[0111] 505:节点D收到报文后,由于处于Wrapping状态,并且业务报文是从非故障端口向故障端口进行传输,因此将报文中的LSP_CW标签切换为LSP_CC标签,根据切换后的LSP_CC标签和PW标签查找相应的节点操作,由于没有预先配置相应的节点操作,则在LSP_CC方向上将报文转发到节点C。
[0112] 506:节点C在收到报文后,获取报文中的LSP标签为LSP_CC方向上的标签,PW标签为10,根据LSP标签和PW标签,查找对应的节点操作为Drop,则接收该报文,流程结束。
[0113] 第三种应用场景:链路发生单向故障,参见图6,在节点A、B、C、D、E、F组成的环网中的各个节点都正常,但节点E到节点D方向上的链路发生了故障,节点D到节点E方向上的链路依然正常,因此只有节点D检测到链路故障。
[0114] 在该场景中业务保护的过程如下:
[0115] 节点D检测到节点E到节点D方向上的链路发生了故障,进入Wrapping状态,将故障链路所对应的端口设置为故障端口,即将节点D的正向端口设置为故障端口,并在两个LSP方向上发送APS报文,其中故障端口信息为正向端口,发送节点标识为节点D的标识,目的节点标识为节点E的标识,保护倒换请求信息中的倒换类型为信号失效。节点E在接收到APS报文后,获取报文中的LSP标签和PW标签,由节点E的APS模块处理,APS模块判断本节点目前状态为正常,根据目的节点标识识别出本节点为目的节点,则将本节点设置为Wrapping状态,并且APS报文中的故障端口信息为节点D的正向端口,则将本节点的反向端口设置为故障端口,即将面向节点D的出端口设置为故障端口。
[0116] 在该场景中,报文处理的过程为:
[0117] 当节点F向节点C传输业务时,则在节点C的处理表项中,预先配置LSP_CC方向上的LSP标签和PW标签为10的业务报文的节点操作为Drop,此时对报文的转发过程与第二种应用场景相同,不再赘述。
[0118] 当节点C向节点F传输业务时,则在节点F的处理表项中,预先配置LSP_CW方向上的LSP标签和PW标签为12的业务报文的节点操作为Drop,此时节点D处于Wrapping状态,但节点D到节点E方向上的链路依然正常,由于是在非故障端口之间传输报文,因此可以进行正常的业务传输,此处不再赘述。
[0119] 第四种应用场景:节点故障,以节点F向节点C传输业务为例进行说明,参见图7,在节点A、B、C、D、E、F组成的环网中,环网络中的各个节点和链路都正常,但节点C发生了故障,节点D和节点B检测到无法与节点C进行数据传输,判定为面向节点C的链路发生了故障,进入Wrapping状态,将面向节点C的端口设置为故障端口。
[0120] 为防止报文的转发形成环路,本发明实施例提出的解决措施为:当一个业务的上环节点从环端口上接收到封装有该业务对应的外层标签和内层标签的业务报文时,则丢弃该业务报文。即上环节点在业务报文转发的方向上再次接收到该报文时,说明报文在环网络中的转发形成了环路,此时应丢弃该报文。以本场景为例,在节点F的处理表项中,配置LSP_CC方向上的LSP标签和PW标签为10对应的操作为Discard。
[0121] 在该场景中业务保护的过程如下:
[0122] 节点D和节点B检测到面向节点C的链路发生了故障,进入Wrapping状态,将故障链路所对应的端口设置为故障端口,并在两个LSP方向上发送APS报文。需要说明的是,本实施例中节点B和节点D发送的APS报文中,目的节点都为节点C,但由于节点C故障,此处忽略APS报文的作用。
[0123] 在该场景中业务报文处理的过程如下:
[0124] 701:在该业务报文到达节点F后,节点F根据预设的报文和LSP标签、PW标签的映射关系,在报文中封装该报文的LSP标签和PW标签,其中LSP标签为LSP_CC上的标签,PW标签为10。封装后在LSP_CC方向上将该报文转发到节点E。
[0125] 702:节点E将报文转发到节点D,由于节点D处于Wrapping状态,并且业务报文是从非故障端口向故障端口进行传输,则将该报文从LSP_CC上切换到LSP_CW上进行传输,即将报文的LSP标签切换为LSP_CW方向上的标签,并根据切换后的LSP_CW方向上的标签和PW标签查找相应的节点操作,由于没有预先配置相应的节点操作,则节点D根据LSP标签确定报文转发方向为LSP_CW,则根据切换后的LSP标签在LSP_CW上将报文转发到E。
[0126] 703:节点E将报文转发到节点F,节点F在收到报文后,获取报文中的LSP标签属于LSP_CW,PW标签为10,并根据LSP标签和PW标签查找相应的节点操作,由于没有预先配置相应的节点操作,则根据LSP标签在LSP_CW方向将该报文转发到节点A,节点A按照相同的方法将报文转发到节点B。
[0127] 704:节点B收到报文后,由于处于Wrapping状态,并且业务报文是从非故障端口向故障端口进行传输,将报文中的LSP_CW标签切换为LSP_CC标签,根据切换后的LSP_CC标签和PW标签查找相应的节点操作,由于没有预先配置相应的节点操作,则在LSP_CC方向上将报文转发到节点A。
[0128] 705:节点A继续转发报文直至转发到节点F,节点F根据LSP标签和PW标签查找相应的节点操作为Discard,则丢弃该报文,流程结束。
[0129] 本发明实施例根据业务报文的LSP标签和PW标签对报文进行处理,实现在网络中接收多种业务报文时,可以从同一个LSP的不同节点上接收业务报文,节约了标签资源,适合在环型网络应用。
[0130] 实施例4
[0131] 本发明实施例提供了一种报文处理的方法,该方法对实施例2提供的方法进行了简化,在预先配置节点操作时,仅根据内层标签进行配置;节点在对报文进行处理时,也仅根据内层标签查找相应的操作,如图8所示,该方法包括:
[0132] 在报文处理前,需要进行如下准备步骤:
[0133] 在网络的各个节点中预先配置处理表项,具体为:根据预设的业务报文和外层标签、内层标签的映射关系,确定网络中的各个业务报文所对应的外层标签和内层标签,并在各节点中配置各个业务报文所对应的节点操作。
[0134] 该处理表项包括:业务报文内层标签和Action标签,其中,Action标签为外层标签和内层标签所对应的节点操作,Action标签包括:
[0135] Drop:接收,即取下该报文,不再转发。
[0136] Drop and Continue:接收并转发,即复制一份报文在本节点接收,同时根据报文的外层标签转发报文。
[0137] 在上述准备步骤完成后,网络边缘节点在用户侧接收到业务报文时,根据预设的业务报文和外层标签、内层标签的映射关系,确定该业务报文的外层标签和内层标签,将该外层标签和内层标签封装到该报文中并转发。
[0138] 网络中的节点收到该报文后,获取该报文中的外层标签和内层标签,将该报文在网络中传输到目的节点。参见图8,报文处理的具体步骤为:
[0139] 801:网络中的节点接收网络中传输的业务报文。
[0140] 802:获取该报文中的外层标签和内层标签。
[0141] 803:在预先配置的处理表项中,根据内层标签查找匹配的节点操作;如果查找到匹配的节点操作,则执行804,如果未查找到匹配的节点操作,则执行805。
[0142] 804:根据查找到的该节点操作对该报文进行处理;
[0143] 805:根据该外层标签对该报文进行转发。
[0144] 接收到报文的节点在查找匹配的节点操作时,根据内层标签进行查找在该节点预先配置的处理表项中,查找与报文中的内层标签匹配的处理表项,如果能查找到相匹配的处理表项,则根据该表项中的节点操作对该报文进行处理;如果未查找到匹配的处理表项,根据该外层标签对该报文进行转发。
[0145] 需要说明的是,如果接收到的报文中的外层标签与处理表项中的外层标签都不匹配,则判定为未知报文进行丢弃处理。
[0146] 本发明实施例根据业务报文的内层标签对报文进行处理,根据外层标签对报文进行转发,实现在网络中接收多种业务报文时,可以从同一个传输路径的不同节点上接收业务报文,节约了标签资源,适合在环型网络中应用。
[0147] 实施例5
[0148] 本发明实施例提供了一种环网络中报文处理的方法,并在此基础上,进一步提出了在环网络报文处理的过程中进行业务保护的方法。
[0149] 本发明实施例提供的报文处理的方法与实施例4相同,具体应用于环网络中,比如应用于MPLS环网络,在该MPLS环网络中,外层标签可以为LSP标签,内层标签可以为PW标签。
[0150] 在报文处理前,需要进行如下准备步骤:
[0151] 在该MPLS环网络中,配置两个相反方向的闭环LSP,两个闭环均包含环网络中的所有节点,配置的两个闭环LSP可以是方向相反的两个环LSP或者是两个双向环LSP。
[0152] 具体的,以A、B、C、D、E、F六个节点组成的环网为例,在环网中,配置包含全部六个节点且方向相反的两个闭环LSP:B节点到A节点的逆时针方向的LSP为LSP_CC,A节点到B节点顺时针方向的LSP为LSP_CW。
[0153] 对于每个在环网中传输的业务,根据预设的业务报文和LSP标签、PW标签的映射关系,确定业务报文的LSP标签和PW标签,并根据该PW标签对环网中的节点的处理表项进行预先配置,其中,每个业务报文的PW标签全网唯一,业务报文的下环节点必须进行配置,上环节点和其他中间节点需要根据具体的应用场景进行配置。
[0154] 例如一个上环节点为F、下环节点为C的业务报文,在业务报文和LSP标签、PW标签的映射关系中,其PW标签为10,LSP标签为LSP_CC上的标签,映射到LSP_CC上进行转发,则在节点C上配置PW标签为10所对应的节点操作为Drop;如果节点E需要在转发报文时复制一份报文,则可以在节点E中将PW标签为10所对应的节点操作配置为Drop and Continue。
[0155] 在上述准备工作完成后,就可以在环网络中进行报文的转发,但此时缺少业务保护机制,不能保证业务报文处理的正确性。
[0156] 进一步的,为保证报文在环网络中转发的安全性,在报文处理前,还可以进行网络业务的保护,参见图9,在该MPLS环网上进行业务保护的方法为:
[0157] 901:环网络中的相邻节点之间进行链路检测。
[0158] 902:当有节点检测到链路故障时,则将该节点设置为Wrapping状态,将发生故障的链路所对应的端口设置为故障端口,并发送APS报文。
[0159] 进一步的,在APS报文的协议处理单元中,APS报文包括:
[0160] 故障端口信息,其中故障端口为检测到故障的环端口,可以为正向端口或反向端口,通常规定接收报文的入端口为正向端口,转发报文的出端口为反向端口。
[0161] 发送节点标识(Destination identification identity),其中发送节点即检测到链路故障并发送APS报文的节点。
[0162] 目的节点标识(Source identification identity),其中目的节点为发生故障的链路或节点的相邻相关节点。
[0163] 保护倒换请求信息:包括触发APS的倒换类型,如信号失效SF(Signal Fail)或无请求NR(No Request)。在本实施例中,节点检测到链路故障时,则发送的APS报文中的保护倒换请求信息的倒换类型为信号失效。
[0164] 具体的,当环网中的节点检测到链路故障时,进入Wrapping状态,并分别在两个环LSP上发送APS报文,即在分别在APS报文中封装LSP_CC和LSP_CW方向上的LSP标签后在相应的环LSP上传输,其中APS报文的PW标签为预设的特殊值,该特殊的PW标签用于APS报文与业务报文进行区分。
[0165] 903:环网中的节点接收并根据特殊的PW标签识别出该APS报文后,则发送给该节点的APS模块进行处理,进行业务保护的相应操作。具体方法为;
[0166] 1)如果当前节点已经处于Wrapping状态,则忽略该APS报文。
[0167] 2)如果当前节点处于正常状态,且通过目的节点标识判断出当前节点不是该APS报文的目的节点,则根据将该APS报文中的LSP标签转发该APS报文。
[0168] 3)如果当前节点处于正常状态,且通过目的节点标识判断当前节点是该APS报文的目的节点,则进入Wrapping状态,并根据该APS报文中的故障端口信息将当前节点上对应的端口设置为故障端口。具体方法为:当APS报文中的故障端口信息为发送节点的正向端口时,则将当前节点反向端口设为故障端口;反之,当APS报文中的故障端口信息为发送节点的反向端口时,则将当前节点的正向端口设为故障端口。
[0169] 进入Wrapping状态的节点,将所有从非故障端口向故障端口发送的业务报文都进行LSP方向的切换,即将报文中的LSP标签切换为反向的LSP标签,并根据切换后的LSP标签对报文进行处理。
[0170] 在上述准备步骤和业务保护步骤执行之后,就可以在该环网络中转发报文,并且转发报文具有一定的安全性,具体步骤为:
[0171] 1)由上环节点在业务报文的外层封装LSP标签和PW标签,并根据LSP标签转发报文。例如报文的LSP标签属于LSP_CC上的标签,则按照逆时针方向转发报文。
[0172] 2)其他节点在接收到报文后,如果当前节点处于Wrapping状态,则按照业务保护的方法对报文进行处理;如果当前节点正常,则获取报文中的LSP标签和PW标签,并根据PW标签查询处理表项,当能查找到相应的节点操作时,则根据节点操作对报文进行处理;当未查找到匹配的节点操作时,则根据LSP标签对报文进行转发。
[0173] 下面结合具体的应用场景介绍该MPLS环网络中业务报文处理的方法和业务保护的方法。
[0174] 参见图4,在节点A、B、C、D、E、F组成的环网中,对于上环节点为F,下环节点为C的业务报文,在业务报文和LSP标签、PW标签的映射关系中,该报文的PW标签为10,LSP标签为LSP_CC上的标签,在LSP_CC方向上进行转发;对于上环节点为C,下环节点为F的业务报文,在业务报文和LSP标签、PW标签的映射关系中,该报文的PW标签为12,LSP标签为LSP_CW上的标签,在LSP_CW方向上进行转发。
[0175] 第一种应用场景:链路和节点都正常,以节点F向节点C传输业务为例进行说明,则在节点C的处理表项中,预先配置PW标签为10的业务报文的节点操作为Drop。
[0176] 在该场景中报文处理的过程如下:
[0177] 1001:在该业务报文到达节点F后,节点F根据预设的报文和LSP标签、PW标签的映射关系,在报文中封装LSP标签和PW标签,其中LSP标签为LSP_CC上的标签,PW标签为10。封装后在LSP_CC方向上将该报文转发到节点E。
[0178] 1002:节点E在收到报文后,获取报文中的LSP标签和PW标签,根据PW标签查找相应的节点操作。由于在节点E的配置表项中没有预先配置该LSP标签和PW标签所对应的操作,则节点E根据LSP标签确定报文的转发方向为LSP_CC,在LSP_CC方向上将该报文转发到节点D,节点D按照相同的方法将报文转发到节点C。
[0179] 1003:节点C在收到报文后,获取报文中的LSP标签和PW标签,根据PW标签查找相应的节点操作,查找到为Drop,则将报文解封装并接收。
[0180] 第二种应用场景:链路发生双向故障,以节点F向节点C传输业务为例进行说明,则在节点C的处理表项中,预先配置PW标签为10的业务报文的节点操作为Drop。
[0181] 在该场景中业务保护的过程如下:
[0182] 参见图5,在节点A、B、C、D、E、F组成的环网中的各个节点都正常,但节点E和节点D之间的链路发生了故障,节点D和节点E检测到链路故障后进入Wrapping状态,将故障链路对应的端口设置为故障端口,并在两个LSP方向上同时发送APS报文,且APS报文中的保护倒换请求为信号失效。补充说明的是,节点D和节点E接收到APS报文后,获取报文中的LSP标签和PW标签,由节点E的APS模块处理,APS模块判断本节点目前状态为Wrapping状态,则忽略所接收到的APS报文。
[0183] 在该场景中报文处理的过程如下:
[0184] 1101:在该业务报文到达F节点后,节点F根据预设的报文和LSP标签、PW标签的映射关系,在报文中封装LSP标签和PW标签,其中LSP标签为LSP_CC上的标签,PW标签为10。封装后在LSP_CC方向上将该报文转发到节点E。
[0185] 1102:由于节点E处于Wrapping状态,并且业务报文的在节点E的入端口为非故障端口,但出端口为故障端口,业务报文从非故障端口向故障端口进行传输,因此节点E将该报文从LSP_CC上切换到LSP_CW上进行传输,即将报文的LSP标签切换为LSP_CW方向上的标签,并根据PW标签查找相应的节点操作,由于在节点E的配置表项中没有预先配置PW标签所对应的操作,则节点E根据LSP标签确定报文转发方向为LSP_CW,则根据切换后的LSP标签在LSP_CW上将报文转发到F。
[0186] 1103:节点F在收到报文后,获取报文中的LSP标签为LSP_CW方向上的LSP标签,PW标签为10,并根据PW标签查找相应的操作,由于没有预先配置相应的节点操作,则根据LSP标签在LSP_CW方向将该报文转发到节点A,节点A按照相同的方法将报文转发到节点B,节点B将报文转发到节点C。
[0187] 1104:节点C在收到报文后,获取报文中的LSP标签为LSP_CW方向上的标签,PW标签为10,根据该PW标签,查找对应的节点操作为Drop,则接收该报文,流程结束。
[0188] 第三种应用场景:链路发生单向故障,参见图6,在节点A、B、C、D、E、F组成的环网中的各个节点都正常,但节点E到节点D方向上的链路发生了故障,节点D到节点E方向上的链路依然正常,因此只有节点D检测到链路故障。
[0189] 在该场景中业务保护的过程如下:
[0190] 节点D检测到节点E到节点D方向上的链路发生了故障,进入Wrapping状态,将故障链路所对应的端口设置为故障端口,即将节点D的正向端口设置为故障端口,并在两个LSP方向上发送APS报文,其中故障端口信息为正向端口,发送节点标识为节点D的标识,目的节点标识为节点E的标识,保护倒换请求信息中的倒换类型为信号失效。节点E在接收到APS报文后,获取报文中的LSP标签和PW标签,由节点E的APS模块处理,APS模块判断本节点目前状态为正常,根据目的节点标识识别出本节点为目的节点,则将本节点设置为Wrapping状态,并且APS报文中的故障端口信息为节点D的正向端口,则将本节点的反向端口设置为故障端口,即将面向节点D的出端口设置为故障端口。
[0191] 在该场景中,报文处理的过程为:
[0192] 当节点F向节点C传输业务时,则在节点C的处理表项中,预先配置PW标签为10的业务报文的节点操作为Drop,此时对报文的转发过程与第二种应用场景相同,不再赘述。
[0193] 当节点C向节点F传输业务时,则在节点F的处理表项中,预先配置PW标签为12的业务报文的节点操作为Drop,此时节点D处于Wrapping状态,但节点D到节点E方向上的链路依然正常,由于是在非故障端口之间传输报文,因此可以进行正常的业务传输,此处不再赘述。
[0194] 本发明实施例根据业务报文的LSP标签和PW标签对报文进行处理,实现在网络中接收多种业务报文时,可以从同一个LSP的不同节点上接收业务报文,节约了标签资源,适合在环型网络应用。
[0195] 实施例6
[0196] 本发明实施例提供了一种报文处理的装置,参见图10,该装置包括:
[0197] 接收模块1001,用于接收网络中传输的业务报文;
[0198] 获取模块1002,用于获取该报文中的外层标签和内层标签;
[0199] 查找模块1003,用于根据该内层标签查找匹配的节点操作,或根据该内层标签和外层标签查找匹配的节点操作;
[0200] 处理模块1004,用于根据该查找模块1003的查找结果,对该报文进行处理,如果查找到匹配的节点操作,则根据该节点操作对该报文进行处理;如果未查找到匹配的节点操作,则根据该外层标签对该报文进行转发。
[0201] 进一步的,该处理模块1004,具体用于当该查找模块1003查找到匹配的节点操作为接收报文时,则根据该节点操作接收该报文。当该查找模块1003查找到匹配的节点操作为丢弃报文时,则根据该节点操作丢弃该报文。
[0202] 再一步的,在MPLS网络中,该外层标签为LSP标签,该内层标签为伪线PW标签。本发明实施例在环网络中应用时,在环网络中预先配置了两个环LSP,两个环LSP可以是方向相反的两个环LSP或者是两个双向环LSP。在该环网络中,
[0203] 该装置还包括:
[0204] 配置模块,用于当该装置为接收到该报文的边缘节点时,则在该装置中,预先配置该报文的外层标签和内层标签所对应的节点操作为丢弃报文;
[0205] 相应的,该处理模块1004,用于在该查找模块1003根据该内层标签和外层标签查找到匹配的节点操作为丢弃报文时,则丢弃该报文。
[0206] 具体的,为了提供业务保护的功能,该装置还可以包括:
[0207] 检测模块,用于检测与相邻节点之间的链路是否发生了故障;
[0208] 故障处理模块,用于当该检测模块检测到与该相邻节点之间的链路发生故障时,将从一个环LSP上接收到的业务报文切换到另一个环LSP上进行处理;
[0209] APS模块,用于当该检测模块检测到与该相邻节点之间的链路发生故障时,在该网络中向该相邻节点发送自动保护倒换APS报文,该APS报文用于该相邻节点接收到该APS报文后,将从一个环LSP上接收到的业务报文切换到另一个环LSP上进行处理。
[0210] 其中,该APS报文中封装有PW标签,该PW标签的值为预设值,该PW标签用于当前节点对APS报文进行识别。
[0211] 本发明实施例根据业务报文的内层标签对报文进行处理,根据外层标签对报文进行转发,实现在网络中接收多种业务报文时,可以从同一个传输路径上的不同节点上接收业务报文,节约了标签资源,适合在环型网络应用。
[0212] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述程序可以存储于一计算机可读取存储介质中,所述存储介质为计算机的软盘、硬盘或光盘等。
[0213] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。