在利用标签交换的环形网中提供故障保护的方法和系统的制作方法

文档序号:7756596阅读:121来源:国知局
专利名称:在利用标签交换的环形网中提供故障保护的方法和系统的制作方法
技术领域
本申请涉及标签交换,并特别涉及一种在利用标签交换的环形网中提供故障保护的方法和系统。
背景技术
在分组交换网络中,从一个源址到一个目的地址的分组移动可以通过许多中间网络节点传送,例如交换器或路由器。接收目的地址作为报头的分组的中间网络节点利用查找表来为分组确定下一次跳跃(hop)。标签交换是一项早已开发用于当分组从源地址移动到目的地址时,在每个下一次跳跃加速查找处理的技术。简单的说,标签交换包括给分组附加一个标记,使分组下一次跳跃能被已经接收到分组的中间网络节点快速确定。互联网工程任务组(IETF)标准化的一种标签交换协议被称为多协议标签交换(MPLS)。
图1描绘了利用MPLS通过一个网状网络转发分组的多个网络节点102。网络节点被称为标签交换路由器(LSRs),并且一组中间LSR就定义了一个MPLS域104。在MPLS域边界并提供到非MPLS网络节点接口的LSR被称为边界LSR(相对于进入和离开MPLS域的分组也称为入口LSR和出口LSR) 。标记分组通过MPLS域移动的路径被称之为标签交换路径(LSP)。图1描绘了两个LSP的实例,工作的LSP1和保护的LSP1,他们在MPLS域中的各LSR之间延续。虽然仅描绘了两个LSP,但一个MPLS域可以包括许多唯一的LSP。
MPLS经常结合网络层(第3层)的网络协议(IP)和数据链路层(第2层)协议一起使用,这些数据链路层协议如以太网(IEEE802.3x),异步传输模式(ATM),或帧中继。根据MPLS协议,一个MPLS报头也称之为“填补报头”(shim header),被嵌在网络层报头(内部报头)和数据链路层报头(外部报头)之间,来引导一个标记的分组通过一个MPLS域。可以堆积许多填补报头来支持分层操作,为本领域所熟知。MPLS也能用于第2层的环境,其中填补报头位于两个第2层的报头之间。
图2描绘了一个被标记的分组的实例,该分组包含一外部报头208(也就是包含包含一目的地址,一源地址和一类型字段的一个MAC报头),一标签交换报头210(也称之为填补报头),一内部报头212和有效负荷214(也就是IP报头和IP有效负荷),和一MAC报尾216(也就是CRC)。与IETF(RFC 3032,2001年1月)所描述和在图2的扩展视图所示的一样,一个MPLS填补报头包含一个20比特MPLS标记字段218,一个3比特试验用字段220,一个1比特累积字段222,和一个8比特存活时间(TTL)字段224。MPLS标记字段承载用于转发一个分组到下一个LSR的标记值。试验用字段仍没有完全定义,当一个MPLS报头是MPLS报头stack堆栈中最后一个MPLS报头时累积字段用于识别,以及TTL字段承载一个TTL值,该值设置了一个MPLS分组在MPLS域中所跳跃的次数的限制。
本领域众所周知,分组交换网络通常适于支持传统通信业务,例如语音通信。为了使分组交换支持传统通信业务,分组交换网络必须包含故障保护机制,这些机制能确保可靠性标准,达到或超过电路交换网络所能获得的可靠性标准。例如,重要的是标签交换网络能在50毫秒(ms)内恢复一个LSP故障。
在大城市地区,传统的电路交换业务经常使用环形网结构来承载。环形网现在正适于承载分组交换业务和标签交换也正在环形网上实现以提供改善的服务质量。为了使分组交换环形网承载电信业务,他们必须确保可靠性标准达到或超过电路交换环形网的可靠性标准。
已经提议用于网状型基于MPLS网络的一种故障保护技术包括为每个工作LSP建立一个唯一保护LSP,和如果工作LSP出现故障从工作LSP到保护LSP交换分组。例如参照图1的网状网络,保护LSP1就是为工作LSP1提供保护路径而建立的。如果工作LSP使用的链路有一个故障,那么已经在工作LSP发送的分组就交换到保护LSP上。设置交换到保护LSP上分组的TTL值以允许分组穿过保护LSP上多个跳跃。当交换的分组穿过保护LSP上所有跳跃,填补报头都被取出。
在图1的实例中,如果支持工作LSP1链路的任何一个有一个故障,那么根据这种技术,已经在工作LSP1上发送的分组将被交换到保护LSP1上,并且设置TTL值来允许分组穿过保护LSP。交换的分组穿过保护LSP直到到达目的LSR,然后取出保护LSP填补报头,使分组退出MPLS域。虽然这种技术在网状类型的网络中运行很好,但这种技术并不是在环形网络中也运行很好,因为标签交换分组在退出MPLS域之前可能围绕环形穿过多个不同的LSP。
上述保护方案的另一种缺点是穿过保护LSP的分组将在不同于工作LSP使用的端口上到达目的LSP。以前到达一个端口上的分组突然到达一个不同的端口上,那么就指示接收LSP有一种网络拓扑改变需要学习。对拓扑的学习耗费了能用于执行其它关键操作的宝贵处理时间。
考虑到使用环形分组交换网络承载传统电信业务的需要和当前故障保护技术的问题,就需要一种故障保护技术用于标签交换环形网,来提供快速保护切换(switching),而又不引发额外对拓扑的学习,并且很容易实现。

