无线传感器网络MAC协议摘要近年来,无线传感器网络(WSNs)作为国内外一个新兴的研究方向,吸引了许多研究者和机构的广泛关注。本文从无线传感器网络MAC协议角度出发,介绍了无线传感器网络的MAC协议及当前的研究现状,分析了无线传感器网络协议和传统网络协议在设计上的不同点,对已有的MAC协议进行分类,着重研究和比较了S-MAC和T-MAC无线传感器网络MAC协议。最后,展望了无线传感器网络MAC协议的进一步研究策略和发展趋势。关键词无线传感器网络(WSNs),MAC协议,能量有效性AbstractInrecentyears,wirelesssensornetworks(WSNs),asanewresearchdirectionathomeandabroad,hasattractedtheattentionofmanyresearchersandorganizations.WeconductadeeplyresearchonwirelesssensornetworkMACprotocol,andweproposethedifferencebetweenWSNandtraditionalnetworks,notonlygiventhecharacteristicofWSN,wealsohaveillustratetheresearchorientationinthisarea.FocusontheresearchandcomparisonofS-MACandT-MACwirelesssensornetworkMACprotocol.Finally,thefutureresearchstrategiesandtrendsofMACprotocolsinWSNsaresummarized.KeywordsWirelesssensornetworks(WSNs),MACprotocols,energy-efficiency1、绪论IEEE802系列标准把数据链路层分成MAC(MediaAccessControl,介质访问控制)和LLC(LogicalLinkControl,逻辑链路控制)两个子层。上面的LLC子层实现数据链路层与硬件无关的功能,比如流量控制、差错恢复等;较低的MAC子层提供LLC和物理层之间的接口。其中MAC子层定义了数据包怎样在介质上进行传输。在共享同一个带宽的链路中,对连接介质的访问是“先来先服务”的。物理寻址在此处被定义,逻辑拓扑(信号通过物理拓扑的路径)也在此处被定义。线路控制、出错通知(不纠正)、帧的传递顺序和可选择的流量控制也在这一子层实现[1]。在无线传感器网络中,为了应对可能出现多个节点设备同时接入信道,从而导致分组之间相互冲突,使接收方无法分辨出接收到的数据,浪费信道资源,吞吐量显著下降。为了解决这些问题,就需要MAC(介质接入控制)协议,而MAC协议指的就是通过一组规则和过程来有效、有序和公平地使用共享介质,它决定了节点什么时候允许发送分组,而且通常控制对物理层的所有访问。在无线传感器网络中,为了实现多点通信,由MAC(MediumAccessControl)介质访问控制层协议决定了局部范围无线信道的使用方式,以及多跳自组织无线传感器网络节点之间的通信资源分配,也就是说必须实现两大基本功能目标:在传感器分布的现场能够有助于建立起一个基本网络基础设施所需的数据通信链路;协调共享介质的访问,以便传感器网络节点能够公平有效地分享通信资源[2]。2、无线传感器网络MAC协议2.1、引言MAC协议位于OSI七层协议中数据链路层,数据链路层分为上层LLC(LogicalLinksControl,逻辑链路控制),和下层的MAC(媒体访问控制),MAC主要负责控制与连接物理层的物理介质。在发送数据的时候,MAC协议可以事先判断是否可以发送数据,如果可以发送将给数据加上一些控制信息,最终将数据以及控制信息以规定的格式发送到物理层;在接收数据的时候,MAC协议首先判断输入的信息并是否发生传输错误,如果没有错误,则去掉控制信息发送至LLC(逻辑链路控制)层。MAC协议的主要功能则是避免多个节点同时发送数据产生冲突,控制无线信道的公平合理使用,构建底层的基础网络结构。MAC协议最重要的功能是确定网上的某个站点占有信道,即信道分配问题。在设计无线传感器网络的MAC层协议时,下面三个方面问题最值得重点关注[3]:能量感知和节省;网络效率(包括公平性、实时性、网络吞吐率和带宽利用率等);可扩展性。尽管蓝牙(Bluetooth)、移动自组织网络(MANET)和无线传感器网络在通信基础设施上有相似的地方,但由于网络寿命的制约,没有哪个现存的蓝牙或移动自组织网络MAC协议可以直接用在无线传感器网络。除了节能和有效节能外,移动性管理和故障恢复策略也是无线传感器网络MAC协议首要关注的问题之一。尽管移动蜂窝网络、Ad-hoc和蓝牙技术是当前主流的无线网络技术,但它们各自的MAC协议不适合无线传感器网络,如GSM和CDMA中的介质访问控制主要关心如何满足用户的QoS要求和节省带宽资源,能耗是第二位的;Ad-Hoc网络则考虑如何在节点具有高度移动性的环境中建立彼此间的链接,同时兼顾一定的QoS要求,能耗也不是其首要关心的;而蓝牙采用了主从式的星型拓扑结构,这本身就不适合传感器网络自组织的特点。综上所述,需要为为无线传感器网络设计符合其自身特点的MAC层协议。2.2、无线传感器网络MAC协议分类MAC协议主要负责协调网络节点对信道的共享。WSNs网络的MAC协议可以按以下几种不同的方式进行分类:1)根据采用分布式控制还是集中控制,可分为分布式执行的协议和集中控制的协议。这类协议与网络的规模直接有关,在大规模网络中通常采用分布式的协议。2)根据使用的信道数,即物理层所使用的信道数,可分为单信道、双信道和多信道,如S-MAC,LEEM分别为单信道和双信道的MAC协议。使用单信道的MAC协议,虽然节点的结构简单,但无法解决能量有效性和时延的矛盾;而多信道的MAC协议可以解决这个问题,但增加了节点结构的复杂性。3)根据信道的分配方式,可分为基于TDMA的时分复用固定式、基于CSMA的随机竞争式和混合式三种。基于TDMA的固定分配类MAC层协议,通过把时分复用(TDMA)和频分复用(FDMA)或者码分复用(CDMA)的方式相结合,实现无冲突的强制信道分配,如下面要讨论的C-TDMA协议;以竞争为基础的MAC协议,通过竞争机制,保证节点随机使用信道,并且不受其他节点的干扰,如S-MAC。混合式是把基于TDMA的固定分配方式和基于CSMA的竞争方式相结合,以适应网络拓扑、节点业务流量的变化等,如Z-MAC[4]。4)根据接收节点的工作方式,可分为侦听、唤醒和调度三种。在发送节点有数据需要传递时,接收节点的不同工作方式直接影响数据传递的能效性和接入信道的时延等性能。接收节点的持续侦听,在低业务的WSNs网络中,造成节点能量的严重浪费。通常采用周期性的侦听睡眠机制以减少能量消耗,但引入了时延。为了进一步减少空闲侦听的开销,发送节点可以采用低能耗的辅助唤醒信道发送唤醒信号,以唤醒一跳的邻居节点,如STEM协议[5]。在基于调度的MAC协议中,接收节点接入信道的时机是确定的,知道何时应该打开其无线通信模块,避免了能量的浪费。5)根据不同的用户应用需求,可分为基于竞争的MAC协议、基于固定分配的MAC协议以及基于按需分配的MAC协议三类。其中基于竞争的MAC协议,即节点在需要发送数据时采用某种竞争机制使用无线信道。这就要求在设计的时候必须要考虑到如果发送的数据发生冲突,采用何种冲突避免策略来重发,直到所有重要的数据都能成功发送出去。基于固定分配的MAC协议,即节点发送数据的时刻和持续时间是按照协议规定的标准来执行,这样以来就避免了冲突,不需要担心数据在信道中发生碰撞所造成的丢包问题。目前比较成熟的机制是时分复用(TDMA)。基于按需分配的MAC协议,即根据节点在网络中所承担数据量的大小来决定其占用信道的时间,目前主要有点协调和无线令牌环控制协议两种方式。2.3、无线传感器网络MAC协议的设计思想传感器节点的能量、存储、计算和通信带宽等资源有限,单个节点的功能比较弱,而传感器网络的强大功能是由众多节点协作实现的。多点通信在局部范围需要MAC协议协调其间的无线信道分配,在整个网络范围内需要路由协议选择通信路径。在设计无线传感器网络的MAC协议时[6-7],需要着重考虑以下几个方面:(1)节省能量。传感器网络的节点一般是以干电池、纽扣电池等提供能量,而且电池能量通常难以进行补充,为了长时间保证传感器网络的有效工作,MAC协议在满足应用要求的前提下,应尽量节省使用节点的能量。(2)可扩展性。由于传感器节点数目、节点分布密度等在传感器网络生存过程中不断变化,节点位置也可能移动,还有新节点加入网络的问题,所以无线传感器网络的拓扑结构具有动态性。MAC协议也应具有可扩展性,以适应这种动态变化的拓扑结构。(3)冲突避免。冲突避免是MAC协议的一项基本任务。它决定网络中的节点何时、以何种方式访问共享的传输媒体和发送数据。在WSNs网络中,冲突避免的能力直接影响节点的能量消耗和网络性能。(4)信道利用率。信道利用率反映了网络通信中信道带宽如何被使用。在蜂窝移动通信系统和无线局域网中,信道利用率是一项非常重要的性能指标。因为在这样的系统中,带宽是非常重要的资源,系统需要尽可能地容纳更多的用户通信。相比之下,WSNs网络中处于通信中的节点数量是由一定的应用任务所决定的,信道利用率在WSNs网络中处于次要的位置。(5)延迟。延迟是指从发送端开始向接收端发送一个数据包,直到接收端成功接收这一数据包所经历的时间。在WSNs网络中,延迟的重要性取决于网络的应用。(6)吞吐量。吞吐量是指在给定的时间内发送端能够成功发送给接收端的数据量。网络的吞吐量受到许多因素的影响,如冲突避免机制的有效性、信道利用率、延迟、控制开销等。和数据传输的延迟一样,吞吐量的重要性也取决于WSNs网络的应用。在WSNs网络的许多应用中,为了获得更长的节点生存时间,允许适当牺牲数据传输的延迟和吞吐量等性能指标。(7)公平性。公平性通常指网络中各节点、用户、应用,平等地共享信道的能力。在传统的语音、数据通信网络中,它是一项很重要的性能指标。因为网络中每一个用户,都希望拥有平等发送、接收数据的能力。但是在WSNs网络中,所有的节点为了一个共同的任务相互协作,在某个特定的时刻,存在一个节点相比于其他节点拥有大量的数据需要传送。因此,公平性往往用网络中某一应用是否成功实现来评价,而不是以每个节点平等发送、接收数据的能力来评价。由于现在传感器节点的能量供应问题没有得到很好解决,传感器节点本身不能自动补充能量,节约能量成为传感器网络MAC协议设计首要考虑的因素。在传统网络中,节点能够连续地获得能量供应,如在办公室有稳定的电网供电,或者可以间断但及时地补充能量,如笔记本电脑和手机等;整个网络的拓扑结构相对稳定,网络的变化范围和变化频率都比较小。因此,传统网络的MAC协议重点考虑节点使用带宽的公平性,提高带宽的利用率以及增加网络的实时性。而传感网的MAC协议于传统网络的MAC协议所注重的因素正好相反,这意味着传统网络的MAC协议不适用于传感器网络,需要研究和提出新的适用于传感器网络的MAC协议。在无线传感器网络中,造成网络能量浪费的主要原因包括以下几个方面[6-7]:(1)消息碰撞(Messagecollision)。如果MAC协议采用竞争方式使用共享的无线信道,节点在发送数据的过程中,可能会引起多个节点之间发送的数据产生碰撞。这就需要重传发送的数据,从而消耗节点更多的能量。(2)窃听(Overhearing)。无线信道是一个共享媒体,一个节点可能会接收到发送给其他节点的消息,这时节点消耗在接收数据上的能量被浪费掉了。因此从节能考虑,这时应将其无线传输模块关闭。(3)空闲侦听(Idlelistening)。网络中的节点,由于不能预