APP下载

一种无线传感器网络异步MAC广播机制*

2011-10-08郭达伟李现涛

传感技术学报 2011年5期
关键词:发送数据前导监听

韩 潇,郭达伟,刘 航,李现涛

(西北工业大学自动化学院,西安710129)

能量有效性是无线传感器网络MAC协议设计的首要问题[1-3]。降低能耗最常用的方法是使传感器节点周期性交替处于低功耗的睡眠状态和高功耗的工作状态。目前,实现睡眠到工作状态转换的机制主要归为三类:按需唤醒机制、同步唤醒机制和异步唤醒机制[5]。与其它两种机制相比,异步唤醒不需要额外的唤醒信道,也不需要时钟同步;每点可选择自己的唤醒时刻,且每个周期仅需很短的时间对信道进行采样,从而大大减少了节点空闲监听的时间。当节点需发送数据时,利用前导载波技术唤醒目标节点。数据流量较低的应用中,异步唤醒机制的优势尤为明显。本文主要研究基于CSMA竞争机制的异步唤醒MAC协议,着眼于降低协议能耗和减少数据延迟。

典型的异步唤醒MAC协议有BMAC[6]、WiseMAC[7-9]、XMAC[10]、DPS-MAC[11]、CSMA-MPS[12]。BMAC用持续一个睡眠-工作周期的前导载波来唤醒目标节点。WiseMAC通过学习和估算邻居节点的唤醒时间,在邻居唤醒采样前才开始发送前导载波。XMAC协议将BMAC中较长的前导载波划分成一系列短的、带有间隔的前导载波帧序列,每个短的前导载波帧都包含目的节点的ID,从而可避免非目标节点的串音;XMAC还允许目的节点在前导载波帧的间隔发送“较早的确认包”,以缩短前导载波长度。DPS-MAC在XMAC的基础上采用两次快速前导采样方法,减少了节点采样监听的时间。CSMA-MPS用一种发送和接收转换较快的无线发射器改善了能效和延迟性能。

近年来,针对无线传感器网络异步MAC协议的研究越来越多。但关于异步MAC广播机制的文献并不多。众所周知,广播是相当重要的一种通信机制。WiseMAC、XMAC及DPS-MAC等经典协议没有设计广播机制,一旦有广播数据,则需要向各个邻居节点分别发送数据。既增大了能耗,又增大了数据延迟。BMAC虽然实现了广播机制,但每次广播前需发送持续一个睡眠-工作周期的前导载波,能耗和数据延迟都较大。

本文基于 XMAC,设计了一种新的广播机制——PBMAC。PBMAC补充了 XMAC的广播机制,与现有的异步MAC广播机制(基于BMAC的广播机制)相比,PBMAC能效性和延迟性均较好。

1 XMAC协议

XMAC[10]将BMAC等协议中较长的、连续的前导载波划分成一系列短的前导载波序列。每个短的前导载波都包含目的节点的ID。每个接收到短前导载波的节点都能查看其目的节点,如果节点自身不是目的节点,则该节点可以提前进入睡眠状态。另外,XMAC提出在短的前导载波之间插入一些间隙,在这个间隙里,发送节点监听信道,目的接收节点在采样到短前导载波后允许发送一个“较早的确认包”。发送节点接收到这个“较早的确认包”后,将停止继续发送短前导载波,而提前发送数据。XMAC协议示意图如图1所示。

图1 XMAC协议

2 PBMAC设计

PBMAC像XMAC一样,用多个短的前导载波单元序列代替较长的、连续的前导载波。PBMAC改进了每个前导载波单元,并引入学习机制,创建邻居信息表。

2.1 PBMAC消息格式及邻居信息表

PBMAC定义了新的前导载波单元序列(PSs)。消息格式如图2所示。其中包括控制消息类别、目的节点ID、节点下一次采样时间以及发送数据包的时间。消息类型定义了PS(0x01);目的节点ID为广播地址;源节点通过“下一次采样时间”向邻居节点报告其采样信息。邻居节点根据“发数据包时间”域估算接收数据的时间。

图2 PBMAC消息格式

PBMAC建立一个邻居信息表,并为每个邻居节点维护一个邻居表项,如表1所示。邻居信息表包括邻居ID、下一次唤醒时刻偏差以及表项更新时间。下一次唤醒时刻偏差等于邻居节点控制包中报告的下一次采样时间减去节点自己本周期的起始时间,用于估算发送前导载波的时间。表项更新时间就是节点收到邻居节点控制包并更新“下一次唤醒时刻偏差”的时间。

表1 邻居信息表

2.2 PBMAC 广播机制

