一种多感知不等半径无线传感网络路由实现方法.pdf

上传人:b*** 文档编号:1584734 上传时间:2018-06-26 格式:PDF 页数:20 大小:1.38MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410771820.0

申请日:

2014.12.16

公开号:

CN104853395A

公开日:

2015.08.19

当前法律状态:

实审

有效性:

审中

法律详情:

文件的公告送达IPC(主分类):H04W 40/02收件人:黄伟文件名称:手续合格通知书|||实质审查的生效IPC(主分类):H04W 40/02申请日:20141216|||公开

IPC分类号:

H04W40/02(2009.01)I; H04W52/02(2009.01)I

主分类号:

H04W40/02

申请人:

黄伟

发明人:

黄伟; 邹茜; 张牧; 龙艳

地址:

550001贵州省贵阳市见龙洞103号

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

本发明公开了多感知不等半径无线传感网络路由实现方法,包括设计阶段与实施阶段;设计阶段包括分区域阶段、簇头选举及建簇阶段、多跳路由建立阶段与稳定通信阶段。本发明的有益效果是,能有效降低节点通信代价、均衡网络能耗。不仅能均衡各节点的能耗,而且在工作中更为节能,这是因为采用了双簇头和非均衡分簇的思想,在距离Sink节点较远的区域,分簇半径较大,簇的规模大,双簇头可以由两个簇头来分担数据收集汇总和通信的能耗;而距离Sink节点较近的区域,分簇半径较小,比远区的簇多,所以会有较多的簇头可以分担簇间多跳而产生的转发能耗,很好的均衡了网络中的能耗。可以很好地均衡网络能耗,延长网络生命周期。

权利要求书

