1、无线传感器网络简介及发展现状
无线传感器网络是嵌入式系统、无线通信技术、网络技术及微机电系统等学科互相融合、渗透而产生的新技术,广泛使用在军事国防领域、环境监测、交通管理、医疗健康、工商服务、反恐抗灾等诸多领域,几乎涵盖了生活中的方方面面。无线传感器网络通过随机部署的节点以无线通信的方式自组成网,完成对环境数据的长时间自动监测、采集和传输。研究高效、节能的介质访问控制(MediumAccess Control,MAC)协议是延长网络寿命、提高网络实时性的有效途径。
无线传感器网络的出现引起了全世界范围的广泛关注。最早开始无线传感器网络技术研究的是美国军方于20世纪90年代,资助了REMBASS、TRSS、SSW、SensorlT、WINS、Smart Dust、SeaWeb、NEST等研究项目。此后美国国家自然基金委员会设立了大量与其相关的项目,如FireBug、CENS等。美国的CmsSbow、DustNetwork、Ember、Chips、Intel、Freescalc等公司,欧盟的Philips、Siemens、No虹a、Ericsson、ZMD、France Telecom、Chipcon等公司,日本的NEC、OKI、SkyleyNetworks、OMRON等公司都开展了WSN的研究,与WSN相关的国际标准也陆续出台,如IEEE802.15.4、WirelessHART[101、610wpan/ISAl 00[11]等。
在我国,无线传感器网络1 999年首次正式出现在中科院《知识创新工程试点领域方向研究》的信息与自动化领域研究报告中,作为该领域提出的五个重大项目之一。2006年,政府将发展WSN列入未来15年的发展纲要,清华大学、浙江大学、上海微系统所、中科院计算技术研究所、软件所、声学所、微电子所、沈阳自动化所等单位相继开展了WSN基础理论研究,初步建立WSN系统研究平台,在节点体系结构、通信协议、覆盖、协同设计和数据管理等方面取得了重要成果Il21。随着无线传感器网络理论与技术的不断成熟,其应用早已经由军事国防领域扩展到环境监测、交通管理、医疗健康、工商服务、反恐抗灾等诸多领域,使人们在任何时间、任何地点和任何环境条件下都能够获取大量翔实可靠的信息,最终成为一种“无处不在’的传感技术。
2、无线传感器网络MAC协议介绍
数据链路层是OSI参考模型中的第二层,其作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。数据链路层向网络层提供透明的和可的数据传送服务,主要负责数据流的多路复用、数据帧检测、媒体接入和差错控制,保证了无线传感器网络内点到点以及点到多点的连接。由于无线传感器网络通常具有低数据吞吐量、多跳信道共享、能量受限等特点,因此其数据链路层主要研究媒体接入和差错控制的问剧无线传感器网络数据链路层研究的的重点是介质访问控制(MAC)协议,因为它要靠大量节点协同工作实现某种特定应用目标。作为一种能量有限的自组织网络,无线传感器网络的MAC协议设计主要需要解决几个方面的问题。
1) 、能量问题。
传感器节点电池通常使用干电池、纽扣电池等供电,并且在很多时候电池不能更换或者电池耗尽时节点直接废弃,从降低成本和系统易维护性的角度出发,网络设计中通常要以节能降耗、提高节点的寿命作为重要设计目标。对无线传感器网络的MAC层设计而言,能量受限带来的主要影响包括节点休眠调度机制和协议设计的复杂度。传感器节点的无线通信模块通常具有发送(TX)、接收(RX)、空闲(IDLE)和休眠(SLEEP)四种工作状态,这四个状态的能耗依次递减。其中,休眠状态的能耗远低于其它状态,只是其它状态的能耗的几百分之一。因此为了节能,通常希望节点尽可能处于休眠状态。为了保证节点能够及时接收到发送给它的数据,MAC协议通常要采用“侦听/休眠”交替的策略,如果侦听时间过长,就会造成能量浪费;侦听时间过短,又会增大消息延时。
对于一个大规模密集自组织网络而言,休眠时间长短的合理选择是比较困难的,这就需要合理的设计MAC机制使得这个选择更加合理优化。另外,在休眠策略中还需要考虑收发同步问题,如果在目标节点处于休眠状态或唤醒后还未准备就绪时,源节点就开始发送,接收端将无法正常接收,这会造成源节点的能量浪费,称之为“overemitting”,这就需要设计MAC机制时考虑同步协调或者节点唤醒机制。此外,能量受限及其它一些因素例如节点通信、计算、存储能力有限等,这就决定了传感器网络的MAC子层不能使用计算、处理过于复杂的协议,或者不能做能量损耗的传输。例如:如果MAC帧头和控制消息包(ACK/RTS/CTS)中没有包含有效的数据,那么可认为是~种能量损耗的传输过程。对于数据负载较低的无线传感器网络来说,MAC的控制包传输会造成较大的能耗,因为这些控制包相对于数据包来讲已经很大。
2) 、网络不均衡问题。
在第一章已经提及,无线传感器网络中的节点、甚至是通信链路都会是不均衡的,这样会造成整个信道的不均衡通信,引起不公平性、延时大、能耗大等问题。在MAC设计中,应该避免这些问题。本文主要考虑的是节点不均衡带来的异构问题。
3)、多跳共享问题。
通信网络的信道共享方式有三种:点对点(如两个节点以半双工方式共享一个信道)、点对多点(如蜂窝移动通信系统中的基站与移动台)、多点共享(如以太网)。无线传感器网络的信道共享方式为多跳共享方式,源节点覆盖范围外的节点不受发射节点的影响,它们也可以同时发射信号,这实际上是一种信道的空间复用方式。由信道共享带来的首要问题是数据包碰撞冲突,即如果网络中的两个节点在同一时间利用同一信道传送数据时,它们会互相干扰导致数据包被破坏,被破坏的数据包一般直接丢弃,这样就造成了这就造成巨大的能耗。
因此,有效地避免碰撞冲突是多跳无线传感器网络MAC协议的基本任务。不仅如此,无线传感器网络的多路共享信道使用方式还会带来隐蔽终端(HiddenTerminals)和暴露终端(Exposed Terminals)问题。在单跳广播信道中,数据包冲突是全局事件,所有节点都能正确感知信道状态并做出合理的信道访问决策。而在多跳传感器网络中,当某个源节点发送数据包时,并非所有其它节点都能感知到该事件,这就会带来隐蔽终端和暴露终端问题。隐蔽终端是指在目标节点覆盖范围之内而在源节点覆盖范围之外的节点。
暴露终端是指在源节点覆盖范围之内而在目标节点覆盖范围之外的节点。隐蔽终端和暴露终端会带来消息延迟和不必要的重发,从而造成信道利用率降低和节点能量浪费,可以采用RTS/CTS(请求发送/清除发送)握手机制、时分复用等方法来解决该问题。解决隐蔽终端和暴露终端问题也是多跳无线传感器网络MAC协议设计的重要任务之一。由多跳共享带来的另一个问题是串音(overhearing)问题。当使用共享信道进行通信时,节点可能接收到不是发送给它的数据,从而造成“串音”。串音过程会造成大量的能耗,无线传感器网络的MAC协议必须设法协调各节点的收发,在发送的数据帧里带有目标节点的地址信息等方法降低发生“串音”的概率。
4) 、大规模自组织问题。
与其它无线个域网(WPAN)相比,传感器网络的规模更大,甚至多达成千上万个节点。同时,节点可能由于电池耗尽、没有连接上等各种原因退出网络,节点位置也可能移动,新节点随时加入等,网络的拓扑结构会呈现出动态的变化。因此,无线传感器网络的MAC协议必须具备可扩展性、分布性和自组织性。
对于网络的公平性,在无线传感器网络中实现公平性的目的,一方面是为了赋予每个节点相同的信道访问机会,另一方面可以起到控制所有节点的能量均匀消耗,从而延长整个网络寿命的作用。除上述各种问题之外,无线传感器网络中还存在消息延时问题、信道利用率问题和数据吞吐量问题。
3、无线传感器网络MAC协议分类
对于WSN系统,最重要的是能量的保持问题,故MAC的设计首先要考虑的问题就是能量效率的问题,而其它典型的性能指标如公平性、吞吐量及延时等是根据具体的应用系统而提出的不同要求。针对不同的传感器网络应用,提出了各种不同种类的MAC的协议,比如对于规模较大的无线传感器网络会采取竞争的信道访问方式,而对于规模较小且时间要求较高的无线传感器网络采用调度机制等,不同的系统要求也表现出不同的MAC设计侧重点。无线传感器网络的MAC协议主要分为四种:
1) 、基于同步竞争的MAC协议。基于竞争的MAC协议采用按需使用信道,当节点需要发送数据时,通过竞争方式使用无线信道,如果发送的数据发生了冲突,重发数据,直到数据发送成功或者丢弃数据。在同步竞争MAC协议中,节点将时间划分为若干为时间帧,在每一帧中又划分为一个工作时间段和一个休眠时段。节点在工作时段唤醒射频模块以收发数据,在休眠时段关闭射频模块以节约能源。这类协议的一个特点就是要求所有节点同步到一个共同的时间,这样网络中所有节点在相同时间唤醒竞争使用信道。一般来说同步竞争类协议需要适度的全局时钟同步。因为节点同时工作,因而该类协议信道效率较高;但是随之而来的一个缺点就是竞争和冲突比较严重。同步竞争类协议从SMAC[27’28】发展而来,还有TMAC[301、PMAC[311、Sift[321等改进协议。
2)、基于异步竞争MAC协议。在异步竞争MAC协议中,所有节点维持自己独立的工作周期,当节点醒来后随即竞争信道。在该类协议中由于收发双方不同步,因而发送节点发出数据时接收节点可能正处于休眠状态,所以需要使用一种低功耗侦听(Low Power Listening,LPL,又称为前导序列技术)方式来唤醒接收节点15引。相比于同步协议,异步协议不需要维持节点同步,但需要额外的唤醒能耗。异步竞争协议主要有:BMAC[331、WiseMAC[341、XMACl3 51、DFP.MACl361、MFP.MAC[37]、DPS.MAC[3钔、RI.MAC[391、RP_MACt40]、AMAC[41]等协议。
3)、 基于调度的MAC协议。调度类协议的目的就是根据一个设定的计划表来协调网络中各节点工作,这个计划表可以是静态预先分配也可以是动态实时分配。根据使用的技术手段,调度类协议可以分为基于时分复用(TDMA)、码分复用(CDMA)和频分复用(FDMA)技术的协议。但是由于硬件条件限制,调度类协议在无线传感器网络中主要指基于TDMA的协议。TDMA的思想就是将不同的信号相互交织在不同的时间段内,沿着同一信道传输。
在无线传感器网络中的TDMA机制就是为每个节点分配独立的时隙用于发送信息,而节点在其它时隙转入休眠状态。TDMA机制没有竞争的碰撞重传问题,数据传输不需要过多的控制信息,这些特点满足了无线传感器网络MAC节能的要求。但是TDMA机制需要节点之间比较严格的时间同步,而且TDMA机制在网络扩展性方面存在不足:很难调整时间帧的长度和时隙的分配,对于传感器网络的节点移动、节点失效等动态拓扑结构适应性较差,TDMA机制的信道利用率较低,对于节点发送数据量的变化也不敏感。典型的基于TDMA机制的MAC包括[TRAMA]431、LMAC[441、DMAC[451、AI-MAC[铜、TDMA-ASAPt471、LEACH[60]等协议。
4) 、基于联合设计的MAC协议。有时候为了既节能又保证系统的可扩展性,采取竞争机制CSMA和时分复用TDMA相结合的混合MAC机制,典型的基于联合设计的MAC协议有IEEE 802.1 5.4[71、ZMACl48]、SCP.MAC[49]、Funneling.MAC[501、I.MACt511、Crank.Shaftt521、TH.MACt53]协议等。
4、CSMA/CA机制介绍
在IEEE802.15.4标准中,MAC机制采用的是CSMA/CA机制访问信道,这个机制采用以超帧为周期组织无线传感器网络内节点间的通信。每个超帧都从协调器发出信标帧开始,这个信标帧中包含了超帧将持续的时间以及对这段时间的分配等信息。网络中的普通节点接收到协调器发出的信标帧后,就可以根据其中的内容安排自己的任务。超帧将通信时间划分成活跃(Active)与不活跃(hacfive)两个部分。在不活跃期间,PAN网络中的设备不会通信,从而可以进入休眠状态以节省能量。
超帧的活跃期间划分为三个阶段:信标帧发送时段、竞争访问时段(CAP)、非竞争访问时段(CFP)。超帧的活跃部分被划分为16个等长的时隙,每个时隙的长度、竞争访问时段包含的时隙数等参数,都由协调器设定,并通过超帧开始时发出的信标帧广播到整个网络。IEEE 802.15.4标准的CSMA/CA机制的结构图如下所示:
在超帧的竞争访问时段,IEEES02.15.4网络节点使用带时隙(Slotted)的CSMA/CA访问机制,并且节点间的通信都须在竞争访问时段结束前完成。对于实时性要求较高的网络,会采用CFP阶段的GTS机制,即在非竞争时段,协调器根据节点申请GTS的情况,将非竞争时段划分成若干个GTS(一般是7个)。每个GTS由若干个时隙组成,时隙数目在设备申请GTS时指定。如果节点申请GTS时隙成功,申请设备就拥有了它指定的时隙数目,这其实就是前面所提到的分时复用的MAC访问方式。
如图第一个GTS由时隙11.13构成,第二个GTS由时隙14.15构成。每个GTS中的时隙都指定分配给了时隙申请设备,因而不需要竞争信道。超帧中规定非竞争时段必须跟在竞争时段后面。竞争时段的功能包括网络设备可以自由收发数据,域内设备向协调器申请GTS时段,新设备加入当前PAN网络等。非竞争时段由协调器指定的设备发送或者接收数据包。从上述来看,IEEE 802.15.4的MAC机制实际上是一个组合的MAC机制,如2.3节分类所示,CAP阶段是基于同步竞争的MAC,CFP阶段是基于TDMA方式的MAC。但是很多时候没有使用GTS机制,因为CSMA/CA本身就是针对网络规模较大、节点较多的场合,而GTS机制的容量不大,实用性较差,只是在视频流的传输或者其它实时性要求的场合中会用到这个机制。如果某个设备在非竞争阶段一直处在接收阶段,那么拥有GTS使用权的设备就可以在GTS阶段直接向该设备发送消息。
IEEE 802.15.4的无线传感器网络中存在三种数据传输方式和两种拓扑结构:星形拓扑网络中存在的节点发送数据给协调器、协调器发送数据给节点这两种传输方式,点对点拓扑网络除了前两种传输方式外,还有对等节点之间的数据传输第三种传输方式。在无线传感器网络中,存在两种通信模式:信标使能通信和信标不使能通信。在信标使能的网络中,协调器定时广播信标帧。各个节点之间通信使用基于时隙的CSMA/CA信道访问机制,网络中的节点都通过协调器发送的信标帧进行同步(实际上就是同步竞争模式)。在时隙CSMA/CA机制下,每当节点需要发送数据帧或命令帧时,它首先定位下一个时隙的边界,然后等待随机数目的时隙(Backoff过程)。退避机制完毕后,节点开始检测信道状态(CCA,Clear Channel Accessments):如果信道空闲,节点就在下一个时隙边界开始发送数据;如果信道忙,设备需要重新等待随机数目个时隙,再检查信道状态,重复这个过程知道有空闲信道出现。在信标不使能的通信网络中,网络协调器不发送信标帧,各个设备使用非分时隙的CSMA/CA机制访问信道(实际上就是异步竞争的访问方式)。
5、成品方案
E70(433NWxxS)是成都亿佰特自主研发的基于IEEE802.15.4协议上的传感器星型网络系统模块,MAC层采用CSMA/CA防冲突机制,完美解决多设备相互冲突问题,同时节点设备可配置为低功耗类型,无数据收发期间设备自动休眠以节省系统功耗,完美适用于电池设备供电场景。同时,所有操作配置采用行业标准AT指令,极大简化用户操作,适用于多种无线通讯组网场景。