主权项 |
一种QoS感知和负载均衡的无线Mesh智能电网路由机制NQA‑LB,其特征在于包括以下步骤:步骤1计算不同优先级数据流的误帧率根据智能电网不同业务流的QoS需求,用IEEE 802.11e的EDCA机制区分不同业务流,通过三维马尔科夫状态转移图分析EDCA机制中不同优先级i的状态,其中i=0,1,2,3,计算优先级为i的数据包发生碰撞的概率p<sub>i</sub>:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>p</mi><mi>i</mi></msub><mo>=</mo><mn>1</mn><mo>-</mo><msup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>τ</mi><mi>i</mi></msub><mo>)</mo></mrow><msub><mi>n</mi><mi>i</mi></msub></msup><munderover><mi>Π</mi><mrow><mi>l</mi><mo>=</mo><mn>0</mn><mo>,</mo><mi>l</mi><mo>≠</mo><mi>i</mi></mrow><mn>3</mn></munderover><msup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>τ</mi><mi>l</mi></msub><mo>)</mo></mrow><msub><mi>n</mi><mi>l</mi></msub></msup></mrow>]]></math><img file="FDA0000659108390000011.GIF" wi="749" he="190" /></maths>其中τ<sub>i</sub>为一个节点在时隙空闲下传输优先级为i的数据包的概率,n<sub>i</sub>表示发送优先级为i的数据流的站点数,数据包在丢失前将尝试传输最大重传次数L<sub>retry(i)</sub>,得到优先级为i的数据帧丢失率p<sub>loss(i)</sub>,也就是优先级为i的数据流的误帧率e<sub>f(i)</sub>:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msub><mi>e</mi><mrow><mi>f</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>=</mo><msub><mi>p</mi><mi>loss</mi></msub><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow><mo>=</mo><msup><msub><mi>p</mi><mi>i</mi></msub><mrow><msub><mi>L</mi><mrow><mi>retry</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>+</mo><mn>1</mn></mrow></msup></mrow>]]></math><img file="FDA0000659108390000015.GIF" wi="612" he="86" /></maths>步骤2计算不同优先级数据包的排队延迟根据数据包丢失率p<sub>i</sub>计算优先级为i的数据包成功传输的概率p<sub>succ(i)</sub>:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>=</mo><munderover><mi>Σ</mi><mrow><mi>j</mi><mo>=</mo><mn>0</mn></mrow><msub><mi>L</mi><mrow><mi>retry</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub></munderover><msub><mi>p</mi><mi>i</mi></msub><mo>·</mo><msubsup><mi>p</mi><mi>i</mi><mrow><mi>j</mi><mo>-</mo><mn>1</mn></mrow></msubsup><mrow><mo>(</mo><mn>1</mn><mo>-</mo><msub><mi>p</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>=</mo><mn>1</mn><mo>-</mo><msup><msub><mi>p</mi><mi>i</mi></msub><mrow><msub><mi>L</mi><mrow><mi>retry</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>+</mo><mn>1</mn></mrow></msup></mrow>]]></math><img file="FDA0000659108390000012.GIF" wi="1106" he="202" /></maths>优先级为i的数据包排队时延D<sub>Q(i)</sub>等于当前的数据包被服务之前四个队列中被服务的所有数据包的传输时延之和;当队列i中的数据包个数q<sub>i</sub>小于队列j中的数据包个数q<sub>j</sub>,即q<sub>i</sub><q<sub>j</sub>时,优先级为i的数据包排队时延D<sub>Q(i)</sub>表示为:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msub><mi>D</mi><mrow><mi>Q</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>=</mo><msub><mi>C</mi><mrow><mi>a</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>·</mo><msub><mi>q</mi><mi>i</mi></msub><mo>·</mo><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>+</mo><msub><mi>C</mi><mrow><mi>a</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub><munderover><mi>Σ</mi><mrow><mi>j</mi><mo>=</mo><mn>0</mn><mo>,</mo><mi>j</mi><mo>≠</mo><mi>i</mi></mrow><mn>3</mn></munderover><msub><mi>q</mi><mi>j</mi></msub><mo>·</mo><mfrac><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub></mfrac></mrow>]]></math><img file="FDA0000659108390000013.GIF" wi="1120" he="194" /></maths>当q<sub>i</sub>>q<sub>j</sub>时:<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><msub><mi>D</mi><mrow><mi>Q</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>=</mo><msub><mi>C</mi><mrow><mi>a</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>·</mo><msub><mi>q</mi><mi>i</mi></msub><mo>·</mo><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>+</mo><msub><mi>C</mi><mrow><mi>a</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub><mo>·</mo><munderover><mi>Σ</mi><mrow><mi>j</mi><mo>=</mo><mn>0</mn><mo>,</mo><mi>j</mi><mo>≠</mo><mi>i</mi></mrow><mn>3</mn></munderover><msub><mi>q</mi><mi>j</mi></msub><mo>·</mo><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub></mrow>]]></math><img file="FDA0000659108390000014.GIF" wi="1146" he="193" /></maths>其中q<sub>i</sub>和q<sub>j</sub>为经过指数加权平均移动算法EWMA进行平滑处理过的不同队列中缓存的队列大小,C<sub>a(i)</sub>为优先级为i的数据包预期传输时延;步骤3设计QoS感知和负载均衡的路由判据CC<sub>a</sub>根据步骤1所得的误帧率e<sub>f(i)</sub>和步骤2所得的数据包排队延迟D<sub>Q(i)</sub>,综合考虑链路质量和链路负载,设计QoS感知和负载均衡的路由判据CC<sub>a</sub>:<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><msub><mi>CC</mi><mi>a</mi></msub><mo>=</mo><msub><mi>D</mi><mrow><mi>Q</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>+</mo><msub><mi>C</mi><mrow><mi>a</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mrow><mo>(</mo><mn>1</mn><mo>+</mo><msub><mi>q</mi><mi>i</mi></msub><mo>·</mo><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>)</mo></mrow><msub><mi>C</mi><mrow><mi>a</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>+</mo><msub><mi>C</mi><mrow><mi>a</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub><mo>·</mo><munderover><mi>Σ</mi><mrow><mi>j</mi><mo>=</mo><mn>0</mn><mo>,</mo><mi>j</mi><mo>≠</mo><mi>i</mi></mrow><mn>3</mn></munderover><msub><mi>q</mi><mi>j</mi></msub><mo>·</mo><mfrac><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub></mfrac><mo>,</mo><msub><mi>q</mi><mi>i</mi></msub><mo><</mo><msub><mi>q</mi><mi>j</mi></msub></mtd></mtr><mtr><mtd><mrow><mo>(</mo><mn>1</mn><mo>+</mo><msub><mi>q</mi><mi>i</mi></msub><mo>·</mo><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>)</mo></mrow><msub><mi>C</mi><mrow><mi>a</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>+</mo><msub><mi>C</mi><mrow><mi>a</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub><mo>·</mo><munderover><mi>Σ</mi><mrow><mi>j</mi><mo>=</mo><mn>0</mn><mo>,</mo><mi>j</mi><mo>≠</mo><mi>i</mi></mrow><mn>3</mn></munderover><msub><mi>q</mi><mi>j</mi></msub><mo>·</mo><msub><mi>p</mi><mrow><mi>succ</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub><mo>,</mo><msub><mi>q</mi><mi>i</mi></msub><mo>></mo><msub><mi>q</mi><mi>j</mi></msub></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0000659108390000021.GIF" wi="1751" he="379" /></maths>CC<sub>a</sub>表示优先级为i的预期数据包端到端总时延,即传输时延C<sub>a(i)</sub>与排队时延D<sub>Q(i)</sub>之和;步骤4基于EDCA机制的动态数据包优先级调整算法AP‑EDCA综合考虑网络总负载NC和各优先级业务流负载TC[i],在NQA‑LB路由机制的MAC层动态的调整数据包的优先级,提高NQA‑LB在高负载下的可靠性和在低负载下的资源利用率;当网络丢包率低于预设门限值时,说明网络负载较轻,网络状况良好,此时如果高优先级业务的队列长度小于门限值,则说明网络资源有剩余,将低优先级数据包的的优先级调高再加入队列,从而避免了过多信道时隙的浪费;而网络丢包率较高时,说明网络比较拥塞,此时如果低优先级队列较小而高优先队列高于门限值,则降低高优先级队列的优先级缓解连续拥塞,提高网络性能;如果网络丢包率在低门限值和高门限值之间,则保持数据包的优先级不变。 |