专利名称:一种应用于分层路由光网络的拓扑收敛方法
技术领域:
本发明涉及一种应用在光纤通信领域中的新型拓扑收敛方法,尤其是涉及一种应用于具有分层多域结构的自动交换光网络中的拓扑收敛方法。
背景技术:
当路由控制域中的路由器对可用的所有路由具有一致的看法,这时的网络称为一个收敛的网络。收敛时间是指每一个路由器的路由表对网络拓扑发生的变化进行同步所需要的时间。收敛时间越短越好,因为当路由器对网络的拓扑认识不一致的时候,数据将不能被正确的和有效的路由。网络收敛速度过慢对传统IP网络和自动交换光网络(ASON,Automatic Switched Optical Network)网络来说都会带来网络的不稳定性,但具体的影响却并不相同。在传统的IP网络中,数据被逐跳转发,数据的转发决定由本地路由器独立作出。如果网络收敛速度过慢,路由器的拓扑数据库和路由表无法得到及时的更新,这就使得网络中不同的路由器可能具有不同的拓扑数据库和路由表,从而导致了路由环路的形成,这种不稳定的状态将影响到从这一刻起网络所承载的所有业务(直接或者间接),一直持续到网络收敛过程完毕,环路消失。
已经被广泛配置和使用的RIP和OSPF协议都存在这样的问题。而在自动交换光网络中,由于光网络是面向连接的,在业务传送前相应的端到端的数据通路已经被建立起来,并且业务路径通常是由接收连接请求的源节点计算出来的显式路径,因此所计算的路径不会有环路的产生,如果网络收敛的过慢,接受请求的源节点的拓扑数据库和流量工程数据库中的数据可能是过时的而没有得到及时的更新,此时源节点计算出来的显式业务路径可能不是最优的,或者是不可得的,这将会大大增加网络对业务请求的阻塞率,降低网络资源利用效率。值得注意的是,由于网络是面向连接的,这种网络的不稳定性将不会影响到已经存在的网络业务。
传统的OSPF协议的收敛算法如下步骤1当一个节点探测到了链路故障,该节点会迅速向他的相邻节点处发送LSA进行状态更新。如果该路由器在一个广播网络上,那么更新消息将被发送到DR和BDR;步骤2发起更新的路由器会将该路经从自己的路由表中删除;步骤3接收到该LSA后,所有的路由器将更新自己的链路状态数据库,并将该LSA洪泛到其他的接口上;步骤4各路由器运行Dijkstra算法重新计算路由表由于在OSPF路由协议中,每个路由器拥有独立的网络拓扑数据库,网络拓扑的同步只需要通过链路状态更新消息来更新即可,不存在象RIP中的增加到无限那样的问题,所以其拓扑收敛算法相对简单。对于采用链路状态路由协议的分层路由网络来说,其收敛算法与OSPF的收敛算法是基本一致的,但由于分层网络收敛机制必须考虑到网络分层多域的特性,因此需要对OSPF的收敛算法有所创新和改进。我们都知道,OSPF的收敛机制是一种逐个节点通告的串行同步机制。而在分层网络中,存在多个路由层次和多个路由域,每个路由域以及每个节点的串行同步处理将花费很多的时间。
发明内容
本发明的目的在于解决了具有分层多域结构的自动交换光网络中的拓扑收敛速度慢的问题;提出一种基于代表节点优先通知的,采用并行拓扑收敛机制的拓扑收敛方法。
本发明为了实现上述技术目的采用的技术方案如下。
一种应用于分层路由光网络的拓扑收敛方法,当一个路由控制域中的节点探测到了链路故障,其特征为所述的拓扑收敛步骤为步骤1,探测到链路故障的节点向其所属的所述的路由控制域的代表节点发送链路状态通告来进行状态更新;步骤2,发起更新的路由器通过洪泛将所述的链路状态通告发送给其他的相邻路由器;步骤3,所述的发起更新的路由器将所发送的链路状态通告从链路状态数据库中删除;步骤4,所述的代表节点接收到链路状态通告后,更新其所在路由控制域的拓扑数据库,并对新的路由控制域拓扑进行拓扑抽象;步骤5,当一个路由器接收到链路状态通告后,将更新其拓扑数据库,并将链路状态通告洪泛到它的其它数据接口上;步骤6,所有的路由器运行路由算法,重新计算路由表。
本发明在同一个所述的路由控制域内,相对于普通节点,更新信息优先发送给所述的代表节点。
本发明在各层所述路由层中,进行状态更新处理的过程是并行的;在同一路由层内的各个所述的路由控制域中,进行状态更新处理的过程也是并行的。
本发明在给所述的代表节点发送链路状态通告之前,发起更新通告的节点先将承载状态更新信息的IP数据包的目的地址填充为代表节点接口的IP地址。
本发明在所述的代表节点进行通告判决后,在需要通告的情况下也会首先向上一级的代表节点进行通报,依此类推。
本发明在所述的步骤4中,如果新的抽象拓扑和原来的抽象拓扑相同,所述的代表节点将不会做任何处理;如果不相同,代表节点将重复所述的步骤1和步骤2,在其父路由控制域内发起代表节点优先的状态更新,重新计算路由表,这一过程重复进行,一直到所述所有路由层及各层的所有路由控制域开始更新和收敛处理为止。
本发明所述的路由器运行路由算法,使用的算法有最短路径算法。
本发明整个所述的自动交换光网络的拓扑收敛时间主要为,不计最上层的各个所述的路由层的拓扑抽象、通告判决时间的相加值之和;加上最上层路由层的收敛时间;再加上不计最上层的各个路由层的从更新发起节点到其所属的所述的路由控制域的代表节点的所有跳的处理时间的相加值之和。
鉴于路由控制域代表节点在整个分层光网络路由活动中的重要性,本发明提出一种基于代表节点优先通知(SNF,Speaker Node First)的拓扑收敛机制。
在分层光网络中,提高拓扑收敛速度的关键在于使得相关的代表(Speaker)节点能够尽快的得到链路状态更新消息,并进行处理,从而使得各路由层能够尽可能的同时对该变化进行同步,这样就可以尽可能地减少拓扑收敛的时间。考虑到上述因素,在将OSPF的链路状态更新机制应用到分层网络拓扑收敛处理的时候,本发明提出在使用OSPF的收敛算法的时候,要求发起更新通告的节点首先通过IP数据包将该状态更新消息发送给本路由控制域的代表节点,然后再在本路由控制域内进行链路状态通告的广播,该代表节点进行通告判决后,在需要通告的情况下也会首先向上一级的代表节点进行通报,依此类推。这就保证了所有相关的代表节点能够再最短的时间内进行判决和处理,从而使得各个路由层能够尽可能同时的进行拓扑同步和收敛。
通过代表节点优先通知拓扑收敛机制,各路由层中的相关代表节点能够在最短的时间内接收到状态更新消息,这样各路由层和路由控制域可以并行的进行状态更新处理,可以尽可能的减少拓扑的收敛时间。
分层路由并行拓扑收敛机制的收敛时间主要包括消息传送时间和处理时间,假设DDRP共包括m各路由层,其中由于某数据链路变化而需要进行拓扑收敛的路由层为n层,第i路由层中从更新发起节点到其所在路由控制域的代表节点共有hi跳,每一条的平均处理时间为t1,代表节点进行拓扑抽象和通告判决的平均时间为t2,最上层路由控制域的收敛时间为Tn,则整个自动交换光网络的拓扑收敛时间T的表达式为T=Σi=1n-1hit1+Tn+(n-1)t2]]>我们这里假定较高层次的DDRP信息不向较低路由层传递,每一个代表节点都最为他所代表的路由控制域的路由服务器。如果较高层的DDRP拓扑抽象信息向下层传递,那么收敛时间还要加上从进行状态更新的最高路由层到最低路由层的状态更新处理时间,原理是类似的,但需要更长的处理时间,此时每个网络节点都将能够独立的进行跨域的路由计算,而不再需要路由服务器。不难看出,通过并行拓扑收敛机制所得到的收敛时间基本上是分布式收敛机制的最短时间了,因此并行拓扑收敛机制是各种分布式收敛机制中最为优化的一个。
由于采用上述措施,本发明具有以下优点和效果提高了分层路由光网络的拓扑收敛速度,分层网络的拓扑收敛时间(包括层间拓扑更新的情况)可以达到最小化;使得各路由层能够尽可能的同时与该变化同步进行;收敛机制最为优化。
图1是本发明的三层光网络示意图;图2是本发明的故障探测节点处理流程图;图3是本发明的光网络中代表节点处理流程图;图4是本发明的光网络中普通节点处理流程图。
具体实施例方式
下面结合附图和实施例对本发明作进一步说明。
在图1所示的实施例中,给出了本发明的一个三层自动交换光网络示意图。如图1所示的,有上、中、下三层光网络,每个路由层都有若干个路由控制域,在路由控制域中包含有代表节点和普通节点,节点之间有路径。
三层网络为层Level1、Level2、Level3,控制路由域有CD1、CD2、CD3、CD4、CD5、CD6、CD7、CD8,代表节点有S1、S2等,普通节点有N1、N2等,S1、N1、N2在CD8中,S2在CD2中。代表节点的填充背景比普通节点的深,五边形,普通节点为六边形。各个路由层之间、同一层网络不同路由控制域的节点之间、同一路由控制域的节点之间都是有信息更新发送的路径。
在图2、图3和图4给出的实施例中,如图2所示,是本发明的故障探测节点处理流程图,图3是本发明光网络中代表节点处理流程图。
参见图2和图3,在同一个所述的路由控制域内,相对于普通节点,更新通告信息优先发送给所述的代表节点。各个所述的路由控制域和路由层进行状态更新处理的过程是并行的。本发明的步骤为步骤1,在各层路由光网络中,当一个路由控制域的节点探测到链路故障,该节点会迅速地向其所属路由控制域的代表节点发送链路状态通告进行状态更新,IP数据包的目的地址填充为代表节点的接口IP地址;步骤2,发起更新的路由器通过洪泛将链路状态通告发送给其他的相邻路由器;步骤3,发起更新的路由器将所发送的链路状态通告从链路状态数据库中删除;步骤4,代表节点接收到链路状态通告后,就更新其路由控制域的拓扑数据库,并对新的路由控制域拓扑进行拓扑抽象。如果新的抽象拓扑和原来的相同,代表节点将不会做任何处理,否则,代表节点将重复步骤1和步骤2在其父路由控制域内发起状态更新。这一处理过程将重复进行直到所有的路由层及各层的所有路由控制域开始了更新和收敛处理。本条步骤是对代表节点的更新处理描述;步骤5,当一个路由器接收到链路状态通告后,将更新其拓扑数据库,并将链路状态通告洪泛到它的其它数据接口上。
步骤6,所有路由器运行路由算法,如最短路径(Dijkstra)算法,重新计算路由表。
参见图4,是本发明光网络中普通节点处理流程图。
普通节点更新处理步骤为接收到该链路状态通告,更新拓扑数据库,并将该链路状态通告洪泛到它的其它数据接口上,再重新计算路由表。
其中,本发明提出在使用0SPF的收敛算法的时候,要求发起更新通告的节点首先通过IP数据包将该状态更新消息发送给本路由控制域的代表节点,然后再在本路由控制域内进行链路状态通告的广播,该代表节点进行通告判决后,在需要通告的情况下也会首先向上一级的代表节点进行通报,依此类推。
如果较高的路由层的拓扑抽象信息向下面的路由层传递,每个节点都能够独立地进行跨越路由控制域的路由计算,而不再需要路由服务器。
整个自动交换光网络的拓扑收敛时间主要为,不计最上层的各个路由层的拓扑抽象、通告判决时间的相加值之和,加上最上层路由层的收敛时间,再加上不计最上层的各个路由层的从更新发起节点到其所属的路由控制域的代表节点的所有跳的处理时间的相加值之和。
权利要求
1.一种应用于分层路由光网络的拓扑收敛方法,当一个路由控制域中的节点探测到了链路故障,其特征为所述的拓扑收敛步骤为步骤[1],探测到链路故障的节点向其所属的所述的路由控制域的代表节点发送链路状态通告来进行状态更新;步骤[2],发起更新的路由器通过洪泛将所述的链路状态通告发送给其他的相邻路由器;步骤[3],所述的发起更新的路由器将所发送的链路状态通告从链路状态数据库中删除;步骤[4],所述的代表节点接收到链路状态通告后,更新其所在路由控制域的拓扑数据库,并对新的路由控制域拓扑进行拓扑抽象;步骤[5],当一个路由器接收到链路状态通告后,将更新其拓扑数据库,并将链路状态通告洪泛到它的其它数据接口上;步骤[6],所有的路由器运行路由算法,重新计算路由表。
2.根据权利要求1所述的一种应用于分层路由光网络的拓扑收敛方法,其特征为在同一个所述的路由控制域内,相对于普通节点,更新信息优先发送给所述的代表节点。
3.根据权利要求1所述的一种应用于分层路由光网络的拓扑收敛方法,其特征为在各层所述的路由层中,进行状态更新处理的过程是并行的;在同一路由层内的各个所述的路由控制域中,进行状态更新处理的过程也是并行的。
4.根据权利要求1或2所述的一种应用于分层路由光网络的拓扑收敛方法,其特征为在给所述的代表节点发送链路状态通告之前,发起更新通告的节点先将承载状态更新信息的IP数据包的目的地址填充为代表节点接口的IP地址。
5.根据权利要求4所述的一种应用于分层路由光网络的拓扑收敛方法,其特征为在所述的代表节点进行通告判决后,在需要通告的情况下也会首先向上一级的代表节点进行通报,依此类推。
6.根据权利要求1所述的一种应用于分层路由光网络的拓扑收敛方法,其特征为在所述的步骤[4]中,如果新的抽象拓扑和原来的抽象拓扑相同,所述的代表节点将不会做任何处理;如果不相同,代表节点将重复所述的步骤[1]和步骤[2],在其父路由控制域内发起代表节点优先的状态更新,重新计算路由表,这一过程重复进行,一直到所述所有路由层及各层的所有路由控制域开始更新和收敛处理为止。
7.根据权利要求1所述的一种应用于分层路由光网络的拓扑收敛方法,其特征为所述的路由器运行路由算法,使用的算法有最短路径算法。
8.根据权利要求1或3所述的一种应用于分层路由光网络的拓扑收敛方法,其特征为整个所述的自动交换光网络的拓扑收敛时间主要为,不计最上层的各个所述的路由层的拓扑抽象、通告判决时间的相加值之和;加上最上层路由层的收敛时间;再加上不计最上层的各个路由层的从更新发起节点到其所属的所述的路由控制域的代表节点的所有跳的处理时间的相加值之和。
全文摘要
本发明公开了一种应用于分层路由光网络的拓扑收敛方法,基于代表节点优先通知的拓扑收敛(SNF)法当一个节点探测到了链路故障,会向其所属控制域的代表节点发送链路状态通告(LSA)进行状态更新;发起更新的路由器通过洪泛将该LSA发给其他相邻路由器;该路由器将LSA从链路状态数据库中删除;收到该LSA后,代表节点更新本地控制域的拓扑数据库,对新的控制域拓扑进行拓扑抽象;当一个路由器接收到LSA,将更新其拓扑数据库,并将该LSA洪泛到它的其它数据接口上;各路由器运行路由算法,重新计算路由表。本发明可对光网络快速有效地收敛。
文档编号H04L29/06GK1787469SQ20051012410
公开日2006年6月14日 申请日期2005年11月25日 优先权日2005年11月25日
发明者纪越峰, 刘爱波, 陆月明 申请人:北京邮电大学