PBMAC根据邻居信息表计算前导载波起始时间以及发送数据的时间。在最早进入唤醒状态的邻居节点唤醒前开始发送PSs,一直持续到最晚唤醒的邻居节点被唤醒后为止。

邻居节点接收到PS后,根据距离数据发送的剩余时间判断是否先返回睡眠状态。如果剩余时间内监听信道消耗的能量大于关闭和重新开启无线电的能耗,则节点先返回睡眠状态,在数据发送前重新唤醒,反之亦然。广播通信中接收节点不对PS序列进行确认。PBMAC的广播机制的前导载波持续时间最大值为睡眠-唤醒工作周期。图3所示为PBMAC协议示意图。

图3 PBMAC协议

2.3 PBMAC 学习机制

PBMAC协议学习机制包括初始学习和过程学习。PBMAC协议定义系统初始化结束后的第一个周期为初始邻居告知周期。在这个周期内,所有节点一直处于工作状态。每个节点随机选择自己的唤醒采样偏差,并在初始邻居告知周期相应的时刻广播一个前导载波单元(PS)。其它节点则处于监听状态,接收到前导载波单元的邻居节点可以学习源节点的采样时刻偏差。这个过程为初始学习。

PBMAC协议在前导载波单元序列中插入“下一次采样时间”的信息。源节点在发送数据前发送前导载波单元序列,凡是监听到该前导载波单元序列的所有节点,能够学习源节点的“下一次采样时间”,从而更新邻居信息表中对应项,此过程为过程学习。由于源节点发送的PSs将覆盖所有邻居节点的采样时刻,故所有邻居节点都可以学习并更新源节点的“下一次采样时间”。

PBMAC通过学习机制可以利用邻居节点采样时间估算发送PSs和数据的起始时间。

2.4 源节点时间估算

源节点需要分别对发送PSs的起始时间及发送数据的起始时间进行估算。

假设源节点在0时刻收到来自目的节点的“下一次唤醒时刻偏差”消息,希望在目的节点的采样时刻L发送数据包;且假设所有节点使用晶体振荡器作为时钟源,晶振的容差会导致源节点和目的节点之间存在时间偏差,前导载波的持续时间必须覆盖该时钟偏差。假设晶振的容差为±θ,那么前导载波持续的时间为[6]:

根据CSMA/CA,节点在发送消息前必须先随机监听信道一段时间,以减少冲突。PBMAC规定每个节点在发送第一个PS前持续监听信道的时间为:

设发送节点的邻居中下一次采样最早的时间为,那么发送PS序列的起始时间为

设发送节点的邻居中下一次采样最晚的时间为,发送数据的时间即为PS序列的截止时间,那么发送数据的时间为

3 仿真与性能评估

XMAC和WiseMAC没有实现广播机制,本文基于NS2对BMAC和PBMAC协议进行了仿真和比较。本文主要关注两个性能指标:能耗和延迟。不同睡眠-工作周期以及不同的发包速率对节点性能影响较大,故分别选取不同睡眠-工作周期和发包间隔进行两组实验。实验主要参数设置如表2所示。

表2 仿真主要参数设置

分别采用5个节点和10个节点构成的星型拓扑结构,其中一个节点为中心节点,其余节点为它的邻居节点。中心节点为源节点,其余节点为邻居节点。

3.1 睡眠-工作周期对协议的影响

实验中,发包间隔为1,即每秒钟产生一个数据包,睡眠-工作周期的变化范围是100 ms到900 ms。图4、图5和图6分别是睡眠-工作周期变化时,BMAC和PBMAC前导载波能耗、源节点能耗和全网总能耗比较图。图7比较了不同睡眠-工作周期下,BMAC和PBMAC延迟性能。BMAC协议前导载波的长度等于睡眠-工作周期,因此随着睡眠-工作周期的增大,BMAC发送前导载波的能耗随之增加。不论邻居节点的个数是多少、其采样周期如何分布,BMAC均发送持续一个周期长度的前导载波,因此,增加邻居节点个数,BMAC协议的前导载波能耗和源节点能耗不变,但全网整体能耗增大。对于PBMAC,睡眠-工作周期越大,其需要覆盖所有邻居节点采样时刻的前导载波越长,故前导载波能耗也越大。一定时间内,睡眠-工作周期越大,空闲监听能耗越小,但发包能耗大约等于空闲监听能耗的2倍,且实验中发包速率较高,空闲监听时间短,所以源节点能以及网络总能耗都随着睡眠-工作周期的增加而增加。节点数越多,PBMAC平均发送的前导载波越长,能耗越大。PBMAC发送的前导载波的最大长度等于一个睡眠-工作周期,因此PBMAC能耗不会大于BMAC能耗。

