1、第第5 5章章 无线传感器网络无线传感器网络MACMAC层层 15.15.1无线传感器网络无线传感器网络MACMAC协议的分类协议的分类针对不同的传感器网络应用,研究人员从不同方面提出了多针对不同的传感器网络应用,研究人员从不同方面提出了多个个MACMAC协议,一般可以按照下列几种方式进行分类。协议,一般可以按照下列几种方式进行分类。1 1信道数信道数 2 2信道分配方式信道分配方式 3 3节点的工作方式节点的工作方式 4 4控制方式控制方式25.2 IEEE 802.115.2 IEEE 802.11协议协议5.2.1 IEEE 802.115.2.1 IEEE 802.11网络拓扑结构网络
2、拓扑结构1.Ad Hoc1.Ad Hoc网络形式网络形式3 2.2.基础结构网络形式基础结构网络形式 5.2.1 IEEE 802.115.2.1 IEEE 802.11网络拓扑结构网络拓扑结构4 3.3.扩展服务集结构形式扩展服务集结构形式 图图5-35-3扩展服务集网络扩展服务集网络5.2.1 IEEE 802.115.2.1 IEEE 802.11网络拓扑结构网络拓扑结构55.2.2 IEEE 802.1l 5.2.2 IEEE 802.1l 协议协议MACMAC层的工作模式层的工作模式IEEE 802.11IEEE 802.11协议族标准采用协议族标准采用CSMA/CACSMA/CA机
3、制,该机制可以利用握手机制,该机制可以利用握手的方式来解决隐藏终端的问题,同时也利用的方式来解决隐藏终端的问题,同时也利用ACKACK信号来避免冲突的发信号来避免冲突的发生。生。802.11802.11协议族规定了两种不同的协议族规定了两种不同的MACMAC层访问机制,一种是分布式层访问机制,一种是分布式协调功能协调功能(Distributed Coordination Function(Distributed Coordination Function,DCF)DCF),用来传输异,用来传输异步数据,同时也是支持步数据,同时也是支持PCFPCF机制的基础。另一种访问机制称为点协调机制的基础。
4、另一种访问机制称为点协调功能功能(Point Coordination Function(Point Coordination Function,PCF)PCF),是可选的,它只可用于,是可选的,它只可用于基本网络配置的拓扑结构。两种工作模式关系如图基本网络配置的拓扑结构。两种工作模式关系如图5-45-4所示。所示。图图5-4 IEEE 802.115-4 IEEE 802.11两种工作模式两种工作模式65.2.35.2.3分布式协调功能分布式协调功能(DCF)(DCF)1 1基本访问基本访问 基本访问被视为基本访问被视为STA(STA(站点站点)用于决定是否可以发送的核心机制。通用于决定是否
5、可以发送的核心机制。通常,一个常,一个STASTA在满足下列条件之一时,就可以发送一个在满足下列条件之一时,就可以发送一个MPDU(MAC MPDU(MAC Protocol Data Unit)Protocol Data Unit)。该该STASTA在没有在没有PCPC的情况下,按照的情况下,按照DCFDCF访问方式工作;访问方式工作;该该STASTA处在处在PCFPCF访问的竞争期间;访问的竞争期间;该该STASTA确定当媒介的空闲时间大于或等于一个确定当媒介的空闲时间大于或等于一个DIFSDIFS;当当STASTA上次收到一个没有正确上次收到一个没有正确FCSFCS帧后,帧后,STAST
6、A确定媒介空闲时间确定媒介空闲时间大大于或等于一个于或等于一个DIFSDIFS。图图5-5 DCF5-5 DCF基本访问模式基本访问模式7如图如图5-65-6所示。所示。DCFDCF可利用可利用RTSRTS和和CTSCTS两个控制帧来进行信道预约。两个控制帧来进行信道预约。图图5-65-6隐蔽终端问题隐蔽终端问题 2 2RTS/CTSRTS/CTS访问机制访问机制 RTS/CTSRTS/CTS访问机制工作原理如图访问机制工作原理如图5-75-7所示。所示。图图5-75-7RTS/CTSRTS/CTS访问机制访问机制 8对于要发送帧的对于要发送帧的STASTA而言,当该而言,当该STASTA通过
7、物理或虚拟载波机制通过物理或虚拟载波机制发现媒质忙时,或发现媒质忙时,或STASTA被指出发送没有成功时,被指出发送没有成功时,STASTA将调用退避算将调用退避算法。退避算法过程如图法。退避算法过程如图5-85-8所示所示 。节点A节点B节点C节点D推迟推迟推迟竞争窗口帧帧节点EDIFS推迟竞争窗口帧竞争窗口帧帧竞争窗口退避时间剩余退避时间图图5-85-8退避算法过程退避算法过程3 3退避算法退避算法95.2.45.2.4集中式协调功能集中式协调功能(PCF)(PCF)1 1PCFPCF基本访问基本访问 2 2无竞争期间的网络分配矢量操作无竞争期间的网络分配矢量操作 3 3PCFPCF站点的
8、帧发送过程站点的帧发送过程 图图5-95-9为为PCFPCF工作模式下工作模式下PCPC和和STASTA间帧传输的例子。间帧传输的例子。图图5-9 PCF5-9 PCF工作模式下的帧传输工作模式下的帧传输4 4无竞争轮询列表无竞争轮询列表 轮询列表是一个隐藏在轮询列表是一个隐藏在PCPC处处的逻辑结构,用于强制轮询无竞的逻辑结构,用于强制轮询无竞争可轮询的争可轮询的STASTA,而不管是否有数,而不管是否有数据要发送到该据要发送到该STASTA。105.2.5 DCF5.2.5 DCF与与PCFPCF机制的局限性机制的局限性DCFDCF机制支持异步数据传输,在低负载环境下性能较好,由于机制支持
9、异步数据传输,在低负载环境下性能较好,由于DCFDCF机制仅仅支持尽力而为的服务,没有基于数据流的区分和优先级机制仅仅支持尽力而为的服务,没有基于数据流的区分和优先级的规定,因此对于如的规定,因此对于如VoIPVoIP电话、视频会议等需要特定的带宽、延迟电话、视频会议等需要特定的带宽、延迟和抖动的实时业务不太适合,但无线网络中的一些关键技术,比如和抖动的实时业务不太适合,但无线网络中的一些关键技术,比如RTS/CTSRTS/CTS,分段,分段/重组等在一定程度上进行了性能的弥补。重组等在一定程度上进行了性能的弥补。PCFPCF机制通过轮询和应答机制提供无竞争的传输,在某种程度上机制通过轮询和应
10、答机制提供无竞争的传输,在某种程度上这种方式类似于令牌网。控制器控制着令牌,使得这一机制适合特这种方式类似于令牌网。控制器控制着令牌,使得这一机制适合特定延迟、抖动要求的传输。定延迟、抖动要求的传输。115.2.6 IEEE 802.115.2.6 IEEE 802.11的的QoSQoS保障保障普通的普通的802.11802.11无线局域网标准是没有无线局域网标准是没有QoSQoS保障的,为了弥补这一保障的,为了弥补这一不足,不足,IEEEIEEE提出了提出了802.11802.11的增强型标准的增强型标准802.11e802.11e。802.1le802.1le增加了增加了对对QoSQoS的
11、定义,旨在保证语音和视频等高带宽应用的服务质量。的定义,旨在保证语音和视频等高带宽应用的服务质量。802.11e802.11e引入了引入了EDCFEDCF和和HCFHCF两种机制,具有两种机制,具有IEEE 802.1le QoSIEEE 802.1le QoS功功能的能的STASTA称为称为QSTA(QoS-capable STA)QSTA(QoS-capable STA),为其他,为其他STASTA提供集中控制的提供集中控制的QSTAQSTA称为混合协调器称为混合协调器(HC)(HC),HCHC通常由通常由APAP担任,此担任,此APAP也称为也称为QAPQAP。EDCFEDCF只在只在C
12、PCP阶段使用,阶段使用,HCFHCF在在CPCP和和CFPCFP阶段都可以使用,因而是一种混合协阶段都可以使用,因而是一种混合协调功能。调功能。125.35.3基于竞争的基于竞争的MACMAC协议协议5.3.1 S-MAC5.3.1 S-MAC协议协议 1 1周期性侦听和睡眠周期性侦听和睡眠 2 2流量自适应侦听机制流量自适应侦听机制 3 3串音避免串音避免 4.4.消息传递消息传递 图图5-10 5-10 协议的虚拟簇协议的虚拟簇图图5-11 S-MAC5-11 S-MAC与与IEEE 802.11 MACIEEE 802.11 MAC协议的突发分组传送协议的突发分组传送135.3.2 T
13、-MAC5.3.2 T-MAC协议协议1.1.基本工作原理基本工作原理T-MACT-MAC协议在保持周期长度不变的基础上,根据通信流量动态地调协议在保持周期长度不变的基础上,根据通信流量动态地调整活动时间,用突发方式发送信息,减少空闲侦听时间。如图整活动时间,用突发方式发送信息,减少空闲侦听时间。如图5-12(b)5-12(b)所所示,示,T-MACT-MAC协议相对协议相对S-MACS-MAC协议减少了处于活动状态的时间。协议减少了处于活动状态的时间。2.2.早睡问题早睡问题T-MACT-MAC协议提出两种方法解决早睡问题。协议提出两种方法解决早睡问题。第一种方法称为未来请求发送第一种方法称
14、为未来请求发送(future(future request-to-sendrequest-to-send,FRTS)FRTS)。另一种方法称作满缓冲区优先另一种方法称作满缓冲区优先(full buffer priority)(full buffer priority)。当节点的缓。当节点的缓冲区接近占满时,对收到的冲区接近占满时,对收到的RTSRTS不作应不作应答,而是立即向目标接收者发送答,而是立即向目标接收者发送RTSRTS消消息,并传输数据给目标节点。息,并传输数据给目标节点。145.3.3 Sift5.3.3 Sift协议协议Sift MACSift MAC协议是针对基于事件驱动的传感
15、器网络提出的协议是针对基于事件驱动的传感器网络提出的基于竞争的基于竞争的MACMAC协议。它不同于协议。它不同于WLANWLAN的的802.11 MAC802.11 MAC协议和上面协议和上面所述的其他基于竞争的传感器网络所述的其他基于竞争的传感器网络MACMAC协议,而是充分考虑了协议,而是充分考虑了通常传感器网络的以下三个特性:通常传感器网络的以下三个特性:第一,传感器网络的空间相关性和时间相关性。第一,传感器网络的空间相关性和时间相关性。第二,不是所有节点都需要报告事件。第二,不是所有节点都需要报告事件。第三,感知事件的节点密度随时间变化。第三,感知事件的节点密度随时间变化。155.4
16、5.4 基于时分复用的基于时分复用的MACMAC协议协议 时分复用时分复用(time division multiple access(time division multiple access,TDMA)TDMA)是实现是实现信道分配的简单成熟的机制,蓝牙信道分配的简单成熟的机制,蓝牙(B1uetooth)(B1uetooth)网络采用了基于网络采用了基于TDMATDMA的的MACMAC协议。在传感器网络中采用协议。在传感器网络中采用TDMATDMA机制,就是为每个节机制,就是为每个节点分配独立的用于数据发送或接收的时槽,而节点在其他空闲时点分配独立的用于数据发送或接收的时槽,而节点在其他空
17、闲时槽内转入睡眠状态。槽内转入睡眠状态。TDMATDMA机制的一些特点非常适合传感器网络节省能量的需求:机制的一些特点非常适合传感器网络节省能量的需求:TDMATDMA机制没有竞争机制的碰撞重传问题;数据传输时不需要过多机制没有竞争机制的碰撞重传问题;数据传输时不需要过多的控制信息;节点在空闲时槽能够及时进入睡眠状态。的控制信息;节点在空闲时槽能够及时进入睡眠状态。165.4.15.4.1基于分簇网络的基于分簇网络的MACMAC协议协议 对于分簇结构的传感器网络,基于对于分簇结构的传感器网络,基于TDMATDMA机制的机制的MACMAC协议如图协议如图5-175-17所示,所有传感器节点同时划
18、分或自动形成多个簇,每个簇所示,所有传感器节点同时划分或自动形成多个簇,每个簇内有一个簇头节点。簇头负责为簇内所有传感器节点分配时槽,内有一个簇头节点。簇头负责为簇内所有传感器节点分配时槽,收集和处理簇内传感器节点发来的数据,并将数据发送给汇聚节收集和处理簇内传感器节点发来的数据,并将数据发送给汇聚节点。点。175.4.2 DEANA5.4.2 DEANA协议协议DEANADEANA协议的时间帧分配如图协议的时间帧分配如图5 51818所示。所示。185.4.3 5.4.3 基于周期性调度的基于周期性调度的MACMAC协议协议基于周期性消息调度的基于周期性消息调度的MACMAC协议。该协议采用
19、周期性的消息协议。该协议采用周期性的消息发送模型,构建节点周期性消息发送调度机制,保证节点之间无发送模型,构建节点周期性消息发送调度机制,保证节点之间无冲突地使用无线信道,是一个确定性的基于消息调度的冲突地使用无线信道,是一个确定性的基于消息调度的TDMATDMA类型类型的的MACMAC协议。协议假设所有节点之间都是时间同步的,节点发送协议。协议假设所有节点之间都是时间同步的,节点发送的消息由多个固定长度的分组组成,每个消息都有生存时间的限的消息由多个固定长度的分组组成,每个消息都有生存时间的限制,消息产生后必须在给定时间内发送出去,否则该消息即使发制,消息产生后必须在给定时间内发送出去,否则
20、该消息即使发送出去也没有意义。时间被划分为连续的长度相同的时槽,时槽送出去也没有意义。时间被划分为连续的长度相同的时槽,时槽长度是发送一个固定分组需要的时间。长度是发送一个固定分组需要的时间。195.4.4 TRAMA5.4.4 TRAMA协议协议流量自适应介质访问流量自适应介质访问(traffic adaptive medium access(traffic adaptive medium access,TRAMA)TRAMA)协议协议将时间划分为连续时槽,根据局部两跳内的邻居节点信息,采用分布式选举将时间划分为连续时槽,根据局部两跳内的邻居节点信息,采用分布式选举机制确定每个时槽的无冲突发
21、送者。同时,通过避免把时槽分配给无流量的机制确定每个时槽的无冲突发送者。同时,通过避免把时槽分配给无流量的节点,并让非发送和接收节点处于睡眠状态达到节省能量的目的。节点,并让非发送和接收节点处于睡眠状态达到节省能量的目的。TRAMATRAMA协议协议包括邻居协议包括邻居协议NP(neighbor protocol)NP(neighbor protocol)、调度交换协议、调度交换协议SEP(schedule SEP(schedule exchange protocol)exchange protocol)和自适应时槽选择算法和自适应时槽选择算法AEA(adaptive electional A
22、EA(adaptive electional gorithm)gorithm)。1 1NPNP协议协议NPNP协议在随机访问周期内执行,节点通过协议在随机访问周期内执行,节点通过NPNP协议以竞争方式使用无线信协议以竞争方式使用无线信道。协议要求节点周期性通告自己的节点编号道。协议要求节点周期性通告自己的节点编号IDID,是否有数据需要发送以及,是否有数据需要发送以及能够直接通信的邻居节点的相关信息,并实现节点之间的时间同步。节点间能够直接通信的邻居节点的相关信息,并实现节点之间的时间同步。节点间通过通过NPNP协议要获得一致的两跳内拓扑结构和节点流量信息,为此协议要求所协议要获得一致的两跳内
23、拓扑结构和节点流量信息,为此协议要求所有节点在随机访问周期内都一直处于活动状态,同时要求通告信息要广播多有节点在随机访问周期内都一直处于活动状态,同时要求通告信息要广播多次。次。202 2SEPSEP协议协议 调度交换协议调度交换协议SEPSEP用来建立和维护发送者和接收者的调度信息。在调度访用来建立和维护发送者和接收者的调度信息。在调度访问周期内,节点周期性向邻居广播它的调度信息,如在赢时槽中发送数据的接问周期内,节点周期性向邻居广播它的调度信息,如在赢时槽中发送数据的接收者,或者放弃该赢时槽等调度信息。收者,或者放弃该赢时槽等调度信息。3 3AEAAEA算法算法 节点有发送、接收和睡眠三种
24、状态。在调度访问周期内的给定时槽,节点节点有发送、接收和睡眠三种状态。在调度访问周期内的给定时槽,节点处于状态当且仅当它有数据需要发送,且在竞争者中有最高的优先级;节点处处于状态当且仅当它有数据需要发送,且在竞争者中有最高的优先级;节点处于接收当且仅当它是当前发送节点指定的接收者;其他情况下,节点处于睡眠于接收当且仅当它是当前发送节点指定的接收者;其他情况下,节点处于睡眠状态。每点在调度周期的每个时槽上运行状态。每点在调度周期的每个时槽上运行AEAAEA算法。该算法根据当前两跳邻居节算法。该算法根据当前两跳邻居节点内的优先级和一跳邻居的调度信息,决定节点在当前时槽的活动策略:发送,点内的优先级
25、和一跳邻居的调度信息,决定节点在当前时槽的活动策略:发送,接收,睡眠。接收,睡眠。5.4.4 TRAMA5.4.4 TRAMA协议协议215.4.5 DMAC5.4.5 DMAC 传感器网络中一种重要的通信模式是多个传感器节点向一个汇传感器网络中一种重要的通信模式是多个传感器节点向一个汇聚节点发送数据。所有传感器节点转发收到的数据,形成一个以汇聚聚节点发送数据。所有传感器节点转发收到的数据,形成一个以汇聚节点为根节点的树型网络结构,称为数据采集树节点为根节点的树型网络结构,称为数据采集树(data gathering(data gathering tree)tree)。DMACDMAC协议就是
26、针对这种数据采集树结构提出的,目标是减少协议就是针对这种数据采集树结构提出的,目标是减少网络的能量消耗和减少数据的传输延迟。网络的能量消耗和减少数据的传输延迟。DMACDMAC协议的核心思想是采用交错调度机制。协议的核心思想是采用交错调度机制。DMACDMAC协议采用协议采用ACKACK应答机制,发送节点如果没有收到应答机制,发送节点如果没有收到ACKACK应答,应答,要在下一个发送时间重发。节点正确接收到数据后,立刻发送要在下一个发送时间重发。节点正确接收到数据后,立刻发送ACKACK消消息给发送数据的节点。为了减少发送数据产生的冲突,节点在等待固息给发送数据的节点。为了减少发送数据产生的冲
27、突,节点在等待固定的后退时间定的后退时间(backoff period(backoff period,BP)BP)后,在冲突窗口后,在冲突窗口(content(content windowwindow,CW)CW)内随机选择发送等待时间。接收节点在发送内随机选择发送等待时间。接收节点在发送ACKACK消息时,消息时,采用短时间段采用短时间段(short period(short period,SP)SP)的固定延迟。的固定延迟。DMACDMAC协议中几个主要机制协议中几个主要机制:1.1.自适应占空比机制自适应占空比机制 2 2数据预测机制数据预测机制 3 3MTSMTS分组机制分组机制 22
28、5.4.65.4.6其他类型的其他类型的MACMAC协议协议1 1SMACS/EARSMACS/EAR协议协议SMACS/EAR(self-organizing medium access control for SMACS/EAR(self-organizing medium access control for sensor networks/eavegsensor networks/eavegdrop and register)drop and register)协议是结合协议是结合TDMATDMA和和FDMAFDMA的基于固定信道分配的的基于固定信道分配的MACMAC协议。其基本思想是
29、为每一对协议。其基本思想是为每一对邻居节点分配一个特有频率进行数据传输,不同节点对间的频率邻居节点分配一个特有频率进行数据传输,不同节点对间的频率互不干扰,从而避免同时传输的数据之间产生碰撞。互不干扰,从而避免同时传输的数据之间产生碰撞。232.2.基于基于CDMACDMA方式的信道分配协议方式的信道分配协议CDMACDMA机制为每个用户分配特定的具有正交性的地址码,因而机制为每个用户分配特定的具有正交性的地址码,因而在频率、时间和空间上都可以重叠。在传感器网络中应用在频率、时间和空间上都可以重叠。在传感器网络中应用CDMACDMA技技术就是为每个传感器节点分配与其他节点正交的地址码,这样即术就是为每个传感器节点分配与其他节点正交的地址码,这样即使多个节点同时传输消息,也不会相互干扰,从而解决了信道冲使多个节点同时传输消息,也不会相互干扰,从而解决了信道冲突问题。突问题。CSMA/CACSMA/CA和和CDMACDMA相结合的相结合的MACMAC协议是采用一种协议是采用一种CDMACDMA的伪随机码的伪随机码分配算法,使每个传感器节点与其两跳范围内所有其他节点的伪分配算法,使每个传感器节点与其两跳范围内所有其他节点的伪随机码都不相同,从而避免了节点间的通信干扰。随机码都不相同,从而避免了节点间的通信干扰。5.4.65.4.6其他类型的其他类型的MACMAC协议协议24