当前位置:首页 期刊杂志

无线传感器网络跨层自适应唤醒算法研究*

时间:2024-05-22

段 蒙,陈 岚,吕 超,卢 威

(中国科学院微电子研究所,北京100029)

无线传感器网络,是一种由大量传感器节点以无线通信的方式,自组织形成的多跳无线通信网络。无线传感器网络具有低功耗、低成本、分布式和自组织等特征[1],能够在恶劣特殊环境下提供通信支持[2],在军事、环境检测、医疗与智能家居等方面获得广泛应用。

为实现环境信息的精密感知和保证节点能量的有效性,节点间的协同感知和传输已成为传感器网络研究的热点问题。节点在无工作需要时自动进入睡眠状态,并根据业务需要,周期性的唤醒。通过调整节点唤醒/睡眠的占空比[3],使节点能量得到最大的合理化利用,是目前传感器网络节能常用的方法之一。S-MAC[4],T-MAC[5]等协议就是传感器节点结合自己业务需要进行自主、自适应调整唤醒/睡眠占空比的典型的传感器网络 MAC 协议,IEEE802.15.4[6]的超帧结构是基于这一思想设计的。

无线传感器网络具有异构特点[7],异构传感器网络包含了多种传感器节点,各自的传输带宽、数据长度、唤醒周期等差别较大。为实现整个多跳网络的通信畅通,节点间的协同传输成为首要解决的问题之一。在IEEE802.15.4中,协同节点周期性广播信标帧,实现与子节点的同步,这种方法在星状网络中得到很好的应用。由于信标帧不经过CSMA/CA直接发送,在多跳网络中造成严重的冲突。同时,信标帧的收发过程,对部分无需唤醒的节点带来无效侦听功耗。

本文提出的跨层自适应唤醒算法,是在IEEE802.15.4非信标模式下,传感器节点MAC层参考网络层提供的下一跳节点的信息进行休眠/唤醒状态的自适应的调整,通过多跳网络的协同传输,提高了异构无线传感网络的可靠性和能效性。自适应唤醒算法通过下行ACK帧进行协同信息交互,不仅解决了IEEE802.15.4标准中beacon帧机制与轮询机制在多跳中网络中节能效率低的问题,而且保持了与IEEE802.15.4标准的兼容性。

本文将在第1节介绍无线传感器网络MAC层协议的研究现状;第2节结合具体的数学模型分析异构传感器网络传输存在的问题;在第3节阐述自适应唤醒算法;最后,通过详细的仿真与实验结果验证算法的有效性和先进性。

1 相关工作的现状

S-MAC[4],T-MAC[5]通过松弛同步的周期性的唤醒/睡眠降低了节点的占空比,从而减少了空闲侦听;引入RTS/CTS机制预约信道[3]减少了串音与空闲侦听。但是,在数据包较小的应用场景中,RTS/CTS开销造成了通信资源与能量资源的浪费。且采用S-MAC的网络中,不同调度的簇的边界节点会过早消耗掉能量[8]。S-MAC的同步机制增加了额外的同步侦听时间,也浪费了一定的能量。然而无线传感器网络协议设计的重要因素就是能耗[9]。

B-MAC[10]使用扩展前导和低功率侦听技术实现按需同步,但是前导序列过长会造成过度侦听,浪费能量;X-MAC[11]发送若干较小的频闪前导来避免过度侦听。而且,在B-MAC和X-MAC中,如果接收节点长时间没有唤醒,发送节点会一直广播前导序列,降低了网络的吞吐量,甚至使整个网络无法正常工作。

IEEE802.15.4[6]的 MAC 中有两种模式:信标使能,非信标使能。信标使能模式,协调器与设备之间的同步需要大量的信标帧,易造成碰撞,同时也会增加无效侦听带来的能量浪费;非信标使能模式,设备与协调器之间通过轮询进行数据传输与同步,存在大量的过度侦听,也会增加无效侦听带来的能量浪费。

2 异构传感器网络收包率分析

异构传感器网络中,传感器节点的自然唤醒周期与各自的业务需求密切相关。大规模异构传感器网络中,传感器节点之间的自然唤醒周期分布相互独立且服从泊松分布[12]:

其中,T自然唤醒周期,λ为自然唤醒周期的期望,k为正整数。

因此,为保证数据传输成功,异构传感器节点间需要进行时钟同步,在数据传输过程中发射节点与接收节点保持唤醒。为了简化数学分析,假设所有节点的唤醒周期为正整数。

定理节点s与节点d分别表示树状网络的子节点和父节点(即数据包只能由s向d传输),唤醒周期分别表示为Ts和Td,则s与d间通信的最大收包率为:

其中,LCM(Ts,Td)表示Ts与Td的最小公倍数,γ表示节点s与d间的无线链路质量系数,γ∈[0,1],为了更加关注父子节点的同步问题,可令γ=1。

证明令t0=LCM(Ts,Td),即 s与 d唤醒状态一致的自然周期为 t0,那么在 t=k×t0(k=1,2,3…)时节点s与节点d同时唤醒,则

此时,节点s向d发送了m个数据包,其中k个数据包在两节点同时唤醒时发送,则收包率可表示为

