实现快速重路由的方法和节点的制作方法

文档序号:7664535阅读:161来源:国知局
专利名称:实现快速重路由的方法和节点的制作方法
技术领域
本发明涉及多协i义标签交换流量工程(MPLS TE, Muti-Protocol Label Switching Traffic Engineering )技术领域,尤指实现快速重路由(FRR, Fast Reroute )的方法和节点。
背景技术
快速重路由FRR是MPLS TE中用于保护链路和节点的机制。其基本原 理是用一条预先建立的标签交换路径(LSP, Label Switching Path)来保护 一条或多条LSP,其中预先建立的LSP称为旁路LSP (Bypass LSP ),被保 护的LSP称为主LSP。通过FRR机制,当主LSP上被保护的链路或节点失 效时,主LSP上的数据流量将快速切换到Bypass LSP上,以保证业务数据 的平滑过渡,进而保证业务数据不中断。图1是现有技术中的一种网络路径组网示意图。在图1中,节点Rl、 R2、 R3、 R4、 R5和R6組成了两条MPLS TE隧道,分别为LSP1: [Rl - >R2 - >R3 - >R4 - >R5];LSP2: [R2 - >R6 - >R4];其中:LSP1是主LSP, LSP2是旁路LSP,即Bypass LSP ; R2是Bypass LSP的头节点,称为本地修复节点(PLR, Point of Local Repair ), R4是Bypass LSP的尾节点,称为汇聚节点(MP, Merge Point);并且用Lij表示节点Ri 和节点Rj之间的链路,例如,L12表示Rl和R2之间的链路。参见图1,若链路L23或节点R3失效,则在未启用FRR时LSP1上的 流量转发过程如下1)流量沿主隧道LSP1转发; 2) 本地修复节点R2检测到链路L23或节点R3失效;3) R2向LSP1的头节点发送"ResvTear"消息,以汇报LSP1中的链路 出现故障;4) Rl接收到"ResvTear"消息后,拆除LSPl, LSP1的状态为失效 (Down),流量中断;5) Rl进行隧道更新,得到新J各径LSP3: [Rl - >R2 - 〉R6 - >R4 - >R5], 并建立LSP3,在LSP3上转发流量。同样参见图1,若链路L23或节点R3失效,则在启用FRR时LSP1上 的流量转发过程如下1) 流量沿主隧道LSP1转发;2) 本地修复节点R2检测到链路L23或节点R3失效,立即将流量切换 到Bypass随道LSP2上;3) R2向Rl发送"PathErr,'消息,并在发送之前将"PathErr"消息中 的"ErrCode"参lt没置为"Tunnel locally repaired",以通知Rl失效的链路 或节点已在本地进行修复。4) Rl接收到携带"Tunnel locally repaired"的"PathErr"消息后,获知 LSPl上的被保护节点或链路失效,但已经得到保护,随即Rl保持LSPl的 状态为有效(UP),并进行隧道更新,重新计算路径得到LSP3,并在隧道 更新成功后将流量51入LSP3 。上述两流程中的"ResvTear"消息和"PathErr"消息均为资源预留协议 (RSVP, Resource Reservation Protocol)中定义的消息。比较上述两个流程可见,在未启动FRR的流程中,R2检测到链路L23 或节点R3失效时向Rl发送"ResvTear"消息,由Rl拆除LSPl后再进行 隧道更新,从而使得流量中断;而启动现有的FRR机制后,R2检测到链路 L23或节点R3失效时,立即将流量切换到Bypass LSP上,然后再通知Rl 进行隧道更新,因此该方法可以在净皮保护的链路或节点失效时,保i正流量不 中断。 但是现有的FRR只能为本地链路和本地节点提供保护,这里本地节点 指本地修复节点PLR的相邻下游节点,本地链路指本地修复节点PLR和其 相邻下游节点之间的链路。仍以图1为例,本地修复节点R2通过某种机制, 如链路状态感知、Hello报文交互或BFD等检测到本地链路R23或本地节点 R3失效后启动FRR保护,使得流量不中断;但是若R3和R4之间的链路 L34失效时,现有的FRR机制则不能提供保护。因此,现有的FRR机制由于其只保护本地链路和本地节点的局限性, 不能达到保护主LSP上的本地修复节点和汇聚节点之间的所有节点和链路 的同时流量不中断的目的。发明内容有鉴于此,本发明提供了一种实现快速重路由的方法,该方法使得主 LSP上的处于本地修复节点和汇聚节点之间的所有节点和链路都能得到保 护的同时数据流量不中断。本发明还提供了两种节点这些节点使得主LSP上的处于本地修复节点 和汇聚节点之间的所有节点和链路都能得到保护的同时数据流量不中断。为达到上述目的,本发明的技术方案具体是这样实现的本发明公开了 一种实现快速重路由的方法,该方法包括本地修复节点获取主LSP上的处于本地修复节点和汇聚节点之间的节 点和/或链路失效的信息,所述节点不包括与本地修复节点相邻的节点,所 述链路不包括与本地修复节点相邻的链路;本地修复节点在获取到所述信息后启动快速重路由将主LSP上的数据 流量切换到旁路LSP上。本发明公开了 一种节点,该节点是本地修复节点,该本地修复节点包括 获取模块和切换模块,其中,获取模块,用于获取主LSP上的处于本地修复节点和汇聚节点之间的 节点和/或链路失效的信息,并在获取到所述信息后,向切换模块发送切换
触发消息,其中,所述节点不包括与本地修复节点相邻的节点,所述链路不包括与本地修复节点相邻的链路;切换模块,用于在接收到切换触发消息后,将主LSP上的数据流量切 换到旁路LSP上。本发明公开了一种节点,该节点处于主LSP上的本地修复节点和汇聚 节点之间,该节点包括检测模块和上报模块,其中,检测模块,用于检测主LSP上的与自身所在节点相邻的下游节点和下 游链路的状态,并在检测所述下游节点和/或下游链路失效时,向上报模块 发送上报触发消息;上报模块,用于在接收到上报触发消息后,向本地修复节点发送失效状 态消息。由上述技术方案可见,本发明这种本地修复节点获取主LSP上的处于 本地修复节点和汇聚节点之间的节点和/或链路失效的信息,所述节点不包 括与本地修复节点相邻的节点,所述链路不包括与本地修复节点相邻的链 路;本地修复节点在获取到所述信息后启动快速重路由将主LSP上的数据 流量切换到旁路LSP上的技术方案使得主LSP上的处于本地修复节点和汇 聚节点之间的所有节点和链路都能得到保护的同时数据流量不中断。


