第3章-MAC协议
S-MAC(Sensor MAC)协议是较早提出的一种基于竞争的无 线传感器网络MAC协议,由USC/ISI的Wei Ye等人提出
1.基本思想
(1)采用周期性睡眠和监听方法减少空闲监听带来的能量损耗 。对周期性睡眠和监听的调度进行同步,同步节点采用相同 的调度,形成虚拟簇,同时进行周期性睡眠和监听,适合多 跳网络。 (2)当节点正在发送数据时,根据数据帧特殊字段让每个与此 次通信无关的邻居节点进入睡眠状态,减少串扰带来的能量 损耗。 (3)采用消息传递机制,减少控制数据带来的能量损耗。
WSN中能量消耗的主要环节
1、空闲监听 2、冲突 3、串扰 4、控制开销
3.1 概述
在无线传感器网络中,介质访问控制(medium access control,MAC)协议决定无线信道的使用方式,在传感器节 点之间分配有限的无线通信资源,用来构建传感器网络系统 的底层基础结构。 MAC协议处于传感器网络协议的底层部分,对传感器网络的 性能有较大影响,是保证无线传感器网络高效通信的关键网 络协议之一。 传感器节点的能量、存储、计算和通信带宽等资源有限,单 个节点的功能比较弱,而传感器网络的强大功能是由众多节 点协作实现的。多点通信在局部范围需要 MAC协议协调其 间的无线信道分配,在整个网络范围内需要路由协议选择通 信路径。
混合式是把基于TDMA的固定分配方式和基于CSMA的竞争 方式相结合,以适应网络拓扑、节点业务流量的变化等( 如Z-MAC)。
第4章 MAC协议
(4)根据接收节点的工作方式,可分为侦听、唤醒和调度三种。 在发送节点有数据需要传递时,接收节点的不同工作方式直接影 响数据传递的能效性和接入信道的时延等性能。接收节点的持续侦听 ,在低业务的WSNs网络中,造成节点能量的严重浪费。通常采用周期 性的侦听睡眠机制以减少能量消耗,但引入了时延。为了进一步减少 空闲侦听的开销,发送节点可以采用低能耗的辅助唤醒信道发送唤醒 信号,以唤醒一跳的邻居节点,如STEM协议。在基于调度的MAC协议 中,接收节点接入信道的时机是确定的,知道何时应该打开其无线通 信模块,避免了能量的浪费。
3.1.3.通信模式 传感器网络是与应用高度相关的。不同的网络结构、不同的应用场 景和目的,其业务特征呈现多样性,需要采用不同的通信模式,以更 有效地交换业务。基于不同的业务特征,MAC协议对不同通信模式的 支持,可以有效减少节点能耗。所以对不同通信模式的支持与否,也 是衡量MAC协议能量有效性的重要因素。
(3)根据信道的分配方式,可分为基于TDMA的时分复 用固定式、基于CSMA的随机竞争式和混合式三种。 基于TDMA的固定分配类MAC层协议,通过把时分复用 (TDMA)和频分复用(FDMA)或者码分复用(CDMA)的方式相 结合,实现无冲突的强制信道分配(如C-TDMA协议)。 以竞争为基础的MAC协议,通过竞争机制,保证节点随 机使用信道,并且不受其他节点的干扰(如S-MAC)。
如果节点只有这一个邻居、那么节点放弃自己当前的调度方式,选择新的 调度方式; 如果节点还有其他邻居,那节点将融合这两种调度方式,即保持更大种调度方式的节 点位于簇与簇的交界处,是簇的边界节点。
(2)自适应监听
传感器网络往往来用多跳通信,而节点的周期性睡眠会导致 通信延迟的累加。为了减少通信延迟的累加效应,S-MAC采 用了一种流量自适应监听机制。其基本思想是在一次通信过 程中,通信节点的邻居在此次通信结束后唤醒并保持监听一 段时间。如果节点在这段时间接收到RTS帧,则可以立即接 收数据,而不需要等到下一个监听周期,从而减少了数据传 输延迟。
TRAMA
D-MAC Z-MAC
2003
2004 2005
分配性
分配性 混合性
是
是 是
TDMA/CSMA
TDMA/Sloted ALOHA TDMA/CSMA
3.3 几种经典MAC协议
3.3.1 802.11MAC协议 3.3.2 S-MAC协议 3.3.3 T-MAC协议 3.3.4 WiseMAC 协议 3.3.5 Sift协议
传统网络的MAC协议不适用于WSN。
3.1.2 MAC协议设计面临的问题
①空闲监听:
因为节点不知道邻居节点的数据何时到来,所以必须始终保持自己 的射频部分处于接收模式,形成空闲监听,造成了不必要的能量损 耗;
②冲突(碰撞):
如果两个节点同时发送,并相互产生干扰,则它们的传输都将失败 ,发送包被丢弃。此时用于发送这些数据包所消耗的能量就浪费掉
2.关键技术
(1)周期性监听和睡眠
侦听 睡眠 侦听 睡眠 侦听 睡眠
同步的维持
侦听 接收者 SYNC阶段 SYNC 发送者1 监听 RTS 发送者2 监听 SYNC 发送者3 监听 监听 RTS 接收CTS,发送数据 接收CTS,发送数据 休眠 RTS阶段 休眠
图 接收节点和发送节点的关系
①节点首先监听一个固定的时间段,其长度至少是一个调度周期。如果 在该时间段内节点没有接收到邻居发来用于同步的SYNC数据包,节点 马上选择一个本地默认的调度方式。同时,节点将自己的调度方式以 SYNC数据包的形式进行广播,SYNC数据包的发送使用CSMA/CA机制 。 ②如果节点在开始监听的固定时间段内接收到邻居发来的SYNC数据包 ,节点存储该调度方式信息,并采用此调度方式进行周期性监听和睡眠 。在以后的调度周期中,也广播自己采用的调度方式。 ③如果节点在开始周期性调度后,接收到不同调度方式的SYNC数据包 。有两种情形:
基于竞争的MAC协议有如下优点:
①由于基于竞争的MAC协议是根据需要分配信道,所以这种协议能 较好地满足节点数量和网络负载的变化; ②基于竞争的MAC协议能较好地适应网络拓扑的变化; ③基于竞争的MAC协议不需要复杂的时间同步或集中控制调度算法
3.3.1 802.11协议
IEEE802.11MAC协议有分布式协调DCF和点协调(point coordination function,PCF)两种访问控制方式,其中DCF 方式是IEEE802.11协议的基本访问控制方式。 在DCF工作方式下,节点在侦听到无线信道忙之后,采用 CSMA/CA机制和随机退避时间,实现无线信道的共享。另 外,所有定向通信都采用立即的主动确认(ACK帧)机制: 如果没有收到ACK帧,则发送方会重传数据。 PCF工作方式是基于优先级的无竞争访问,是一种可选的控 制方式。它通过访问接入点(access point,AP)协调节点 的数据收发,通过轮询方式查询当前哪些节点有数据发送的 请求,并在必要时给予数据发送权
MAC协议分类
各种MAC协议方案的比较
协议方案 S-MAC T-MAC P-MAC WiseMAC Sift SMACS 出现时间 2002 2003 2005 2004 2003 2000 类型 竞争型 竞争型 竞争型 竞争型 竞争型 分配性 需要精确同步 否 否 否 否 否 是 信道接入机制 CSMA CSMA CSMA CSMA CSMA TDMA/FDMA
RTS请求发送分组 CTS清除发送分组 NAV网络分配矢量
三种帧间间隔
三种帧间间隔分别为: (1)SIFS(shortIFS):最短帧间间隔。使用 SIFS的帧优 先级最高,用于需要立即响应的服务,如ACK帧、CTS帧和 控制帧等。 (2)PIFS(PCFIFS):PCF方式下节点使用的帧间间隔 ,用以获得在无竞争访问周期启动时访问信道的优先权。 (3)DIFS(DCFIFS):DCF方式下节点使用的帧间间隔 ,用以发送数据帧和管理帧。 上述各帧间间隔满足关系:DIFS>PIFS>SIFS。
通信模式分为四种:
(1)广播模式: (2)会聚模式: (3)本地通信: (4)多播模式:
3.1.4. 协议特点 WSN广泛的应用领域使其面临多样和特殊的应用需求和业务特性, 从而激发了各种不同的MAC协议设计。这些MAC协议设计从多个层面、 多个角度出发,具有不同的特点,同时又存在相互交叉的共同点,很 难对其进行完备、系统的分类。 除了引入不同休眠机制,WSN的MAC协议设计还具有其他特点,主要 可归纳: 1).采用基于TDMA的接入方式 2).利用分群结构群首局部集中控制的机制 3).与多跳转发相关的资源分配策略 4).冗余相关数据的隐聚合
(3)串扰避免
S-MAC协议中,在RTS/CTS帧中部带有目的地址和本次通 信的持续时间信息,接收到该帧后,如果发现目的地址不是 本地地址,节点马上进入睡眠状态,并将此次通信的持续时 间存储到本地的NAV(Network Vacation Vector)中。NAV会 随着本地时钟的运行递减。在NAV值非零期间节点都处于睡 眠状态,这就很大程度避免了串扰数据包的接收,减少了能 量损耗。 S-MAC采用物理侦听,防止了冲突解决了隐藏节点的问题; 采用虚拟侦听,节点收到NAV的时候,立刻进入休眠状态, 解决了串音问题。
第三章 MAC协议
3.1 概述 3.2 协议分类 3.3 几种经典MAC协议
1
MAC协议
数据链路层功能:将物理层提供的可能出错的物理链接改造 成逻辑上无差错的链路,同时提供流量控制功能,保证慢接 受方不被快发送方淹没。 MAC协议:解决无线信道合理共享问题,直接影响整个网 络性能。
3.2 WSN的MAC协议分类
MAC协议主要负责协调网络节点对信道的共享。采用不同的条件 MAC协议有不同的分类方法。综合对目前提出的MAC协议的研究, WSNs的MAC协议可以按以下几种不同的方式进行分类。 (1)根据控制方式:可分为分布式执行的协议和集中控制的协议 这类协议与网络的规模直接有关,在大规模网络中通常采用分布式的 协议。 (2)根据使用的信道数:可分为单信道、双信道和多信道。 如S-MAC和LEEM分别为单信道和双信道的MAC协议。 使用单信道的MAC协议,虽然节点的结构简单,但无法解决能量 有效性和时延的矛盾;而多信道的MAC协议可以解决这个问题,但 增加了节点结构的复杂性。