将式(2)代入式(3)得出:

则在一个由N互相连通的节点组成的无线传感器网络中,假设发射节点与接收节点只要在通信过程中同时处于唤醒状态,数据包即通信成功。则网络中所有链路的收包率的期望值可表示为:

其中Ti,Tj分别为发送节点与接收节点的自然唤醒周期。

图1给出了λ在1到100的变化过程中,链路收包率α的变化曲线。由于各个节点的周期独立同分布,所以在源节点到目的节点的n跳路径中各跳的收包率也是独立同分布的,则整个网络收包率的期望值小于αn,即收包率随着跳数的增加呈指数下降,无法保证网络的正常通信。

图1 收包率期望值

S-MAC[5],T-MAC[7],IEEE802.15.4[4]的 MAC 层协议通过加入控制包交换,使每一跳的趋于1即改善两跳之间的收包率的期望值即趋于1,这样在n跳链路上,由于每一跳收包率的局部改善使得全局多跳链路的收包率趋于1。然而这3种MAC层协议要求各节点唤醒周期相同,这样会在异构传感器网络中增加过度侦听浪费的能量。同时,IEEE802.15.4的MAC层协议中存在大量的用于同步的超帧,且这些超帧的发送不经过CSMA/CA[4],不仅会引发导致碰撞导致重传浪费能量,而且也会增加过度侦听的能量消耗。

3 跨层自适应唤醒算法

在IEEE802.15.4 MAC层协议中,子节点加入网络时会按照路由策略搜索父节点并与其进行关联[4],父节点收到关联请求后会向子节点发送关联响应。本文提出的跨层自适应唤醒算法正是基于这个关联过程的。在子节点关联成功之前它会一直处于唤醒状态并向父节点发送关联请求,当父节点判断这个节点关联成功时会向它发送关联响应,并在关联响应中加入父节点的周期T,唤醒时间长度Tw和父节点下一个自然唤醒周期开始的时间t0。从t0时刻开始父节点与子节点同时启动各自的自然唤醒周期,其过程如图2所示。

图2 初始阶段时序图

当子节点要向父节点发送数据包时,查询已获取的父节点自然唤醒周期T与下一次唤醒时间t0,计算该节点的主动唤醒时间向父节点发送数据包。为了尽量减小时钟偏差和传输延时对计算精度的影响,不仅在选择发送时机的时候有25%的冗余而且每次发包成功都会在ACK中加入最新t0值来更新旧的t0值。这样就不需要通过超帧或者轮询来进行同步与发送数据,而且每个节点的都可以工作在独立的自然唤醒周期,这样减少了较多过度侦听与协议控制所带来的能量消耗。自适应唤醒算法的的具体步骤如下:

Step 1:子节点与父节点进行关联,关联成功后子节点获取父节点的 T,Tw,t0。

Step 2:t0时刻子节点与父节点同时进入自然唤醒周期。

Step 3:如果子节点在t时刻要向父节点发送数据则计算距离父节点的最近一个周期起始时刻时间长度Δt=t-nT其中n为(t-t0)/T的整数部分。

Step 4:如果Δt<75%·Tw则直接向父节点发送数据。

Step 5:否则缓存包,并等待τ=T-ts后再发送。

Step 6:如果此时子节点处于唤醒状态直接发送,如果处于睡眠状态则唤醒子节点再发送。

Step 7:父节点接收到数据包后回复ACK帧中包含新的t0值。

Step 8:子节点收到ACK确认发送成功,并更新t0值。

算法流程图如图3所示。

图3 算法流程图

4 实验

4.1 仿真分析

NS-2是一个开源的系统级网络仿真平台,它所包含的模块几乎涉及到了网络技术的所有方面,是目前被广泛采用和认可的网络模拟与评估平台。结合Zigbee芯片CC2430数据手册,仿真环境参数设置如表1所示,拓扑结构如图4所示。

为了验证跨层自适应唤醒算法的性能,进行了两组对比仿真实验,每组又各进行了两种场景的仿真,并分别对链路收包率与节点能量利用效率进行了分析。

表1 仿真参数表

图4 仿真拓扑结构(各点的水平或垂直距离为10 m,整个区域范围为60 m×60 m)

4.1.1 收包率分析

在本组仿真验证中,场景1,各节点占空比随机均匀分布在5%到20%,使用IEEE802.15.4标准的MAC层协议的非信标模式;场景2,各节点占空比随机均匀分布在5%到20%,使用本文提出的跨层自适应唤醒算法。

对仿真结果进行统计分析,每一跳对应的收报率如表2所示。

表2 跳数与收包率关系

表2表明在异构传感器网络中如果各节点没有任何同步措施,经过多跳收包率会趋于0,而加入了跨层自适应唤醒算法之后收包率保持在99%左右,提高了网络可靠性。

4.1.2 节能效果分析

在本组仿真验证中,场景1,各节点占空比都分布在20%,使用IEEE802.15.4标准的MAC层协议的信标模式;场景2,各节点占空比随机均匀分布在5%到20%,使用本文提出的自适应唤醒算法。

