专利名称:一种无线传感器网络能量均衡的路由方法
技术领域:
本发明属于无线传感器网络通信技术领域,具体涉及一种无线传感器网络能量均衡 的路由方法。
背景技术:
无线传感器网络是由大量低功耗、多功能的微型无线传感器协同组织起来的一种特 殊的AdHoc网络,它具有自组织、多跳路由、动态拓扑、硬件资源和电源容量有限、 节点数目众多而分布密集、以数据为中心(即以数据本身作为査询或传输线索,而不同 于以地址为中心的互联网)等特点,可应用于军事、环境、健康、家庭、商业等领域。 由于无线传感器网络节点能量极为有限,部分节点非常容易因能耗过大而导致网络分 裂,从而丧失其感知覆盖能力。因此,如何提高无线传感器节点能量使用的效率,避免 单个或部分节点能量的过度使用,成为无线传感器研究的一个至关重要的方面。目前传 感器领域关于能量如何高效使用的方法涉及到数据融合、功率控制、路由等方面。
在路由方面,主要是通过有效的路由算法来实现节点能量的均衡使用。由于多路径 路由在路由过程中可以选择不同的路径,能够平衡节点能量的消耗,因此近年来对多路 径路由的研究较多。但是,越靠近sink (汇聚节点)的节点,需要转发的数据越多, 能量消耗也越多,从而造成能量消耗热点,多路径路由也不能解决sink节点附近区域 能量消耗热点问题。
发明内容
本发明的所要解决的技术问题是提供一种无线传感器网络能量均衡的路由方法, 以克服现有的无线传感器网络中节点能量使用不均衡、网络生命周期短的缺点。 为解决上述技术问题,本发明所采用的技术方案为
—种无线传感器网络能量均衡的路由方法,该无线传感器网络由一个汇聚节点和多个节点通信连接而成;其特征在于,该无线传感器网络能量均衡的路由方法包括以下 步骤
1) 将无线传感器网络按最小跳数分层,形成一个按最小跳数分层的网络;
2) 创建每一个节点的多跳路由表;
每个所述的节点v维护一个路由表,表中记录可能的下一跳路由节点 ("^,'",""),以及它们到汇聚节点路径的能量值0 ("1),^("2),''',^("")),并且记录 ;^'), ;V^maxO^^("2),…,p(""》;汇聚节点向网络广播带^ =0,;^) = oo的路
由创建消息,其中^表示汇聚节点的最小跳数,/K。表示汇聚节点的能量;当节点v把 节点"加入节点v的路由表的同时,也记录下节点"的路径能量p("); P(")的计算公式 为/ (")-min(e("),; (x')),其中e(")为节点"的剩余能量,为"的下一跳节点到汇
聚节点的所有最小跳数路径的能量的最大值,同时将/K")与^("')进行比较,如果p(") 大于P("'),则令P("')-^(");否则P("')的值不变;
A=払]
3) 计算转发概率A; 五[&] + EL/:],其中,五[g,.]-W.A, ^为无线传感器
网络节点总数,A为第f层节点占总节点数的比例,五[g,]为第z'层节点发送自己产生的
负载所消耗的平均能量;^;]一i:n^^.("^[&]一^+^u+"广厨,]),其
中《,=^,《-(/:1)2-1,五[乂]为第f层节点转发其它层节点数据所消耗的平均能量,
这里公式中的五L/i]就是i为l时的五[y;],式中的n表示第n层,即按跳数分为第l层 直到第n层;
4) 节点/以A的概率向下一节点转发数据,以l-A的概率向汇聚节点直接发送数
据;
5) 对路由表进行维护和更新
节点"发送数据时在数据包中加入它的更新的路径能量,利用无线通信的侦听机制,路由表中包含u的节点v更新^"),同时更新P("'),并査看P(力是否有所变化,
如果有变化则广播带^(v)的消息,如果没有变化则什么都不做,路由表中含有v且收到
广播消息的节点则做同样的检测,依次类推下去;完成对路由表的维护和更新;返回到 步骤4)。
步骤l)中的按最小跳数分层的网络的创建方法为
令、为节点v的到汇聚节点的最小跳数;初始时,汇聚节点的最小跳数&=0,其 它节点"的最小跳数/^设为无穷大;汇聚节点向网络广播带/^的路由创建消息;节点" 从节点V接收到一个路由创建消息后,从中取出、进行以下比较
若&>/| -1,"什么都不做;
若/^=&-1,"把v加入到它的路由表中;
若/^</ -1,"清空路由表中已有的内容,并把v加入路由表中;然后,节点"设 置/! =^+1,并重新广播带/^的路由创建消息给节点"的邻居节点;
路由创建消息按照以上规则传播,最后建成按最小跳数分层的网络。
本发明的有益效果
本发明的路由方法把传感器网络构成一个按最小跳数分层的网络,且使用多跳传输 和直接与sin^通信的混合传输策略。在多跳传输时,使用改进的基于多路径路由的最 大能量路径算法。
本方法利用节点直接传输和逐跳转发相结合的混合传输方式来消除sinA附近区域能
量消耗热点问题,在逐跳转发时采用改进的最大能量路径机制来解决局部区域的能量平 衡问题,该最大能量路径机制又采用了多路径路由方式,因此,该方法很好的实现了网 络全局范围内的能量均衡使用,有效的延长了网络的生命周期。
图1是本发明的无线传感器网络能量均衡的路由算法的流程图;图2为多路径分层网络。
具体实施例方式
以下结合附图对本发明作进一步说明。 实施例1 :
如图l所示,首先,在网络工作前,通过初始化把网络构造成按最小跳数分层的网 络。到汇聚节点最小跳数为1的节点集合称为传感器网络的第一层,到汇聚节点最小跳
数为W的节点集合称为传感器网络的第W层。这样,围绕汇聚节点从里到外依次形成 按最小跳数分层的网络。实现方法如下
令、为节点v的到siia节点的最小跳数。初始时,sinA节点设置4^0,其它节点
"的^设为无穷大。sh^节点向网络广播带&的路由创建消息。节点"从节点v接收到
一个路由创建消息后,从中取出、进行一下比较 如果&>/^-1,"什么都不做。 如果&=&—1,"把V加入到它的路由表中。
如果&〈^-1,"清空路由表中已有的内容,并把V加入路由表中。然后,"设置
^=^+1,并重新广播带&的路由创建消息给它的邻居节点。
路由创建消息按照以上规则传播,最后可建成根据最小跳数分层的网络. 在多跳传输时,使用改进的基于多路径路由的最大能量路径算法。首先声明两个定义。
最弱节点 一条路径上的所有节点中剩余能量最小的节点。 路径能量该路径中最弱节点的剩余能量值。
定义节点w到汇聚节点的路径为所有最小跳数路径中能量最大的路径,设该路径能 量为P(w),则i (w)-minOO),pO'》,其中e(w)为节点w的剩余能量,P("')为w的下
一跳节点到汇聚节点的所有最小跳数路径的能量的最大值。 本发明的多跳路由创建如下每个节点v维护一个路由表,表中记录可能的下一跳路由节点(""""'"'""),以及
它们到汇聚节点路径的能量值b("I),^"2),'''^(" )),并且记录,
/^"-max(/^)'M"^"'/K""))。在构造分层网络的同时进行路由的创建。sinfc节点
向网络广播带&^,^^)-w的路由创建消息。当节点v把"加入v的路由表的同时,也 记录下^(")的值(的计算公式为= min(e(w),p(x'》,其中为节点"的剩余 能量,p(x')为"的下一跳节点到汇聚节点的所有最小跳数路径的能量的最大值),同时
与P("')进行比较,如果其值大于i^"'),则令^("')-zK")。否则P("')不变。这样,
随着按最小跳数分层的网络的构成,能量均衡路由的创建也随之完成。 本发明的多跳路由维护如下
节点"发送数据时在数据包中加入它的更新的路径能量,利用无线通信的侦听机
制。路由表中包含u的节点v更新^("),同时更新P("'),并査看"(v)是否有所变化,
如果有变化则广播带P(v)的消息,如果没有变化则什么都不做,路由表中含有v且收到 广播消息的节点则做同样的检测,依次类推下去。
由于节点选择能量最大的路径来传输数据,避免了能量较小的节点过早死亡导致网 络不连通,上述方法构建的多跳路由在局部区域较好的实现了能量的均衡使用,但是没
有在全局区域实现。例如在能量消耗热点区域(sin^附近区域的节点),没有实现与其
它区域节点能量的均衡使用,这些节点会因为能量消耗过多而过早的死亡。而在最外围 区域的节点,因为无需转发或转发其它节点的数据较少,其能量消耗相对较低。本发明 釆用逐跳转发和直接转发相结合的混合传输模式来传输数据以解决上述问题。基本思想 是每个节点以概率选择直接传输或逐跳转发数据,最外围区域的节点,由于无需转发 或转发别的节点的数据较少,可以较大概率选择直接传输,从而减轻中间区域节点的负 载;中间区域的节点则以几乎逐跳转发数据;而靠近si"区域的节点也可以较低的概 率直接与sir^节点进行通信,因为它们与siia的距离较小,直接与sira通信消耗的能
量有限。为此,计算每个节点逐跳转发的概率A是实现层间能量均衡数据传输的关键。本发明计算^算法如下
令3,为第Z层区域消耗的总能量,为了实现各层与各层之间能量的均衡,则每层的 每个节点消耗的能量满足下列等式,=^1, S,为各层的区域面积。
即满足£[^M_A] = jE[^LJi], (1)
其中&为z'层要处理的负载数,^为处理每个负载消耗的能量。
定义1: £[gi] = A^A,其中^为无线传感器网络节点总数,^为第z'层节点占总
节点数的比例,五[&]为第z'层节点发送自己产生的负载所消耗的平均能量。 定义2:
£["=—zr-;^^.(^[&〗一"""五[g""]+"r厨,]), 其 中
丄i一 ""-乂
《=i,《J!':1) 、五[,]为第z'层节点转发其它层节点数据所消耗的平均能量,
这里公式中的五[y;]就是/为i时的五L/;],式中的n表示第n层,即按跳数分为第i层
直到第n层;可由式(1)推导求得。
定义3:五[w-五[g,]+五L/;] (2)
定义4:五L/M]-;^[/g (3)
由式(2) (3)可得(4)
具体的一个实例如图2,在图2中,h代表各节点所在层次,e为各节点本身的剩 余能量,节点e到汇聚节点有两条最小跳数路径e —6 ——^,e^^ —e —气路径 6 —a —s的能量为节点a的剩余能量值,所以^(&) = 35,路径^ —c —^的能量为节点
c的剩余能量值,^(力=10 。
所以= max(;;(6),p(力)=35 , /^) = 111111("6),/^"'))=35。当通过概率pi选择通过多跳转发数据时,节点e不是选择剩余能量最大的节点^作为下一跳节点,而是选择路径e^6 —"4s来传输数据,从而 避免了节点c过早的死亡而导致网络的不连通。同时,节点e可以通过概率l-pi选择直 接转发数据。Pi按照公式(4)来计算。
权利要求
1.一种无线传感器网络能量均衡的路由方法,该无线传感器网络由一个汇聚节点和多个节点通信连接而成;其特征在于,该无线传感器网络能量均衡的路由方法包括以下步骤1)将无线传感器网络按最小跳数分层,形成一个按最小跳数分层的网络;2)创建每一个节点的多跳路由表;每个所述的节点v维护一个路由表,表中记录可能的下一跳路由节点(u1,u2,…,un),以及它们到汇聚节点路径的能量值(p(u1),p(u2),…,p(un)),并且记录p(u*),p(u*)=max(p(u1),p(u2),…,p(un));汇聚节点向网络广播带hs=0,p(s)=∞的路由创建消息,其中hs表示汇聚节点的最小跳数,p(s)表示汇聚节点的能量;当节点v把节点u加入节点v的路由表的同时,也记录下节点u的路径能量p(u);p(u)的计算公式为p(u)=min(e(u),p(x*)),其中e(u)为节点u的剩余能量,p(x*)为u的下一跳节点到汇聚节点的所有最小跳数路径的能量的最大值,同时将p(u)与p(u*)进行比较,如果p(u)大于p(u*),则令p(u*)=p(u);否则p(u*)的值不变;3)计算转发概率pi;<maths id="math0001" num="0001" ><math><![CDATA[ <mrow><msub> <mi>p</mi> <mi>i</mi></msub><mo>=</mo><mfrac> <mrow><mi>E</mi><mo>[</mo><msub> <mi>f</mi> <mrow><mi>i</mi><mo>-</mo><mn>1</mn> </mrow></msub><mo>]</mo> </mrow> <mrow><mi>E</mi><mo>[</mo><msub> <mi>g</mi> <mi>i</mi></msub><mo>]</mo><mo>+</mo><mi>E</mi><mo>[</mo><msub> <mi>f</mi> <mi>i</mi></msub><mo>]</mo> </mrow></mfrac><mo>,</mo> </mrow>]]></math> id="icf0001" file="A2009100434190002C1.tif" wi="32" he="11" top= "157" left = "81" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>其中,E[gi]=N·Di, N为无线传感器网络节点总数,Di为第i层节点占总节点数的比例,E[gi]为第i层节点发送自己产生的负载所消耗的平均能量;<maths id="math0002" num="0002" ><math><![CDATA[ <mrow><mi>E</mi><mo>[</mo><msub> <mi>f</mi> <mi>i</mi></msub><mo>]</mo><mo>=</mo><mo>-</mo><msubsup> <mi>Σ</mi> <mrow><mi>k</mi><mo>=</mo><mn>1</mn> </mrow> <mrow><mi>n</mi><mo>-</mo><mi>i</mi> </mrow></msubsup><mfrac> <mrow><msubsup> <mi>Π</mi> <mrow><mi>j</mi><mo>=</mo><mi>k</mi> </mrow> <mrow><mi>n</mi><mo>-</mo><mi>i</mi><mo>+</mo><mn>1</mn> </mrow></msubsup><msub> <mi>a</mi> <mrow><mi>n</mi><mo>-</mo><mi>j</mi> </mrow></msub> </mrow> <mrow><msubsup> <mi>Π</mi> <mrow><mi>j</mi><mo>=</mo><mi>k</mi> </mrow> <mrow><mi>n</mi><mo>-</mo><mi>i</mi> </mrow></msubsup><msub> <mi>d</mi> <mrow><mi>n</mi><mo>-</mo><mi>j</mi> </mrow></msub> </mrow></mfrac><mo>·</mo><mrow> <mo>(</mo> <msub><mi>a</mi><mn>1</mn> </msub> <mi>E</mi> <mo>[</mo> <msub><mi>g</mi><mn>1</mn> </msub> <mo>]</mo> <mo>-</mo> <msub><mi>a</mi><mrow> <mi>n</mi> <mo>-</mo> <mi>k</mi> <mo>+</mo> <mn>1</mn></mrow> </msub> <mi>E</mi> <mo>[</mo> <msub><mi>g</mi><mrow> <mi>k</mi> <mo>+</mo> <mn>1</mn></mrow> </msub> <mo>]</mo> <mo>+</mo> <msub><mi>a</mi><mn>1</mn> </msub> <mo>·</mo> <mi>E</mi> <mo>[</mo> <msub><mi>f</mi><mn>1</mn> </msub> <mo>]</mo> <mo>)</mo></mrow><mo>,</mo> </mrow>]]></math> id="icf0002" file="A2009100434190002C2.tif" wi="103" he="10" top= "194" left = "23" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>其中<maths id="math0003" num="0003" ><math><![CDATA[ <mrow><msub> <mi>a</mi> <mi>i</mi></msub><mo>=</mo><mfrac> <msup><mi>i</mi><mn>2</mn> </msup> <mrow><mn>2</mn><mi>i</mi><mo>-</mo><mn>1</mn> </mrow></mfrac><mo>,</mo><msub> <mi>d</mi> <mi>i</mi></msub><mo>=</mo><mfrac> <mrow><msup> <mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>)</mo> </mrow> <mn>2</mn></msup><mo>-</mo><mn>1</mn> </mrow> <mrow><mn>2</mn><mi>i</mi><mo>+</mo><mn>1</mn> </mrow></mfrac><mo>,</mo> </mrow>]]></math> id="icf0003" file="A2009100434190002C3.tif" wi="45" he="9" top= "194" left = "137" img-content="drawing" img-format="tif" orientation="portrait" inline="yes"/></maths>E[fi]为第i层节点转发其它层节点数据所消耗的平均能量,其中公式中的E[f1]就是i为1时的E[fi],式中的n表示第n层;4) 节点i以pi的概率向下一节点转发数据,以1-pi的概率向汇聚节点直接发送数据;5)对路由表进行维护和更新节点u发送数据时在数据包中加入它的更新的路径能量,利用无线通信的侦听机制,路由表中包含u的节点v更新p(u),同时更新p(u*),并查看p(v)是否有所变化,如果有变化则广播带p(v)的消息,如果没有变化则什么都不做,路由表中含有v且收到广播消息的节点则做同样的检测,依次类推下去;完成对路由表的维护和更新;返回到步骤4)。
2.根据权利要求1所述的无线传感器网络能量均衡的路由方法,其特征在于,步 骤l)中的按最小跳数分层的网络的创建方法为令、为节点v的到汇聚节点的最小跳数;初始时,汇聚节点的最小跳数4=0,其 它节点"的最小跳数A设为无穷大;汇聚节点向网络广播带/^的路由创建消息;节点" 从节点v接收到一个路由创建消息后,从中取出、进行以下比较若^>/2 -1,"什么都不做;若&=&-1,"把V加入到它的路由表中;若&<&-1,"清空路由表中已有的内容,并把v加入路由表中;然后,节点"设 置& = & +1 ,并重新广播带的路由创建消息给节点"的邻居节点;路由创建消息按照以上规则传播,最后建成按最小跳数分层的网络。
全文摘要
本发明公开了一种无线传感器网络能量均衡的路由方法,本发明的路由算法把传感器网络构成一个按最小跳数分层的网络,且使用多跳传输和直接与汇聚节点通信的混合传输策略。在多跳传输时,使用改进的基于多路径路由的最大能量路径算法。本方法利用节点直接传输和逐跳转发相结合的混合传输方式来消除sink附近区域能量消耗热点问题,在逐跳转发时采用改进的最大能量路径机制来解决局部区域的能量平衡问题,该最大能量路径机制又采用了多路径路由方式,因此,该算法很好的实现了网络全局范围内的能量均衡使用,有效的延长了网络的生命周期。
文档编号H04W40/10GK101562862SQ200910043419
公开日2009年10月21日 申请日期2009年5月15日 优先权日2009年5月15日
发明者洁 刘, 张海洋, 曾凡仔, 李仁发, 娟 罗, 玲 肖 申请人:湖南大学