权利要求书1.  一种多感知不等半径无线传感网络路由实现方法,其特征在于,包括设计阶段与实施阶段;设计阶段包括分区域阶段、簇头选举及建簇阶段、多跳路由建立阶段与稳定通信阶段。2.  根据权利要求1所述的多感知不等半径无线传感网络路由实现方法,其特征在于,所述设计阶段具体按照以下步骤实施:(1)分区域阶段区域划分阶段只执行一次,完成监测区域的分区;在此阶段,基站以恒定的功率广播一个信标数据包,同时设置计时器,等待监测区域内各传感器节点传回回复信息,若计时器超时,基站重新广播测试信号;监测区域内的传感器节点在接收到基站发出的信标数据包后首先判断该数据包的发送路径是否成环,若成环则丢弃该信标数据包,否则记录下接收到该信标数据包的跳数并将其加1后再转发给相邻节点,若节点接收到多个信标数据包,则仅记录下最小跳数并将其加1后转发,其余接收到的信标数据包均丢弃;当信标数据包在网络内洪泛后则所有节点都获得了自己的邻居节点的跳数、距离等信息;节点可以根据接收到的信标数据包中包含的跳数和接收信标数据包的信号强度来判断与基站之间的距离远近、确定自身与基站通信的功率大小;随后传感器节点将这些信息发送回基站;基站根据收到的传感器节点回复信息,按照一定的规则把监测区域划分成不同的区域,每个区域赋予一个固定的区域ID号,离基站越近的区域ID号越小;最后基站将分区信息进行广播,节点收到广播信息后可确定自己属于哪个子区,然后保存自己所在的区域ID号;(2)簇头选举及建簇阶段在簇头选举前,根据网络的节点数目、节点到汇聚节点的距离、网络覆盖区域大小等参数先确定节点成为候选簇头的概率;进行区域的划分后,根据节点的剩余能量、稀疏度传输链路质量参数来确定候选数据簇头,通过竞争产生最终的数据簇头,数据簇头产生后向全网广播其成为数据簇头的信息;普通节点收到数据簇头广播的成簇消息后采用一种均衡分配的成簇策略选择合适的数据簇头发送入簇信息;簇建立好后,就进入通信簇头的选取阶段,通信簇头由数据簇头来决定,由于在节点向数据簇头的应答消息中有自身剩余能量和与数据簇头的距离、与基站的距离等信息,数据簇头可以根据这些信息选择合适的节点成为通信簇头,通信簇头只负责数据转发,不进行数据感知和采集,至此,簇的建立正式完毕;簇一旦建立完成后,在本轮次时间内,簇结构不会再改变,至下一轮开始;(3)多跳路由建立阶段簇族建立完毕后,在通信簇头间用多跳方式传送数据,在通信簇头发送数据时,根据各候选下一跳通信簇头的转发权值动态的选择下一跳通信簇头,从而平衡各通信簇头的能耗;(4)稳定通信阶段此阶段负责进行数据的采集与传输工作;由于分簇建立阶段会耗费大量的额外通信及计算能耗,所以稳定数据传输阶段的时间必须要大于分簇建立阶段的时间才能保证节约能耗;簇内节点按簇头分配给自己的TDMA时隙将数据发送至数据簇头,数据簇头收集到数据后运用数据融合技术来处理数据,完成数据融合后,数据簇头将处理好的数据转发给通信簇头,由通信簇头进行数据的传送与转发;在经过设定的时间后,网络进入下一个工作周期,重新在每个区域内建立新的簇族,如此循环直至网络节点的能量耗尽。3.  根据权利要求1所述的多感知不等半径无线传感网络路由实现方法,其特征在于,所述实施阶段具体按照以下步骤进行:(1)建立能耗模型:当向距离d处的目标节点发送l节的数据时,依据传输距离是否超过阈值d0分为两部分:当传输距离小于阈值时,采用自由空间模型;反之,则采用多路径衰减模型;εmp为多路衰减模型的功率放大系数;Eelec为发送或接收电路消耗的能量;εfs为自由空间模型的功率放大系数;dtoMCH为簇内节点到数据簇头的距离;dtoVCH为数据簇头至通信簇头的距离;dtoVCH′为簇内通信簇头至下一跳中继通信簇头的距离;l为发送数据的比特数;阈值EDA表示数据融合所消耗的能量;则发送需要消耗的能量为:接收需要消耗的能量为:ERx(l)=lEelec   (1-2) 假设在M×M的区域内部署有N个无线传感器节点,其中有k个簇,假设节点是平均分配到每个簇内,即每个簇的节点数目是一致的,则每个簇中有个节点,包括一个主簇头MCH,一个副簇头VCH和(N/k-2)个普通节点;在网络每轮的一个帧中,主簇头消耗的能量EMCH包括接收簇内节点发送的数据包并融合自身数据消耗的能量,以及主簇头发送数据给副簇头所消耗的能量;副簇头消耗的能量EVCH包括发送数据包给基站和转发其他簇头的数据包消耗的能量;簇内普通节点消耗的能量包括采集数据消耗的能量和发送 数据到主簇头的能量;假设簇内通信的距离不超过阈值d0,簇头间通信的距离也不超过d0;所以主簇头所消耗的总能量εMCH用公式(1-3)来表示:副簇头消耗的总能量EVCH用公式(1-4)来表示:簇中每个普通节点消耗的总能量用公式(1-5)来表示:一个簇中主簇头、副簇头和所有普通节点消耗的总能量用公式(1-6)来表示:k个簇消耗的总能量用公式(1-7)来表示:(2)监测区域设计基站通过监测区域内各节点返回的信息计算出它到监测区域的最远距离dmax与最近距离dmin:假设信号发射是全向的,在各个方向上都一致,那么把基站当做圆心,依据一定的阈值划出一个个半径不等的同心圆环;监 测区域必定包含在这些同心圆环里面;设每个圆环的宽度为wi,i的取值由1到n,n为划分的层数,由于层的大小不一致,所以wi的值是变动的;不同子区域的分簇半径不同,簇头的分簇半径与它自身与基站的距离成正比,离基站越近,分簇半径越小,反之越大,远设Rmin为最小分簇半径,Rmax为最大分簇半径;设W是某个等差数列的和,根据等差数列前n项求和公式可得W=nw1+n(n-1)d/2;其中n是划分的层数,由具体应用决定;设w1是第一层的宽度,w1=Rmax且w1≤d0;等差数列的差值d在n、w1的值确定之后,由公式(1-8)求出;d=2(nRmax-dmax+dmin)/n(n-1)   (1-8) 由此可得第i层区域的宽度为:wi=w1+(i-1)d=w1+2(i-1)(nRmax-dmax+dmin)/n(n-1)   (1-9) 根据各层的区域宽度wi,可以算出每层的上界和下界;上界:Ui=Li+wi,i=2...n   (1-10) 下界:Li=Ui-1,i=2...n   (1-11) 其中,U1=Rmax,L1=0基站给各层赋予一个固定的区域ID号,离基站越近的区域ID号越小;最后基站将各层的上界值、下界值和各层的ID号用一个消息向全网广播;节点接收这个广播消息后,根据自己离基站的近似距离来判断自己属于那个区域,同时保存自己所在的区域ID号;(3)蔟头选择方法在选举时加入节点剩余能量参数、节点稀疏度参数和链路通信质量参数,让剩余能量高、节点密度大及通讯质量好的节点成为簇头的概率增大;在簇头选举时,设γ为节点Ci的剩余能量参数,是节点Ci当前剩余能量EM和节点初始能量Estarc的比值,可公式(1-12)表示:设μ为节点稀疏度参数,表示无线传感器网络节点密度;假设节点Ci的通信半径为R,邻节点数为n,邻节点与节点Ci的距离为di,则节点Ci的稀疏度参数可以用公式(1-13)来表示:节点传输链路质量参数代表的是节点传输质量的好坏,链路质量的好坏用重传请求的次数来表示,分组重传的请求次数从MAC层的信息中获取;设Ri为节点Ci收到的重传请求次数,Rmax为最大重传次数,于是节点Ci传输链路质量参数τ可以表示为公式(1-14):T(n)通过公式(1-15)进行计算;式中,p是簇头数目与总节点数的百分比,LEACH中默认为0.05;r是当前工作轮数、G是本轮次中未当选过簇头的节点集;t1+t2+t3=1,t1、t2、t3是权重参数,t1的值比其他两个值大;p值是按照预先假定的节点数量、网络范围、sink位置计算出的最优值,按照最小化总能耗的原则,计算p最优值的公式,如公式(1-16)所示:在每轮最后一次簇头接收簇内节点数据时统计簇内现有节点数目,然后把这个数目发送给Sink节点;Sink节点在收到各个簇头发来的现有各簇节点数目后进行统计,若节点数目发生急剧变化,则重新计算p值,然后通过广播的方式告知网络中所有的节点;(4)数据簇头的选举簇头的分簇半径用公式(1-17)来表示;Rc=cwi   (1-17) 即簇头的分簇半径Rc由簇头所在层的宽度决定,Rmin≤Rc≤Rmax,是一个0~1之间的参数;每个候选簇头节点根据公式(1-17)计算各自的竞争半径;各分层区域采用相同的方式进行数据簇头的选举;在距离基站较远的簇,簇半径大,簇内成员较多,距离基站较近的簇,簇半径小,簇成员比较少,但簇头需要承担更多的多跳转发任务;采取分布式选举方法,节点在本地计算自己的T(n)值,T(n)越大则成为候选簇头的概率越大,所以当节点的剩余能量越大、密度越高、通信链路质量越好,那么它成为候选簇头的机率就越大;候选簇头在局部区域中通过竞争来确定最终的数据簇头;未成为候选簇头的节点进入睡眠状态,直到数据簇头竞选过程结束;在竞选过程中,候选簇头节点在自己的广播时刻到来时广播竞争消息;其他候选簇头节点收到控制消息后处理如下:假设候选簇头节点CHi接收到候选簇头节点CHj的广播消息后,首先比较广播信息中节点所属层号,如节点CHj 与自己不属于同一层区域,则不予理会,如果是同层区域内的节点,则计算两者之间的距离看自己是否在CHj的竞争范围之内,如果在CHj的竞争范围内,则CHi节点退出竞争,成为非簇头节点并休眠等待簇头竞争过程结束;如果不在竞争范围内,则CHi继续认为自己是候选簇头节点,直到它的广播时刻到来广播竞争消息;循环上述处理过程,直到所有的数据簇头节点被选出;数据簇头选举完成后,数据簇头广播成簇消息,其余节点收到成簇消息后根据UUDEM成簇策略加入相应的簇,向簇头发送入簇信息;(5)通信簇头的选举在节点加入数据簇头节点时,向数据簇头节点发送了JION-CH信息,在这个信息里面可以包括节点的剩余能量、节点密度、与簇头节点的距离信息;根据这些信息,数据簇头可以直接选取和确定通信簇头;数据簇头与通信簇头之间的最小距离设为dleast=αR,R是数据簇头的竞争半径,α是控制数据簇头和通信簇头距离的参数,(0<α≤1);数据簇头根据接收到的JION-CH信息,在节点密度高且距离自己满足最小距离dleast的节点中选择距离基站最近且剩余能量最高的节点来作为通信簇头,并向该节点发送消息,通知该节点被选为通信簇头;(6)成簇通信此阶段负责网络中进行数据的处理和传输工作;稳定数据传输阶段时间要远远长于建立阶段时间;经过了数据簇头选举后,普通节点经过对各数据簇头适宜度的判断选择最佳簇头加入;数据簇头收到普通节点的加入申请后进行确认,簇族形成完毕,然后进行通信簇头的选取;通信簇头选取后,数据簇头根据簇内成员数量确定统一的时隙数,建立TDMA时隙表,然后广播为每个簇内成员分配 的发送信息时隙;通信簇头选出后向全网广播一条包含自身标识、节点剩余能量、和其到汇聚点距离的信息;收到该消息的其他通信簇头,根据收到的信号强度近似计算它们的距离;簇内普通节点按分配好的TDMA时隙将数据发送至数据簇头,数据簇头收集到数据进行融合;随后数据簇头将处理好的数据转发给通信簇头,由通信簇头负责发送;通信簇头根据簇间混合多跳路由MMHBC方式来完成数据的发送和转发,直至数据被传送至基站;在经过设定的一段时间后,整个网络就进入下一个工作周期,重新进行每个区域内的成簇工作;具体如下:步骤1:基站通过监测区域内各节点返回的信息计算出它到监测区域的最远距离dmax与最近距离dmin,然后对监测区域进行分区,并给各分区赋予相应的ID号,随后将分区信息和各区ID号广播给各节点;监测区内各节点接收这个广播消息后,根据自己离基站的近似距离来判断自己属于那个区域,同时保存自己所在的区域ID号;此步骤只在网络初始化时进行,监测区域层次划分后就不在进行;步骤2:在簇头选举阶段,节点计算自身的阈值T(n),T(n)越大则其成为候选数据簇头的概率越大;步骤3:候选数据簇头以竞争半径Rc=cwi进行正式数据簇头的竞争,竞争失败的候选簇头成为普通节点,进入休眠状态等待正式数据簇头的竞争过程结束;步骤4:当选的数据簇头节点广播消息,通知其他节点其当选簇头的消息,并在消息中附带本身的剩余能量和到基站的距离等信息;步骤5:未当选节点接收到簇头的消息后,根据UUDEM成簇策略加入 相应的簇头,完成簇族的建立;步骤6:数据簇头根据接收到的普通节点的信息,数据簇头根据接收到的信息,在节点密度高且距离自己满足最小距离dleast的节点中选择距离基站最近且剩余能量最高的节点来作为通信簇头;步骤7:簇族进入稳定工作阶段,数据簇头根据簇内成员数量确定统一的时隙数,建立TDMA时隙表,然后广播为每个簇内成员分配的发送信息时隙;簇内各成员节点负责数据的采集并将数据发送到数据簇头,数据簇头负责收集和融合这些数据,然后发送给通信簇头,由通信簇头负责发送;通信簇头根据簇间混合多跳路由方式来完成数据的发送和转发,直至数据被传送至基站;步骤8:当前轮次的稳定通信阶段结束后,进入下一轮次的循环,重新执行步骤2-步骤7,直至网络生命期结束,网络停止工作;(7)报文设计报文类型为Setup报文、划分区域报文、反馈报文、普通数据报文等;(a)Setup报文在网络构建初期,基站会广播Setup报文分组,通知各节点开始工作;节点在接收到Setup报文分组后,会判断该Setup报文分组的发送路径是否成环,若成环则将此Setup报文分组丢弃,若未成环就记录下接收到该Setup报文分组的跳数并将其加1后再转发给邻居节点,若节点接收到多个Setup信息分组,仅记录下最小跳数并将其加1后转发,丢弃其他的Setup信息分组;节点可根据接收到的Setup信息分组包含的跳数、接收到的信息的信号强度来判断自身与基站的距离;(b)反馈报文反馈报文由节点发送回基站,是关于划分区域的反馈信息;基站向节点发送区域划分报文,节点根据收到这个报文的信号强度指示来计算与基站的距离;节点将自己的ID号、与基站的距离和节点自身能量信息反馈给基站,(c)划分区域报文基站收集到所有节点发送来的反馈报文后,按照给定的阈值范围,按信号强度大小划分区域,每个区域赋予一个固定的区域ID号,离基站越近的区域ID号越小,然后基站广播划分区域报文;节点收到此报文后判断自己属于哪个区域,并记录下自己的区域ID号;(d)节点加入簇头的JOIN-CH报文节点在选择某个簇头加入时,向簇头发送JOIN-CH报文申请加入,JOIN-CH报文中包括节点的地址、离簇头的距离、剩余能量等;(e)普通数据包的格式当源节点有数据要发送时,为了和其他节点发送的数据进行区别,为数据设一个标志字段来进行区别标示;较大的数据报文需要进行分割,分成大小固定的分组;每个分组进行标识,分组中有源节点的位置信息,目标节点的位置信息,以及传递路径;在数据报包头中指出数据段的长度;需有填充域字段用来在分组数据段不一致时保证每个分组的长度一致。