对仿真结果进行统计分析,对比跨层自适应唤醒算法与IEEE802.15.4MAC信标模式的能量节省效率与跳数的关系如表3所示。

表3 节能效率

表3表明在几种不同跳数情况下,使用跨层自适应唤醒算法时所有节点的剩余能量总和比使用IEEE802.15.4MAC信标模式时所有节点剩余能量总和要高出20%左右,提高了能量效率。

4.2 实验验证

本次实验使用的无线传感器节点通信芯片是TI公司的CC2430,实验场景如图5所示。共8个节点,其中节点8为源节点,节点1为目的节点,其余均为转发节点。

图5 实验场景

本次进行了两组实验,第1组是使用IEEE802.15.4MAC层协议,节点8一共发送了100个数据帧,每个节点统计侦听到的 beacon帧、数据帧和ACK帧的数量(包括不属于自己即过度侦听的),其中节点1还会统计自己所收到的节点2转发的数据包,源节点发给自己的数据帧。第2组使用了本文提出的自适应唤醒算法,各节点所统计的数据与第1组相同。其中beacon帧的长度为59 byte,数据帧长度为127 byte,ACK帧的长度为12 byte。两组实验的结果分别如表4与表5所示。

从表4与表5可以看出在数据帧从源节点到目的节点的过程中,各个节点都会侦听到无效帧,相对于自适应唤醒算法使用IEEE802.15.4的 MAC层协议时各节点中不仅存在更多的无效数据帧与ACK帧而且还存在大量的beacon帧,这些都会造成能量浪费。我们可以根据接收到的帧的数量与长度来评估各个节点的接收机消耗的能量为:其中Ur,Ir分别为接收机接收数据时的工作电流与电压,L为所接受数据的长度,Vr为数据传输速率。从CC2430的手册可知其接收时的工作电流为Ir=27 mA,工作电压为Ur=1.8 V,数据传输速率为250 kbit/s。根据这些参数与上述能量式(7)可以计算出第一组即使用IEEE802.15.4MAC层协议时,发送100个数据包整个网络所消耗的能量为1.635 J,第2组即使用本文所提出的算法时,发送100个数据包整个网络所消耗的能量为0.832 J。

表4 第1组实验结果

表5 第2组实验结果

从表4、表5可知使用本文算法的第2组实验收包率为92%,略低于使用IEEE802.15.4MAC层协议的第1组实验收包率为96%。但是第2组实验的消耗的能量只有第1组所消耗的50.92%。由此可知,跨层自适应唤醒算法不仅能保证异构无线传感器网络的可靠性,而且也提高了其能效性。

5 结论

感知节点根据业务需求调整唤醒与睡眠状态,并保持节点的同步,是无线传感器网络提高能量效率,保证可靠性的主要手段。本文基于IEEE802.15.4标准,提出了跨层自适应唤醒算法,提高了异构无线传感器网络的可靠性和能量利用效率,通过仿真分析与实验测试验证了其有效性和先进性。

[1]Akyildiz I F,Melodia T,Chowdhury K R.Wireless Sensor Networks:A Survey[J].Computer Networks(ELSEVIER),2002,38:393-422.

[2]王境,徐桢,刘晓春.基于链路质量的无线传感器网络抗干扰路由协议[J].传感技术学报,2012,25(1):87-93.

[3]孙利民,李建中,陈渝,等.无线传感器网络[M].清华大学出版社,2005

[4]Wei Ye,John Heidemann,Deborah Estrin.An Energy-Efficient Mac Protocol for Wireless Sensor Networks[C]//Proceedings of the IEEE Infocom,1567-1576,New York,NY,June 2002.IEEE.

[5]van Dam T,Langendoen K.An Adaptive Energy-Efficient MAC Protocol for Wireless Sensor Networks[C]//Proc 1st Int’l Conf on Embedded Networked Sensor System(SenSys),Nov.5-7,2003,Los Angeles,CA.2003

[6]IEEE 802.15.4 2006:Wireless Medium Access Control(MAC)and Physical Layer(PHY)Specifications for Low-Rate Wireless Personal Area Networks(LR-WPANs)[S].

[7]梁天,周晖,徐晨,等.无线感知执行网的智能协作机制研究[J].传感技术学报,2012,25(5):665-672.

[8]Yuan Li,Wei Ye,Heidemann J.Energy and Latency Control in Low Duty Cycle MAC Protocols[C]//Wireless Communications and Networking Conference,2005 IEEE,2005,2:676-682.

[9]尚凤军,任东海.无线传感器网络中分布式多跳路由算法研究[J].传感技术学报,2012,25(4):529-535.

[10]Polastre J,Hill J,Culler D.Versatile Low Power Meida Access for Duty-Cycled Wireless Sensor Networks[C]//Processing of ACM SenSys,2004.95-107.

[11]Buettne M,Yee G,Anderson E,et al.X-MAC:A Short Preamble MAC Protocol for Duty-Cycled Wireless Sensor Networks[C]//Processing of ACM SenSys,2006,307-320.

[12]王辛果,异步无线传感网的跨层网络协议研究[D].中国科学技术大学博士论文,2011.

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!