一种应用于Mesh拓扑片上网络的故障信息传播方法_2

文档序号:9306631阅读:来源:国知局
信息传播到以故障链路为中心的传播区域内,该传播区域是一个矩形,在端口方向上为整个列或行上的所有路由器,在正交方向上为2N+1列或行上的所有路由器。
[0026]对于某个路由器(称为本地路由器)而言,其获取链路故障信息的途径有两种:第一种途径是直接通过故障检测电路获得,第二种途径是通过相邻路由器传递而来。两种途径都会直接告知此本地路由器,故障路由器的故障端口发生故障,或者其他等效的信息格式。
[0027]扩散新增链路故障信息,存在三种情况:第一种情况,如果故障路由器与本地路由器在故障端口的端口方向上同行或同列,链路故障信息首先向同在端口方向上的端口传递;如果正交方向传播的宽度大于O时,还要向故障端口的正交方向传递;第二种情况,不满足第一种情况时,本地路由器在故障路由器的故障端口的正交方向传播的宽度内且不是传播边界,则继续向外扩散链路故障信息;第三种情况,本地路由器在故障路由器的故障端口的正交方向传播的宽度之外或者传播边界上,那么此链路故障信息至此不再扩散。
[0028]S3.更新当前故障区域:故障区域为相互之间会产生相互干扰的故障链路组成的区域,各路由器根据接收到的新增链路故障信息更新当前故障区域。
[0029]步骤S3中各路由器根据接收到的新增链路故障信息更新当前故障区域的方式为:当路由器先前没有记录故障信息时,获取新增故障区域,将新增故障区域作为当前故障区域;当路由器先前记录了故障信息时,获取新增故障区域,将已知故障区域和新增故障区域的并集作为当前故障区域。
[0030]更新当前故障区域时,只对处于同一方向上的故障区域取并集,与正交传播宽度无关。此外,仍要保留已知故障区域的链路故障信息,以便进行补充扩散。
[0031]步骤S3中所述的相互干扰的故障链路为在行方向或在列方向上相邻的故障链路。
[0032]步骤S3中所述的故障区域为:若只有一行或一列存在故障链路,则将该行或列定义为故障区域。若多行或列存在故障链路且存在故障链路的行或列为连续的:当连续行的每一行均存在故障链路时,将连续行的起始行和结束行之间的行为故障区域,起始行和结束行定义为故障区域的边界;当连续列的每一列均存在链路故障时,将连续列的起始列和结束列之间的定义为故障区域,起始列和结束列定义为故障区域的边界。
[0033]若多行或列存在故障链路且存在故障链路的行或列为不连续的:则将所有存在故障链路的行和列的并集定义为故障区域。
[0034]所述的已知故障区域和新增故障区域的并集的获得方式为:对同处于行方向上的故障区域取并集,对同处于列方向上的故障区域取并集。
[0035]如图4所示,空心圆表示有正常路由器,实心圆表示故障路由器,在X轴方向上,从O到5行都有故障路由器,因此X轴的故障区域为[0,5],故障边界为第O行和第5行。而Y轴方向上,故障区域比较分散:第O列、第2列和7列有故障,且第I列、第3列和第6列无故障,因此故障区域分别为[0,O]、[2,2]和[7,7],这个三个故障区域的边界分别为:第O行、第2行和第7行。第4和5列都有故障,而第3列和第6列没有故障,因此故障区域为[4,5],其故障边界为第4行和第5行。
[0036]S4.补充扩散链路故障信息:在当前故障区域内传播各路由器还未记录的链路故障信息。
[0037]步骤S4中在当前故障区域内传播各路由器还未记录的链路故障信息的方式为:将新增链路故障信息传播给已知故障区域内的路由器,将已知链路故障信息传播给新增故障区域内的路由器。若路由器在已知故障区域的传播边界,则向背向已知故障区域的正交方向传递所有已知链路故障信息;若路由器在新增故障区域的传播边界,则向背向新增故障区域的正交方向传递所有新增链路故障信息。
[0038]新增链路故障信息扩散的条件是,路由器处在新增链路故障信息的传播边界,且在已知故障链路故障信息的传播区域内;相似地,已知链路故障信息扩散的条件是,路由器处在已知链路故障信息的传播边界,且在新增链路故障信息的传播区域内。
[0039]如图5所示,用路由器(x0,yO)表示故障路由器,端口 a表示故障端口,本地路由器表示其他路由器,则链路故障信息的传播流程为:
本地路由器通过故障检测电路或相邻路由器获得路由器(x0,y0)的端口 a故障的链路故障信息,用故障信息三元组(x0,y0,a)表示。
[0040]判断本地路由器与故障(xO,y0,a)是否同在端口方向上:若本地路由器与故障(x0,y0,a)同在端口方向上,则由本地路由器向同在端口方向上的路由器发送链路故障信息。并判断正交方向传播的宽度是否大于O。若正交方向传播的宽度大于0,则由本地路由器向端口 a的正交方向上的路由器发送链路故障信息。若本地路由器与故障(x0,y0,a)不同在端口方向上,贝Ij判断本地路由器是否在故障(x0,y0,a)的正交方向传播宽度内。若在正交方向传播范围内,则由本地路由器向在背向故障(x0,y0,a)的正交方向上的路由器发送链路故障信息。
[0041]判断当前故障区域是否需要更新:若当前故障区域需要更新,则取已知故障区域和新增故障区域的并集为当前故障区域,并判断本地路由器是否在已知链路故障的传播边界;若当前故障区域不需要更新,则停止链路故障信息传播。
[0042]判断本地路由器是否在已知链路故障的传播边界:若本地路由器在已知链路故障的传播边界,则向背向已知故障区域的正交方向端口传递所有已知链路故障信息,并判断本地路由器在新增链路故障的传播边界;若本地路由器不在已知链路故障的传播边界,则判断本地路由器是否在新增链路故障的传播边界。
[0043]判断本地路由器是否在新增链路故障的传播边界:若本地路由器不在新增链路故障的传播边界,则停止链路故障信息传播;若地路由器在新增链路故障的传播边界,则向背向新增故障区域的正交方向传递所有新增链路故障信息,然后停止链路故障信息传播。
[0044]图6至图16分别展示了三个典型的故障传播示例,图中,用X表示故障链路或故障路由器,由箭头表示链路故障信息传播的方向。图中用不同的图案表明传播的链路故障信息,一种条纹(横条纹、竖条纹或斜条纹)对应于一个链路故障信息,条纹的重叠代表路由器知晓多种链路故障信息。
[0045]当两个链路故障时:路由器(3,3)和路由器(4,3)间的链路故障(故障I)和路由器(1,4)和路由器(2,4)间的链路故障(故障II)。假定正交方向传播的宽度为1,如图6、图7和图8所示。
[0046]故障I发生,路由器(3,3)和路由器(4,3)检测到链路故障,进行新链路故障信息传播,如图6所示。
[0047]第2列、第3列和第4列路由器知晓故障I,Y轴方向的故障区域为[3,3],X轴方向没有故障区域。
[0048]故障II发生,路由器(1,4)和路由器(2,4)检测到链路故障,进行新链路故障信息传播,如图7所示。
[0049]第2列知晓故障I,第3列和第4列路由器知晓故障I和故障II,第5列路由器知晓故障II,Y轴方向的故障区域为[3,3]和[4,4],X轴方向没有故障区域。
[0050]故障I与故障II在Y轴方向连续,故障区域合并。第3列和第4列路由器的故障区域为[3,4] ο
[0051]第3列路由器处于故障II的传播边界,且在故障I的传播区域内,因此,背向故障II的传播区域,向西传播故障II的链路故障信息;第4列处于故障I的传播边界,且在故障II的传播区域内,因此,背向故障I,向东传播故障I的链路故障信息,如图8所示。
[0052]第2列、第3列、第4列和第5列路由器知晓的故障I和故障II,故障区域为[3,4]。
[0053]由于第2列和第5列路由器分别在故障I和故障II的传播区域边界,所以链路故障信息传播到此为止。
[0054]Y轴方向上:第O列、第I列、第6列和第7列路由器不知晓链路故障信息;第2列、第3列、第4列和第5列路由器知晓故障I和故障II,故障区域为[3,4]。X轴方向上没有链路故障信息。
[0055]当两个路由器故障时:路由器(4,3)故障(故障I)和路由器(2,4)故障(故障II)。假定正交方向传播的宽度为2,如图9、图10和图11所示。
[0056]故障I发生,路由器(3,3)、路由器(4,2)、路由器(5,3)和路由器(4,4)检测到故障,进行新故障传播,如图9所示。
[0057]Y轴方向:第I列、第2列、第3列、第4列和第5列路由器知晓故障I,故障区域为[3,3] ;X轴方向:第2行、第3行、第4行、第5行和第6行路由器知晓故障I,故障区域为[4,4] ο
[0058]故障II发生,路由器(1,4)、路由器(2,3)、路由器(3,4)和路由器(2,5)检测到故障,进行新故障传播,如图10所示。
[0059]Y轴方向:第I列路由器知晓故障I,第2列、第3列、第4列和第5列知晓故障I和故障II,第6列路由器知晓故障III,故障区域为[3,3]和[4,4]。X轴方向:第O行和第I行路由器知晓故障II,第2行、第3行和第4行路由器知晓故障I和故障II,第5行和第6行路由器知晓故障I,故障区域为[2,2]和[4,4] ο
[00
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1