发明内容
通过为使用了标签交换的环形网中在相邻LSR之间的工作LSP建立保护LSP,来保护工作LSP,在围绕环形与工作LSP相反方向的一个方向上,用于工作LSP的保护LSP连接工作LSP相邻的LSR。如果工作LSP使用链路出现故障,那么来自工作LSP的分组就交换到保护LSP上。交换的分组穿过保护LSP直到它们到达的相邻LSR,该相邻LSR是分组穿过工作LSP将到达的。也就是说,交换到保护LSP的分组在与工作LSP相反的方向上穿过环形网,直到它们到达出现故障链路另一端的相邻LSR。在一个实施例中,穿过保护LSP分组的TTL值调整用于统计在保护LSP上跳转的数目,这样分组的TTL值与穿过保护LSP后它们将穿过工作LSP的是一样的。调节穿过保护LSP分组的TTL值防止了标签交换分组被过早的取出它们的填补报头,而使分组过早的退出MPLS域。
在一个实施例中,已经交换到保护LSP上的分组到达相邻LSR后,它们将转回到工作LSP。分组从保护LSP转回到工作LSP,而相邻LSR的接收的端口没有读取封装的分组。因为分组被从保护LSP转回到工作LSP而没有被相邻LSR的接收端口读取,所以接收端口不会启动学习任何拓扑。从保护LSP转回到工作LSP的分组随后被相邻LSR处理,好像分组在工作LSP到达相邻LSP。分组可以继续到达环形网上的下一次跳跃LSP,或者分组可以退出MPLS域。在另一个实施例中,经保护LSP到达相邻LSR后,分组直接交换到环形网上的下一次跳跃LSP,而封装的分组不被接收端口读取。
一个在使用标签交换协议的环形网上保护两个LSR之间LSP的方法的实施例,其包括确定环形网上第一和第二相邻LSR之间的工作LSP,工作LSP具有围绕环形网的第一方向,在第一和第二相邻LSR之间建立一个保护LSP,用于如果出现LSP使用链路的故障,在第一和第二相邻LSR之间传递分组,保护LSP使用环形网并具有与第一方向相反的方向,和响应于工作LSP使用链路的故障,把分组从工作LSP交换到保护LSP。
在这种方法的实施例中,分组穿过保护LSP后,分组从保护LSP返回工作LSP。在这种方法的另一个实施例中,分组穿过保护LSP后,分组从保护LSP交换到下一次跳跃的工作LSP。
在这种方法的实施例中,分组的TTL值被调整用于统计沿着保护LSP的LSR的数目。在另一个实施例中,TTL值通过把N添加到TTL值中来调节,其中N是沿着保护LSP的LSR数目的函数。
这种方法的另一种实施例包括分组穿过保护LSP后,把分组从保护LSP转回到工作LSP,和使用来自穿过保护LSP分组的TTL值生成TTL值,用于从保护LSP转回到工作LSP的分组。在另一个实施例中,分组交换到下一次跳跃的工作LSP,而不是转回到工作LSP。
在一个实施例中,至少建立一个保护LSP用于环形网上相邻LSR之间的每个链路。
在另一个实施例中,LSR使用多协议标签交换(MPLS)来围绕环形网传递分组。
一种在使用标签交换协议的环形网上保护两个LSR之间LSP的系统的实施例,其包括与环形网上每个LSR联合的标签交换模块和故障保护模块。标签交换模块用于每个LSR确定各LSR和相邻LSR之间的工作LSP,其中工作LSP具有围绕环形网的第一方向。故障保护模块在LSR和相邻LSR之间建立一个保护LSP,用于如果出现工作LSP使用链路的故障,能在LSR和相邻LSR之间传递分组,其中保护LSP使用环形网并具有与第一方向相反的方向。故障保护模块也响应于工作LSP使用链路的故障,把分组从工作LSP交换到保护LSP。
在这个系统的实施例中,故障保护模块包含分组穿过保护LSP后把分组从保护LSP转回到工作LSP的逻辑。在另一个实施例中,故障保护模块包含把分组从保护LSP交换到下一次跳跃的工作LSP的逻辑。
在这个系统的实施例中,把分组从工作LSP交换到保护LSP包括使分组的TTL值被调整用于统计沿着保护LSP的LSR的数目。例如TTL值可以通过把N添加到TTL值中来调节,其中N是沿着保护LSP的LSR数目的函数。
结合所附以实施例形式图解本发明原理的附图,本发明的其它方面和优点将从下面的详细描述中变得更加清楚。