说明书

说明书一种多感知不等半径无线传感网络路由实现方法
技术领域
本发明属于通信网络技术领域,涉及一种多感知不等半径无线传感网络路由实现方法。
背景技术
现有的通信网络技术中,网络的生命周期都比较短,不能很好均衡网络能耗,而没有出现一种好的算法来提高网络的生命周期。
发明内容
本发明的目的是提供一种多感知不等半径无线传感网络路由实现方法,延长网络生命期近84%与18%,能有效的降低节点通信代价、均衡网络能耗。
本发明所采用的技术方案是,多感知不等半径无线传感网络路由实现方法,包括设计阶段与实施阶段;设计阶段包括分区域阶段、簇头选举及建簇阶段、多跳路由建立阶段与稳定通信阶段。
本发明的有益效果是,本研究的成果与现有的LEACH、EEUC等算法比较,能有效降低节点通信代价、均衡网络能耗。不仅能均衡各节点的能耗,而且在工作中更为节能,这是因为采用了双簇头和非均衡分簇的思想,在距离Sink节点较远的区域,分簇半径较大,簇的规模大,双簇头可以由两个簇头来分担数据收集汇总和通信的能耗;而距离Sink节点较近的区域,分簇半径较小,比远区的簇多,所以会有较多的簇头可以分担簇间多跳而产生的转发能耗,很好的均衡了网络中的能耗。通过仿真证明,本发明算法的确 可以很好地均衡网络能耗,延长网络生命周期。
附图说明
图1是区域划分示意图。
图2是网络生命周期对比图。
图3是当第一个节点死亡时其他节点的剩余能量分布图。
图4是每轮次剩余总能量对比图。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明设计阶段为四个阶段:分区域阶段;簇头选举及建簇阶段;多跳路由建立阶段;稳定通信阶段。
(1)分区域阶段 
区域划分阶段只执行一次,主要完成监测区域的分区。在此阶段,基站以恒定的功率广播一个信标数据包,同时设置计时器,等待监测区域内各传感器节点传回回复信息,若计时器超时,基站重新广播测试信号。由于监测区域内部署的传感器节点数量众多,且在部署过程中,传感器节点会因为各种各样的原因不能正常通信,比如损坏、被严重遮挡而没有信号等等,不能保证每一个传感器节点都能收到基站的信号并回复,所以在这里需要设置一个统计时间。
监测区域内的传感器节点在接收到基站发出的信标数据包后首先判断该数据包的发送路径是否成环,若成环则丢弃该信标数据包,否则记录下接收到该信标数据包的跳数并将其加1后再转发给相邻节点,若节点接收到多个信标数据包,则仅记录下最小跳数并将其加1后转发,其余接收到的信标数据包均丢弃。当信标数据包在网络内洪泛后则所有节点都获得了自己的邻 居节点的跳数、距离等信息。节点可以根据接收到的信标数据包中包含的跳数和接收信标数据包的信号强度来判断与基站之间的距离远近、确定自身与基站通信的功率大小。随后传感器节点将这些信息发送回基站。基站根据收到的传感器节点回复信息,按照一定的规则把监测区域划分成不同的区域,每个区域赋予一个固定的区域ID号,离基站越近的区域ID号越小。最后基站将分区信息进行广播,节点收到广播信息后可确定自己属于哪个子区,然后保存自己所在的区域ID号。
(2)簇头选举及建簇阶段
在簇头选举前,根据网络的节点数目、节点到汇聚节点的距离、网络覆盖区域大小等参数先确定节点成为候选簇头的概率。
进行区域的划分后,根据节点的剩余能量、稀疏度传输链路质量参数来确定候选数据簇头,通过竞争产生最终的数据簇头,数据簇头产生后向全网广播其成为数据簇头的信息。普通节点收到数据簇头广播的成簇消息后采用一种均衡分配的成簇策略选择合适的数据簇头发送入簇信息;簇建立好后,就进入通信簇头的选取阶段,通信簇头由数据簇头来决定,由于在节点向数据簇头的应答消息中有自身剩余能量和与数据簇头的距离、与基站的距离等信息,数据簇头可以根据这些信息选择合适的节点成为通信簇头,通信簇头只负责数据转发,不进行数据感知和采集,至此,簇的建立正式完毕。簇一旦建立完成后,在本轮次时间内,簇结构不会再改变,至下一轮开始。
(3)多跳路由建立阶段
簇族建立完毕后,如果通信簇头单跳将数据之间传送给基站的话,远离基站的簇头会因为长距离通信而耗费大量的能量,从而导致能量消耗过快,所以在通信簇头间用多跳方式传送数据,在通信簇头发送数据时,根据各候 选下一跳通信簇头的转发权值动态的选择下一跳通信簇头,从而平衡各通信簇头的能耗。
(4)稳定通信阶段 
此阶段负责进行数据的采集与传输工作。由于分簇建立阶段会耗费大量的额外通信及计算能耗,所以稳定数据传输阶段的时间必须要远远大于分簇建立阶段的时间才能保证节约能耗。簇内节点按簇头分配给自己的TDMA时隙将数据发送至数据簇头,数据簇头收集到数据后运用数据融合技术来处理数据,完成数据融合后,数据簇头将处理好的数据转发给通信簇头,由通信簇头进行数据的传送与转发。在经过设定的时间后,网络进入下一个工作周期,重新在每个区域内建立新的簇族,如此循环直至网络节点的能量耗尽。
在以上4个设计阶段上,分为以下步骤进行研究:
一、建立能耗模型:
根据无线通信理论,当向距离d处的目标节点发送l节的数据时,依据传输距离是否超过阈值d0分为两部分:当传输距离小于阈值时,采用自由空间模型;反之,则采用多路径衰减模型。
εmp为多路衰减模型的功率放大系数;Eelec为发送或接收电路消耗的能量;εfs为自由空间模型的功率放大系数;dtoMCH为簇内节点到数据簇头的距离;dtoVCH为数据簇头至通信簇头的距离;dtoVCH′为簇内通信簇头至下一跳中继通信簇头的距离;l为发送数据的比特数;阈值EDA表示数据融合所消耗的能量。
则发送需要消耗的能量为:
ETx(l,d)=lEelec+l&epsiv;fsd2d<d0lEelec+l&epsiv;mpd4d|d0---(1-1)]]>
接收需要消耗的能量为:ERx(l)=lEelec  (1-2) 
假设在M×M的区域内部署有N个无线传感器节点,其中有k个簇,假设节点是平均分配到每个簇内,即每个簇的节点数目是一致的,则每个簇中有个节点,包括一个主簇头MCH,一个副簇头VCH和(N/k-2)个普通节点。
在网络每轮的一个帧中,主簇头消耗的能量EMCH包括接收簇内节点发送的数据包并融合自身数据消耗的能量,以及主簇头发送数据给副簇头所消耗的能量;副簇头消耗的能量EVCH包括、发送数据包给基站和转发其他簇头的数据包消耗的能量;簇内普通节点消耗的能量包括采集数据消耗的能量和发送数据到主簇头的能量。这里我们假设簇内通信的距离不超过阈值d0,簇头间通信的距离也不超过d0。
所以主簇头所消耗的总能量EMCH可以用公式(1-3)来表示:
EMCH=(Nk-2)lEeiect+(Nk-2)lEDA+lEeiect+l&epsiv;fsdτoVCH2---(1-3)]]>
副簇头消耗的总能量EVCH可以用公式(1-4)来表示:
EVCM=lEelect+lEelect+l&epsiv;fsdcoVCH2---(1-4)]]>
簇中每个普通节点消耗的总能量可以用公式(1-5)来表示:
Enon-CH=lEelec+l&epsiv;fsdtoMCH2---(1-5)]]>
一个簇中主簇头、副簇头和所有普通节点消耗的总能量可以用公式(1-6) 来表示:
Ecluster=EMCH+EVCH+(Nk-2)Enon-CH---(1-6)]]>
k个簇消耗的总能量可以用公式(1-7)来表示:
Etocal=kEcluster=l((2N-k)Eelect+EDA(N-2k)+&epsiv;fs((N-2k)dtoMCH2+kdtoVCH2+kdtoVCH2))---(1-7)]]>
二、监测区域设计
基站可以通过监测区域内各节点返回的信息计算出它到监测区域的最远距离dmax与最近距离dmin。假设信号发射是全向的,在各个方向上都一致,那么把基站当做圆心,可以依据一定的阈值划出一个个半径不等的同心圆环。监测区域必定包含在这些同心圆环里面。设每个圆环的宽度为wi(i的取值由1到n,n为划分的层数),由于层的大小不一致,所以wi的值是变动的。具体情况如图1所示。
不同子区域的分簇半径不同,簇头的分簇半径与它自身与基站的距离成正比,离基站越近,分簇半径越小,反之越大,远设Rmin为最小分簇半径,Rmax为最大分簇半径。
设W是某个等差数列的和,根据等差数列前n项求和公式可得W=nw1+n(n-1)d/2。
其中n是划分的层数,由具体应用决定。设w1是第一层的宽度,w1=Rmax且w1≤d0。等差数列的差值d在n、w1的值确定之后,由公式(1-8)求出。
d=2(nRmax-dmax+dmin)/n(n-1)---(1-8)]]>
由此可得第i层区域的宽度为:
wi=w1+(i-1)d=w1+2(i-1)(nRmax-dmax+dmin)/n(n-1) (1-9) 
根据各层的区域宽度wi,可以算出每层的上界和下界。
上界:Ui=Li+wi,i=2...n   (1-10)
下界:Li=Ut-1,i=2...n   (1-11) 
其中,U1=Rmax,L1=0
基站给各层赋予一个固定的区域ID号,离基站越近的区域ID号越小。最后基站将各层的上界值、下界值和各层的ID号用一个消息向全网广播。节点接收这个广播消息后,根据自己离基站的近似距离来判断自己属于那个区域,同时保存自己所在的区域ID号。
三、蔟头选择方法
簇头数量、节点剩余能量、节点稀疏度和传输链路质量可以看做是影响节点成为簇头的因素,其中剩余能量是最重要的因素。大多数簇头选择方法都把节点剩余能量作为节点成为簇头的主要参考指标。
综合考虑节点剩余能量、节点稀疏度和链路通信质量,采用在选举时加入节点剩余能量参数、节点稀疏度参数和链路通信质量参数,让剩余能量高、节点密度大及通讯质量好的节点成为簇头的概率增大。
在簇头选举时,LEACH协议采用的是随机选择的算法,在此我们对这个算法进行改进,主要在于改进LEACH协议中的T(n)。在此,设γ为节点Ci的剩余能量参数,是节点Ci当前剩余能量EM和节点初始能量Estart的比值,可公式(1-12)表示:
γ=EMEstart---(1-12)]]>
设μ为节点稀疏度参数,表示无线传感器网络节点密度;假设节点Ci的通信半径为R,邻节点数为n,邻节点与节点Ci的距离为di,则节点Ci的稀疏度 参数可以用公式(1-13)来表示:
μ=Σi=1ndiR---(1-13)]]>
节点传输链路质量参数代表的是节点传输质量的好坏,链路质量的好坏可以用重传请求的次数来表示,分组重传的请求次数可以从MAC层的信息中获取,比较简单。设Ri为节点Ci收到的重传请求次数,Rmax为最大重传次数,于是节点Ci传输链路质量参数τ可以表示为公式(1-14):
τ=RiRmax---(1-14)]]>
NRDMMH协议将T(n)进行改进,T(n)可以通过公式(1-15)进行计算。 

