基于DAG的多约束路由优化的计算方法技术

技术编号:19866059 阅读:49 留言:0更新日期:2018-12-22 13:49
本发明专利技术公开了一种基于DAG的多约束路由优化的计算方法,包括:对原网络拓扑图进行剪枝;根据得到所述DAG图,确定所述源节点到目的节点的最优路径。因此,本发明专利技术实施例提供的基于DAG的多约束路由优化的计算方法,首先利用图论有关性质和剪枝策略,计算出源节点到其余节点的满足多约束要求的所有路径,将原网络拓扑图剪枝为DAG图。然后采用多约束路径计算策略,利用链路综合代价函数,对带宽、延时、时延抖动、成本等QoS参数进行均衡,使用主客观赋权法G1_标准离差法和邻居节点集自适应调整链路权重,基于DAG图寻找一条源节点到目的节点的最优路径,从而增加了计算结果的准确度,避免了不相连节点的无用计算过程,有效减小计算量,提高了计算效率。

【技术实现步骤摘要】
基于DAG的多约束路由优化的计算方法
本专利技术涉及网络通信路由
,尤其涉及一种基于DAG的多约束路由优化的计算方法。
技术介绍
随着网络应用和探索的日益多样化,网络正被迫满足各种流量需求,并具有明确且关键的服务质量(qualityofservice,简称QoS)要求,比如带宽、时延、时延抖动、丢包率等。同时考虑两个以及两个以上QoS指标约束的路由问题称为多约束QoS路由问题,是在多约束条件下求最优解的问题。已有研究表明,多约束QoS路由问题是一个NPC问题,该优化问题的求解很困难。现有技术中基于剪枝策略进行求解多约束路由的问题,一般都是将不满足凹性条件的链路进行剪枝,没有对加性条件(乘性条件可以转为加性条件)的链路进行剪枝。现有的基于图论的多约束路由算法中,都是将多约束QoS参数通过线性或非线性代价函数拟合成单一函数值,再以该函数值为路径选择的度量,利用最短路径算法近似解决多约束路由问题。其理论依据是单个度量函数求解两节点间最短路径能在多项式时间内完成。如Jaffe提出将路径代价分量进行线性综合,把多约束问题转化回单约束问题,然后再利用Dijkstra算法求出源节点到目的节点之间具有最小代价的最优路由。Korkmaz与Krunz提出的H_MCOP算法利用Dijkstra算法正反两个方向进行搜索,反向搜索时利用线性代价函数,正向搜索时利用非线性代价函数求出最优路径。另外有算法提出首先求出k条最短路径算法,然后利用综合评价指标选出最优的一条路径。上述算法都是简单的对多约束参数进行综合,没有考虑实际业务对各个参数的不同要求,使得计算过程复杂,计算量大。专
技术实现思路
本专利技术实施例提供了一种基于DAG的多约束路由优化的计算方法,解决了现有技术中多约束路由算法计算复杂的问题。本专利技术实施例提供的基于DAG的多约束路由优化的计算方法,包括:S11,将源节点加入队列,且对所述源节点进行标记;S12,对所述源节点的每一个邻居节点进行松弛判断:若所述邻居节点满足扩展条件,则将所述邻居节点加入队列,并根据先进先出原则剔除所述源节点,则所述邻居节点为队列的首节点,所述方法进入S13;若所述邻居节点不满足所述扩展条件,则将所述源节点与所述邻居节点之间的链路剪枝,并重复S12;S13,对所述邻居节点的每一个邻居节点进行松弛判断:若所述邻居节点的邻居节点满足扩展条件,则将所述邻居节点的邻居节点加入队列,并根据先进先出原则,剔除所述邻居节点,则所述邻居节点的邻居节点为队列的首节点,所述方法进入S14;若所述邻居节点的邻居节点不满足所述扩展条件,则将所述邻居节点与所述邻居节点的邻居节点之间的链路剪枝,并重复S13;S14,对队列中的首节点重复所述S13,并对加入队列中的节点进行标记,至队列中的所有节点被剔除,得到所述源节点与其余节点之间的路径,得到剪枝后的DAG图;其中,所述扩展条件包括凹性条件、乘性条件及加性条件;S2,根据得到所述DAG图,确定所述源节点到目的节点的最优路径:S21,确定满足带宽、延迟及延迟抖动的多约束值的代价函数:其中,wi为权值系数,且wi>0,n为约束条件的个数;i及j为节点;l(i,j)为节点i到节点j之间的链路,Bandwidth(i,j)是链路l上的带宽约束;Delay(i,j)是链路l上的时延约束;Jitter(i,j)是链路l上的时延抖动约束;S22,确定所述权值系数:根据主客观赋权法G1_标准离差算法中G1法确定所述权值系数的第一向量w′,w′=(w′1,w′2,…,w′n);根据主客观赋权法G1_标准离差算法中的标准离差法和节点的邻居节点集计算权值系数的第二向量w″,w″=(w″1,w″2,…,w″n);根据乘法集成法对所述权值系数的所述第一向量w′及所述第二向量w″组合,则所述权值系数的综合权值系数向量为w,w=(w1,w2,…,wn),S23,确定最优路径:S231,将所述源节点加入禁忌表;S232,根据所述剪枝后的DAG图、第一向量w′、第二向量w″、所述综合权值系数向量w、所述源节点及所述公式(1)确定所述源节点到其余邻居节点的链路,S233,确定S232中得到的所述链路中综合约束最小的链路,并将综合约束最小的链路中的邻居节点加入到禁忌表,作为第二个节点;S234,根据所述剪枝后的DAG图,利用S233确定所述第二个节点与所述第二个节点的邻居节点集中的综合约束最小的链路。S235,重复S234至得到所述源节点到目的节点之间的最短路由。综上,本专利技术实施例提供的基于DAG的多约束路由优化的计算方法,首先利用图论有关性质和剪枝策略,计算出源节点到其余节点的满足多约束要求的所有路径,将原网络拓扑图剪枝为DAG图。然后采用多约束路径计算策略,利用链路综合代价函数,对带宽、延时、时延抖动、成本等QoS参数进行均衡,使用主客观赋权法G1_标准离差法和邻居节点集自适应调整链路权重,基于DAG图寻找一条源节点到目的节点的最优路径,从而增加了计算结果的准确度,避免了不相连节点的无用计算过程,有效减小计算量,提高了计算效率。附图说明图1为本专利技术实施例提供的基于DAG的多约束路由优化的计算方法的流程示意图。图2为本专利技术实施例提供的基于DAG的多约束路由优化的计算方法的随机生成的网络拓扑图。图3为本专利技术实施例提供的基于DAG的多约束路由优化的计算方法的剪枝后的DAG。图4为本专利技术另一实施例提供的基于DAG的多约束路由优化的计算方法的网络拓扑图。具体实施方式下面结合本专利技术中的附图,对本专利技术实施例的技术方案进行清楚、完整的描述,显然,所描述的实施例是本专利技术的一部分实施例,而不是全部实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本专利技术保护的范围。为了便于理解和说明,下面通过图1至图4详细说明本专利技术实施例提供的基于DAG的多约束路由优化的计算方法。该方法可以包括:S1,对原网络拓扑图进行剪枝:应理解,本专利技术中利用了图论思想中的队列,对搜索过程进行辅助。具体的:S11:从源节点开始进行搜索,首先将源节点加入队列并对源节点进行标记,表明已经对源节点搜索过了。S12:对源节点的每一个邻居节点进行松弛判断,如果邻居节点满足扩展条件,就将该邻居节点进入队列,然后按照队列“先进先出”的原则将源节点剔出队列,则邻居节点为队列的首节点,方法进入S13。如果该邻居节点不满足扩展条件,则将源节点与该邻居节点之间的链路剪枝。并重复S12。其中,扩展条件包括凹性条件、乘性条件及加性条件。可选的,在对源节点的每一个邻居节点进行松弛判断时,具体可以通过如下方法进行:S121,判断该源节点与该源节点的邻居节点的链路是否满足凹性约束条件。例如带宽等约束条件。如果不满足该凹性约束条件,则将该源节点与该邻居节点的链路进行剪枝,该松弛判断结束,该邻居节点不满足扩展条件,如果满足凹性约束条件,则该方法进入S122。S122,判断该链路是否满足加性条件:若该源节点与该邻居节点关于约束条件的和大于请求的约束,删除该邻居节点,该松弛判断结束,该邻居节点不满足扩展条件;若该源节点与该邻居节点关于约束条件的和小于请求的约束,则该邻居节点处保存该源节点与该邻居节点关于约束条件的和,该本文档来自技高网
...

