发明名称 一种楼宇WSN中能量均衡路由建立的方法
摘要 本发明涉及一种楼宇WSN中能量均衡路由建立的方法。其技术方案是:所述楼宇WSN是由一个汇聚节点和m行n列的N(N=m×n,m、n均为大于2的正整数)个节点组成,根据节点i(i为1~N的正整数)的路由负载RL<sub>i</sub>的数学模型得到每个节点i的路由负载RL<sub>i</sub>,根据节点i的路由负载RL<sub>i</sub>值,删除节点间冗余的逻辑链路,当网络中的每列节点i的路由负载RL<sub>i</sub>各自都达到均衡后,保存此时的路由表,生成新的网络拓扑。节点i接收到或发送数据包P时在各自路由表routing_table“路由次数”列上加1,节点i发送数据包P时,优先选择路由表routing_table中“路由次数”小的节点发送。本发明具有延长网络生存期、提高传输的可靠性和网络能耗均衡的特点。
申请公布号 CN104080143A 申请公布日期 2014.10.01
申请号 CN201410344323.2 申请日期 2014.07.18
申请人 武汉科技大学;中国电力科学研究院 发明人 李晓卉;尚志文;陈广;赵兵;梁晓兵
分类号 H04W40/02(2009.01)I;H04W40/10(2009.01)I 主分类号 H04W40/02(2009.01)I
代理机构 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 代理人 张火春
主权项 一种楼宇WSN中能量均衡路由建立的方法,其特征在于所述楼宇WSN是由一个汇聚节点和m行n列的N(N=m×n,其中m、n均为大于2的正整数)个节点组成,楼宇WSN中能量均衡路由建立的方法是:步骤1、将所述的楼宇WSN配置成一个n列的网络拓扑;步骤2、汇聚节点收集网络拓扑信息,为每个节点构造一张路由表routing_table;所述路由表routing_table由“上一跳”列、“下一跳”列、“目的”列和“路由次数”列组成,路由表routing_table的“上一跳”列和“下一跳”列包含所有的可连接的逻辑链路;步骤3、节点i(i为1~N的正整数)的路由负载RL<sub>i</sub>的数学模型为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>RL</mi><mi>i</mi></msub><mo>=</mo><mfrac><msub><mi>D</mi><mi>i</mi></msub><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msub><mi>D</mi><mi>i</mi></msub><mo>&times;</mo><mrow><mo>(</mo><mn>2</mn><mo>&times;</mo><msub><mi>l</mi><mi>i</mi></msub><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow></mfrac><mo>+</mo><mn>2</mn><mo>&times;</mo><munder><mi>&Sigma;</mi><mrow><mi>x</mi><mo>&Element;</mo><msub><mi>i</mi><mi>LH</mi></msub></mrow></munder><mfrac><msub><mi>RL</mi><mi>x</mi></msub><msub><mi>N</mi><msub><mi>x</mi><mi>NH</mi></msub></msub></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000540204390000011.GIF" wi="1400" he="203" /></maths>式(1)中:D<sub>i</sub>表示节点i每秒发送的数据包数目,l<sub>i</sub>表示节点i所在的网络列数,l<sub>i</sub>=1,2,...,n,i<sub>LH</sub>表示节点i的上一跳节点的集合,x表示节点i的上一跳节点的集合中的一个节点,x<sub>NH</sub>表示节点x的下一跳节点,RL<sub>x</sub>表示节点x的路由负载,<img file="FDA0000540204390000012.GIF" wi="103" he="78" />表示节点x的下一跳节点个数,N表示子节点的总个数;计算节点i的路由负载RL<sub>i</sub>时,从终端节点逐列往上列计算;对于第n列的节点,式(1)中“+”的右边部分为0;根据节点i的路由负载RL<sub>i</sub>值,找出1~(n‑1)列中节点i的路由负载RL<sub>i</sub>值最大的节点<img file="FDA0000540204390000013.GIF" wi="134" he="75" />然后在所述路由负载RL<sub>i</sub>值最大的节点<img file="FDA0000540204390000014.GIF" wi="98" he="76" />的“上一跳”节点中,找出与所述路由负载RL<sub>i</sub>值最大的节点<img file="FDA0000540204390000015.GIF" wi="104" he="77" />同行的节点i<sub>LH</sub>,再删除所述路由负载RL<sub>i</sub>值最大的节点<img file="FDA0000540204390000016.GIF" wi="100" he="74" />与所述路由负载RL<sub>i</sub>值最大的节点<img file="FDA0000540204390000017.GIF" wi="96" he="74" />同行的节点i<sub>LH</sub>的逻辑链路;若存在2个以上所述路由负载RL<sub>i</sub>值最大的节点<img file="FDA0000540204390000018.GIF" wi="132" he="77" />则逐一删除所述路由负载RL<sub>i</sub>值最大的节点<img file="FDA0000540204390000019.GIF" wi="104" he="84" />与所述路由负载RL<sub>i</sub>值最大的节点<img file="FDA0000540204390000021.GIF" wi="102" he="74" />同行的节点i<sub>LH</sub>的逻辑链路;步骤4、再计算每个节点i的路由负载RL<sub>i</sub>,当第1~(n‑1)列中的每列节点i的路由负载RL<sub>i</sub>各自都达到均衡后,保存此时的路由表routing_table;若第1~(n‑1)列中存在某一列节点i的路由负载RL<sub>i</sub>未达到均衡,则在此时的路由表routing_table的基础上,重复步骤3,直至第1~(n‑1)列中的每列节点i的路由负载RL<sub>i</sub>各自都达到均衡后,保存路由表routing_table;步骤5、当所述楼宇WSN的一个节点i发送数据包P<sub>1</sub>时,先在所述节点i的所有邻居节点中查找有无目的节点D;如果查有目的节点D,则将数据包P<sub>1</sub>直接送达目的节点D,然后在所述节点i的路由表routing_table的“路由次数”列上加1;如果未查找到目的节点D,则查询所述节点i的路由表routing_table,选择所述节点i的路由表routing_table中“下一跳”节点中“路由次数”最小的一个节点i<sub>min</sub>建立连接,发送数据包P<sub>1</sub>,然后在所述节点i的路由表routing_table中的“路由次数”列上加1;所述节点i<sub>min</sub>接收到数据包P<sub>1</sub>时,在所述节点i<sub>min</sub>的路由表routing_table中的“路由次数”列上加1;步骤6、所述节点i<sub>min</sub>发送数据包P<sub>1</sub>时,同步骤5,直至目的节点D接收到数据包P<sub>1</sub>;步骤7、对于后续数据包P<sub>j</sub>(j为大于1的正整数)的发送,同步骤5~步骤6。
地址 430081 湖北省武汉市青山区建设一路