一种基于MPLS-TP的多播保护方法
技术领域
本发明涉及数据通信领域,更具体地涉及一种基于MPLS-TP的多播保护方法。
背景技术
MPLS(Multi-protocol Label Switching,简称多协议标签交换)是当今分组交换网的最重要的一项技术,目前已经由点到点发展到点到多点,如此复杂的技术如果用于电信级网络,需要在MPLS中补充强大的OAM功能,MPLS-TP(MPLS Transport Profile,即:MPLS传输框架)正是在这种背景下提出的,它是ITU-T和IETF组成的联合工作组(JWT)开发的协议族,涉及OAM、生存性、网管和控制面等多项技术,目的在于提高传送网的功能和互操作特性。IETF主要由MPLS、CCAMP、PWE3和L2VPN这些工作组共同来完成,ITU-T也制定了一些标准,如:G.8110.1、G.8121、G.8131、G.8132、G.8113和G.8114等。
目前,在MPLS-TP的标准制定过程中,在可靠性和生存性等方面已经被提到重要议程,其中对于MPLS-TP的线性保护,参会专家没有太大的异议,基本达成一致。但是,对于环网保护方案,现有提出保护方案有很多种,比较有代表性的有:FRR的bypass保护方法、FRR的Detour保护方法以及基于G.8132保护方法。其中,FRR的bypass保护方法、FRR的Detour保护方法不采用APS消息,它们需要在每条保护路径的两端配置管理实体(MEP)(即:要配置大量的管理实体),成对的MEP之间要发送CCM报文以判断保护路径是否完好,这些CCM报文浪费了大量的网络资源。因此,目前大家比较关注的是基于APS消息的G.8132的方案。
基于ITU-T G.8132的方案在IETF已经有类似的工作组草案(即:draft-weingarten-mpls-tp-ring-protection),该草案有两种方案,即:Wrapping保护方式和Steering保护方案。其中Wrapping保护方案是一种快速保护方案,Steering方案是一种慢速保护方案,主要用来优化保护路径。对于Wrapping保护方式,组播和单播保护方案没有什么区别,但是对于Steering保护方案,单播的方式与组播方式区别很大。
本专利主要涉及基于组播的Steering保护方案,因此,下面我们首先介绍草案中的基于组播的保护方法。
如图1a所示,在使用Steering保护方式的情况下,当环网无故障时,LISP1为由A到C、D和F的标签交换路径,它的工作路径和工作标签描述为:
保护路径和保护标签为:
特别说明的是:1)标签交换的使用:以节点B为例,当节点B从节点A收到带有“标签W1”的分组时,该节点查表,查询出“标签W1”对应的条目中的出标签为“标签W2”,该节点将收到的分组头中的“标签W1”替换为“标签W2”,同时将该分组从查询到的条目中对应的出端口转发出去;2)将保护路径和工作路径的部分标签关联或绑定目的是环回机制打下基础。
如图1b所示,当<D,C>链路发生故障时,节点D和节点C分别沿环上两个端口向对方发送APS(自动保护)消息。节点A、C、D和F收到这些消息后,依据掌握的拓扑信息判断LSP 1是否受到影响。节点A将流量复制到工作路径和保护路径上,节点C检测到LSP1的正常流量没有受到影响,继续在工作路径上接收数据,不进行倒换。节点F和D通过分析,发现LSP 1的正常流量受到影响,切换到保护路径。
因此,链路发生故障后,数据流和工作标签的使用为:
数据流和保护路径标签的使用为:
上述方案是基于APS消息的Steering保护方案,存在需要知道拓扑信息和支持场景较少的缺点。
发明内容
技术问题:
1)技术问题1
ITU-T G.8132和IETF的工作组草案“draft-weingarten-mpls-tp-ring-protection”中提到的Steering保护方法存在着需要复杂的拓扑协议支撑的问题。
如图1b所示,当<D,C>链路发生故障时,节点D和节点C分别沿环上两个端口向对方发送APS(自动保护)消息。节点A、C、D和F收到这些消息后,依据掌握的拓扑信息判断LSP 1是否受到影响,然后才能决定是否发生倒换。
该方案的一个主要问题是需要引入拓扑发现协议,引入拓扑更新协议将带来以下缺点。
1)首先拓扑发现协议收敛速度较慢,原因是拓扑协议报文需要在每个节点都上送控制面进行处理,不能够直接在数据面处理;
2)节点需要知道网络拓扑什么时候收敛;
3)增加拓扑发现协议将增加保护协议的复杂性。
2)技术问题2
ITU-T G.8132和IETF的工作组草案“draft-weingarten-mpls-tp-ring-protection”中提到Steering方式的组播保护方案。如图2a所示,该图中的LSP1的工作路径是仅仅采用一个方向(顺时针方向)进行配置,如下所示:
环网工作路径配置的总长度为:100+100+100+600+600=1500Km
在图2b中,组播的LSP1的工作路径不仅仅采用一个方向(顺时针方向)进行配置,而是采用一种优化的方式进行配置,即:
顺时针方向的数据流和工作标签的使用为:
逆时针方向的数据流和工作标签的使用为:
环网工作路径配置的总长度为:100+100+100+50=350Km
图2b中的工作路径配置比图2a中的工作路径配置减少了1150Km,显然图2b中的工作路径配置远远优于图2a中的工作路径配置。但是传统的基于组播的Steering保护方案不适用于图2b中的这种工作路径配置方式,需要设计一种新型的Steering保护方案。
通过对问题1和问题2的分析,传统的Steering保护方案存在需要拓扑发现协议支持和不支持工作路径优化配置下的保护的问题。因此,设计一种全新的组播Steering保护方法是一件非常有意义的工作。
技术方案:
鉴于上面的问题,本发明提出一种基于MPLS-TP的快速保护方法。
本发明一种基于MPLS-TP的多播保护方法,包括关联保护路径的配置和组播LSP的远端节点的转发条目的配置:
1)关联保护路径的配置
对于组播LSP,若所述LSP被源节点即该LSP的上环节点分割成两部分,则所述两部分分别为东面工作路径和西面工作路径;环网为所述东面工作路径和西面工作路径分别配置关联保护路径,所述东面工作路径对应的保护路径的起点是西面工作路径的远端节点,方向为西面工作路径的方向;所述西面工作路径对应的关联保护路径的起点是东面工作路径的远端节点,方向为东面工作路径的方向;
2)组播LSP的远端节点的转发条目的配置
对所述组播LSP的东面工作路径和西面工作路径的远端节点中的相应转发条目进行配置,即:在所述东面工作路径的远端节点中对应的转发条目中加入所述西面工作路径中该组播LSP的下环处的节点的<Node_ID,Port>信息;在所述西面工作路径的远端节点中对应的转发条目中加入所述东面工作路径中该组播LSP的下环处的节点的<Node_ID,Port>信息;其中,Node_ID为所述下环节点的节点号,Port为所述组播LSP的工作路径在下环节点处的入端口。
优选地,当环网发生故障时的保护方法如下:
当环网发生故障时,检测到链路故障的节点阻塞故障相邻的环上端口的报文转发功能,沿两个环上端口周期性地发送SF报文即故障通知消息;
当环上节点的收到故障通知消息后,如果该SF报文是最新的协议报文,所述节点沿两个环上端口连续发送3次探测协议报文即DT报文;DT报文包含Node_ID信息,其中,Node_ID为所述环上节点的节点号;
当环上节点收到DT报文后,读取DT报文中的Node_ID信息,并依据Node_ID查找相应的转发条目,节点分析所述的条目,读取下环节点信息中的所述DT报文中的Node_ID对应的<Node_ID,Port>信息,并且将所述的“Port”信息与接收所述DT报文的环上端口号进行比较:如果两者不一致即同为w端口或者同为e端口,那么所述节点将所述对应条目中的关联保护路径激活即开始启用关联标签和关联端口;如果两者一致,所述节点不激活所述对应条目中的关联保护路径,只有组播LSP的远端节点才在对应的条目中有下环节点信息。
优选地,所述远端节点为组播LSP中的东面和西面工作路径上离源节点即组播LSP上环的节点最远的环上节点。
有益效果:
本发明是一种基于组播的Steering保护方案,与传统的组播Steering保护方案相比,该方案不需要拓扑发现协议支持,同时也能够支持传统方案不能够支持的场景,这对提升基于MPLS-TP技术的环网性能是非常有意义的。
附图说明
图1a是传统Steering组播保护的工作路径和保护路径的配置;
图1b是环网发生故障的情况下组播数据流保护倒换的示意图;
图2a和2b是传统Steering组播保护出现问题的示意图;
图3a和3b是本发明方案的Steering保护的关联保护路径的示意图;
图4a是本发明中的组播的远端节点转发条目配置的示意图;
图5、图6和图7是本发明的具体实施流程;
图8a、图8b、图8c、图8d、图8e、图8f和图8g是本发明的实施例。
具体实施方式
为了进一步说明本发明的方案,本发明的步骤阐述如图3、图4和图5所示:
图5是组播LSP的关联保护路径的配置和远端节点的转发条目的配置
步骤501,环网为组播LSP的东面工作路径配置关联保护路径,起点是西面工作路径的远端节点,方向为西面工作路径的方向;
步骤502,环网为组播LSP的西面工作路径配置关联保护路径,起点是东面工作路径的远端节点,方向为东面工作路径的方向;
步骤503,所述组播LSP的远端节点为所述组播LSP配置相应的转发条目,即:在所述东面(西面)工作路径的远端节点中对应的转发条目中加入所述西面(东面)工作路径中该组播LSP的下环处的节点的<Node_ID,Port>信息;
图6是故障链路相邻节点的处理流程:
步骤601,环网的节点检测到相邻链路发生故障,所述节点阻塞与故障链路相邻的环上端口;
步骤602,所述节点沿两个环上端口周期性地发送故障通知报文(SF);
图7是非故障链路相邻节点的处理流程:
步骤701,所述非故障链路相邻节点接收到传送来的协议报文,分析协议报文的类型;
步骤702,判断该协议报文是否是SF报文,如果是SF报文,转入步骤703,否则转入步骤706;
步骤703,所述节点判断所述SF是否是为最新的SF报文。如果是,转入步骤704,否则转入步骤705;
步骤704,所述节点沿两个环上端口连续发送3次探测协议报文(DT报文);
步骤705,忽略该协议报文;
步骤706,所述节点判断该协议报文是否为DT协议报文,如果是,转入步骤707;
步骤707,所述节点读取DT报文中的Node_ID信息,并依据Node_ID查找相应的转发条目;
步骤708,所述节点分析所述的条目,读取下环节点信息中的所述DT报文中的Node_ID对应的<Node_ID,Port>信息,并且将所述的“Port”信息与接收所述DT报文的环上端口号进行比较。
步骤709,如果两者不一致(同为w端口或者同为e端口),转入步骤710;
步骤710,所述节点将所述对应条目中的关联保护路径激活(即:开始启用关联标签和关联端口);
实施例一、环网发生故障的情况:
如图8a所示,当环网无故障时,LISP1为由A到C、D和F的标签交换路径,它的工作路径和工作标签描述为:
组播LSP1的东面工作路径和工作标签的使用为:
组播LSP1的西面工作路径和工作标签的使用为:
如图8b所示,组播LSP1东面工作路径的关联保护路径和关联保护标签为:
如图8c所示,组播LSP1西面工作路径的关联保护路径和关联保护标签为:
如图8d所示,当<D,C>链路发生故障时,节点D和节点C分别阻塞故障链路相邻的端口的数据报文的转发功能,并且沿着环上两个端口周期性地发送SF(故障通知)消息。
当环上的各个节点收到SF报文后,所述各个节点沿环上端口连续3次发送探测协议报文(DT报文),DT报文中包含发送该报文的节点号。如图6e所示,节点C、D和F收到SF后,首先判断该SF是否是最新的SF报文,如果是,节点C、D和F分别沿环上端口连续3次发送DT报文(注:图中仅仅画出了组播LSP1的下环节点发送DT报文的情况),所述DT报文包含发送节点的节点号。
在图8f中,当LSP1上的西面工作路径环上的远端节点F收到DT报文后,读取DT报文中的Node_ID信息,并依据Node_ID查找相应的转发条目。例如:节点F从w端口收到节点D的发送来的DT报文后,读取DT报文中的节点号Node_D,用该节点号查找到对应的转发条目,并且在“下环节点信息”中找到<Node_D,w>信息,发现所述信息中的端口w与接收该DT报文的w端口不同,所述远端节点F不对相应的转发条目进行修改;远端节点F收到节点C发送来的DT报文后,读取DT报文中的节点号Node_C,用该节点号查找到对应的转发条目,并且在“下环节点信息”中找到<Node_C,w>信息,发现所述信息中的端口w与接收该DT报文的e端口的不相同,所述远端节点F将相应的转发条目中激活LSP1的东面工作路径的关联保护路径,即:激活相应的关联保护路径的出口标签P1和关联保护路径的出端口w。
在图8g中,当LSP1上的东面工作路径环上的远端节点D收到DT报文后,读取DT报文中的Node_ID信息,并依据Node_ID查找相应的转发条目。例如:节点D从e端口收到节点F发送来的DT报文后,读取DT报文中的节点号Node_F,用该节点号查找到对应的转发条目,并且在“下环节点信息”中找到<Node_F,e>信息,发现所述信息中的端口e与接收该DT报文的e端口相同,所述远端节点D不对相应的转发条目进行修改;
由上分析可知,本发明的基于MPLS-TP的组播的Steering保护方案不仅不需要拓扑发现协议的支持,而且能够很好地支持传统Steering方案不能够支持的场景,大大提高了采用MPLS-TP技术的环网的性能。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。