图4 前导载波能耗

图5 源节点能耗

图6 全网总能耗

图7 延迟

3.2 发包间隔对协议的影响

实验中,睡眠-工作周期为200 ms,数据包产生的间隔变化范围是0.5 s~10 s。图8、图9和图10分别是发包间隔变化时,BMAC和PBMAC前导载波能耗、源节点能耗和全网总能耗比较图。发包间隔越大,一定时间

图8 前导载波能耗

内产生数据包的数目减少,而睡眠-工作周期一定,每次发包前的前导载波长度和能耗一定,故随着发包间隔的增大,前导载波能耗、源节点能耗以及全网总能耗都增减小,而数据包延迟不变,数据包延迟如图11所示。

图9 源节点能耗

图10 全网总能耗

图11 延迟

4 结论和展望

PBMAC实现了基于XMAC的广播机制。从NS2仿真实验可看出,与基于BMAC的广播机制相比,PBMAC具有较高的能效性和较低的延迟。其优势主要源自缩短的前导载波和减少的串音。在今后的研究中,还需要对PBMAC做进一步的理论分析和验证,设计更加复杂的仿真和实验模型,并且选取硬件平台,实现实物验证。

[1]Akyildiz I F,Su W,Sankarasubramaniam Y,et al.A Survey on Sensor Networks[J].IEEE Communications Magazine,2002,40(8):102-114.

[2]Tseng Y C,Hsu C S,Hsieh T Y.Power-Saving Protocols for IEEE 802.11-Based Multi-Hop Ad Hoc Networks[J].Computer Networks,2003,43(3):317-337.

[3]Langendoen K.Medium Access Control in Wireless Sensor Networks[J].Medium Access Control in Wireless Networks,2008,2:535-560.

[4]Zheng R,Hou J C,Sha L.Asynchronous Wakeup for Ad Hoc Networks[Z].ACM,2003:35-45.

[5]Park T R,Park K J,Lee M J.Design and Analysis of Asynchronous Wakeup for Wireless Sensor Networks[J].IEEE Transactions on Wireless Communications,2009,8(11):5530-5541.

[6]Polastr J,Hill J,Culler D.Versatile Low Power Media Access for Wireless Sensor Networks[Z].In The Second ACM Conference on Embedded Networked Sensor Systems(SenSys),November,2004:95-107.

[7]El-Hoiydi A,Decotignie J D.WiseMAC:An Ultra Low Power MAC Protocol for Multi-Hop Wireless Sensor Networks[J].Algorithmic Aspects of Wireless Sensor Networks,2004:18-31.

[8]Amre El-Hoiydi,Jean-Dominique Decotignie,Jean Hernandez.Low Power MAC Protocols for Infrastructure Wireless Sensor Networks[Z].In Proc.European Wireless(EW'04),Barcelona,Spain,Feb 2004:563-569.

[9]Hurni P,Braun T.Evaluation of WiseMAC on Sensor Nodes[J].10th IFIP International Conference on Mobile and Wireless Communications Networks.Toulouse,2008:187-198.

[10]Buettner M,Yee G V,Anderson E,et al.X-MAC:A Short Preamble MAC Protocol for Duty-Cycled Wireless Sensor Networks[Z].4th ACM Conference on Embedded Networked Sensor Systems,2006:307-320.

[11]Wang H,Zhang X,Na T-Abdesselam F,et al.Dps-Mac:An Asynchronous Mac Protocol for Wireless Sensor Networks[Z].In Proc.14th IEEE International Conference on High performance Computing(IEEE HiPC)Goa,India,December 2007:18-21.

[12]Mahlhecht S,Vienna I,Bock M.CSMA-MPS:A Minimum Preamble Sampling MAC Protocol for Low Power Wireless Sensor Networks[J].In IEEE Int.Workshop on Factory Communication Systems,2004:73-80.

猜你喜欢

发送数据前导监听
英国风真无线监听耳机新贵 Cambridge Audio(剑桥)Melomania Touch
千元监听风格Hi-Fi箱新选择 Summer audio A-401
基于“三思而行”的数学章前导学课设计——以《数的开方》(导学课)为例
一种车载自组织网络的媒体接入控制协议
基于马尔科夫链的LoRaWAN网络节点性能分析
带标记方式的CRDSA++协议性能分析*
一种S模式ADS-B前导脉冲检测方法
网络监听的防范措施
使用IPSec安全传输数据
第四代移动通信随机接入前导方案优化