一种基于路径扩展与淘汰机制的网络拓扑分散短路径集合计算方法与流程

文档序号:15930408发布日期:2018-11-14 01:34阅读:237来源:国知局

本发明涉及传输与路由网络领域,特别是指一种基于路径扩展与淘汰机制的网络拓扑分散短路径集合计算方法。

背景技术

现代社会中常见各类传输网络,例如城市道路网络、计算机通信网络等,它们是支持社会运行的重要基础设施。在这些网络运行时,传输物从起始节点出发沿着一条路径抵达目的节点,这一路径往往由一定的网络路由算法运算给出。高效的网络路由算法,可以保证传输物在传输过程中能够尽力避开网络中的交通拥堵区域,快速完成传输,使网络不易发生拥堵。

当前,常见的网络路由算法往往采用最短路径路由思想,即规定传输物沿着从起始节点出发到目的节点的一条长度最短的路径进行传输。最短路径路由实现简单,但在网络交通流量较大时不能较好地缓解网络拥堵,因为从网络拓扑的角度来看,网络不同节点对间的最短路径通常通过网络中少量的核心节点(hub),这些节点会成为网络在应用最短路径路由时的交通瓶颈节点。

值得注意的是,在常见传输网络中往往存在大量环状子图,即网络中一对节点间往往可能存在多条拓扑分散(即各路径途径的相同节点或连边较少)且长度较短(即各路径的长度与最短路径的长度接近)的路径,本发明称它们组成的集合为这一对节点的拓扑分散短路径集合。若在网络路由与传输过程中,使具有相同起始目的节点对的传输物,根据实际的网络交通状况分时地沿着起始节点到目的节点的拓扑分散短路径集合中的不同路径传输,将可以有效增大传输物避开网络交通拥堵区域的概率,实现网络的负载均衡分布,提升网络的传输性能。

网络拓扑分散短路径集合的计算方法是上述路由思想的一个关键基础。本发明就此提出一种新颖的基于路径扩展与淘汰机制的网络拓扑分散短路径集合计算方法。



技术实现要素:

本发明提出的一种基于路径扩展与淘汰机制的网络拓扑分散短路径集合计算方法,在计算网络中任意一个节点o到另一个节点d的拓扑分散短路径集合时的步骤如下:

步骤1:创建一个空的路径集合ω,同时为网络中除节点o之外的每一个节点(记为i)创建一个空的路径集合so,i以及一个值为正无穷的变量lo,i;

步骤2:遍历节点o的每一个邻居节点(记为j),将节点o到节点j的直达路径o→j同时加入ω和so,j;

步骤3:若ω为空,则跳转至步骤6;

步骤4:从ω中取出一条长度最短的路径(记为p);然后对于路径p的末尾节点(记为s),遍历节点s的每一个邻居节点(记为t),若节点t未出现在路径p中,则执行步骤4.1~4.4的操作:

步骤4.1:使用节点t扩展路径p,得到路径p→t;

步骤4.2:如果路径p→t的长度小于lo,t×α,那么:首先将路径p→t加入so,t,同时更新lo,t为路径p→t的长度;然后删除so,t中所有长度大于lo,t×α的路径;

步骤4.3:若so,t中包含β+1条路径,那么:首先对于网络中的每一个节点(记为k),统计so,t有多少条路径途径节点k,称之为节点k的拓扑重叠代价;然后从so,t中淘汰(即去掉)除其中长度最短的一条路径外的另一条路径,该路径途径的所有节点的拓扑重叠代价之和最大;

步骤4.4:如果路径p→t存在于so,t之中,那么将路径p→t加入ω。

步骤5:跳转至步骤3;

步骤6:运算结束,返回so,d作为节点o到节点d的拓扑分散短路径集合。

上述算法中,路径的长度定义为路径途径的节点的个数,α是用于控制拓扑分散短路径集合中路径长度上限的可调参数,β是用于控制拓扑分散短路径集合中路径数量上限的可调参数。

本发明的技术构思为:利用已计算的起始节点o到一个节点s的拓扑分散路径集合中的一条路径p,扩展生成节点o到节点s的邻居节点t的一条路径p→t,当该路径长度较短时,将其加入节点o到节点t的拓扑分散路径集合,否则淘汰该路径。同时,每当拓扑分散路径集合包含的路径数量超过上限时,结合节点拓扑重叠代价的概念,淘汰其中除长度最短的一条路径外的另一条与其他路径拓扑重叠最大的路径。

本发明的有益效果为:给出的计算方法可有效计算网络中任意一对节点的拓扑分散短路径集合。同时,给出的计算方法可一次性计算网络中一个起始节点到其他所有节点的拓扑分散短路径集合,均摊到其中一对节点的计算时间消耗较少。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分。本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中,图1示出了本发明的一个实施例的网络拓扑;图2示出了针对图1所示网络利用本发明给出计算方法运算得到的节点1到节点6的拓扑分散短路径集合示意图,集合中的路径使用带箭头的虚线表示,分别是路径1→2→6、路径1→3→6和路径1→4→5→6。