式中,p是簇头数目与总节点数的百分比,LEACH中默认为0.05。r是当前工作轮数、G是本轮次中未当选过簇头的节点集。t1+t2+t3=1,t1、t2、t3是权重参数,通过设置不同的取值来偏向加重那种性能,如把节点密度看的更重要,就把t2的值调大,对于其他两个参数也是相同的道理,但由于在所有的考虑因素中,能量还是首要的,所以在这里t1的值还是应该比其他两个值大。
p值是按照预先假定的节点数量、网络范围、sink位置等计算出的最优值,按照最小化总能耗的原则,计算p最优值的公式,如公式(1-16)所示:
p=N&epsiv;fs2π&epsiv;mpMdtoBS2---(1-16)]]>
经过改进的簇头选举算法,考虑了剩余能量的同时,也考虑了节点的密度和网络的通信质量,体现了跨层设计的理念。
在这里,提出一点改进。由于网络经过一定运行时间以后,网络中会有节点因为能量耗尽而死亡,或者因为外界各种原因的影响使得某些节点失效,那网络中现存的有效节点数目就会有变化,于是最初计算的p值就有可能不符合当前的网络实际情况,需要重新计算以保证其合理性。可以在每轮最后一次簇头接收簇内节点数据时统计簇内现有节点数目,然后把这个数目发送给Sink节点。Sink节点在收到各个簇头发来的现有各簇节点数目后进行统计,若节点数目发生急剧变化,则重新计算p值,然后通过广播的方式告知网络中所有的节点。
(3)数据簇头的选举
簇头的分簇半径可以用公式(1-17)来表示。
Rc=cwi   (1-17)
即簇头的分簇半径Rc由簇头所在层的宽度决定,Rmin≤Rc≤Rmax,是一个0~1之间的参数。
每个候选簇头节点根据公式(1-17)计算各自的竞争半径。各分层区域采用相同的方式进行数据簇头的选举。在距离基站较远的簇,簇半径大,簇内成员较多,距离基站较近的簇,簇半径小,簇成员比较少,但簇头需要承担更多的多跳转发任务。
采取分布式选举方法,节点在本地计算自己的T(n)值,T(n)越大则成为候选簇头的概率越大,所以当节点的剩余能量越大、密度越高、通信链路质量越好,那么它成为候选簇头的机率就越大。候选簇头在局部区域中通过竞争来确定最终的数据簇头。未成为候选簇头的节点进入睡眠状态,直到数据簇头竞选过程结束。
在竞选过程中,候选簇头节点在自己的广播时刻到来时广播竞争消息。 其他候选簇头节点收到控制消息后处理如下:假设候选簇头节点CHi接收到候选簇头节点CHj的广播消息后,首先比较广播信息中节点所属层号,如节点CHj与自己不属于同一层区域,则不予理会,如果是同层区域内的节点,则计算两者之间的距离看自己是否在CHj的竞争范围之内,如果在CHj的竞争范围内,则CHi节点退出竞争,成为非簇头节点并休眠等待簇头竞争过程结束;如果不在竞争范围内,则CHi继续认为自己是候选簇头节点,直到它的广播时刻到来广播竞争消息。循环上述处理过程,直到所有的数据簇头节点被选出。
数据簇头选举完成后,数据簇头广播成簇消息,其余节点收到成簇消息后根据UUDEM成簇策略加入相应的簇,向簇头发送入簇信息。
(4)通信簇头的选举
在节点加入数据簇头节点时,向数据簇头节点发送了JION-CH信息,在这个信息里面可以包括节点的剩余能量、节点密度、与簇头节点的距离等信息;根据这些信息,数据簇头可以直接选取和确定通信簇头,不用再进行全网选举以节约通信能耗和计算能耗。
需要注意的是,通信簇头不宜和数据簇头过于靠近,因为离的太近,选择通信簇头的意义不大。数据簇头与通信簇头之间的最小距离设为dleast=αR,R是数据簇头的竞争半径,α是控制数据簇头和通信簇头距离的参数,(0<α≤1)。数据簇头根据接收到的JION-CH信息,在节点密度高且距离自己满足最小距离dleast的节点中选择距离基站最近且剩余能量最高的节点来作为通信簇头,并向该节点发送消息,通知该节点被选为通信簇头。
四、成簇通信 
此阶段负责网络中进行数据的处理和传输工作。稳定数据传输阶段时间要远远长于建立阶段时间。
经过了数据簇头选举后,普通节点经过对各数据簇头适宜度的判断选择最佳簇头加入;数据簇头收到普通节点的加入申请后进行确认,簇族形成完毕,然后进行通信簇头的选取。通信簇头选取后,数据簇头根据簇内成员数量确定统一的时隙数,建立TDMA时隙表,然后广播为每个簇内成员分配的发送信息时隙。通信簇头选出后向全网广播一条包含自身标识、节点剩余能量、和其到汇聚点距离的信息。收到该消息的其他通信簇头,根据收到的信号强度近似计算它们的距离。簇内普通节点按分配好的TDMA时隙将数据发送至数据簇头,数据簇头收集到数据进行融合。随后数据簇头将处理好的数据转发给通信簇头,由通信簇头负责发送。通信簇头根据簇间混合多跳路由(MMHBC)方式来完成数据的发送和转发,直至数据被传送至基站。在经过设定的一段时间后,整个网络就进入下一个工作周期,重新进行每个区域内的成簇工作。
至此,基于非均匀分簇半径的双簇头混合多跳路由算法的执行过程可以总结如下:
Step1:基站通过监测区域内各节点返回的信息计算出它到监测区域的最远距离dmax与最近距离dmin,然后对监测区域进行分区,并给各分区赋予相应的ID号,随后将分区信息和各区ID号广播给各节点;监测区内各节点接收这个广播消息后,根据自己离基站的近似距离来判断自己属于那个区域,同时保存自己所在的区域ID号;此步骤只在网络初始化时进行,监测区域层次划分后就不在进行。
Step 2:在簇头选举阶段,节点计算自身的阈值T(n),T(n)越大则其成为候选数据簇头的概率越大;
Step 3:候选数据簇头以竞争半径Rc=cwi进行正式数据簇头的竞争,竞争 失败的候选簇头成为普通节点,进入休眠状态等待正式数据簇头的竞争过程结束。
Step 4:当选的数据簇头节点广播CH-HELLO消息,通知其他节点其当选簇头的消息,并在CH-HELLO消息中附带本身的剩余能量和到基站的距离等信息;
Step 5:未当选节点接收到簇头的CH-HELLO消息后,根据UUDEM成簇策略加入相应的簇头,完成簇族的建立。
Step 6:数据簇头根据接收到的普通节点的JION-CH信息,数据簇头根据接收到的JION-CH信息,在节点密度高且距离自己满足最小距离dleast的节点中选择距离基站最近且剩余能量最高的节点来作为通信簇头。
Step 7:簇族进入稳定工作阶段,数据簇头根据簇内成员数量确定统一的时隙数,建立TDMA时隙表,然后广播为每个簇内成员分配的发送信息时隙。簇内各成员节点负责数据的采集并将数据发送到数据簇头,数据簇头负责收集和融合这些数据,然后发送给通信簇头,由通信簇头负责发送;通信簇头根据第5章所提出的簇间混合多跳路由(MMHBC)方式来完成数据的发送和转发,直至数据被传送至基站。
Step 8:当前轮次的稳定通信阶段结束后,进入下一轮次的循环,重新执行Step2-Step7,直至网络生命期结束,网络停止工作。
五、报文设计 
主要的报文类型为Setup报文、划分区域报文、反馈报文、普通数据报文等。
(1)Setup报文
在网络构建初期,基站会广播Setup报文分组,通知各节点开始工作; 节点在接收到Setup报文分组后,会判断该Setup报文分组的发送路径是否成环,若成环则将此Setup报文分组丢弃,若未成环就记录下接收到该Setup报文分组的跳数并将其加1后再转发给邻居节点,若节点接收到多个Setup信息分组,仅记录下最小跳数并将其加1后转发,丢弃其他的Setup信息分组。节点可根据接收到的Setup信息分组包含的跳数、接收到的信息的信号强度来判断自身与基站的距离。Setup报文格式如表1-2所示。