【技术保护点】
1.一种基于DAG的多约束路由优化的计算方法,其特征在于,包括:S1,对原网络拓扑图进行剪枝:S11,将源节点加入队列,且对所述源节点进行标记;S12,对所述源节点的每一个邻居节点进行松弛判断:若所述邻居节点满足扩展条件,则将所述邻居节点加入队列,并根据先进先出原则剔除所述源节点,则所述邻居节点为队列的首节点,所述方法进入S13;若所述邻居节点不满足所述扩展条件,则将所述源节点与所述邻居节点之间的链路剪枝,并重复S12;S13,对所述邻居节点的每一个邻居节点进行松弛判断:若所述邻居节点的邻居节点满足扩展条件,则将所述邻居节点的邻居节点加入队列,并根据先进先出原则,剔除所述邻居节点,则所述邻居节点的邻居节点为队列的首节点,所述方法进入S14;若所述邻居节点的邻居节点不满足所述扩展条件,则将所述邻居节点与所述邻居节点的邻居节点之间的链路剪枝,并重复S13;S14,对队列中的首节点重复所述S13,并对加入队列中的节点进行标记,至队列中的所有节点被剔除,得到所述源节点与其余节点之间的路径,得到剪枝后的DAG图;其中,所述扩展条件包括凹性条件、乘性条件及加性条件;S2,根据约束请求及得到所述DAG图,确定所述源节点到目的节点的最优路径:S21,确定满足带宽、延迟及延迟抖动的多约束值的代价函数:...