图1描绘了根据现有技术使用MPLS转发分组的MPLS域中的一组网络节点。
图2描绘了根据现有技术的一种标签交换分组的实例,这种分组包含一个IP报头,一个MPLS填补报头,和以太网报头。
图3描绘了传输链路连接的一组LSR与穿过环形网络中的链路的两个实例LSP形成一个环。
图4描绘了根据本发明实施例依据图3具有实例的工作LSP和用于工作LSP的实例保护LSP的环形网。
图5描绘了根据本发明实施例依据图3具有实例工作LSP和用于工作LSP的实例保护LSP的环形网,其中工作LSP和保护LSP在与图4的工作LSP和保护LSP相反的方向上工作。
图6描绘了环形网上LSR的扩展图,具有一个实例工作LSP和一个用于工作LSP的实例保护LSP,其中根据本发明实施例LSRA和B之间的链路正常(properly)运行(functioning)。
图7描绘了标签交换分组的实例,该分组穿过图6中描绘的工作LSPA/B 。
图8描绘了图6的环形网络,其中根据本发明实施例LSRA和B之间的链路出现故障,并且分组在保护LSP上从LSRA转发到LSRB。
图9描绘了依据图7的分组,其中填补报头已经变了,包括调节TTL值,这样根据本发明的实施例分组穿过保护LSP而不是工作LSP。
图10描绘了根据本发明的另一个实施例图6的环形网,其中LSRA和B之间的链路出现故障,并且分组从保护LSP上转发到下一次跳跃LSR,然后通过接收LSR而不转回到原工作LSP。
图11描绘了环形网上LSR的扩展图,具有两个实例工作LSP和一个用于工作LSP的实例保护LSP,其中根据本发明实施例LSRA和B之间的链路正常运行。
图12描绘了一个实例标签交换分组,该分组穿过图11中所描绘的工作LSPA/B。
图13描绘了依据图12穿过图11所描绘的工作LSPB/C的标签交换分组的实例。
图14描绘了图11的环形网络,其中LSRA和B之间的链路出现故障,并且根据本发明的一个实施例分组在保护LSP上从LSPA转发到LSRB上。
图15描绘了根据本发明一个实施例依据图12,当分组已经从工作LSP交换到保护LSP后,以及TTL值已经被调节后,一个标签交换分组的实例。
图16描绘了根据本发明一个实施例依据图15,当分组已经从保护LSP转回到下一次跳跃的工作LSP后,一个标签交换分组的实例。
图17描绘了根据本发明的另一个实施例图11的环形网,其中LSRA和B之间的链路出现故障,并且分组在保护LSP上从LSRA转发到LSRB,而不是转回到原工作LSP。
图18描绘了根据本发明实施例包括故障保护模块的环形网上两个相邻LSR的扩展图。
图19描绘了根据本发明实施例使用了标签交换的环形网中保护两个LSR之间LSP的方法处理流程图。
图20描绘了根据本发明实施例使用了标签交换的环形网中保护两个LSR之间LSP的另一种方法处理流程图。
具体实施例方式
图3描绘了由传输链路331,333,335,337和339连接形成一个环的一组网络节点330,332,334,336和338。在图3的实施例中,环上的所有网络节点都支持标签交换,例如由IETF公布的MPLS协议,并且这些节点在这里也称之为标签交换路由器(LSR)。环上的所有LSR形成了一个MPLS域。环上的每个LSR都具有一个右侧相邻LSR和一个左侧相邻LSR,其中对这种描述来说,一个相邻LSR定义为直接相近的LSR,以及相对于每个LSR的左和右定义为相对于站在LSR并面向环形中心的一个人的左右。每个LSR都可以连接到其它非MPLS域中部分的网络节点。例如,LSRA330连接到主机X340,LSRB332连接到主机Y342,以及LSRC334连接到主机Z344。在图3的实施例中,相邻LSR之间的连接包含至少一根光纤,虽然这些链路可以包含不止一根光线,其它媒介,和/或其它介于之间的非MPLS节点。在图3的实施例中,LSR330-338可以在LSR之间利用以太网,ATM,帧中继或任何其它数据链路层(第2层)协议来发送分组。另外,LSR和主机可以利用任意数据链路层协议来交换分组。
在一个基于MPLS的网络中,标记分组通过LSP在LSR之间传送。在相邻LSR之间或非相邻LSR之间都可以定义一个LSP。在MPLS域中构造标记分组的相邻LSR之间的每个跳跃都被称之为标签交换跳跃。图3描绘了可以存在于MPLS域中两个不同的实例LSP。在整个说明书中,LSP都是由它们的源LSR和它们的目的LSR确定的,这样从LSRA到LSRB的一个LSP可以称为LSPA/B。一个LSP的源和目的LSR在这里称之为路径LSR,如果该LSP延续到不止一个标签交换跳跃上,这些路径LSR可以不同于相邻LSR。因为图3的MPLS域是一个环,从源LSR到目的LSR的每个LSP的方向在每个图上都被指示,并且可以表征为顺时针方向或逆时针方向。图3描绘的两个实例LSP包括LSPA/B和LSPC/E。LSPA/B在顺时针方向上从LSRA到LSRB工作,以及LSPC/E在逆时针方向上从LSRA到LSRB工作。
根据本发明的一个实施例,在利用标签交换的环形网上相邻LSR之间的工作LSP通过为工作LSP建立一个保护LSP来保护,其中围绕环形方向在与工作LSP相反的方向上,用于工作LSP的保护LSP连接工作LSP的相邻LSR。如果工作LSP使用的链路出现故障,那么来自工作LSP的分组交换到保护LSP。交换的分组穿过保护LSP,直到它们到达使分组穿过所述工作LSP它们将到达的相邻LSR。也就是说,交换到保护LSP的分组在工作LSP相反的方向上穿过环形网络,直到它们到达在故障链路另一端的相邻LSR。在实施例中,穿过保护LSP分组的TTL值被调整用于统计在保护LSP上跳跃的数目,这样穿过保护LSP后,分组的TTL值就与它们穿过工作LSP所拥有的一样。当到达相邻LSR后,在实施例中,来自保护LSP的分组转回到工作LSP。从保护LSP转回到工作LSP的分组被处理好像分组已经穿过工作LSP一样。例如,分组可以继续围绕环形网络标签交换,以到达所期望的目的LSR,或者分组可以退出MPLS域。
保护LSP和TTL调节是预先建立的,这样响应于工作LSP使用的链路的故障,可以迅速并简单的执行保护交换。工作LSP使用的链路的故障可以是包括光纤切断或在服务质量上不可接受的降低,例如不可接受的高比特误差率(BER)或等待时间。可以利用任何技术检测故障,以及所使用的特定故障检测技术对本发明来说并不是关键的。
图4描绘了依据图3的环形网,具有实例的工作LSP,工作LSPA/B426,和用于工作LSP的具有实例的保护LSP,保护LSPA/B428。在整个说明书中,相同的参考号码可以用于标识相同的元件。在顺时针方向上,工作LSP在从LSRA430到LSRB432的相邻LSR之间工作,以及在逆时针方向上,保护LSP从LSRA到LSRB工作。如果一个故障出现在工作LSPA/B使用的链路上,那么标记用于工作LSPA/B的分组就被交换到保护LSP。交换到保护LSPA/B的分组穿过保护LSP(在与工作LSPA/B相反的方向上),并被传递到LSRB,就好像分组穿过了工作LSPA/B(在顺时针方向上)。在实施例中,一旦交换的分组到达保护LSP(也就是LSRB)的末端,分组就转回到它们原来的工作LSP,然后就象它们将处理穿过工作LSPA/B的分组一样进行处理。
在环形网中,可能有多个使用相邻LSR之间相同链路的工作LSP。在一个实施例中,使用相同链路的所有工作LSP以相同的方式利用特定工作LSP专用的保护LSP来保护。在一个可选择的实施例中,使用相同链路的多个工作LSP可以利用单个保护LSP来保护。也就是说,在链路故障的情况下,使用故障链路的所有工作LSP都交换到一个保护LSP上。在另一个实施例中,不同组的工作LSP可以利用不同的保护LSP来保护。
在本发明的一个实施例中,至少一个工作LSP连接环形网络上的每个LSR,并且对于每个工作LSP建立保护LSP。参考图4描述建立所有保护LSP,其中每个LSP在围绕该环的方向上连接特定工作LSP的两个相邻LSR,围绕该环的方向与工作LSP的方向相反。
尽管LSRA430和LSRB432之间的链路支持以顺时针方向从LSRA运行到LSRB的工作LSP,相同的链路也可支持以逆时针方向从LSRB运行到LSRA的工作LSP。图5描绘了具有工作LSP526例子和保护LSP528例子的图3和图4的环形网,该保护LSP528以与工作LSP反方向运行,并且在图4中描述了保护LSP。该工作LSP以逆时针方向从LSRB532运行到LSRA530,并且该保护LSP以顺时针方向从LSRB运行到LSRA。如果在工作LSPB/A使用的链路上发生故障,为了工作LSPB/A,该分组被标记并交换到相应的保护LSP。该交换分组穿过该保护LSP(以相反于工作LSP的方向)并被传送到LSRA,就像分组已经穿过工作LSPB/A。在一个实施例中,一旦分组到达保护LSP一端,该分组被转回到原始工作LSP,然后被处理,正如它们作为过去已穿过工作LSPB/A的分组来处理图6-图10根据本发明实施例更详细的示意了工作LSP怎样被保护。参考图6,希望从主机X640发送分组到主机Y642,两个主机都在MPLS域之外。该分组通过每个主机与LSR之间的连接650和652并经过在LSRA和B之间建立的工作LSPA/B,从主机X发送到主机Y。如上参考图4所述,为工作LSPA/B626建立保护LSP628。在图6的实施例中,该保护LSP专用于工作LSPA/B,尽管这不是必需的。用于工作LSPA/B的保护LSP用虚线表示,并以逆时针方向动LSRA运行到LSRB。
图6还包括环形网络上的LSR630-638的扩展图。每个LSR包括右侧发送和接收模块642和644(TM和RM)以及左侧发送和接收模块643和645。该发送模块处理并发送分组给它们相邻的LSR。例如,用于LSRA的左侧发送模块处理并发送分组给LSRB。该发送模块包括分组缓存器和分组处理器,这在基于MPLS联网领域中是公知的。该接收模块处理从它们相邻的LSR接收的分组。例如,用于LSRB的右侧接收模块接收并处理从LSRA接收的分组。该接收模块包括分组缓冲器和分组处理器,这在基于分组网络领域中是公知的。
图7描绘了穿过工作LSPA/B的标签交换分组706的例子。该分组包括用于穿过工作LSPA/B的外部报头708,识别工作LSPA/B的填补报头710,和包括报头712(在此称之为内部报头)和有效负载714和或许一个或多个报尾的封装分组711。
只要支持工作LSPA/B的链路具有适当的机能,利用工作LSP将MPLS域中的分组从LSRA630转发到LSRB632。然而,如果在工作LSPA/B使用的链路中发生故障,例如切割光纤或降低BER,则要发送的分组穿过工作LSPA/B的分组交换给保护LSP。交换的分组以逆时针方向从LSRA到LSRB穿过保护LSP。
图8描绘了当LSRA和B830和832之间的链路发生故障时,分组穿过的路径的例子。参考LSRA,从主机X840接收并用于工作LSPA/B的分组仍然传送给左侧发送模块和工作LSPA/B,就像LSRA和B之间的链路被满意的操作。在左侧发送模块,该分组从工作LSPA/B被交换,或“跳动”到保护LSPA/B。在一个实施例中,将分组从工作LSP交换到保护LSP包括将分组从发送模块缓冲器交换到接收模块缓冲器,并改变分组的填补报头。改变填补报头包括将填补报头的MPLS标签从工作LSP标签交换到保护LSP标签,并调整填补报头的TTL域。参照图9将更详细的描述调整填补报头的TTL域。将MPLS标签从工作LSP改变到保护LSP还导致改变外部报头以识别在保护LSP上的下一跳LSR。因为,已经预先设定保护LSP,因而改变外部报头是简单任务。
图9根据图7描绘了分组906,其中已经改变填补报头910,以便分组穿过保护LSP而不是工作LSP。尤其是,填补报头的MPLS标签域918从识别工作LSPA/B改变到识别保护LSPA/B。对封装分组911的报头912和有效负载914不进行变化。因为改变填补报头只是要求从工作LSP到保护LSP重新路由分组的行为,并且因为绕着环形网络已经预先设定保护LSP,可以快速并容易的实施该保护过程。由于分组穿过该保护LSP,封装分组的报头和有效负载不被中间的LSR检查。因为保护交换被直接连接到故障链路的LSR控制,可以快速并容易的检测链路故障,并且在链路故障和保护交换之间的延迟被最小化。相反,其他保护交换技术可依靠来自LSR的上游活跃消息,该LSR可以是多个下游跳跃,以检测故障并初始化保护交换。
除了将填补报头的MPLS标签域从工作LSP改变到保护LSP,根据本发明实施例,当分组从它的工作LSP交换到它的保护LSP时,调整填补报头中TTL域(TTL值)的值。调整TTL值以说明在LSRA和LSRB之间沿着保护LSP存在的跳跃的附加数N。就是说,到达它下一跳跃LSR的分组的TTL值应当相同,无论分组通过它的工作LSP到达下一跳跃LSR还是通过它的保护LSP到达下一跳跃LSR,因为沿着保护LSP比沿着工作LSP存在更多的跳跃,必须向上调整交换到保护LSP的分组的TTL值。
在图8和图9的例子中,每个分组的TTL值应当相同,无论分组是穿过工作LSPA/B或保护LSPA/B。因为保护LSP需要比工作LSP多三个跳跃(N=3),穿过保护LSP的分组的TTL值增加3以计算附加跳跃,因此确保在LSRB的分组的TTL值相同,无论该分组穿过工作LSP或保护LSP。参考图8,穿过工作LSP的分组的TTL值最初可设置为二,以便该值在LSRB被递减后为一。在图8的实施例中,零或一的TTL值表示分组不再进行标签交换。如果最初将分组的TTL值设置为二,以穿过工作LSPA/B,则TTL值被调整到五(2+3=5),以穿过保护LSP。该分组的TTL值被减一用于每个标签交换跳跃,该标签交换跳跃在保护LSP上穿过。图9描绘了用于图8的保护LSP例子的计算调整的TTL值的算法。用于每个特定保护LSP的TTL调整算法被预先设定,以便可以快速和容易的执行TTL值调整。一旦具有调整的TTL值的分组穿过它们的保护LSP,它们的TTL值在每个跳跃上被递减,在目标LSR上的TTL值将是同一值,就像该分组已经穿过相应的工作LSP。
因为保护在LSRA和B之间的链路上的工作LSP的保护LSP穿过相同的保护路径,并产生相同数量的跳跃,使用相同的算法产生用于所有保护LSP的调整的TTL值,该保护LSP用于LSRA和B之间的链路。例如,用于LSRA和B之间的链路的所有保护LSP应当具有调整的TTL值,通过将三个跳跃添加到运行TTL值来产生该调整的TTL值。
参照附图8对保护交换的实施例进行附加描述。参考LSRA830,在分组从工作LSP交换到保护LSP之后,其包括将分组从左侧发送模块交换到左侧接收模块,该通过LSRA将分组从左侧接收模块转发到右侧发送模块,正如正常标记分组。在保护LSP828上的分组从LSRA的右侧发送模块发送,并穿过保护LSP,经过LSRE、D、和C(838,836,和834),到达LSRB832的左侧接收模块。在每个LSR,该填补报头的TTL值被递减一,并且该递减的TTL值包含在输出标签交换分组中。在保护LSP上的LSRB中接收的分组被识别作为应当被转回到工作LSPA/B的分组。
在图8的实施例中,在LSRB832上将分组从保护LSP转回到工作LSP包括将分组从左侧接收模块交换右侧接收模块。为了将分组交换到LSRB的右侧接收模块,该分组首先穿过LSRB到右侧发送模块,然后交换到右侧接收模块。在图8的实施例中,因为能容易的利用在LSR中存在的传输路径,因而该分组从左侧接收模块穿过LSR到右侧发送模块。一旦分组传送到右侧发送模块,它们被交换到右侧接收模块。交换该分组到右侧接收模块包括将分组从保护LSP转回到原始的工作LSP,并将TTL值从保护LSP填补报头传送到工作LSP填补报头。例如,在用于LSPA/B的保护LSP上接收的分组被转回到具有TTL值的工作LSPA/B,该TTL值来自被传送的接收的分组。在右侧接收模块,处理该分组,就像它们已经从LSRA穿过工作LSP到LSRB(以顺时针方向)。在右侧接收模块,因为TTL值(递减后)是一,该分组的填补报头被取出,并且将封装的分组转发给主机Y842,就象它已经使得分组穿过运行LSPA/B。因为,直到将分组转回到原始的工作LSP,该填补报头被取出,该接收端口不读取内部报头,并且不触发对拓扑结构的学习(例如,MAC移动)。
在一个实施例中,将在保护LSP上接收的分组转回到相关的工作LSP是自动的并独立于任何链路故障指示。例如,对LSRB编程以将在保护LSP上接收的所有分组交换到相关的工作LSP。因为每个LSP具有唯一的MPLS标签,该LSR能识别在保护LSP上接收的分组,并自动的将该分组转回到它们各自的工作LSP。在其他LSP上接收的分组按照正常MPLS分组处理。再次,因为在保护LSP上接收的分组被自动交换到工作LSP,不读取内部报头,并且不启动拓扑结构学习。
通过将在保护LSP上接收的分组转回相应的工作LSP,并且通过调整在保护LSP上发送的分组的TTL值,穿过LSP的分组迅速和容易的返回到它们已经具有穿过该工作LSP的分组的状态。尽管已经描述了用于将分组从工作LSP交换到保护LSP以及用于将分组从保护LSP转回到工作LSP的特殊技术,在不背离本发明的情况下可以使用其他技术来实现该交换。
图10描绘了如何处理在保护LSP上接收的分组的替换例子。图10与图8一样除了在保护LSP上的LSRB1032中接收的分组不转换到原始的工作LSP。在图10的实施例中,LSRB读取在保护LSP上接收的分组的TTL值,并且识别该分组不能连续的进行标签交换。例如,零或一的TTL值表示分组不再进行标签交换。一旦识别该分组为不进行标签交换的分组,取出该填补报头,并且封装的分组作为正常分组转发。参考LSRB,在右侧接收模块和主机Y1042之间的黑线1054表示不将分组交换到原始工作LSP,如参考图8所述。
在保护模式中的操作可以各种不同方式结束。在一个实施例中,将发送LSR从利用保护LSP人工的转回到利用工作LSP和预先失效的链路。在其他实施例中,在特定时段之后,该发送LSR试图返回工作LSP和失效的链路。在其他实施例中,再变换该工作LSP以避免该故障链路。
尽管参考图6-图10描述的例子包括起源于MPLS域外部源的分组,围绕着工作LSP上的环移动的任何分组能被同一技术保护。例如,以上述相同的方式通过保护LSPA/B能保护从工作LSPE/A(以顺时针方向)经过到工作LSPA/B的分组。
图11描绘了保护交换的例子,该例子类似于参考图6-图10所述的例子,除了感兴趣的分组穿过MPLS域中的多个工作LSP。参考图11,希望从主机X1140发送分组到主机Z1144,这两个主机都在MPLS域之外。该分组通过在各自主机与LSR之间的连接1150和1153,并通过工作LSPA/B1126和B/C1127,从主机X发送到主机Z,该工作LSP建立在MPLS域内。在图11的例子中,工作LSPA/B利用LSRA1130和B1132之间的链路,并且工作LSPB/C利用LSRB和C1134之间的链路。下面,例如通过目的来详细的描述用于工作LSPA/B的保护LSP1128,尽管应当理解类似的保护LSP也被建立用于工作LSPB/C。通过虚线表示用于工作LSPA/B的保护LSP,并且该保护LSP以逆时针方向动LSRA运行到LSRB。在图11的实施例中,该保护LSP从LSRA的右侧发送模块运行到LSRB的左侧接收模块。该保护LSP从LSRA运行到LSRB,尽管感兴趣的分组的最终目标是LSRC。
图12描绘了穿过工作LSPA/B的分组1206例子。该分组包括用于穿过工作LSPA/B的外部报头1208,识别工作LSPA/B的填补报头1210,和包括报头1212(称作内部报头)和有效负载1214的封装分组1211。该填补报头的TTL值被设置为与标签交换跳跃的数量有关的值,设想分组通过跳跃绕着环运动。
同样,图13描绘了穿过工作LSPB/C的图12分组的例子。该分组包括用于穿过工作LSPB/C的外部报头1308,识别工作LSPB/C的填补报头1310,和来自图11的封装报头1312和有效负载1314的。注意由于分组穿过工作LSPA/B和B/C,该封装报头和有效负载没有被改变或利用。还应当注意,由于封装分组从LSPA/B交换到LSPB/C,来自输入分组的TTL值被用来计算用于输出分组的TTL值。尤其是,通过对输入TTL值减一来计算该输出分组的TTL值。
只要支持工作LSPA/B的链路完全运作,将分组从工作LSPA/B1126上的LSRA1130转发给LSRB1132。然而,如果在工作LSPA/B使用的链路上发生故障,例如光纤切割或BER降低,则实施LSP保护,并且发送穿过工作LSPA/B的分组被交换到保护LSP1128。该交换分组以逆时针方向从LSRA穿过保护LSP到LSRB。
图14描绘了当在LSRA和B之间的链路发生故障时分组穿过路径的例子。参考LSRA1430,从主机X1440接收并用于工作LSPA/B的分组仍然传送到左侧发送模块和工作LSPA/B,正如工作LSPA/B处于操作中。在左侧发送模块,分组从工作LSPA/B被交换,或“跳跃”到保护LSP。在一个实施例中,从工作LSP交换分组到保护LSP包括将分组从发送模块缓冲器交换到接收模块缓冲器,并改变填补报头。改变填补报头包括将MPLS标签从工作LSP标签交换到保护LSP标签,并且调整填补报头的TTL值,以说明在保护LSP上标签交换跳跃数量的增加。将MPLS标签从工作LSP改变到保护LSP也导致改变分组的外部报头以识别保护LSP上的下一跳LSR。
图15描绘了在分组已经从工作LSP交换到保护LSP之后,图12的分组。尤其是,该分组的填补报头1510从识别工作LSPA/B改变到识别保护LSPA/B,并且改变外部报头1508以识别保护LSP上的下一跳跃LSR。如填补报头的扩展图所描绘,该填补报头的TTL值也被调整,如上所述,来计算在LSRA和LSRB之间沿着保护LSP存在的跳跃的附加数量。在图14的实施例中,将原始TTL值设置为三,在LSRC上取出填补报头之前允许分组有两个标签交换跳跃。通过向初始TTL值添加3(即,3+3=6),将调整的TTL值设置为六。在封装的分组1511的报头1512和有效负载1514上没有发生变化。
参考图14,在分组从行LSPA/B交换到保护LSPA/B1428之后,将分组从左侧接收模块穿过LSRA1430转发到右侧发送模块,正如正常标签交换的分组。将保护LSP上的分组从LSRA的右侧发送模块发送,并穿过保护LSP,通过LSR E、D、和C(1438、1436、和1434),并到达LSRB1432的左侧接收模块。在每个LSR,该填补报头的TTL值被减一,并且递减的TTL值包括在输出标签交换分组之中。在保护LSPA/B的LSRB上接收的分组被LSRB识别为应当转回到工作LSPA/B的分组。
在图14的实施例中,在LSRB1432上将分组从保护LSPA/B转回到工作LSPA/B包括将分组从左侧接收模块交换到右侧接收模块。为了传送分组到右侧接收模块,该分组首先穿过LSRB到右侧发送模块,然后交换到右侧接收模块。将分组从右侧发送模块交换到右侧接收模块包括将分组从保护LSP转回到原始工作LSP,并将来自保护LSP填补报头的TTL值传送到工作LSP填补报头。在分组从保护LSP交换到工作LSP之后,在保护LSP的LSRB上到达的分组与该分组相同,参考图12所述,该分组到达工作LSP上的LSRB。尤其是,该分组的TTL值与过去穿过工作LSP的分组的TT值相同,因为当分组被交换到保护LSP时,调整每个分组的TTL值。另外,因为LSRB没有取出填补报头,该LSR不读取输入分组的内部报头,并且在保护LSP上接收的分组不启动分布状况学习。
再次参考图14,在分组交换到LSRB1432的右侧接收模块后,传输该分组穿过LSRB到左侧发送模块,然后添加到工作LSPB/C1427上。来自保护LSP填补报头被传送的TTL值用来设置用于工作LSPB/C填补报头的TTL值。图16描绘了在将填补报头交换到工作LSPB/C之后,图15的分组。在图16中描绘的分组与图13中描绘的分组一致,包括MPLS标签、TTL值、和外部报头。图16中描绘的分组穿过工作LSPB/C,正如参考图11和图13所述,其中不需要保护交换。
一旦在工作LSPB/C上的分组到达LSRC1434,该填补报头的TTL值导致填补报头被取出,并且将封装的分组转发给主机Z1444。参考图16,例如,删除外部报头1608,并且取出填补报头1610,剩下预先封装的分组1611。如正常分组,该预先封装的分组离开MPLS域并被转发到主机Z。
图17描绘了怎样处理在保护LSP上接收的分组的替换例子。图17与图14一致,除了在保护LSP上接收的分组不交换到原始工作LSP。在图17的实施例中,LSRB1732读取在保护LSP上接收的分组的TTL值,并且识别该分组仍然需要标签交换。例如,如果分组的TTL值(递减后)大于一,该分组仍然需要标签交换。代替将分组将不被交换到原始工作LSP,其包括将分组交换到LSRB的右侧接收模块,而是该分组可被直接交换到下一跳跃工作LSP。在图17的实施例中,通过将分组从右侧接收模块缓冲器交换到左侧发送模块缓冲器,并改变该填补报头,将分组从保护LSP交换到下一跳跃工作LSP。
改变该填补报头包括将填补报头的MPLS标签从保护LSP标签交换到下一跳跃工作LSP标签并将TTL值设置为输入TTL值的递减值。
图18描绘了在图3的环形网络上的两个相邻LSR1830和1832的展开图。每个LSR包括右侧发送和接收模块1842和1844,左侧发送和接收模块1843和1845,分组处理器1858,标签交换模块1860,和故障保护模块1862。
该分组处理器1858管理在LSR内交换的分组。尤其是,该分组处理器处理由LSR实施的数据链路层和网络层。
该标签交换模块1860管理LSR的标签交换功能。标签交换模块的特殊功能包括产生用于分组的填补报头,建立前向等效级别(FEC),递减TTL值,提供标签值,并维护标签信息库。在本发明的一个实施例中,倒数第二跳跃取出的功能被禁止,以便维持TTL值的连续性。
标签交换模块1860的另一功能是了解MPLS域的拓扑结构。环形LSR可使用许多不同的协议将拓扑信息通知给环上的其他LSR。在一个实施例中,环上的每个LSR定期发送广告消息给它左侧和右侧的邻居,该消息具有与环的拓扑结构有关的信息。在广告消息中包含的信息可包括环上的LSR数量,环上的LSR的MAC地址,到LSR右侧或左侧的链路类型,用于环上的LSR的右侧和左侧流量信息。
标签交换模块1860的另一功能是将用于输入分组的TTL值接合到用于相同输出分组的递减TTL值中。就是说,在LSR发送模块上的标签交换模块的TTL值应当是TTL值的递减值,该TTL值用于LSR接收模块上的相同分组。参考图18,例如,当分组从LSR发送之前,在LSRA的右侧接收模块上接收并移动到LSRB的分组的TTL值被递减。用于环形分组的TTL值必须在每个跳跃上递减。在一个实施例中,当接收分组时,该标签交换模块确保环形分组的TTL值被递减,并当环形分组在下个环形LSP上输出之前,确保该TTL接合贯穿环形LSR。在下个环形LSP上输出环形分组之前的TTL值的递减描述在序列号09/865035,名为“在标签交换域中防止循环传输的方法和系统”的专利申请中,该专利申请指定给当前发明的受让人,并在此结合作为参考。在一个实施例中,由硬件设备执行TTL接合。该标签交换模块可以包括软件、硬件、或其任何组合。
该故障保护模块1862管理参考图3-图7描述的故障保护功能。在一个实施例中,环上的所有LSR必须包括故障保护模块,以确保正确实施故障保护。故障保护模块的特定功能包括建立保护LSP,将分组从工作LSP交换到保护LSP,并从保护LSP转回到工作LSP,并调整TTL值。该标签交换模块可以包括软件、硬件、或其任何组合。
尽管,为了目的,MPLS作被描述为标签交换协议,本发明可以通过各种标签交换协议来实施,该协议利用标签,或等效物,和TTL域,或等效物。
图19描绘了用于保护两个LSR之间的LSP的方法处理流程图,该LSR在利用标签交换的环形网络中。在步骤1970,在环形网络中第一和第二相邻LSR之间识别工作LSP,该工作LSP具有环绕该环形网络的第一方向。在步骤1971,在第一和第二相邻LSR之间建立保护LSP,如果工作LSP应用的链路发生故障,该保护LSP用于在第一和第二相邻LSR之间传递分组,该保护LSP利用环形网络并具有与第一方向相反的方向。在步骤1972,响应该运行分组使用的链路的故障,将分组从工作LSP交换到保护LSP。在步骤1973,在分组穿过保护LSP后,将分组从保护LSP转回到工作LSP。
图20描绘了其他方法的处理流程图,该方法用于保护在利用标签交换的环形网络中的两个LSR之间的LSP。在步骤2074,在环形网络中第一和第二相邻LSR之间识别工作LSP,该工作LSP具有环绕该环形网络的第一方向。在步骤2075,在第一和第二相邻LSR之间建立保护LSP,如果工作LSP应用的链路发生故障,该保护LSP用于在第一和第二相邻LSR之间传递分组,该保护LSP利用环形网络并具有与第一方向相反的方向。在步骤2076,响应该运行分组使用的链路的故障,将分组从工作LSP交换到保护LSP。在步骤2077,将交换的分组的TTL值调整为一个值,该值是沿着保护LSP的LSR数量的函数。在步骤2078,在分组穿过保护LSP后,将分组从保护LSP转回到工作LSP。在步骤2079,已穿过保护LSP的分组的TTL值被用来产生用于从保护LSP转回到工作LSP的分组的TTL值。
尽管已描述并示意了本发明的具体实施例,但本发明不限于所述和示意的具体形式和部件配置。本发明只通过权利要求限定。
权利要求
1.一种方法,用于保护在使用标签交换协议的环形网络中的两个标签交换路由器(LSR)之间的标签交换路径(LSP)以传送信息分组,其中在所述环形网络中的每个LSR通过各自的链路连接到右侧相邻LSR和左侧相邻LSR,所述方法包括识别在所述环形网络中第一和第二相邻LSR之间的工作LSP,所述工作LSP具有环绕所述环形网络的第一方向;如果在所述工作LSP使用的链路上发生故障,在所述第一和第二相邻LSR之间建立保护LSP用于在所述第一和第二相邻LSR之间传递分组,所述保护LSP利用所述环形网络,并具有与所述第一方向相反的方向;以及响应所述工作LSP使用的链路的故障,将分组从所述工作LSP交换到所述保护LSP。
2.如权利要求1所述的方法,还包括在所述分组已穿过所述保护LSP之后,将分组从所述保护LSP转回到所述工作LSP。
3.如权利要求1所述的方法,还包括在所述分组已穿过所述保护LSP之后,将分组从所述保护LSP交换到所述下一跳跃工作LSP。
4.如权利要求1所述的方法,其中将分组从所述工作LSP交换到所述保护LSP包括将分组的标签从工作标签交换到保护标签。
5.如权利要求1所述的方法,其中将分组从所述工作LSP交换到所述保护LSP包括调整所述分组的存活时间(TTL)值,以说明沿着所述保护LSP的LSR数量。
6.如权利要求5所述的方法,其中调整所述TTL值包括将N添加到所述TTL值,其中N是沿所述保护LSP的LSR数量的函数。
7.如权利要求5所述的方法,还包括在所述分组已穿过所述保护LSP之后,将分组从所述保护LSP转回到所述工作LSP;以及使用来自穿过所述保护LSP的分组的TTL值产生用于所述分组的TTL值,该分组从所述保护LSP转回到所述工作LSP。
8.如权利要求5所述的方法,还包括在所述分组已穿过所述保护LSP之后,将分组从所述保护LSP交换到所述下一跳跃工作LSP;以及使用来自穿过所述保护LSP的分组的TTL值产生用于所述分组的TTL值,该分组从所述保护LSP转回到所述下一跳跃工作LSP。
9.如权利要求1所述的方法,还包括为所述环形网络上相邻LSR之间的每个链路建立至少一个保护LSP。
10.如权利要求1所述的方法,其中所述LSR利用多协议标签交换(MPLS)绕着所述环形网络传送分组。
11.一种系统,用于保护在使用标签交换协议的环形网络中的两个标签交换路由器(LSR)之间的标签交换路径(LSP)以在所述环形网络中的LSR之间传送信息分组,其中在所述环形网络中的每个LSR通过各自的链路连接到右侧相邻LSR和左侧相邻LSR,在所述环形网络中的每个LSR包括标签交换模块,与LSR相连,用于识别在所述LSR和相邻LSR之间的工作LSP,所述工作LSP具有环绕所述环形网络的第一方向;故障保护模块用于如果在所述工作LSP使用的链路上发生故障,在所述LSR和所述相邻LSR之间建立保护LSP使得能在所述LSR和相邻LSR之间传送分组,所述保护LSP利用所述环形网络,并具有与所述第一方向相反的方向;以及响应所述工作LSP使用的链路的故障,将分组从所述工作LSP交换到所述保护LSP。
12.如权利要求11所述的系统,其中所述故障保护模块包括在所述分组已穿过所述保护LSP之后,用于将分组从所述保护LSP转回到所述工作LSP的逻辑。
13.如权利要求11所述的系统,其中所述故障保护模块包括用于将分组从所述保护LSP交换到下一跳跃工作LSP的逻辑。
14.如权利要求11所述的系统,其中将分组从所述工作LSP交换到所述保护LSP包括将分组的标签从工作标签转换到保护标签。
15.如权利要求11所述的系统,其中将分组从所述工作LSP交换到所述保护LSP包括调整所述分组的TTL值,以说明沿着所述保护LSP的LSR数量。
16.如权利要求15所述的系统,其中调整所述TTL值包括将N添加到所述TTL值,在此N是沿所述保护LSP的LSR数量的函数。
17.如权利要求15所述的系统,其中所述故障保护模块包括逻辑用于在所述分组已穿过所述保护LSP之后,将分组从所述保护LSP转回到所述工作LSP;以及使用来自穿过所述保护LSP的分组的TTL值,以产生用于所述分组的TTL值,该分组从所述保护LSP转回到所述工作LSP。
18.如权利要求15所述的系统,其中所述故障保护模块包括逻辑用于在所述分组已穿过所述保护LSP之后,将分组从所述保护LSP交换到所述下一跳跃工作LSP;以及使用来自穿过所述保护LSP的分组的TTL值,以产生用于所述分组的TTL值,该分组从所述保护LSP转回到所述下一跳跃工作LSP。
19.如权利要求11所述的系统,其中所述故障保护模块包括逻辑,用于为利用所述LSR和所述相邻LSR之间链路的工作LSP建立唯一保护LSP。
20.一种方法,用于保护在使用标签交换协议的环形网络中的两个标签交换路由器(LSR)之间的标签交换路径(LSP)以传送信息分组,其中在所述环形网络中的每个LSR通过各自的链路连接到右侧相邻LSR和左侧相邻LSR,所述方法包括识别在所述环形网络中第一和第二相邻LSR之间的工作LSP,所述工作LSP具有环绕所述环形网络的第一方向;如果在所述工作LSP使用的链路上发生故障,在所述第一和第二相邻LSR之间建立保护LSP用于在所述第一和第二相邻LSR之间通信分组,所述保护LSP利用所述环形网络上的LSR,并具有与所述第一方向相反的方向;响应所述工作LSP使用的链路的故障,将分组从所述工作LSP交换到所述保护LSP;以及将所述交换的分组的TTL值调整为一个值,该值是沿所述保护LSP的LSR数量的函数。
21.如权利要求20所述的方法,其中调整所述TTL的值包括将N添加到所述TTL值,其中N是沿所述保护LSP的LSR数量的函数。
22.如权利要求20所述的方法,还包括在所述分组已穿过所述保护LSP之后,将分组从所述保护LSP转回到所述工作LSP;以及使用来自穿过所述保护LSP的分组的TTL值,产生用于所述分组的TTL值,该分组从所述保护LSP转回到所述工作LSP。
23.如权利要求20所述的方法,还包括在所述分组已穿过所述保护LSP之后,将分组从所述保护LSP交换到所述下一跳跃工作LSP;以及使用来自穿过所述保护LSP的分组的TTL值,产生用于所述分组的TTL值,该分组从所述保护LSP转回到所述下一跳跃工作LSP。
24.如权利要求20所述的方法,还包括为所述环形网络上相邻LSR之间的每个链路建立至少一个保护LSP。
25.如权利要求20所述的方法,其中所述LSR利用多协议标签交换(MPLS)绕着所述环形网络传送分组。
全文摘要
在使用标签交换协议的环形网络中的相邻标签交换路由器(LSR)(430-438)之间的工作标签交换路径(LSP)被LSP保护,该LSP以相对于工作LSP的相反的方向连接到工作LSP的相邻LSR。如果工作LSP有故障,将分组交换给保护LSP(428)。交换的分组穿过保护LSP,直到它们到达相邻的LSR,正如过去已经穿过工作LSP的分组到达相邻的LSR。穿过保护LSP的分组的存活时间(TTL)值被调整以说明在保护LSP上跳跃的数量,以便在分组穿过保护LSP之后,该分组的TTL值与过去已经穿过工作LSP的分组的TTL值相同。在穿过保护LSP之后,分组能转回到工作LSP或转回到下一跳跃LSP。
文档编号H04L12/56GK1618025SQ02827962
公开日2005年5月18日 申请日期2002年12月11日 优先权日2001年12月12日
发明者贝赫纳姆·贝扎迪 申请人:瑞通网络公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1