表1-2 Setup报文格式
报文有16bit,“类型ID”3bit,用来标示报文的类型;“序列数”5bit,用于识别新的广播消息,在发送一个新的广播消息时,基站增加一个序列码;“跳数”8bit,表示节点是第几跳节点,使用8比特,可以保证节点从基站起有高达255的跳数。
(2)反馈报文
反馈报文由节点发送回基站,是关于划分区域的反馈信息。基站向节点发送区域划分报文,节点根据收到这个报文的信号强度指示来计算与基站的距离。节点将自己的ID号、与基站的距离和节点自身能量信息反馈给基站,反馈报文格式如表1-3所示。
报文有32bit,“类型ID”3bit,用来标明报文的类型;“节点ID”5bit,表示发送报文的节点编号;“与基站距离”12bit,表示节点与基站的几率;“剩余能量”12bit,表示节点自身的能量大小。

表1-3 反馈报文格式 
(3)划分区域报文 
基站收集到所有节点发送来的反馈报文后,按照给定的阈值范围,按信号强度大小划分区域,每个区域赋予一个固定的区域ID号,离基站越近的区域ID号越小,然后基站广播划分区域报文。节点收到此报文后判断自己属于哪个区域,并记录下自己的区域ID号。划分区域报文格式如表1-4所示。