【技术特征摘要】
1.一种基于DAG的多约束路由优化的计算方法,其特征在于,包括:S1,对原网络拓扑图进行剪枝:S11,将源节点加入队列,且对所述源节点进行标记;S12,对所述源节点的每一个邻居节点进行松弛判断:若所述邻居节点满足扩展条件,则将所述邻居节点加入队列,并根据先进先出原则剔除所述源节点,则所述邻居节点为队列的首节点,所述方法进入S13;若所述邻居节点不满足所述扩展条件,则将所述源节点与所述邻居节点之间的链路剪枝,并重复S12;S13,对所述邻居节点的每一个邻居节点进行松弛判断:若所述邻居节点的邻居节点满足扩展条件,则将所述邻居节点的邻居节点加入队列,并根据先进先出原则,剔除所述邻居节点,则所述邻居节点的邻居节点为队列的首节点,所述方法进入S14;若所述邻居节点的邻居节点不满足所述扩展条件,则将所述邻居节点与所述邻居节点的邻居节点之间的链路剪枝,并重复S13;S14,对队列中的首节点重复所述S13,并对加入队列中的节点进行标记,至队列中的所有节点被剔除,得到所述源节点与其余节点之间的路径,得到剪枝后的DAG图;其中,所述扩展条件包括凹性条件、乘性条件及加性条件;S2,根据约束请求及得到所述DAG图,确定所述源节点到目的节点的最优路径:S21,确定满足带宽、延迟及延迟抖动的多约束值的代价函数:其中,wi为权值系数,且wi>0,n为约束条件的个数;i及j为节点;l(i,j)为节点i到节点j之间的链路,Bandwidth(i,j)是链路l上的带宽约束;Delay(i,j)是链路l上的时延约束;jitter(i,j)是链路l上的时延抖动约束;S22,确定所述权值系数:根据主客观赋权法G1_标准离差算法中G1法确定所述权值系数的第一向量w′,w′=(w′1,w′2,…,w′n);根据主客观赋权法G1_标准离差算法中的标准离差法和节点的邻居节点集计算权值系数的第二向量w″,w″=(w″1,w″2,…,w″n);根据乘法集成法对所述权值系数的所述第一向量w′及所述第二向量w″组合,则所述权值系数的综合权值系数向量为w,w=(w1,w2,…,wn),S23,确定最优路径:S231,将所述源节点加入禁忌表;S232,根据所述剪枝后的DAG图、第一向量w′、第二向量w″、所述综合权值系数向量w、所述源节点及所述公式(1)确定所述源节点到其余邻居节点的链路;S233,确定S232中得到的所述链路中综合约束最小的链路,并将综合约束最小的链路中的邻居节点加入到禁忌表,作为第二个节点;S234,根据所述剪枝后的DAG图,利用S233确定所述第二个节点与所述第二个节点的邻居节点集中的综合约束最小的链路;S235,重复S234至得到所述源节点到目的节点之间的...

【专利技术属性】
技术研发人员:王凯东王琨妥艳君胡霞胡有兵
申请(专利权)人:西安电子科技大学中国电子科技集团公司第五十四研究所
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1