论文部分内容阅读
摘要:无线多媒体传感器网络视频流传输需要提供多样性QoS保障,传统的无线传感器网络路由协议不能很好地保证多媒体视频流数据传输,改进多径路由算法TPGF下一跳节点选择方法,提出一种适合视频流传输的区分服务多路径Qos路由算法DSMQRA。综合考虑各路径跳数与节点剩余能量情况,在源节点与汇聚节点间找到多条优化的节点不相交路径;采用区分服务机制,重点保护视频流关键帧,提高视频流传输质量。在NS2环境下与AODV、GPSR、TPGF等算法进行仿真对比分析,实验结果表明DSMQRA算法能够有效延长网络生存时间、降低丢包率、减小帧延时、图像峰值信噪比较高,更加适合无线多媒体传感器网络视频流数据传输。
关键词:无线多媒体传感器网络;区分服务;多径路由;算法
中图分类号:TP393文献标识码:A
1引言
无线多媒体传感器网络(WMSNs)通过集成于节点上的CMOS摄像头、微型麦克风等多媒体传感器协作地感知外部环境,从物理环境中采集图像、视频、音频等多媒体信息,实现对监测区域更细粒度的精确监测。视频流传输是WMSNs的典型应用,视频传感器节点将采集的视频数据多跳传输至sink汇聚节点。为了保障视频流传输质量,延长网络生存时间,必须考虑流媒体数据对带宽、时延、抖动、丢包率、能耗等QoS指标的严格要求,必须考虑全网能量的均衡消耗。
经典的AODV[1]路由协议,具有按需路由、操作简单、可扩展性好等优点,但却没有考虑路由负载,存在冗余消息多、协议开销大的缺点。近年来提供QoS保障的多径路由算法日益成为WMSNs的研究热点[2-3]。TPGF[4](Two-phasegeographicGreedyForwardingroutingalgorithm)基于地理位置信息采用贪婪策略在邻居节点集中选择距离目的节点最近的节点作为下一跳,直到找到一条可能路径,然后基于最小跳数进行路径优化,但是其下一跳节点选择仅考虑了距离因素,没有考虑节点能量因素,一旦路径上任意节点能量耗尽,该路径将瘫痪,这时最短路径便成为了最不安全的路径。
随着研究的不断深入,出现了专门针对多媒体数据传输的路由机制。利用视频失真预测模型,Kandris等人设计了QoS路由算法PEMuR[5],其缺点在于失真预测需要额外计算开销,并不适用资源受限的传感器网络。为了增强网络整体吞吐量,YahyaB等提出了基于服务区分的多路径QoS路由协议EQSR[6],通过区分不同服务数据将较为重要的数据通过分片编码方式分散到多条路径中传输,但对数据重新编码同样增加了网络的额外开销。对视频数据进行有效编码能够压缩原始视频的数据量,且经过编码后的视频数据具有不同重要性,如MPEG-4编码方式[7],其GOP(groupofpicture)格式为IPBBPBBPIP……,其中I帧是关键帧,P帧与B帧是非关键帧,P帧与B帧的解码依赖于I帧,如果I帧出错,将导致接收端P帧、B帧无法解码而成为无用数据,这样不仅影响视频解码质量,而且造成网络资源浪费。本文改进TPGF下一跳节点选择方法,依据编码后不同数据帧的重要程度采用区分服务方法,提出一种适合视频流传输的区分服务多路径Qos路由算法DSMQRA(DifferentiatedServicesMultipathQoSRoutingAlgorithm),综合考虑距离与能量因素,使每条路由成为能量感知路由,同时采用区分服务机制重点保护视频流I关键帧,提高视频数据传输质量。
2网络模型
无线多媒体传感器网络拓扑可抽象成带权有向图G=(V,E),其中V={v1,v2,…,vn}为有限传感器节点集合,节点个数n=|V|;E={e1,e2,…,em}为单跳通信链路集合。对于任意链路e∈E,有e=(vi,vj),vi∈V,vj∈V,i≠j。网络模型其它特征如下:
1)每条链路具有带宽、时延、丢包率等QoS特征值。带宽即链路数据传输速率;时延主要由中继节点排队时延与链路传输时延组成;丢包率包括节点缓冲区溢出丢包与信道间干扰丢包。
2)基站随机部署,每个传感器节点和基站位置相对固定,采用GPS获得节点位置信息。假设一跳以内每个节点都有邻居节点,并且每个节点都知道自己位置信息。
3)每个传感器节点分为活节点可用、活节点不可用、死节点三种不同状态。活节点可用表示节点能量充足,可用于正常数据采集和传输,状态设置为1;死节点表示节点因能量耗尽而死亡,状态设置为-1;活节点但不可用表示节点被设置成阻塞节点,状态设置为0。当出现以下情况,节点将被设置成阻塞节点:①除上一跳节点外,再无其他节点可以选择作为其一跳以内的邻居节点;②除上一跳节点外,其他一跳以内的邻居节点已经被其他路径占用;③出现路由环路时,路由环路起点处的传感器节点将其下一跳节点置为阻塞节点。
3视频流区分服务多径QoS路由算法
3.1邻居节点表建立
每个节点定期通过洪泛方式向其一跳范围内所有邻居节点广播节点ID、坐标、剩余能量等自身信息,节点根据收到的信息建立或更新如图1所示的邻居节点表,其中剩余能量初值为系统初始化时预设的节点能量,节点状态初始值为1,表示活节点可用;节点被路径所占用时,所在路径号为从0开始的自然数,路径号初始值为-1。
节点ID坐标剩余能量节点状态所在路径号图1邻居节点表
当节点收到邻居节点数据包时将按以下步骤建立和更新邻居节点表信息,首先提取节点ID,然后查找其自身邻居节点表,并按以下三种情况处理:①若已经存在该节点,则更新该邻居节点表信息后丢弃该数据包;②若不存在该节点,则将其加入邻居节点表;③若大于预先设定时间间隔仍未收到节点更新数据包信息,则从邻居节点表项中删除该节点信息。
3.2多径路由的建立
源节点至汇聚节点间维护多条路径,可减少节点之间由于带宽资源有限而导致的冲突,有效缓解网络拥塞,延长网络生存周期,提高网络吞吐量。多径路由建立包括贪心转发和路径优化两个阶段。 3.2.1贪心转发阶段
源节点向汇聚节点发送Hello探索数据包,采用贪心转发和回溯方法,建立从源节点至汇聚节点的多条路径。
1)贪心转发
TPGF采取贪心转发策略,从源节点发送探索数据包开始,总是从邻居节点集中选择距sink节点最近的节点作为下一跳,直到汇聚节点为止,但最优节点选择并没有考虑节点的剩余能量情况。DSMQRA改进了TPGF下一跳节点选择方法,综合考虑节点距离因素和能量因素,使整条路由成为能量感知路由。DSMQRA选择最优节点的标准是按公式(1)计算估计代价值C(n,d),其值最小的节点被选择为下一跳节点。考虑距离、能量变化敏感度,引入指数加权移动平均EWMA,平滑估计代价值大小,减少瞬时突发采样对估计代价值影响。
C(n,d)=(1-λ)*d(n,d) λ*e(n),(0<λ<1)(1)
其中d(n,d)表示本节点到目标节点的距离,计算如公式(2)所示。
d(n,d)=d2(i,d)-d2mind2max-d2min(2)
公式(2)中d(i,d)为邻居节点i距离汇聚节点sink的距离,dmin为所有邻居节点距离汇聚节点距离最小值,dmax为所有邻居节点距离汇聚节点距离最大值。
公式(1)中e(n)表示邻居节点剩余能量大小,e(n)计算如公式(3)所示,其中Einit为节点初始能量,Eres为节点当前剩余能量。
e(n)=Einit-EresEinit(3)
公式(1)中权值λ随网络动态变化,网络初始化时,所有节点剩余能量均相同,估计代价值仅与距离d(n,d)有关,此时λ值等于零;随着网络数据传输,各节点因负载不同导致能量消耗不同,邻居节点间剩余能量水平差异变大,此时剩余能量部分在估计代价中权重应该逐渐加大,而距离部分权重将相应减少。权值λ采用归一化处理后如公式(4)所示,其中Eres_max表示所有邻居节点剩余能量最大值,Eres_min表示所有邻居节点剩余能量最小值。
λ=Eres_max-Eres_minEres_max(4)
2)回溯
当传感器节点因能量耗尽成为死节点时将产生路由空洞。DSMQRA算法采用“回溯”方法避免当前节点遇到路由空洞而造成路由探测失败。“回溯”即当前节点除上一跳节点外,其一跳邻居节点表中没有可用的下一跳节点时,在邻居节点表中将该节点设置成阻塞节点,且节点状态置0,表示该节点为“活节点不可用”,然后回退至上一跳节点,从而绕开路由空洞,并按(1)式重新计算选择下一跳邻居节点。
3.2.2路径优化阶段
源节点至汇聚节点间新路由发现后,根据邻居节点表信息,路径中每个节点分别被标上路径号和节点序号标签,但路径中可能存在“路径环”,即路径中出现两个或两个以上节点是另一个节点的邻居,如图2中的路径环ABC。DSMQRA算法采用“标签优化”方法消除路径环,即单径路由形成后,汇聚节点会有一确认信息通过反向路由回送给源节点,为了消除路径环,规定路径中节点只给具有相同路径号、序号较小的一跳邻居节点发送确认信息,如图2所示,C节点标签1:2表示路径1上序号为2的节点,当节点C回送确认信息时,将选择序号较小的节点A,而不再选择节点B,将B节点设为活节点且可用,状态置1,这样B节点被释放作为下一次建立新路径时的备用节点,从而形成A-C-D-E-F-S的优化路径。重复上述贪心转发和路径优化过程,直到找到所有从源节点到目标节点的优化不相交路径,并在源节点中存储每条路径的跳数,作为路由选择的依据。最先建立的路径,跳数较少,能量最充足,便成为最优路径,后续建立的路径优先级将依次递减。
3.3视频流编码与传输
为了提高视频数据的传输质量,应用层视频编码器采用MPEG-4编码方式将视频数据进行压缩编码,为数据包分别打上I、P、B帧标识,帧标识作为层间交互信息传递给网络层,如图3所示。
为了提高视频数据的传输质量,使解码端能够较好的恢复视频,网络层将编码后的视频数据采用多路径方式传输,根据数据包所属帧的重要程度不同,运用区分服务方法,选择跳数少、能量消耗小、有QoS保障的最优路径传输I关键帧,选择次优路径传递P帧、B帧等非关键帧,从而实现对I关键帧的重点保护。
3.4区分服务机制
一般情况下路径长度越短、能量越充足,其QoS保障水平越高。综合考虑距离与能量因素,DSMQRA算法根据公式(5)计算估计代价值cost(H,E)大小实现区分服务。估计代价是路径长度和整条路径能耗的加权和,其中H为路径跳数归一化值,E为能量消耗归一化值,μ为权值(0<μ<1)。当μ一定时,跳数少、能量消耗小,估计代价值越小,该路径Qos保障级别越高,将被选择用来传输I关键帧,然后选择次优路径传递P帧、B帧等非关键帧。
cost(H,E)=(1-μ)*H μ*E(5)
路径跳数H的归一化值由(6)式决定,其中hop(i)表示路径i自身包含的跳数,∑hop表示源节点至汇聚节点所有路径的跳数之和。
H=hop(i)∑hop(6)
一般情况下路径传输数据包数量越小,能量消耗越少,剩余能量值越大,该路径被选中的可能性越大。由于路径中节点剩余能量难以精确估计,能量消耗E将用该条路径所传输数据包个数来估计,公式(5)中E的值由(7)式决定,其中num(i)表示路径i所传输数据包数量,∑num表示所有路径传输数据包数量之和。
E=num(i)∑num(7)
在视频传输初期能量充足,估计代价值计算主要考虑路径长度,随着视频流传输,节点剩余能量将逐渐减少,此时跳数少的路径不一定是最佳路径,能耗因素的权值应该逐渐增大。因此综合考虑路径跳数和能耗因素,公式(5)中权值μ的选取可以采用(8)式所示的双曲正切函数。 μ=1-exp((-2)*∑num)1 exp((-2)*∑num)(8)
双曲正切函数图像如图4所示,μ在区间[0,1]之间变化,随着所传输数据包个数num的增大,μ值趋近于1,此时估计代价值计算将重点考虑能耗因素。
4仿真与结果分析
4.1仿真环境设置
将DSMQRA算法加入NS2[8]模拟器核心组件,添加Evalvid[9]视频质量评价工具集,并与TPGF、GPSR[10](GreedyPerimeterStatelessRouting)、AODV(AdhocOndemandDistanceVectorRouting)等算法性能进行仿真比较。highway.yuv视频测试用例包含2000帧,其中I帧223,P帧445,B帧1332,采用MPEG-4编码格式,每帧图像176*144像素,发送速率25帧/秒;根据不同节点数分为60、80、……200等八种不同网络场景,针对每种场景分别测试不同算法作用下的网络生存时间、丢包率、I帧丢帧率、图像峰值信噪比PSNR等性能指标。其它仿真实验参数设置如表1所示。
网络覆盖区域(600*400)m2节点传输半径100m源节点坐标(500,300)sink节点坐标(100,100)普通节点能量J源节点汇聚节点能量30J接收功率0.4W数据包最大值1000B发送功率0.4W节点分布模式随机4.2结果及分析
1)网络生存时间比较
网络生存时间为从WMSNs初始部署到第一个节点能量耗尽失去传感能力的时间段。如图5所示为不同场景网络生存时间比较。
节点数量(个)图5网络生存时间比较
DSMQRA算法将网络负载选择多路径传输,更多节点进行分摊,具有更好的负载均衡性,比采用单路径传输的GPSR和AODV的网络生存周期更长,这对于数据量较大的WMSNs来说非常关键;综合考虑距离与能量因素,同时采用区分服务机制的DSMQRA比TPGF具有更长的网络生存期,表明采用区分服务机制可进一步在多路径间均衡网络负载,延长网络生存时间。随着网络场景节点数增加,节点邻居数目增多,因为节点周期性维护其邻居节点表信息所消耗能量也将随之升高,所以网络生存时间曲线略有下降。
2)丢包率比较
不同网络场景丢包率比较如图6所示。当网络规模较小时(小于120节点),由于节点密度较小,不能提供足够多冗余节点来实现多路径传输,当发生节点死亡时,导致网络性能骤减,此时DSMQRA算法丢包率比GPSR和AODV略大。但当节点数达到一定规模(大于120节点)时,DSMQRA算法保证路径有一定冗余度,当某条路径失效时,将通过冗余路由均衡网络负载、保障传输可靠性,大大减少由网络拥塞带来的数据包丢失情况。
节点数量(个)图6丢包率比较
3)I帧丢帧率比较
在解码端I关键帧对于视频能否正确解码最为重要。如图7所示为不同场景I帧丢帧率比较。当网络规模较小时,还不能实现多路径传输,DSMQRA算法I帧丢帧率较高;随着网络规模增大,一方面由于改进的多路径传输均衡了网络负载,另一方面采用区分服务机制对I关键帧实现了重点保护,I帧丢帧率明显低于TPGF、GPSR和AODV。4)图像峰值信噪比PSNR比较
解码后的图像质量可通过如图8所示的平均峰值信噪比PSNR来反映,PSNR值越大代表图像失真越少。当网络规模小、节点密度较低时,因没有足够的冗余节点,当路径上有节点死亡时,路径很难完成自愈,此时DSMQRA的PSNR值较小。随着节点密度变大,TPGF因采用多路径传输方式,PSNR值变大,说明图像质量有所改善。DSMQRA综合考虑了节点剩余能量和多路径聚集程度,均衡了负载和能耗避免了网络拥塞,同时采用区分服务机制对视频流I关键帧传输进行了最高优先级保障,此时的PSNR值变得最大,表明解码后的图像质量最佳。
5结论
本文提出的DSMQRA算法,在网络规模与节点密度较大的WMSNs中经过与GPSR、AODV、TPGF进行仿真对比,表现出了更好的网络性能。该算法主要是在能量约束条件下提出的,视频的QoS保障只局限于网络层和应用层协作,实际的WMSNs路由是在能量、时延、可靠性和安全性等多约束条件下进行的。因此,设计满足多约束条件,实现其他各层和网络层跨层协作的无线多媒体传感器网络路由算法,达到整个网络节能效果最优化,是我们在此基础上应该进一步深入研究的问题。
参考文献
[1]C.Perkins,E.BeldingRoyer.RFC3561,AdHoconDemandDistanceVector(AODV)Routing[S].2003.
[2]周灵,王建新.无线多媒体传感器网络路由协议研究[J].电子学报,2011,39(1):149-156.
[3]董武世,柯宗武,陈年生.无线多媒体传感器网络的QoS路由算法[J].武汉理工大学学报:交通科学与工程版,2009,33(4):783-786.
[4]LeiShu,YanZhang.Geographicroutinginwirelessmultimediasensornetworks[C].Proceedingsofthe2thIEEEInternationalConferenceonFutureGenerationCommunicationandNetwork.HainanIsland:IEEECommunicationSociety,2008,12.68-73.
[5]KANDRISD,TSAGKAROPOULOSM,POLITISI,TZESA,KOTSOPOULOSS.EnergyefficientandperceivedQoSawarevideoroutingoverwirelessmultimediasensornetworks[J].AdHocNetworks,2011,9(4):591-607.
[6]YAHYAB,BenOthmanJ.AnenergyefficientandQoSawaremultipathroutingprotocolforwirelesssensornetworks[C].InProc.oftheIEEE34thConf.onLocalComputerNetworks.Zurich:BBNTechnologies,2009.93-100.
[7]樊晓平,熊哲源,陈志杰等.无线多媒体传感器网络视频编码研究[J].通信学报,2011,32(9):137-144.
[8]于斌,孙斌,温暖,等.NS2与网络模拟[M].北京:人民邮电出版社,2007.
[9]柯志亨,程荣祥,邓德隽.NS2仿真试验——多媒体和无线网络通信[M].北京:电子工业出版社,2009.
[10]KARPB,KUNGH.GreedyPerimeterStatelessRouting(GPSR)[C].InProc.ofthe6thInternationalConferenceonMobileComputingandNetworking[C].Boston:Massachusetts,2000:243-25.
第35卷第1期2016年3月计算技术与自动化ComputingTechnologyandAutomationVol35,No1Mar.2016第35卷第1期2016年3月计算技术与自动化ComputingTechnologyandAutomationVol35,No1Mar.2016
收稿日期:2015-08-04
基金项目:国家级“电子信息工程”专业综合改革试点专业项目(高教司函[2013]5号);湖南省教育厅开放基金项目(15K051)
关键词:无线多媒体传感器网络;区分服务;多径路由;算法
中图分类号:TP393文献标识码:A
1引言
无线多媒体传感器网络(WMSNs)通过集成于节点上的CMOS摄像头、微型麦克风等多媒体传感器协作地感知外部环境,从物理环境中采集图像、视频、音频等多媒体信息,实现对监测区域更细粒度的精确监测。视频流传输是WMSNs的典型应用,视频传感器节点将采集的视频数据多跳传输至sink汇聚节点。为了保障视频流传输质量,延长网络生存时间,必须考虑流媒体数据对带宽、时延、抖动、丢包率、能耗等QoS指标的严格要求,必须考虑全网能量的均衡消耗。
经典的AODV[1]路由协议,具有按需路由、操作简单、可扩展性好等优点,但却没有考虑路由负载,存在冗余消息多、协议开销大的缺点。近年来提供QoS保障的多径路由算法日益成为WMSNs的研究热点[2-3]。TPGF[4](Two-phasegeographicGreedyForwardingroutingalgorithm)基于地理位置信息采用贪婪策略在邻居节点集中选择距离目的节点最近的节点作为下一跳,直到找到一条可能路径,然后基于最小跳数进行路径优化,但是其下一跳节点选择仅考虑了距离因素,没有考虑节点能量因素,一旦路径上任意节点能量耗尽,该路径将瘫痪,这时最短路径便成为了最不安全的路径。
随着研究的不断深入,出现了专门针对多媒体数据传输的路由机制。利用视频失真预测模型,Kandris等人设计了QoS路由算法PEMuR[5],其缺点在于失真预测需要额外计算开销,并不适用资源受限的传感器网络。为了增强网络整体吞吐量,YahyaB等提出了基于服务区分的多路径QoS路由协议EQSR[6],通过区分不同服务数据将较为重要的数据通过分片编码方式分散到多条路径中传输,但对数据重新编码同样增加了网络的额外开销。对视频数据进行有效编码能够压缩原始视频的数据量,且经过编码后的视频数据具有不同重要性,如MPEG-4编码方式[7],其GOP(groupofpicture)格式为IPBBPBBPIP……,其中I帧是关键帧,P帧与B帧是非关键帧,P帧与B帧的解码依赖于I帧,如果I帧出错,将导致接收端P帧、B帧无法解码而成为无用数据,这样不仅影响视频解码质量,而且造成网络资源浪费。本文改进TPGF下一跳节点选择方法,依据编码后不同数据帧的重要程度采用区分服务方法,提出一种适合视频流传输的区分服务多路径Qos路由算法DSMQRA(DifferentiatedServicesMultipathQoSRoutingAlgorithm),综合考虑距离与能量因素,使每条路由成为能量感知路由,同时采用区分服务机制重点保护视频流I关键帧,提高视频数据传输质量。
2网络模型
无线多媒体传感器网络拓扑可抽象成带权有向图G=(V,E),其中V={v1,v2,…,vn}为有限传感器节点集合,节点个数n=|V|;E={e1,e2,…,em}为单跳通信链路集合。对于任意链路e∈E,有e=(vi,vj),vi∈V,vj∈V,i≠j。网络模型其它特征如下:
1)每条链路具有带宽、时延、丢包率等QoS特征值。带宽即链路数据传输速率;时延主要由中继节点排队时延与链路传输时延组成;丢包率包括节点缓冲区溢出丢包与信道间干扰丢包。
2)基站随机部署,每个传感器节点和基站位置相对固定,采用GPS获得节点位置信息。假设一跳以内每个节点都有邻居节点,并且每个节点都知道自己位置信息。
3)每个传感器节点分为活节点可用、活节点不可用、死节点三种不同状态。活节点可用表示节点能量充足,可用于正常数据采集和传输,状态设置为1;死节点表示节点因能量耗尽而死亡,状态设置为-1;活节点但不可用表示节点被设置成阻塞节点,状态设置为0。当出现以下情况,节点将被设置成阻塞节点:①除上一跳节点外,再无其他节点可以选择作为其一跳以内的邻居节点;②除上一跳节点外,其他一跳以内的邻居节点已经被其他路径占用;③出现路由环路时,路由环路起点处的传感器节点将其下一跳节点置为阻塞节点。
3视频流区分服务多径QoS路由算法
3.1邻居节点表建立
每个节点定期通过洪泛方式向其一跳范围内所有邻居节点广播节点ID、坐标、剩余能量等自身信息,节点根据收到的信息建立或更新如图1所示的邻居节点表,其中剩余能量初值为系统初始化时预设的节点能量,节点状态初始值为1,表示活节点可用;节点被路径所占用时,所在路径号为从0开始的自然数,路径号初始值为-1。
节点ID坐标剩余能量节点状态所在路径号图1邻居节点表
当节点收到邻居节点数据包时将按以下步骤建立和更新邻居节点表信息,首先提取节点ID,然后查找其自身邻居节点表,并按以下三种情况处理:①若已经存在该节点,则更新该邻居节点表信息后丢弃该数据包;②若不存在该节点,则将其加入邻居节点表;③若大于预先设定时间间隔仍未收到节点更新数据包信息,则从邻居节点表项中删除该节点信息。
3.2多径路由的建立
源节点至汇聚节点间维护多条路径,可减少节点之间由于带宽资源有限而导致的冲突,有效缓解网络拥塞,延长网络生存周期,提高网络吞吐量。多径路由建立包括贪心转发和路径优化两个阶段。 3.2.1贪心转发阶段
源节点向汇聚节点发送Hello探索数据包,采用贪心转发和回溯方法,建立从源节点至汇聚节点的多条路径。
1)贪心转发
TPGF采取贪心转发策略,从源节点发送探索数据包开始,总是从邻居节点集中选择距sink节点最近的节点作为下一跳,直到汇聚节点为止,但最优节点选择并没有考虑节点的剩余能量情况。DSMQRA改进了TPGF下一跳节点选择方法,综合考虑节点距离因素和能量因素,使整条路由成为能量感知路由。DSMQRA选择最优节点的标准是按公式(1)计算估计代价值C(n,d),其值最小的节点被选择为下一跳节点。考虑距离、能量变化敏感度,引入指数加权移动平均EWMA,平滑估计代价值大小,减少瞬时突发采样对估计代价值影响。
C(n,d)=(1-λ)*d(n,d) λ*e(n),(0<λ<1)(1)
其中d(n,d)表示本节点到目标节点的距离,计算如公式(2)所示。
d(n,d)=d2(i,d)-d2mind2max-d2min(2)
公式(2)中d(i,d)为邻居节点i距离汇聚节点sink的距离,dmin为所有邻居节点距离汇聚节点距离最小值,dmax为所有邻居节点距离汇聚节点距离最大值。
公式(1)中e(n)表示邻居节点剩余能量大小,e(n)计算如公式(3)所示,其中Einit为节点初始能量,Eres为节点当前剩余能量。
e(n)=Einit-EresEinit(3)
公式(1)中权值λ随网络动态变化,网络初始化时,所有节点剩余能量均相同,估计代价值仅与距离d(n,d)有关,此时λ值等于零;随着网络数据传输,各节点因负载不同导致能量消耗不同,邻居节点间剩余能量水平差异变大,此时剩余能量部分在估计代价中权重应该逐渐加大,而距离部分权重将相应减少。权值λ采用归一化处理后如公式(4)所示,其中Eres_max表示所有邻居节点剩余能量最大值,Eres_min表示所有邻居节点剩余能量最小值。
λ=Eres_max-Eres_minEres_max(4)
2)回溯
当传感器节点因能量耗尽成为死节点时将产生路由空洞。DSMQRA算法采用“回溯”方法避免当前节点遇到路由空洞而造成路由探测失败。“回溯”即当前节点除上一跳节点外,其一跳邻居节点表中没有可用的下一跳节点时,在邻居节点表中将该节点设置成阻塞节点,且节点状态置0,表示该节点为“活节点不可用”,然后回退至上一跳节点,从而绕开路由空洞,并按(1)式重新计算选择下一跳邻居节点。
3.2.2路径优化阶段
源节点至汇聚节点间新路由发现后,根据邻居节点表信息,路径中每个节点分别被标上路径号和节点序号标签,但路径中可能存在“路径环”,即路径中出现两个或两个以上节点是另一个节点的邻居,如图2中的路径环ABC。DSMQRA算法采用“标签优化”方法消除路径环,即单径路由形成后,汇聚节点会有一确认信息通过反向路由回送给源节点,为了消除路径环,规定路径中节点只给具有相同路径号、序号较小的一跳邻居节点发送确认信息,如图2所示,C节点标签1:2表示路径1上序号为2的节点,当节点C回送确认信息时,将选择序号较小的节点A,而不再选择节点B,将B节点设为活节点且可用,状态置1,这样B节点被释放作为下一次建立新路径时的备用节点,从而形成A-C-D-E-F-S的优化路径。重复上述贪心转发和路径优化过程,直到找到所有从源节点到目标节点的优化不相交路径,并在源节点中存储每条路径的跳数,作为路由选择的依据。最先建立的路径,跳数较少,能量最充足,便成为最优路径,后续建立的路径优先级将依次递减。
3.3视频流编码与传输
为了提高视频数据的传输质量,应用层视频编码器采用MPEG-4编码方式将视频数据进行压缩编码,为数据包分别打上I、P、B帧标识,帧标识作为层间交互信息传递给网络层,如图3所示。
为了提高视频数据的传输质量,使解码端能够较好的恢复视频,网络层将编码后的视频数据采用多路径方式传输,根据数据包所属帧的重要程度不同,运用区分服务方法,选择跳数少、能量消耗小、有QoS保障的最优路径传输I关键帧,选择次优路径传递P帧、B帧等非关键帧,从而实现对I关键帧的重点保护。
3.4区分服务机制
一般情况下路径长度越短、能量越充足,其QoS保障水平越高。综合考虑距离与能量因素,DSMQRA算法根据公式(5)计算估计代价值cost(H,E)大小实现区分服务。估计代价是路径长度和整条路径能耗的加权和,其中H为路径跳数归一化值,E为能量消耗归一化值,μ为权值(0<μ<1)。当μ一定时,跳数少、能量消耗小,估计代价值越小,该路径Qos保障级别越高,将被选择用来传输I关键帧,然后选择次优路径传递P帧、B帧等非关键帧。
cost(H,E)=(1-μ)*H μ*E(5)
路径跳数H的归一化值由(6)式决定,其中hop(i)表示路径i自身包含的跳数,∑hop表示源节点至汇聚节点所有路径的跳数之和。
H=hop(i)∑hop(6)
一般情况下路径传输数据包数量越小,能量消耗越少,剩余能量值越大,该路径被选中的可能性越大。由于路径中节点剩余能量难以精确估计,能量消耗E将用该条路径所传输数据包个数来估计,公式(5)中E的值由(7)式决定,其中num(i)表示路径i所传输数据包数量,∑num表示所有路径传输数据包数量之和。
E=num(i)∑num(7)
在视频传输初期能量充足,估计代价值计算主要考虑路径长度,随着视频流传输,节点剩余能量将逐渐减少,此时跳数少的路径不一定是最佳路径,能耗因素的权值应该逐渐增大。因此综合考虑路径跳数和能耗因素,公式(5)中权值μ的选取可以采用(8)式所示的双曲正切函数。 μ=1-exp((-2)*∑num)1 exp((-2)*∑num)(8)
双曲正切函数图像如图4所示,μ在区间[0,1]之间变化,随着所传输数据包个数num的增大,μ值趋近于1,此时估计代价值计算将重点考虑能耗因素。
4仿真与结果分析
4.1仿真环境设置
将DSMQRA算法加入NS2[8]模拟器核心组件,添加Evalvid[9]视频质量评价工具集,并与TPGF、GPSR[10](GreedyPerimeterStatelessRouting)、AODV(AdhocOndemandDistanceVectorRouting)等算法性能进行仿真比较。highway.yuv视频测试用例包含2000帧,其中I帧223,P帧445,B帧1332,采用MPEG-4编码格式,每帧图像176*144像素,发送速率25帧/秒;根据不同节点数分为60、80、……200等八种不同网络场景,针对每种场景分别测试不同算法作用下的网络生存时间、丢包率、I帧丢帧率、图像峰值信噪比PSNR等性能指标。其它仿真实验参数设置如表1所示。
网络覆盖区域(600*400)m2节点传输半径100m源节点坐标(500,300)sink节点坐标(100,100)普通节点能量J源节点汇聚节点能量30J接收功率0.4W数据包最大值1000B发送功率0.4W节点分布模式随机4.2结果及分析
1)网络生存时间比较
网络生存时间为从WMSNs初始部署到第一个节点能量耗尽失去传感能力的时间段。如图5所示为不同场景网络生存时间比较。
节点数量(个)图5网络生存时间比较
DSMQRA算法将网络负载选择多路径传输,更多节点进行分摊,具有更好的负载均衡性,比采用单路径传输的GPSR和AODV的网络生存周期更长,这对于数据量较大的WMSNs来说非常关键;综合考虑距离与能量因素,同时采用区分服务机制的DSMQRA比TPGF具有更长的网络生存期,表明采用区分服务机制可进一步在多路径间均衡网络负载,延长网络生存时间。随着网络场景节点数增加,节点邻居数目增多,因为节点周期性维护其邻居节点表信息所消耗能量也将随之升高,所以网络生存时间曲线略有下降。
2)丢包率比较
不同网络场景丢包率比较如图6所示。当网络规模较小时(小于120节点),由于节点密度较小,不能提供足够多冗余节点来实现多路径传输,当发生节点死亡时,导致网络性能骤减,此时DSMQRA算法丢包率比GPSR和AODV略大。但当节点数达到一定规模(大于120节点)时,DSMQRA算法保证路径有一定冗余度,当某条路径失效时,将通过冗余路由均衡网络负载、保障传输可靠性,大大减少由网络拥塞带来的数据包丢失情况。
节点数量(个)图6丢包率比较
3)I帧丢帧率比较
在解码端I关键帧对于视频能否正确解码最为重要。如图7所示为不同场景I帧丢帧率比较。当网络规模较小时,还不能实现多路径传输,DSMQRA算法I帧丢帧率较高;随着网络规模增大,一方面由于改进的多路径传输均衡了网络负载,另一方面采用区分服务机制对I关键帧实现了重点保护,I帧丢帧率明显低于TPGF、GPSR和AODV。4)图像峰值信噪比PSNR比较
解码后的图像质量可通过如图8所示的平均峰值信噪比PSNR来反映,PSNR值越大代表图像失真越少。当网络规模小、节点密度较低时,因没有足够的冗余节点,当路径上有节点死亡时,路径很难完成自愈,此时DSMQRA的PSNR值较小。随着节点密度变大,TPGF因采用多路径传输方式,PSNR值变大,说明图像质量有所改善。DSMQRA综合考虑了节点剩余能量和多路径聚集程度,均衡了负载和能耗避免了网络拥塞,同时采用区分服务机制对视频流I关键帧传输进行了最高优先级保障,此时的PSNR值变得最大,表明解码后的图像质量最佳。
5结论
本文提出的DSMQRA算法,在网络规模与节点密度较大的WMSNs中经过与GPSR、AODV、TPGF进行仿真对比,表现出了更好的网络性能。该算法主要是在能量约束条件下提出的,视频的QoS保障只局限于网络层和应用层协作,实际的WMSNs路由是在能量、时延、可靠性和安全性等多约束条件下进行的。因此,设计满足多约束条件,实现其他各层和网络层跨层协作的无线多媒体传感器网络路由算法,达到整个网络节能效果最优化,是我们在此基础上应该进一步深入研究的问题。
参考文献
[1]C.Perkins,E.BeldingRoyer.RFC3561,AdHoconDemandDistanceVector(AODV)Routing[S].2003.
[2]周灵,王建新.无线多媒体传感器网络路由协议研究[J].电子学报,2011,39(1):149-156.
[3]董武世,柯宗武,陈年生.无线多媒体传感器网络的QoS路由算法[J].武汉理工大学学报:交通科学与工程版,2009,33(4):783-786.
[4]LeiShu,YanZhang.Geographicroutinginwirelessmultimediasensornetworks[C].Proceedingsofthe2thIEEEInternationalConferenceonFutureGenerationCommunicationandNetwork.HainanIsland:IEEECommunicationSociety,2008,12.68-73.
[5]KANDRISD,TSAGKAROPOULOSM,POLITISI,TZESA,KOTSOPOULOSS.EnergyefficientandperceivedQoSawarevideoroutingoverwirelessmultimediasensornetworks[J].AdHocNetworks,2011,9(4):591-607.
[6]YAHYAB,BenOthmanJ.AnenergyefficientandQoSawaremultipathroutingprotocolforwirelesssensornetworks[C].InProc.oftheIEEE34thConf.onLocalComputerNetworks.Zurich:BBNTechnologies,2009.93-100.
[7]樊晓平,熊哲源,陈志杰等.无线多媒体传感器网络视频编码研究[J].通信学报,2011,32(9):137-144.
[8]于斌,孙斌,温暖,等.NS2与网络模拟[M].北京:人民邮电出版社,2007.
[9]柯志亨,程荣祥,邓德隽.NS2仿真试验——多媒体和无线网络通信[M].北京:电子工业出版社,2009.
[10]KARPB,KUNGH.GreedyPerimeterStatelessRouting(GPSR)[C].InProc.ofthe6thInternationalConferenceonMobileComputingandNetworking[C].Boston:Massachusetts,2000:243-25.
第35卷第1期2016年3月计算技术与自动化ComputingTechnologyandAutomationVol35,No1Mar.2016第35卷第1期2016年3月计算技术与自动化ComputingTechnologyandAutomationVol35,No1Mar.2016
收稿日期:2015-08-04
基金项目:国家级“电子信息工程”专业综合改革试点专业项目(高教司函[2013]5号);湖南省教育厅开放基金项目(15K051)