表1-4 划分区域报文格式
报文有16bit,“类型ID”3bit,用来标明数据报的类型;“区域ID号”5bit,表示节点属于的区域;“区域上限”4bit,表示某区域的上限;“区域下限”4bit,表示某区域的下限。
(4)节点加入簇头的JOIN-CH报文
节点在选择某个簇头加入时,向簇头发送JOIN-CH报文申请加入,JOIN-CH报文中包括节点的地址、离簇头的距离、剩余能量等。JOIN-CH报文格式如表1-5所示:

表1-5 JOIN-CH报文格式
报文有32bit,“类型ID”3bit,用来标明数据报的类型;“距离”9bit,表示普通节点与簇头节点的距离;“节点的地址”10bit,表识普通节点的位置;“剩余能量”10bit,表示普通节点的当前剩余能量。
(5)普通数据包的格式
路由协议的作用就是让数据报在网络中更高效的传送,当源节点有数据要发送时,为了和其他节点发送的数据进行区别,可以为数据设一个标志字段来进行区别标示。在无线传感器网络中,过大的数据报文对传输不利,所以较大的数据报文需要进行分割,分成大小固定的分组,方便进行传送和接收;为了方便在接收端进行数据重组,每个分组需要进行标识,分组中有源节点的位置信息,目标节点的位置信息,以及传递路径等,另外,分组的大小虽然是固定的,但分组中的数据段却可能长度不同,因此需在数据报包头中指出数据段的长度,另外,为了保证每个分组都有一致的长度,需有填充域字段用来在分组数据段不一致时保证每个分组的长度一致。
报文报头共64bit,“类型ID”3bit,用来标明数据报的类型;“信号ID”5bit,表明分组属于哪个数据报文,节点每生成一个数据报文,就为此报文分配一个唯一的报文标识;“报文长度”8bit,该字段说明数据包中的数据的长度;“分组标识”8bit,用来对数据报文的不同分组进行区别,以便分组到达目的节点时进行重构;“区域ID号”8bit,原节点所在的区域,报文传到目的节点后与 目的节点的区域ID号比较,如果相同就不用改变,否则就改变为目的节点所在的区域ID号;“源节点ID”16bit,表示发送此数据报文的节点;“目的节点ID”16bit,表示此源节点的所在链的下一个节点。数据包格式如表1-6所示。

