李文艳,邵世祥
(南京邮电大学,江苏 南京 210000)
WSN中流量自适应的超低功耗MAC协议
李文艳,邵世祥
(南京邮电大学,江苏 南京 210000)
为了减少无线传感网络中传感器节点的功耗,当有数据收发时,传感器节点就开启无线通信模块进行发送或侦听,如果没有数据收发时,传感器节点控制无线通信模块进入休眠状态。采用休眠方式最大的问题在于,节点休眠时无法接收数据。如果没有较好的协议设计,节点就会因休眠而无法及时唤醒进行数据接收,进而降低了整个网络的性能。针对此问题,提出了一种新的基于流量自适应的超低功耗MAC协议。该协议根据网络中的通信量来对节点休眠和唤醒的时间进行实时调度:当网络通信量低时,网络进入非调度阶段;当网络通信量高时,网络进入调度阶段。设计的MAC通信协议在保留了同步网络和异步网络的优点的基础上,对算法做了进一步改进,相对现有传统的MAC协议,大大地降低了传感器网络功耗和网络时延。
MAC协议;无线通信模块;休眠状态;流量自适应;超低功耗
无线传感器网络被认为是21世纪最重要的技术之一,它将会对人类未来的生活方式产生巨大影响[1-2]。无线传感器节点依靠自身配备的电池供电,然而由于节点数量较多、部署分散等原因难以经常更换电池。如在军事监视应用中,由于战场需要,没有机会更换传感器节点电池。而在环境监测应用中,多数情况部署地点偏僻且无人值守,节点数目较多,更换电池代价较大。因此,降低节点能耗,延长网络使用寿命对于无线传感器网络而言意义重大[3]。
通过实验发现,在无线传感器网络中绝大部分的能量消耗集中在通讯模块上,大约占整个传感器节点能量消耗的80%[4]。因此,目前学术界提出的传感器节点通讯协议主要是根据减少节点能量消耗和延长网络生命周期来进行设计的。在基于MAC层的主要协议中,采取的最主要手段就是通过设定节点的“服务周期”来定时地控制节点的休眠和唤醒周期[5],从而达到传感器节点节能的目的。
对节点休眠和唤醒的时间进行优质地调度,以保证目标节点不会因休眠而错过数据接收。在传感器网络中,SMAC[2]是第一个同步MAC协议。SMAC协议利用周期性的睡眠/侦听减少了空闲监听所造成的能量浪费,通过与相邻节点同步减少了控制消耗,利用RTS/CTS机制减少了数据冲突的几率。由于时间同步所带来的功耗是不可忽略的,所以很多异步MAC协议应运而生。
BMAC[6]协议是传感器网络中第一个异步的低功耗MAC协议,所有节点均按照预设的休眠间隔周期性唤醒。当节点有数据发送时,节点在发送数据之前首先发送一个固定长度(长度大于休眠唤醒间隔)的前导码。文中提出一种基于网络中通信量的自适应MAC协议。该协议根据网络中的通信量对节点休眠和唤醒的时间进行实时调度:当网络通信量低时,节点进入非调度阶段;当网络通信量高时,节点进入调度阶段。
无线传感器网络(Wireless Sensor Network,WSN)系统通常由传感器节点(sensor node)、汇聚节点(sink node)和管理节点(task manager node)组成[7]。结构如图1所示。
图1 无线传感器网络体系结构
在网络实际运行过程中,能耗主要来源于处理(Processing)、传感(Sensing)和无线传输(Radio)三个操作[8]。而在无线传感器网络中,无线通信模块又是其中能耗较大的组件,对传感器节点的通信能耗进行优化是传感器网络节能研究的重点。
传感器节点的无线通信模块包括发送状态、接收状态、侦听状态和休眠状态[9]。单位时间内消耗的能量按照上述顺序依次减少:无线通信模块在发送状态消耗能量最多,在休眠状态消耗能量最少,接收状态和侦听状态下的能量消耗相似但稍小于发送状态[10]。所以,为了减少节点功耗,当有数据收发时,节点就开启无线通信模块进行发送或侦听,当没有数据收发时,节点控制无线通信模块进入休眠状态[11-12]。无线通信模块的状态受MAC层的控制[13],所以从软件入手,设计高效节能的MAC通信协议是目前最为可行的解决方案。
基于上述原因,针对无线传感器网络业务量小的特点,无线传感器网络协议为了减少能量的消耗,在MAC层可采用“休眠唤醒”交替的无线信道使用策略。
针对上述问题,提出一种基于网络中通信量的自适应MAC协议。该协议根据网络中通信量对节点休眠和唤醒的时间进行调度。
在该MAC通信协议方案中,节点在无线通信模块中增加一个流量状态寄存器(TSR)和一个网络分配矢量定时器(NAV)(TSR和NAV功耗可忽略不计)。其中,TSR是用于记录节点重发数据的次数n,NAV是用于设定需要的休眠时间t。可知,TSR只有在无线通信模块处于发送状态时启用,而NAV只在无线通信模块处于休眠状态时启用。该MAC通信协议分为非调度和调度两个阶段进行。
当无线传感器网络开启后,各节点完成网络初始化设置(其中TSR=0,NAV=0,设定判断网络流量高低的数据重传阈值N)。当节点要发送数据时启动TSR,在一个休眠唤醒周期内,每重发一次数据,TSR中的次数n就增加一次。
当发送节点有数据发送给接收节点时,首先检查TSR中n的值,如果n 上述阶段的算法描述过程如图2所示。 图2 “异步”阶段数据发送过程 Tp可由式(1)计算得出: Tp=Tw+αmTe (1) 其中,Tw是接收节点的唤醒间隔;m是本地数据分组的个数;Te是发送一个编码分组的时间;α是一个大于1的常数。 发送节点的发送时间Tp比接收节点的唤醒间隔Tw大是为了确保接收节点能接收到编码分组。接收节点接收m编码分组的时间是mTe,如果接收节点唤醒的时间比发送节点开始发送编码分组的时间晚,那么Tp至少持续Tw+mTe。 考虑到编码分组在传输过程中丢失的情况,用常数α来提高协议的鲁棒性。明显可以看出,增大α虽然可以增大接收节点成功接收足够多编码分组的可能性,但是同时也增加了传感器节点功耗。发送节点对本地数据进行分组时,要选择合适的分组长度:分组长度过大,非目的接收节点接收一个编码分组就会消耗过多的不必要的功耗,即增加了网络的串音功耗;分组长度过短,不仅对于编码技术是一项挑战,同时由于发送节点发送编码分组时需要在每个编码分组的头部加上目的地址,会极大地降低网络数据传输的有效性。 如果n>N,则无线传感器网络进入调度阶段。当数据重传次数n大于系统设置的阈值N时,设计的MAC协议认为数据重发是由网络中通信量过大而引起的数据丢失,发送节点首先发送一个长RTS(请求发送)帧作为前导码。其中,RTS帧中包含目的接收节点地址和数据发送结束时间T,由于RTS帧长度Tr(Tr≥Tw,Tw是传感器节点的唤醒间隔)足够大,所有与发送节点相邻的节点都能接收到这个RTS帧。当节点接收到RTS帧后,首先根据此帧中的目的地址判断是否有数据发送给本节点,如果没有数据需要接收,节点根据帧中数据发送结束时间T,将帧丢弃后开启NAV并预设NAV的值,然后进入休眠状态。如果有数据需要接收,接收节点给发送节点回复一个CTS(允许发送)帧,然后做好接收数据的准备。 上述阶段的算法描述过程(由低通信量转向高通信量)如图3所示。 图3 调度阶段数据发送过程 3.1 仿真环境 采用无线传感器网络仿真平台对SMAC和BMAC以及文中设计的MAC通信协议进行仿真。仿真中搭建的网络模型是一个10*10的点阵模型,节点间隔为200 m,节点通信半径设置为500 m,每个节点最远可以与相邻一个节点外的节点进行通信,节点的邻居最多有12个。对于每种通信协议,仿真节点的参数设置如下:信道带宽为20 kbps,接收、发送和空闲监听的功率均为1 W,休眠功率为1 mW,状态转换功率为200 mW,休眠周期为1 443 ms。SMAC和BMAC协议的占空比为10%,而文中设计的MAC通信协议的平均占空比为2.1%。仿真的时长设为60 s。为了表现各种流量下的性能对比,将节点的信息的到来间隔逐渐减少,以模拟网络中低通信量到高通信量的变化:信息的到来间隔为2~14 s。每个信息的大小为10 byte。 3.2 性能评估 无线传感器网络的平均功耗和时延对比如图4所示。 图4 功耗和时延对比 由图4可知,当网络通信量较低时,在功耗和延迟方面BMAC协议比SMAC协议性能更好。而当无线传感器网络中的通信量高时,则情况相反。这是由于当无线传感器网络中的通信量低时,数据出现碰撞的几率相对较小,消耗在数据碰撞上的功耗可以忽略不计;当无线传感器网络中的通信量高时,随着无线传感器网络中的通信量逐渐增高,数据出现碰撞的几率越来越大,如果不采取减少碰撞的措施,整个网络因碰撞产生的功耗和时延将会很大。 文中设计的MAC通信协议的功耗和延时比BMAC和SMAC协议小得多,这是因为在非调度阶段,非目的接收节点接收到一个编码分组后,即可根据目的地址将编码分组丢弃后按照自己的休眠机制进入休眠状态,极大减少了串音所带来的功耗。此外目的接收节点只要正确接收足够的编码分组,就可根据接收到的编码分组解码出原始数据,并且在编码分组发送过程对于那些丢失的分组不用做任何处理(例如超时重传等)。不仅充分利用了前导码传输数据的潜能,减少了因不必要数据发送而带来的额外开销,而且避免了因超时重传等机制带来的开销。除此之外,发送节点在收到目的节点的ACK确认包之后,就可以立即停止编码分组的发送,减少了发送节点的功耗和网络资源的占用。 在调度阶段,所有节点可以根据RTS帧来设定自己的休眠时间,并在数据传输完成以后自动唤醒。这种方法无需进行网络同步,不仅减少了网络中资源的占用,而且降低了节点因维护同步信息表而带来的功耗。此外,由于所有非目的节点根据发送节点发送的数据结束时间来设定自己的休眠时间,降低了网络的时延。 传感器网络的通信节能技术主要集中在MAC层和路由层。文中从MAC层出发,通过设计一种基于网络中通信量的超低功耗的MAC协议来降低传感器网络功耗。下一步,将从路由层着手,研究设计出优质的路由协议,配合文中提出的MAC协议进一步降低传感器网络功耗,延长整个网络的生命周期。 [1] 周傲英,杨 彬,金澈清,等.基于位置的服务:架构与进展[J].计算机学报,2011,34(7):1155-1171. [2] Ye W,Heidemann J,Estrin D.An energy-efficient MAC protocol for wireless sensor networks[C]//Proceedings of the international conference on computer and communications societies.[s.l.]:IEEE,2002:1567-1576. [3] Popovici E,Magno M,Marinkovic S.Power management techniques for wireless sensor networks:a review[C]//5th IEEE international workshop on advances in sensors and interfaces.[s.l.]:IEEE,2013:194-198. [4] 许金清,蒋念平.无线传感网中SMACS协议的节能改进算法[J].计算机系统应用,2011,20(2):207-210. [5] Zhu C,Yang L,Shu L,et al.Sleep scheduling for geographic routing in duty-cycled mobile sensor networks[J].IEEE Transactions on Industrial Electronics,2014,61(11):6346-6355. [6] Polastre J,Hill J,Culler D.Versatile low power media access for wireless sensor networks[C]//Proceedings of ACM SenSys.[s.l.]:ACM,2004. [7] 孙利民.无线传感网络[M].北京:清华大学出版社,2006. [8] 赵 明,徐科军,倪 伟,等.一种无线传感器网络节点设计和通信协议研究[J].仪器仪表学报,2005,26:630-632. [9] 朱 凡.无线传感网络技术及其在矿山安全监测中的应用研究[D].长沙:湖南大学,2010. [10] 崔 莉,鞠海玲,苗 勇,等.无线传感器网络研究进展[J].计算机研究与发展,2005,42(1):163-174. [11] 张大踪,杨 涛,魏东梅.无线传感器网络低功耗设计综述[J].传感器与微系统,2006,25(5):10-14. [12] Wang J,Dong W,Cao Z,et al.On the delay performance in a large-scale wireless sensor network:measurement,analysis,and implications[J].IEEE/ACM Transactions on Networking,2015,23(1):186-197. [13] Kim T,Kim I,Sun Y,et al.Physical layer and medium access control design in energy efficient sensor networks:an overview[J].IEEE Transactions on Industrial Informatics,2015,11(1):2-15. Traffic-aware Adaptive MAC Protocol with Ultra-low Power for WSN LI Wen-yan,SHAO Shi-xiang (Nanjing University of Posts and Telecommunications,Nanjing 210000,China) In order to reduce the power consumption of the sensor nodes in WSN,when data is being transmitted or received,the wireless communication module of the nodes are supposed to start operation to send the data or listen to the channel,otherwise it enters a sleep mode.However,the biggest problem is that the sensor nodes are unable to receive data when being in the sleep mode.Without a better protocol designed,data will be failed to be received since the nodes are in sleep mode,and thus the entire network performance is reduced.For this problem,a new traffic-aware adaptive MAC protocols with ultra-low power for WSN is proposed.In the designed MAC protocol,the sleeping time and wake-up time in real time of the nodes are scheduled based on the network traffic.If network traffic is low,it enters the phase of non-scheduling or else the phase of scheduling.In addition to the advantages of synchronous network and asynchronous network,the algorithm is further improved in this designed MAC protocol.Compared with the existing traditional MAC protocols,the power consumption and the delay of the sensor network is reduced greatly with the designed MAC protocol. Media Access Control (MAC) protocol;wireless communication module;sleep mode;traffic-aware;ultra-low power 2016-04-26 2016-08-11 时间:2017-02-17 国家自然科学基金资助项目(61171093) 李文艳(1988-),女,硕士研究生,研究方向为无线传感网络的低功耗研究、移动通信与无线技术;邵世祥,教授,研究方向为移动通信与无线技术。 http://www.cnki.net/kcms/detail/61.1450.TP.20170217.1632.062.html TN915 A 1673-629X(2017)03-0113-04 10.3969/j.issn.1673-629X.2017.03.0233 仿真与分析
4 结束语