具体实施方式

以下结合说明书附图与一个实施例对本发明做进一步说明。

实施例:参照图1与图2,一种基于路径扩展与淘汰机制的网络拓扑分散短路径集合计算方法,在计算网络中任意一个节点o到另一个节点d的拓扑分散短路径集合时的步骤如下:

步骤1:创建一个空的路径集合ω,同时为网络中除节点o之外的每一个节点(记为i)创建一个空的路径集合so,i以及一个值为正无穷的变量lo,i;

步骤2:遍历节点o的每一个邻居节点(记为j),将节点o到节点j的直达路径o→j同时加入ω和so,j;

步骤3:若ω为空,则跳转至步骤6;

步骤4:从ω中取出一条长度最短的路径(记为p);然后对于路径p的末尾节点(记为s),遍历节点s的每一个邻居节点(记为t),若节点t未出现在路径p中,则执行步骤4.1~4.4的操作:

步骤4.1:使用节点t扩展路径p,得到路径p→t;

步骤4.2:如果路径p→t的长度小于lo,t×α,那么:首先将路径p→t加入so,t,同时更新lo,t为路径p→t的长度;然后删除so,t中所有长度大于lo,t×α的路径;

步骤4.3:若so,t中包含β+1条路径,那么:首先对于网络中的每一个节点(记为k),统计so,t有多少条路径途径节点k,称之为节点k的拓扑重叠代价;然后从so,t中淘汰(即去掉)除其中长度最短的一条路径外的另一条路径,该路径途径的所有节点的拓扑重叠代价之和最大;

步骤4.4:如果路径p→t存在于so,t之中,那么将路径p→t加入ω;

步骤5:跳转至步骤3;

步骤6:运算结束,返回so,d作为节点o到节点d的拓扑分散短路径集合。

上述算法中,路径的长度定义为路径途径的节点的个数,α是用于控制拓扑分散短路径集合中路径长度上限的可调参数,β是用于控制拓扑分散短路径集合中路径数量上限的可调参数。

在本例中,设α=1.5,β=3,以针对节点1到节点6的拓扑分散短路径集合为例。

首先,按照步骤1:创建一个空的路径集合ω,同时为网络中除节点1外的每一个节点(记为i,i=2~6)创建一个空的路径集合s1,i以及一个值为正无穷的变量l1,i。运行结果见表1第1行。

之后,按照步骤2:遍历节点1的每一个邻居节点(记为j,j=2~6),将节点1到节点j的直达路径1→j同时加入ω和so,j,运行结果见表1第2行。

之后,按照步骤3,由于ω不为空,执行步骤4:从ω中取出长度最短的路径p=1→2;然后对于路径p的末尾节点s=2,遍历节点s的每一邻居节点(记为t,t=1、5、6),若节点t未出现在路径p中,则执行步骤4.1~4.4的操作。期间,在路径1→2的基础上,分别由节点2的邻居节点5和6扩展得到了路径1→2→5和1→2→6,它们分别被加入s1,5和s1,6,并同时被加入ω,运行结果见表1第3行。

之后,按照步骤5,执行步骤3,由于ω不为空,执行步骤4:从ω中取出一条长度最短的路径p=1→3,然后对于路径p的末尾节点s=3,遍历节点s的每一邻居节点(记为t,t=1、4、6),若节点t未出现在路径p中,则执行步骤4.1~4.4的操作,运行结果见表1第4行。

之后,重复步骤5、3、4的操作多次,运行结果见表1第5~15行。期间在第6、7、9、11、12、13、14、15行的操作中涉及到部分扩展得到的路径因长度过长被淘汰,在第8、9、10、11行的操作中涉及到扩展路径集合中路径数量超限,拓扑重叠代价之和最大的路径被淘汰。

例如,在第6行的操作中,扩展得到的路径1→2→5→4由于过长(其长度超过最短路径1→3长度的α=1.5倍)被淘汰,该路径因此未被加入ω。在第8行的操作中,由于在加入扩展路径1→3→4→5后,s1,5中包含4条路径,超过β=3的上限。经统计,对于s1,5,网络中节点1~6的拓扑重叠代价分别为:4、2、1、2、4、1,由于除集合中最短路径1→2→5外,路径1→2→6→5和路径1→3→4→5各自途径节点的拓扑重叠代价之和同时为最大值11,本例中随机淘汰了路径1→3→4→5,该路径因此未被加入ω。

最后,由于ω为空,执行步骤5、3、6结束运算,最终获得节点1到节点6的拓扑分散短路径集合s1,6。

表1实施例中分步骤执行的结果

如上所述为本发明的具体实施案例,用于使本发明更加清晰。凡在本发明的精神和权利要求的保护范围内,对本发明所作的任何修改、等同替换,都落入本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1