表1-6 普通数据包报文包头格式
六、实验效果比较:
从图2中可以看出,在本发明的多路感知不等半径无线传感网络路由算法(MSRRWSN)中,1200轮已经开始有节点死亡,最后一个节点在1420轮死亡,LEACH在550轮开始有节点死亡,最后一个节点在770轮死亡,EEUC在1067轮开始有节点死亡,最后一个节点在1335轮死亡。以第一个节点死亡轮次为准,本算法比LEACH算法延长了650轮、近84%,比EEUC算法延长了133轮、近18%。因此,可以表明本算法能够有效的延长网络的生命周期。
图3是通过多次实验得出的平均值,展示了采用本算法、LEACH算法和EEUC算法在网络中第一个节点死亡时,剩余节点的剩余能量分布,图中横坐标表示节点到基站的距离,离坐标原点越近表明离基站越近,反之就离基站越远。通过图可以看出,对于LEACH算法来说,第一个节点死亡后,其他节点的剩余能量分布很不均衡,距离基站较远的节点,剩余能量较少; 对于EEUC算法,当第一个节点死亡时,剩余节点的剩余能量分布相对较为均衡,大概在5J-8J之间,对于NRDMMH算法,当第一个节点死亡时,其他节点的剩余能量分布在4J-6J之间,可以得出结论,MSRRWSN算法能够很好的均衡节点的能量消耗速度,延长网络的生命周期,效果比LEACH和EEUC算法好。
图4是多次实验得出的平均值,展示了3种算法的网络中所有节点的剩余能量总和随网络周期的变化情况,网络中总能量是3000J,从图中可以看出在770轮时,LEACH的总能量最先消耗为0。同样轮次本发明算法还剩余约1350J,EEUC还剩余1000J;而且在每轮次结束时,本发明算法算法比LEACH算法,EEUC算法剩余的总能量都多,这充分说明本发明算法MSRRWSN不仅能均衡各节点的能耗,而且在工作中更为节能,这是因为MSRRWSN采用了双簇头和非均衡分簇的思想,在距离Sink节点较远的区域,分簇半径较大,簇的规模大,双簇头可以由两个簇头来分担数据收集汇总和通信的能耗;而距离Sink节点较近的区域,分簇半径较小,比远区的簇多,所以会有较多的簇头可以分担簇间多跳而产生的转发能耗,很好的均衡了网络中的能耗。通过仿真证明,本发明算法的的确可以很好地均衡网络能耗,延长网络生命周期。

一种多感知不等半径无线传感网络路由实现方法.pdf_第1页
第1页 / 共20页
一种多感知不等半径无线传感网络路由实现方法.pdf_第2页
第2页 / 共20页
一种多感知不等半径无线传感网络路由实现方法.pdf_第3页
第3页 / 共20页
点击查看更多>>
资源描述

《一种多感知不等半径无线传感网络路由实现方法.pdf》由会员分享,可在线阅读,更多相关《一种多感知不等半径无线传感网络路由实现方法.pdf(20页珍藏版)》请在专利查询网上搜索。

本发明公开了多感知不等半径无线传感网络路由实现方法,包括设计阶段与实施阶段;设计阶段包括分区域阶段、簇头选举及建簇阶段、多跳路由建立阶段与稳定通信阶段。本发明的有益效果是,能有效降低节点通信代价、均衡网络能耗。不仅能均衡各节点的能耗,而且在工作中更为节能,这是因为采用了双簇头和非均衡分簇的思想,在距离Sink节点较远的区域,分簇半径较大,簇的规模大,双簇头可以由两个簇头来分担数据收集汇总和通信的能。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1