您好, 访客   登录/注册

WSN中基于代价函数的机会路由协议

来源:用户上传      作者:

  摘 要:在无线传感器网络中,因为节点自身的能量十分有限,容易出现能量过早耗尽,导致节点过早死亡的问题。针对该问题,文中提出了一种基于代价函数的机会路由协议。该协议采用代价函数作为优先级指标,在综合考虑剩余能量、节点间距离和链路质量的情况下,选择转发成本较低的邻居节点作为候选节点,并选择一条最优的路径进行传输,以缓解关键节点的能量消耗,解决网络负载不均匀问题,提高数据传输成功率。仿真结果表明,相比传统的机会路由协议ExOR,基于代价函数的机会路由协议提高了数据的吞吐量,从而延长了网络的生存周期。
  关键词:无线传感器网络;代价函数;机会路由;网络生命周期;候选节点集;吞吐量
  中图分类号:TP391 文献标识码:A 文章编号:2095-1302(2020)05-00-04
  0 引 言
  无线传感器网络(Wireless Sensor Networks,WSN)已广泛应用于军事、商业、环境监测等领域,可为用户提供较为连续的数据采集与传输服务。但由于无线传感器在链路中的不可靠性,采用传统的路由协议可能会造成大量数据重传,导致节点能量的浪费。因此,Biswas[1]等人提出了机会路由协议(ExOR),该协议充分利用了无线通信的广播特性,从多个候选节点中选出转发节点,从而提高了数据传输的可靠性,减少了数据重传的次数,大幅降低了节点的能量消耗,与传统的路由协议相比,机会路由有效延长了网络的生命周期。
  对于节能机会路由协议,国内外学者已经进行了大量研究。文献[2]提出了一种能量有效的机会路由(EEOR),该协议使用预期成本作为路由指标,并在固定传输功率或动态可调情况下优化转发列表,选择最优转发节点,使节点能耗最小化。文献[3]提出了一种能量有效的机会路由协议,该协议以期望成本为路由指标,计算消息传输过程中的成本。文献[4]提出了基于PSO的聚类算法,该算法通过考虑传输距离与跳数,平衡了节点间的能量消耗,延长了网络生命周期。文献[5]提出了一种基于消息重要性的能量均衡路由算法,该算法对消息重要性进行度量,并根据消息转发收益确定消息的转发顺序和路由,在节点缓存空间不足时,会依据消息缓存价值进行缓存替换。文献[6]提出一种基于剩余能量的机会路由协议,以剩余传输次数为度量指标来确定候选节点集中节点的优先级,从而提高网络的生存周期。文
  献[7]提出了一种基于EIETX的自适应功率控制的机会路由协议APExOR,通过建立转发能耗模型来优化转发候选集和发射功率,以降低网络的能量消耗。文献[8]提出了一种适用于多跳无线网络的节点编码感知机会转发路由协议,通过引入基于侦听概率的附加ID信息添加机制、最优转发节点选择机制和数据包的高效缓存机制,提高网络吞吐量和编码包的解码成功率,减小数据包的平均端到端时延。文献[9]提出了一种基于网络编码的机会路由优化算法,通过信道误码率和丢包率计算节点接收编码包失败的概率,以减少编码包的重传次数。同时通过减少选择主转发节点的时间以及网络开销来降低网络中节点的能耗,以延长网络的生命周期。文献[10]提出了能耗和延迟平衡的机会路由协议,它通过估算预期能耗值来选择能耗较低的邻居节点作为候选节点,在平衡能耗和延迟性能方面做了优化。文献[11]提出了基于排序转发列表的机会路由协议,通过选择到目标节点最小距离的节点加入转发列表,来最大限度减少能源的消耗。文献[12]提出了一种适用于BLE Mesh网络的机会路由优化協议,它将ETX作为优先级指标来选择转发节点并运用于BLE Mesh网络中,优化协调策略和后备节点维护策略,减小通信时延,提升吞吐量。文献[13]提出了一个自适应机会路由协议—负载均衡的机会路由协议,该协议在考虑节点到目标节点距离的基础上还考虑了PLC链路的不稳定性以及流量的变化,并将此作为优先级指标。文献[14]提出一种基于节点社会性的喷雾等待路由协议,它通过节点的社会属性、移动模式和对消息的转发效能来对中继节点的选择进行优化,从而改善消息投递率和传输延迟的问题。
  在这些已有机会路由协议的基础上,本文提出了一种基于转发代价的机会路由协议(Cost Function-based Opportunistic Routing Protocol,CFOR),以能量代价函数作为选择转发节点的指标,得到最优的传输路径,从而改善网络中节点能量的均衡性。
  1 系统模型
  1.1 网络模型
  假设有n个同构的传感器节点随机且静止的分布在监测区域内,每个节点有唯一的ID,所有传感器节点的传输功率、传输范围相同。然后用通信图G =(V, E)对多跳无线网络进行建模,其中V表示传感器节点集,E表示网络中所有无线链路的集合。
  1.2 能耗模型
  本文采用文献[15]中的first-order能量模型,节点将
  k bit数据传输到距离为d的地方,所需消耗的能量如下:
  式中:Eelec是发送模块和接收模块处理1 bit数据所消耗的能量;εfs和εmp均为功率放大所消耗的能量;d为数据传输的距离;是两个模型的阈值,如果d<d0,则使用自由空间模型,否则使用多路径模型。节点接收k bit数据所消耗的能量如下:
  2 机会路由协议
  机会路由是针对无线多跳网络信息广播特性、有损特性提出的一种路由协议,与传统路由协议不同的是,它的传输路径并不是固定的。在机会路由中源节点将原本向目的节点发送的数据包先发送给邻居节点进行数据包的转发,该转发节点由多个候选节点的竞争选择产生,由此带来比传统固定路径无线路由更高的传输可靠性以及端到端的吞吐量。
  机会路由多节点转发机制的工作思路如下:
  (1)源节点先发送消息以发现邻居节点;
  (2)选择转发候选者;   (3)发送确认包;
  (4)决定是否转发接收到的包。
  转发序列的第一个节点是在它所有的邻居节点中选择一个能够把数据包传递给离目的节点更近的候选者子集,发送者把该集合列在包头中,用机会算法来划分优先级。传输后,每个接收到数据包的节点在包头的候选者列表中寻找它的地址,每个接收者依据它在列表里的位置,在发送确认包之前延迟一段时间。各节点查看收到的确认包集合来决定是否转发,转发节点用新的候选者列表重写数据包帧头,然后转发包。
  如图1所示,假设源节点S向中间节点V1~Vn传输数据的成功率相同且均为25%,则这n个中间节点都有可能作为下一跳接收到数据包转发给目的节点D,且数据传输的成功率为1-(1-25%)n,其中n>1,比选择一个中间节点作为传输固定路径的传输成功率高。
  如图2所示,虽然直接将数据包从源节点S发送给目的节点D是最简单的方法,但是可能由于链路质量的问题导致传输成功率仅为10%,而机会路由采用了多节点转发机制,选择S,A,B,D的路径成功率高达72.9%,该方法减少了数据重传的次数,从而节约了网络资源。
  因此,机会路由协议在传统路由协议的基础上,利用无线信道广播的特点,从上述两个方面减少了重传次数,提高了单次转发传输的成功率。
  3 基于代价函数的路由协议
  3.1 代价函数
  在对节点的优先级进行排序时,本文采用转发代价C(x)作为度量标准,在候选节点集中选择转发代价C(x)最小的节点作为转发者。
  式中:Pxy是节点x正确将数据包发送到y的正确率,也是节点x到节点y的链路质量;d(x, d ),d(y, d )分别表示节点x和节点y到目标节点的距离;E0表示节点y的初始能量,Ey表示节点y的剩余能量;α,β,γ均为权值函数,且α+β+γ=1。通过式(3)从候选节点集中选择C(x)最小的节点作为转发节点,并形成一条从源节点到目标节点的最优路径。
  由上述公式可知,剩余能量越多,传输的成本越小。同理,距离越短,节点发送数据包消耗的能量越少,转发代价越小。链路质量好,剩余能量较多的候选节点将被选择作为数据传输节点,既可缓解关键节点能量消耗,又能提高数据传输成功率,达到高效利用节点能量的效果。
  3.2 寻找最优候选节点集
  在本文中,C(x)指标被用来选择节点的候选节点集。在基于代价函数的路由协议中,通过最小化节点的C(x)指标可以有效减少节点能量的消耗,提高数据传输成功率。
  在算法1中,节点先周期发送广播包,广播包中包含节点的位置信息(x, y),成功率p和剩余能量LeftEnergy,邻居节点接收到广播包后建立邻居信息表。
  算法1:建立邻居集合
  Input:Topo Node
  Oupt:Neighbor
  (1)All Nordes send hello {x,y,p,LeftEnergy}
  (2)node receive the hello from neighboring Nordes,and make neighboring Nordes table M(s)
  (3)if(hello->LeftEnergy > 0)
  (4)node insert M(s)
  (5)else
  (6)remove node from M(s)
  算法2的工作步骤:有数据发送到目的节点时,首先检查目的节点是否在自己的邻居节点中,如果在,就直接发送给目的节点,否则通过优先级算法选取符合要求的目的节点集合M(s)(邻居节点到目的节点的距离大于本节点到目的节点的距离),计算邻居节点的优先级概率。优先级排序后选择优先级最高的节点N作为转发数据包的节点。
  算法2:寻找最优候选节点集
  Input:destination node Sink Position,neighboring Nordes table M(s)
  Output:best next hop node
  (1)receive data packet
  (2)if(DestAddress==MyAddress)
  (3)send packet to sink
  (4)else
  (5)for(i=0;i<size(M);i++)
  (6)calculate the best next hop N
  (7)
  (8)if (C(x)<C(N))
  (9)N=x,C(N)=C(x)
  (10)if(N==-1)
  (11)do not have next hop
  (12)else
  (13)output N
  4 仿真結果分析
  本文采用OPNET平台进行仿真实验,选用802.11Mac协议,将基于代价函数的机会路由协议与传统的ExOR协议进行比较,传感器节点部署在一个200 m×200 m的区域内,具体仿真参数设置见表1所列。
  在通信距离为50 m时,节点数目分别为50个,100个,随着时间的增加节点失效的数目分别如图3、图4所示。保持通信距离不变,增大网络内节点的数目,可以看出传统的机会路由算法在仿真开始约1 min已有节点失效,仅仅依靠邻居节点和Sink节点的地理位置信息来确定中间转发节点。在这种情况下,认为在传输范围内,距离Sink节点越近,路径越优。这样在网络初始过程中,会造成频繁使用某一节点作为中间节点进行数据转发,直至该节点能量耗尽失效,而其他节点存在能量冗余的现象,网络整体失效后,能量无法得到有效利用。采用改进的机会路由算法后,网络能耗能均匀分布到邻居节点中,使网络生存时间增加,直到周围节点能量基本耗尽时,在第14 min时集中失效,基本达到网络最长生存时间。   从图5、图6可以看出,当网络运行到达一定时间时,节点每秒平均接收的能量会突然减少,相较于传统的机会路由协议,基于代价函数的机会路由协议能将节点的能量平均分配到各节点上,在50个中间节点范围内,基于距离的机会路由算法的生存时间约为10 min,而改进的机会路由算法能达到14 min,使得网络节点的生存时间更长。
  5 结 语
  本文针对机会路由协议中能量有限的问题,提出了基于代价函数的机会路由协议,将代价函数作为选择网络中节点的候选节点集的指标,该指标综合考虑了节点剩余能量、距离和链路质量,选择转发成本最小的节点作为候选节点进行转发。仿真结果表明,本文所提的基于代价函数的机会路由协议可以有效提高网络的吞吐量,延长网络的生存周期。由于无线传感器网络常用于开放性的环境中,传输过程中内容容易被截获,安全系数较低,所以在下一步工作中,可以在协议中加入安全机制,提高数据传输的可靠性。
  参考文献
  [1] BISWAS S,MORRIS R. ExOR:Opportunistic multi-hop routing for wireless networks(conference paper)[J]. Computer communication review,2005,35(4):133-144.
  [2] MAO X,TANG S,XU X,et al. Energy-efficient opportunistic routing in wireless sensor networks [J]. IEEE transactions on parallel & distributed systems,2011,22(11):1934-1942.
  [3] SAHOO J,SALAHUDDIN M A,GLITHO R,et al. A survey on replica server placement algorithms for content delivery networks(review)[J]. IEEE communications surveys and tutorials,2017,19(2):1002-1026.
  [4] KUILA P,JANA P K. Energy efficient clustering and routing algorithms for wireless sensor networks:particle swarm optimization approach [J]. Engineering applications of artificial intelligence,2014,33(8):127-140.
  [5]陳志刚,殷滨安,吴嘉.基于消息重要性的机会网络能量均衡路由算法[J].通信学报,2018,39(12):91-101.
  [6]吕晓军,王小书,贾新春,等.WSNs中基于剩余能量的机会路由协议[J].计算机工程与设计,2018,39(11):3301-3305.
  [7]张大鹏,康会莉,王新生.WSNs中一种基于EIETX的自适应功率控制的机会路由[J].传感器与微系统,2013,32(3):43-45.
  [8]姚玉坤,王宇,吕盼成.基于节点编码感知的机会转发路由协议
  [J].电子技术应用,2017,43(9):119-122.
  [9]姚玉坤,张毅,李娟.基于网络编码的WSN机会路由优化算法
  [J].计算机工程,2018,44(6):68-73.
  [10]高宏超,陈晓江,徐丹,等.无源感知网络中能耗和延迟平衡的机会路由协议[J].软件学报,2019,30(8):2528-2544.
  [11]刘友武,王晶,刘持标.WSN中基于排序转发列表的机会路由协议[J].重庆理工大学学报(自然科学版),2019,33(5):161-167.
  [12]孙吉武,江凌云.BLE Mesh网络中的机会路由协议优化[J].南京邮电大学学报(自然科学版),2018,38(6):90-95.
  [13]李祝红,赵灿明,闫龙,等.智能电网中电力线通信网络负载均衡的机会路由协议[J].计算机应用,2019,39(3):812-816.
  [14]赵宇红,尹自立,张晓琳.基于节点社会性的机会网络喷雾等待路由协议[J].计算机仿真,2018,35(7):231-236.
  [15] HEINZELMAN W B,CHANDRAKASAN A P,BALAKRISHNAN H. An application-specific protocol architecture for wireless microsensor networks [J]. IEEE transactions on wireless communications,2002,1(4):660-670.
转载注明来源:https://www.xzbu.com/8/view-15244341.htm