图1是现有技术中的一种网络路径组网示意图; 图2是本发明一种实现快速重路由的方法的流程图; 图3是在图l所示的场景下应用本发明实现快速重路由的方法的实施例 流程图;图4是本发明实施例中的第二场景示意图;图5是在图4所示的场景下应用本发明实现快速重路由的方法的实施例 流程图;图6是本发明一种本地修复节点的结构框图; 图7是本发明一种节点的结构框图。
具体实施方式
图2是本发明一种实现快速重路由的方法的流程图。图2所示,包括以下 步骤步骤201,本地修复节点获取主LSP上的处于本地修复节点和汇聚节点 之间的节点和/或链路失效的信息,所述节点不包括与本地修复节点相邻的节点,所述链路不包括与本地修复节点相邻的链路。本步骤中,与本地修复节点相邻的节点即为本地节点,与本地修复节点 相邻的链路即为本地链路。在本步骤中,本地修复节点获取主LSP上的处于本地修复节点和汇聚 节点之间的节点和/或链路失效的信息,可以是本地修复节点通过周期性地 向汇聚节点发送探测消息来实现,也可以是主LSP上的处于本地修复节点 和汇聚节点之间的每个节点,检测主LSP上的与其自身相邻的下游节点和 下游链路的状态,并在检测到相关节点或链路失效时,向本地修复节点上报。步骤202,本地修复节点在获取到所述信息后启动快速重路由将主LSP 上的数据流量切换到旁路LSP上。为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举 较佳实施例,对本发明进一步详细说明。首先,以图l所示的场景作为本发明实施例中的第一场景进行说明,在 该场景中,主LSP上有一个节点位于本地修复节点和汇聚节点之间。在图l 中,对节点R3进行设置,使其监控链路L34的状态,当L34失效时向本地修 复节点R2上报失效状态信息;对本地修复节点R2进行设置,使其在接收到 下游节点上报的失效状态信息后启动FRR。在图1中,由于R3是主LSP上的 被Bypass LSP覆盖的最下游节点,因此R3只需要监控其下游链路L34即可。图3是在图1所示的场景下应用本发明实现快速重路由的方法的实施例 流程图。如图3所示,包括以下步骤
步骤301,数据流量经由主LSP,即LSP1进行传输。 步骤302, R3检测到其下游链路L34失效。 步骤303, R3向R2发送失效状态消息。本步骤中,R3向R2发送的失效状态消息具体可以为资源预留协议RSVP 中定义的"PathErr"消息,并且R3将该"PathErr,,消息中的"ErrCode,,参 数设置为"Tunnel need repaire",以表明主LSP上处于本地修复节点和汇聚 节点之间的链路和/或节点失效,请求本地修复节点启动FRR,将主LSP上的 数据流量切换到Bypass LSP上。步骤304,本地修复节点R2接收到失效状态消息后,获知下游的被保护 节点或链路出现故障,立即将主LSP上的数据流量切换至Bypass LSP。步骤305, R2向R1发送"PathErr"消息,并在发送之前将"PathErr"消 息中的"ErrCode"参数设置为"Tunnel locally repaired",以通知R1失效的 链路或节点已在本地进行修复。步骤306, Rl接收到携带"Tunnel locally repaired"的"PathErr"消息后, 获知LSP1上的被保护节点或链路失效,但已经得到保护,随即Rl进行隧道 更新,重新计算路径得到LSP3: [Rl - >R2 - >R6 - >R4 - >R5〗,并在隧道更 新成功后将流量? 1入LSP3 。通过图3所示的流程,可以使得链路L34也能够得到FRR机制的保护。图4是本发明实施例中的第二场景示意图,在该场景中,主LSP上有 两个节点位于本地修复节点和汇聚节点之间。在图4中,节点R1、 R2、 R3、R4、 R5、 R6和R7组成了两条MPLSTE隧道,分别为 LSP1: [Rl - >R2 - >R3 - >R4 - >R5]; LSP2: [R2 - >R6 - >R7 - >R5];其中LSP1是主LSP, LSP2是Bypass LSP ; R2是本地修复节点,R4 是汇聚节点。在图4中,对R3和R4进行设置,使R3监控链路L34和R4的状态, 使R4监控L45的状态;对本地修复节点R2进行设置,使其在接收到下游 节点上报的失效状态信息后启动FRR。在下面的图5中以链路L45失效为 例对本发明的技术方案进行说明。图5是在图4所示的场景下应用本发明实现快速重路由的方法的实施例 流程图。如图5所示,包括以下步骤步骤501,数据流量经由主LSP,即LSP1进行传專命。步骤502, R4检测到其下游链路L45失效。步骤503, R4向R3发送失效状态消息。本步骤中,R4向R3发送的失效状态消息具体可以为"PathErr"消息, 并且R4将"PathErr,,消息中的"ErrCode"参数i殳置为"Tunnel need repaire", 以表明主LSP上处于本地修复节点和汇聚节点之间的链路和/或节点失效,请 求本地修复节点启动FRR,将主LSP上的数据流量切换到Bypass LSP上。步骤504 , R3向R2转发所接收的失效状态消息。步骤505,本地修复节点R2接收到失效状态消息后,获知下游的被保护 节点或链路出现故障,立即将主LSP上的数据流量切换至BypassLSP。步骤506' R2向R1发送"PathErr"消息,并在发送之前将"PathErr,,消 息中的"ErrCode"参数设置为"Tunnel locally repaired",以通知R1失效的 链路或节点已在本地进行修复。步骤507, Rl接收到携带"Tunnel locally repaired"的"PathErr"消息后, 获知LSP1上的被保护节点或链路失效,但已经得到保护,随即Rl进行隧道 更新,重新计算路径得到LSP3: [Rl - >R2 - >R6 - >R7 - >R5],并在隧道更 新成功后将流量$ 1入LSP3 。通过图5所示的流程,可以使得图4中的链路L45也能够得到FRR机 制的保护。同理在图5中,R3可以对其相邻的下游节点R4和下游链路L34 进行;险测,当L34或R4失效,R3向R2发送FRR保护请求消息,以请求 启动FRR保护。另外R2对R3和链路L23进行检测,当L23或R3失效时, 启动FRR保护。在图3和图5所示的上述流程中。本地修复节点R2检测主LSP上处于本地
修复节点和汇聚节点之间的所有被保护节点和链路是否有效,是通过主LSP 上处于本地修复节点和汇聚节点之间的被保护节点对自身相邻下游节点和 下游链路进行检测,并在检测到相邻下游节点或链路失效时向本地修复节点R2上报来实现的。此外,本地修复节点R2也可以主动获取主LSP上处于本地 修复节点和汇聚节点之间的被保护节点和链路的状态信息,例如,本地修复 节点可以周期性地在主LSP上发送探测消息,汇聚节点接收到该探测消息后 向本地修复节点返回响应消息。如果本地修复节点发送一个探测消息后,在 预定时间内没有收到响应消息,则可以推断主LSP上的被保护节点或链路失 效,从而启动FRR保护,将数据流量切换到Bypass LSP上。基于上述实施例,接下来给出本发明中一种本地修复节点和一种处于主 LSP上的被旁路LSP覆盖的范围内的节点的结构框图。图6是本发明一种本地修复节点的结构框图。如图6所示,该本地修复 节点包括获取模块601和切换模块602。在图6中,获取模块601,用于获取主LSP上的处于本地修复节点和汇 聚节点之间的节点和/或链路失效的信息,并在获取到所述信息后,向切换 模块602发送切换触发消息,其中,所述节点不包括与本地修复节点相邻的 节点,所述链路不包括与本地修复节点相邻的链路。切换模块602,用于在接收到切换触发消息后,将主LSP上的数据流量 切换到旁路LSP上。在图6中,获取模块601,用于根据自身所在本地修复节点的下游节点 上报的失效状态消息获知主LSP上处于本地修复节点和汇聚节点之间的节 点和/或链路失效。或者,在图6中,获取模块601,用于通过主LSP向汇聚节点发送探测 消息,并在预定时间内没有接收到汇聚节点返回的响应消息时获知主LSP 上的处于本地修复节点和汇聚节点之间的节点和/或链路失效。图7是本发明一种节点的结构框图。图7所示的节点处于主LSP上的 被旁路LSP覆盖的范围内,该节点包括检测模块701和上报模块702。
在图7中,检测模块701,用于检测主LSP上的与自身所在节点相邻的 下游节点和下游链路的状态,并在检测所述下游节点和/或下游链路失效时,向上报模块702发送上报触发消息。上报模块702,用于在接收到上报触发消息后,向本地修复节点发送失 效状态消息。在图7中,上报模块702,还用于接收主LSP上的与自身所在节点相邻的下游节点发送的失效状态消息,并向本地修复节点发送所述失效状态〉'肖 自另外,本发明实施例中的上述方案也能够应用于一条Bypass LSP保护 多条主LSP的场景,此时,只要在每条被保护的主LSP和Bypass LSP上应 用上述实施例中的方案即可,这里不再复述。综上所述,本发明这种本地修复节点获取主LSP上的处于本地修复节 点和汇聚节点之间的节点和/或链路失效的信息,所述节点不包括与本地修 复节点相邻的节点,所迷链路不包括与本地修复节点相邻的链路;本地修复 节点在获取到所述信息后启动快速重路由将主LSP上的数据流量切换到旁 路LSP上的技术方案,克服了现有FRR应用的限制条件,使得主LSP上的 处于本地修复节点和汇聚节点之间的所有节点和链路都能得到FRR机制保 护,并且无需增加额外的链5^的和隧道。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护 范围,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等, 均应包含在本发明的保护范围之内。
权利要求
1、一种实现快速重路由的方法,其特征在于,该方法包括本地修复节点获取主LSP上的处于本地修复节点和汇聚节点之间的节点和/或链路失效的信息,所述节点不包括与本地修复节点相邻的节点,所述链路不包括与本地修复节点相邻的链路;本地修复节点在获取到所述信息后启动快速重路由将主LSP上的数据流量切换到旁路LSP上。
2、 如权利要求l所述的方法,其特征在于,所述本地修复节点获取主 LSP上的处于本地修复节点和汇聚节点之间的节点和/或链路失效的信息包 括主LSP上的处于本地修复节点和汇聚节点之间的节点,检测主LSP上 的与其自身相邻的下游节点和下游链路的状态,其中,主LSP上的处于本地修复节点和汇聚节点之间的节点中的最下游节点只检测与其自身相邻的 下游链路的状态;所述各个节点中的每个节点,在检测到与其自身相邻的下游节点和/或 下游链路失效时,向本地修复节点上报失效状态消息;本地修复节点根据接收到的失效状态消息获知主LSP上处于本地修复 节点和汇聚节点之间的节点和/或链路失效。
3、 如权利要求2所述的方法,其特征在于,所述失效状态消息是资源 预留协议中的"Pa緣r,,消息,且该"Pa腿rr"消息中的"ErrCode"参数 被设置为表示主隧道需要修复的"Tunnel need repair"。
4、 如权利要求l所述的方法,其特征在于,本地修复节点获取主LSP 上的处于本地修复节点和汇聚节点之间的节点和/或链路失效的信息包括本地修复节点通过主LSP向汇聚节点发送探测消息;汇聚节点接收到探测消息后向本地修复节点返回响应消息;当本地修复节点在预定时间内没有接收到所述响应消息时,本地修复节点获知主LSP上的处于本地修复节点和汇聚节点之间的节点和/或链路失效。
5、 一种节点,该节点是本地修复节点,其特征在于,该本地修复节点 包括获取模块和切换模块,其中,获取模块,用于获取主LSP上的处于本地修复节点和汇聚节点之间的 节点和/或链路失效的信息,并在获取到所述信息后,向切换模块发送切换 触发消息,其中,所述节点不包括与本地修复节点相邻的节点,所述链路不 包括与本地修复节点相邻的链路;切换模块,用于在接收到切换触发消息后,将主LSP上的数据流量切 换到旁路LSP上。
6、 如权利要求5所述的本地修复节点,其特征在于,所述获取模块, 用于根据自身所在本地修复节点的下游节点上报的失效状态消息获知主 LSP上处于本地修复节点和汇聚节点之间的节点和/或链路失效。
7、 如权利要求5所述的本地修复节点,其特征在于,所述获取模块, 用于通过主LSP向汇聚节点发送探测消息,并在预定时间内没有接收到汇 聚节点返回的响应消息时获知主LSP上的处于本地修复节点和汇聚节点之 间的节点和/或链路失效。
8、 一种节点,该节点处于主LSP上的本地修复节点和汇聚节点之间, 其特征在于,该节点包括检测模块和上报模块,其中,检测模块,用于检测主LSP上的与自身所在节点相邻的下游节点和下 游链路的状态,并在检测所述下游节点和/或下游链路失效时,向上报模块 发送上报触发消息;上报模块,用于在接收到上报触发消息后,向本地修复节点发送失效状 态消息。
9、 如权利要求8所述的节点,其特征在于,所述上报模块,进一步用 于接收主LSP上的与自身所在节点相邻的下游节点发送的失效状态消息, 并向本地修复节点发送所述失效状态消息。
全文摘要
本发明公开了一种实现快速重路由的方法,包括本地修复节点获取主LSP上的处于本地修复节点和汇聚节点之间的节点和/或链路失效的信息,所述节点不包括与本地修复节点相邻的节点,所述链路不包括与本地修复节点相邻的链路;本地修复节点在获取到所述信息后启动快速重路由将主LSP上的数据流量切换到旁路LSP上。本发明还公开了两种节点。本发明的技术方案使得主LSP上的处于本地修复节点和汇聚节点之间的所有节点和链路都能得到保护的同时数据流量不中断。
文档编号H04L12/56GK101159681SQ20071017534
公开日2008年4月9日 申请日期2007年9月28日 优先权日2007年9月28日
发明者卢国强, 吕承鑫, 磊 王 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1