发明名称 服务质量约束的链路故障恢复方法
摘要 本发明涉及一种服务质量约束的链路故障恢复方法,首先建立了一种服务质量约束的链路故障多备份路径恢复数学模型,优化目标为最小化网络中所有链路因故障造成的重路由流量中断量之和,在确保业务服务质量的条件下最大程度地重路由流量,最后采用启发式迭代算法LFR‑QoS对建立的链路故障多备份路径恢复数学模型进行求解,经过单条备份路径拼接、备份路径选择2个子算法步骤后,得到了既考虑服务质量QoS约束又考虑链路故障恢复率的链路多条备份路径优化结果,实现了受损链路的有效快速修复,并克服了SelectBP链路故障恢复算法存在的复杂度高、修改拓扑信息等问题。
申请公布号 CN106209621A 申请公布日期 2016.12.07
申请号 CN201610436162.9 申请日期 2016.06.17
申请人 中国人民解放军空军工程大学 发明人 孟相如;崔文岩;任清华;王刚;康巧燕;庄绪春;赵志远
分类号 H04L12/721(2013.01)I;H04L12/707(2013.01)I;H04L12/703(2013.01)I;H04L12/851(2013.01)I;H04L12/24(2006.01)I 主分类号 H04L12/721(2013.01)I
代理机构 西北工业大学专利中心 61204 代理人 王鲜凯
主权项 一种基于LFR‑QoS算法的链路故障多备份路径恢复优化方法,其特征在于步骤如下:步骤1:建立基于多备份路径策略的概率关联故障模型设R为共享风险链路组SRLG事件集合,当任意事件r∈R发生时,故障发生概率不为0的链路集合构成事件r的概率共享风险链路组PSRLG,如式(1):r<sub>PSRLG</sub>={e<sub>i,j</sub>∈E:p<sub>r</sub>(i,j)≠0}    (1)其中,p<sub>r</sub>(i,j)为SRLG事件r发生时链路e<sub>i,j</sub>发生故障的概率;用p<sub>r</sub>表示事件r发生概率,链路e<sub>u,v</sub>和e<sub>i,j</sub>存在故障关联时,各自发生故障的概率分别用p<sub>u,v</sub>和p<sub>i,j</sub>表示,如式(2)与式(3):p<sub>u,v</sub>=p<sub>r</sub>·p<sub>r</sub>(u,v)    (2)p<sub>i,j</sub>=p<sub>r</sub>·p<sub>r</sub>(i,j)    (3)根据(2)式和(3)式,只有当p<sub>r</sub>≠0时p<sub>u,v</sub>和p<sub>i,j</sub>不为0,链路e<sub>u,v</sub>和e<sub>i,j</sub>存在故障关联时各自发生故障的概率同时受到事件r的影响;步骤2:给出优化目标函数TD<maths num="0001"><math><![CDATA[<mrow><mi>T</mi><mi>D</mi><mo>=</mo><msub><mi>&Sigma;</mi><mrow><msub><mi>e</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>&Element;</mo><mi>E</mi></mrow></msub><mrow><mo>(</mo><msubsup><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><mo>(</mo><mrow><mn>1</mn><mo>-</mo><msub><mi>&Pi;</mi><mrow><msub><mi>e</mi><mrow><mi>u</mi><mo>,</mo><mi>v</mi></mrow></msub><mo>&Element;</mo><mi>S</mi><mrow><mo>(</mo><msubsup><mi>B</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>k</mi></msubsup><mo>)</mo></mrow></mrow></msub><mrow><mo>(</mo><mrow><mn>1</mn><mo>-</mo><msub><mi>p</mi><mi>r</mi></msub><mo>&CenterDot;</mo><msub><mi>p</mi><mi>r</mi></msub><mrow><mo>(</mo><mrow><mi>u</mi><mo>,</mo><mi>v</mi></mrow><mo>)</mo></mrow></mrow><mo>)</mo></mrow></mrow><mo>)</mo><msubsup><mi>r</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>k</mi></msubsup><mo>+</mo><msub><mi>p</mi><mi>r</mi></msub><mo>&CenterDot;</mo><msub><mi>p</mi><mi>r</mi></msub><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>(</mo><mrow><msub><mi>l</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>-</mo><msubsup><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><msubsup><mi>r</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>k</mi></msubsup></mrow><mo>)</mo><mo>)</mo></mrow>]]></math><img file="FDA0001020346380000011.GIF" wi="1693" he="102" /></maths>其中,任意链路e<sub>i,j</sub>∈E,<img file="FDA0001020346380000012.GIF" wi="70" he="74" />表示链路e<sub>i,j</sub>的第k条备份路径,<img file="FDA0001020346380000013.GIF" wi="142" he="76" />表示构成<img file="FDA0001020346380000014.GIF" wi="74" he="78" />的所有链路集合,链路e<sub>u,v</sub>代表<img file="FDA0001020346380000015.GIF" wi="145" he="79" />中任意元素,<img file="FDA0001020346380000016.GIF" wi="55" he="79" />表示第k条备份路径<img file="FDA0001020346380000017.GIF" wi="74" he="78" />为链路e<sub>i,j</sub>保留的带宽,l<sub>i,j</sub>表示无故障时其流量负载,N为备份路径的总数量;步骤3:建立链路故障恢复模型1)变量<img file="FDA0001020346380000018.GIF" wi="86" he="78" />表示第k条备份路径<img file="FDA0001020346380000019.GIF" wi="75" he="79" />为链路e<sub>i,j</sub>保留的带宽;<img file="FDA00010203463800000110.GIF" wi="126" he="79" />若e<sub>u,v</sub>是构成<img file="FDA00010203463800000111.GIF" wi="74" he="71" />的某一条链路则置为1;否则为0;2)目标函数Min TD3)约束条件①流守恒约束<maths num="0002"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><msub><mi>&Sigma;</mi><mrow><mo>&ForAll;</mo><mi>u</mi><mo>:</mo><msub><mi>e</mi><mrow><mi>v</mi><mo>,</mo><mi>u</mi></mrow></msub><mo>&Element;</mo><mi>E</mi></mrow></msub><msubsup><mi>f</mi><msub><mi>e</mi><mrow><mi>v</mi><mo>,</mo><mi>u</mi></mrow></msub><mi>h</mi></msubsup><mrow><mo>(</mo><msub><mi>e</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>)</mo></mrow><mo>-</mo><msub><mi>&Sigma;</mi><mrow><mo>&ForAll;</mo><mi>u</mi><mo>:</mo><msub><mi>e</mi><mrow><mi>u</mi><mo>,</mo><mi>v</mi></mrow></msub><mo>&Element;</mo><mi>E</mi></mrow></msub><msubsup><mi>f</mi><msub><mi>e</mi><mrow><mi>u</mi><mo>,</mo><mi>v</mi></mrow></msub><mrow><mi>h</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mrow><mo>(</mo><msub><mi>e</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>)</mo></mrow><mo>=</mo><mn>0</mn></mrow></mtd><mtd><mrow><mo>&ForAll;</mo><msub><mi>e</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>&Element;</mo><mi>E</mi><mo>,</mo><mo>&ForAll;</mo><mi>v</mi><mo>&Element;</mo><mi>V</mi><mo>/</mo><mrow><mo>{</mo><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mo>}</mo></mrow></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001020346380000021.GIF" wi="1774" he="87" /></maths>约束(10)是网络中节点流守恒限制,表示链路e<sub>i,j</sub>故障时,通过h‑1跳数备份路径进入任意节点v∈V/{i,j}的所有流量之和等于流出该节点的经过h跳数的所有备份路径流量之和,链路e<sub>i,j</sub>的端节点不满足此约束,其中<img file="FDA0001020346380000022.GIF" wi="182" he="79" />表示链路e<sub>i,j</sub>故障时,从节点i到u经过h跳数的所有备份路径重路由流量之和;②容量约束<maths num="0003"><math><![CDATA[<mrow><msubsup><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><msubsup><mi>r</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>k</mi></msubsup><mo>&le;</mo><msub><mi>l</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001020346380000023.GIF" wi="1318" he="83" /></maths><maths num="0004"><math><![CDATA[<mrow><msub><mi>&Sigma;</mi><mrow><msub><mi>e</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>&Element;</mo><mi>E</mi></mrow></msub><msub><mi>f</mi><msub><mi>e</mi><mrow><mi>u</mi><mo>,</mo><mi>v</mi></mrow></msub></msub><mrow><mo>(</mo><msub><mi>e</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>)</mo></mrow><mo>&le;</mo><msub><mi>c</mi><mrow><mi>u</mi><mo>,</mo><mi>v</mi></mrow></msub><mo>-</mo><msub><mi>l</mi><mrow><mi>u</mi><mo>,</mo><mi>v</mi></mrow></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>12</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001020346380000024.GIF" wi="1438" he="87" /></maths>式(11)为重路由流量约束,表示链路e<sub>i,j</sub>的所有备份路径重路由流量最大是其负载;式(12)为链路带宽容量约束,表示每条链路承载的重路由流量不应超过其可用带宽;其中<img file="FDA0001020346380000025.GIF" wi="182" he="70" />表示链路e<sub>i,j</sub>故障时分配给链路e<sub>u,v</sub>的流量,其值用式(13)表示;<maths num="0005"><math><![CDATA[<mrow><msub><mi>f</mi><msub><mi>e</mi><mrow><mi>u</mi><mo>,</mo><mi>v</mi></mrow></msub></msub><mrow><mo>(</mo><msub><mi>e</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>)</mo></mrow><mo>=</mo><msubsup><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></msubsup><msubsup><mi>x</mi><mrow><mi>u</mi><mo>,</mo><mi>v</mi></mrow><mrow><mi>i</mi><mo>,</mo><mi>j</mi><mo>,</mo><mi>k</mi></mrow></msubsup><msubsup><mi>r</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>k</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>13</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001020346380000026.GIF" wi="1294" he="87" /></maths>③变量约束1≤k≤N,0≤h≤H    (15)<maths num="0006"><math><![CDATA[<mrow><msubsup><mi>r</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow><mi>k</mi></msubsup><mo>&GreaterEqual;</mo><mn>0</mn><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>16</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001020346380000027.GIF" wi="1187" he="78" /></maths><maths num="0007"><math><![CDATA[<mrow><msubsup><mi>x</mi><mrow><mi>u</mi><mo>,</mo><mi>v</mi></mrow><mrow><mi>i</mi><mo>,</mo><mi>j</mi><mo>,</mo><mi>k</mi></mrow></msubsup><mo>&Element;</mo><mo>{</mo><mn>0</mn><mo>,</mo><mn>1</mn><mo>}</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>17</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001020346380000028.GIF" wi="1213" he="73" /></maths>式(15)表示每条链路最多有N条备份路径,每条备份路径的时延最大为H跳;式(16)表示备份路径预留带宽非负;<img file="FDA0001020346380000029.GIF" wi="94" he="71" />满足整数约束条件式(17);步骤4:采用启发式迭代算法LFR‑QoS算法求解步骤3建立的链路故障恢复模型:LFR‑QoS算法由单条备份路径拼接和备份路径选择2个子算法构成,其中单条备份路径拼接子算法具体包括以下步骤:4a:采用k最短路径法计算链路e<sub>i,j</sub>的最短备份路径集合Ω(BP<sub>i,j</sub>),且<img file="FDA0001020346380000031.GIF" wi="323" he="70" />存在可用的带宽并满足时延约束;4b:计算Ω(BP<sub>i,j</sub>)中的每条最短备份路径BP的重路由流量ΔTD<sub>i,j</sub>;4c:将ΔTD<sub>i,j</sub>值最大的最短备份路径BP作为链路e<sub>i,j</sub>的第k条备份路径;步骤5:采用备份路径选择子算法为每一条链路构造最多N条备份路径,具体包括以下步骤:5a:计算每一条链路e<sub>i,j</sub>的优先级LP<sub>i,j</sub>=p<sub>i,j</sub>l<sub>i,j</sub>;5b:按照LP<sub>i,j</sub>值从大到小顺序对e<sub>i,j</sub>排序;5c:对于每一条链路e<sub>i,j</sub>,从第一条备份路径开始,调用单条备份路径拼接子算法构造第k条备份路径<img file="FDA0001020346380000032.GIF" wi="99" he="72" />直到k=N或者<img file="FDA0001020346380000033.GIF" wi="74" he="77" />构造失败。
地址 710038 陕西省西安市霸桥区长乐东路甲字1号