《传感网原理与技术第二章 传感网通信协议》由会员分享,可在线阅读,更多相关《传感网原理与技术第二章 传感网通信协议(68页珍藏版)》请在金锄头文库上搜索。
1、第二章 传感网通信协议,传感网网络分层架构,主要内容,2.1 物理层协议 2.2 MAC层协议 2.3 路由协议 2.4 传输层协议 2.5 6LoWPAN标准 2.6 ZigBee标准,2.1 物理层协议,物理层协议传感网中,物理层负责将比特流信息转换成最适于在无线信道上传输的信号。 传输频率选择 载波频率生成 信号检测 调制以及信息加密。,IEEE 802.15.4物理层标准,IEEE 802.15.4标准在3个不同的频带上总共指定了27个半双工信道 通常使用2.4GHz ISM公用频段,范围从2400到2483.5MHz 采用半正弦偏移四相相移键控(O-QPSK)调制方式 采用直扩扩频(
2、DSSS) 在该频段有16个信息传输速率为250kbit/s的信道可用 射频接收机的灵敏度要求为-85dB 该频段的理想传输距离约为200m,IEEE 802.15.4物理层标准,2.4GHz物理层描述,2.4GHz物理层信息调制参考模型,各频段通用规范,发射状态到接收状态转换时间 接收信号的中心频率误差 发射功率和接收机最大输入电平 接收机的能量检测 链路质量信息 表示了所接收的数据包信号的强度 和质量(RSSI/LQI) 清除信道评估(Clear Channel Assessment, CCA) 超出能量检测门限 载波判断 超出能量检测门限的载波判断,主要内容,2.1 物理层协议 2.2
3、MAC层协议 2.3 路由协议 2.4 传输层协议 2.5 6LoWPAN标准 2.6 ZigBee标准,2.2 MAC层协议,MAC协议MAC(Medium Access Control)协议决定无线传感器网络中无线信道的使用方式。 负责为节点分配无线通信资源 影响传感网高效通信的关键协议 网络吞吐量 节点能耗,传感网MAC协议设计原则,传感网节点能量有限且难以补充 能量消耗主要包括 通信能耗 感知能耗 计算能耗 其中,通信能耗所占比重最大。因此,减少通信能耗是延长网络生存时间的有效手段 MAC协议以减少通信能耗、最大化网络生存时间为首要设计目标,IEEE 802.15.4 MAC,IEEE
4、 802.15.4的MAC子层规范定义了MAC层帧结构的以保证用最低复杂度实现在多噪声无线信道环境下的可靠数据传输 帧格式,S-MAC,S-MAC(Sensor-MAC)是传感网研究早期提出的一种MAC协议 网络中所有的节点都同步,使用相同的睡眠和唤醒方式 网络中的通信都只在所有节点醒来时发生 睡眠时节点会关闭射频收发器以节省能 空闲监听电流:约10mA 睡眠状态电流:为nA级,S-MAC,CSMA和S-MAC的对比 CSMA一直处于唤醒状态 S-MAC中,白色的区域处于睡眠状态,图2-7 采用CSMA的MAC协议工作方式,CSMA,S-MAC,绿色表示处于监听状态,红色表示发送状态,白色表示
5、睡眠状态,是否可以做的比S-MAC更好?,S-MAC是否可以做的更好?,理想的MAC协议: 两个节点心有灵犀 接收者能通过第六感知道发送者何时发送数据,并且它恰好在发送者发送数据的那个时刻醒来 完全不存在空闲监听的问题 理想MAC无法实现,但可作为参照 S-MAC的弱点: 与理想MAC相比,周期性睡眠调度开销过大 是否可以不同步调度而是各自以异步方式进行睡眠与侦听呢?可以! 那么发送者如何将数据发送给接收者?,图2-7 采用CSMA的MAC协议工作方式,B-MAC,B-MAC是最早提出的一种异步MAC 异步MAC就是睡眠和唤醒的时间不一致,如何通信?,图2-7 采用CSMA的MAC协议工作方式
6、,接收者每个周期只醒来一小段时间,用来检查有没有其它节点要向它发数据 发送者当有数据要发送时,先发送一段较长的前导码,其作用是唤醒接收者。,B-MAC是否达完美无缺?,B-MAC是否达完美无缺?,缺陷1: 需要发一个周期的前导码,不仅耗费节点本身的能量,而且会干扰附近的邻居节点,造成串扰 应尽量设法缩短了前导码并减少串扰 X-MAC用多个短的数据包代替前导码 WiseMAC通过预测接收者的唤醒时减少前导码的长度,图2-7 采用CSMA的MAC协议工作方式,B-MAC是否达完美无缺?,缺陷2: 在并发数据流环境中,B-MAC的吞吐量因为前导码容易冲突而无法提高。 例:网络中有多个并发流存在。 A
7、、B、C这3个节点是在同一个冲突域里 C、D是同一个冲突域 有A-B, C-D C无法发出前导码, 只能等到下个周期再发, 造成一个周期的延时,图2-7 采用CSMA的MAC协议工作方式,如何解决?,RI-MAC,RI-MAC采用了接收者发起方式解决前导码冲突 接收者也是周期性的醒来,但与B-MAC相反, 醒来时,它要发一个信标(图中B) 发送者当有数据需要发送时,发送者将radio切换到监听状态,一旦接收到接收者的信标,立即向接收者发送数据,图2-7 采用CSMA的MAC协议工作方式,RI-MAC解决并发数据流问题,B-MAC中的前导码在RI-MAC中变成监听信道,而B-MAC中的监听信道变
8、成了主动发送通告。 解决了前导码占用信道的问题,因为监听信道并不占用信道,多个节点可以同时监听,图2-7 采用CSMA的MAC协议工作方式,实例:TinyOS MAC层协议,自带rfxlink 射频协议栈,可用于AT86RF230、CC2420、CC2520等多种射频芯片,图2-7 采用CSMA的MAC协议工作方式,主要内容,2.1 物理层协议 2.2 MAC层协议 2.3 路由协议 2.4 传输层协议 2.5 6LoWPAN标准 2.6 ZigBee标准,路由协议简介,传感网具有与传统网络不同的特点 存储容量和处理能力一般都非常有限 传感网且与应用高度相关 传统路由协议不能有效地用于传感网
9、最简单的传感网路由协议:泛洪协议 任一节点A只要收到了其它节点发送的数据包,并且这个数据包的目的地址不是A自身,那么A就将这个数据包广播出去 缺点:数据包的转发没有目的性,导致所消耗的能量较高。,图2-7 采用CSMA的MAC协议工作方式,分发协议,功能与泛洪协议类似,实现基于共享变量的网络一致性 网络中的每个节点都有该变量的一个副本,当该变量值改变的时候,数据分发协议会通知节点上层应用 通过广播通知其它节点以达到整个网络的一致性 在任意给定时刻,也许会有若干节点的共享变量值不一致,但是随着时间的流逝,不一致的节点数会越来越少,最终整个网络将完全统一成相同的变量值。 适用于配置全网参数 改变全
10、网的数据采样周期 网络重编程,Deluge,图2-7 采用CSMA的MAC协议工作方式,TinyOS 分发协议 DRIP,Trickle算法 节点间通过周期性地广播元数据来监听网络参数的一致性 通过“文明的流言”策略来通知其邻居节点,并保证自己的邻居都更新到新版本的参数 为了防止广播元数据造成可能的洪泛,消息分发协议通过定义“逻辑组”来抑制包的传输范围,图2-7 采用CSMA的MAC协议工作方式,汇聚协议,提供了一种多对一、尽力、多跳将数据包发送到根节点的方法,与分发协议方向相反 路由环路检测:检测节点是否选择了子孙节点作为父节点 重复抑制:检测并处理网络中重复的包,避免浪费带宽 链路估计:估
11、计单跳的链路质量,图2-7 采用CSMA的MAC协议工作方式,TinyOS CTP协议,TinyOS 2.x中自带的汇聚协议,也是实际应用中最常用的汇聚协议之一 CTP 协议可以分为三个部分:链路估计器,路由引擎和转发引擎,图2-7 采用CSMA的MAC协议工作方式,TinyOS CTP协议,链路估计器主要用于估计节点间的链路质量,以供路由引擎计算路由。 链路质量定义,图2-7 采用CSMA的MAC协议工作方式,TinyOS CTP协议,链路估计值计算,图2-7 采用CSMA的MAC协议工作方式,TinyOS CTP协议,CTP中所用的路由度量,称为路径ETX (Expected number
12、 of Transmissions) ,为父节点到根节点的ETX与本节点与父节点间的单跳ETX 之和 路径 ETX 值计算,图2-7 采用CSMA的MAC协议工作方式,TinyOS CTP协议,路由表是路由引擎的核心数据结构,存储了邻居节点信息,主要是邻居的路径ETX 值。,图2-7 采用CSMA的MAC协议工作方式,TinyOS CTP协议,路由引擎工作流程,图2-7 采用CSMA的MAC协议工作方式,TinyOS CTP协议,转发引擎主要负责以下5 种工作: 向下一跳传递包,在需要时重传,同时根据是否收到ACK 向链路估计器传递相应信息。 决定何时向下一跳传递包。 检测路由中的不一致性,并
13、通知路由引擎。 维护需要传输的包队列,它混杂了本地产生的包和需要转发的包。 检测由于丢失ACK 引起的单跳重复传输。,图2-7 采用CSMA的MAC协议工作方式,TinyOS CTP协议,路由环路:是指某个节点将数据包转发给下一跳,而下一跳节点是它的子孙节点或者它本身,从而造成了数据包在该环路中不断循环传递,,图2-7 采用CSMA的MAC协议工作方式,主要内容,2.1 物理层协议 2.2 MAC层协议 2.3 路由协议 2.4 传输层协议 2.5 6LoWPAN标准 2.6 ZigBee标准,传输层协议,传感网传输层协议主要解决以下3个问题 拥塞控制:如果数据流量超过了转发节点的存储和转发能
14、力,那么就会产生拥塞造成数据包丢失。因此,拥塞控制机制将调整源节点的数据包发送速率以减轻或避免网络拥塞,从而提高可靠性 可靠数据传输:部分应用需要保证数据传输的可靠性,例如二进制代码、重要命令或请求等必须被可靠的传输,不能发生丝毫差错。传感网传输层就负责提供这一部分功能。 复用与解复用:传输层协议需要能够承载多种上层应用,这些应用的数据包可以在同一条通路上传输,因此传输层需要标记每个数据包属于哪个应用,并在数据包到达对端时递交给相应的应用。,图2-7 采用CSMA的MAC协议工作方式,传输层的挑战,端到端的可靠性保证 应用相关 各种应用对可靠性的需求不同 能耗 传感网软硬件设计中最重要的是能量
15、有效性 数据流的方向 受限于路由和编址方式,可靠多段传输协议(RMST),RMST协议是传感网中最早开发的传输层协议 主要目标是提供端到端可靠性 建于定向扩散(directed diffusion)协议的基础上 提供了传输层协议三种功能中的两种 可靠传输 多路复用,可靠多段传输协议(RMST),RMST无缓冲模式,可靠多段传输协议(RMST),RMST缓冲模式,慢存入快取出协议(PSFQ),PSFQ协议提供以下三种功能 存入操作 取出操作 状态报告,慢存入快取出协议(PSFQ),PSFQ的存入操作,慢存入快取出协议(PSFQ),PSFQ的取出操作,慢存入快取出协议(PSFQ),PSFQ的前摄取
16、出操作,拥塞检测和避免协议(CODA),CODA协议的目标是检测和避免拥塞 源节点以较快的速率发送数据,由于多个节点竞争信道,就有可能在源节点附近发生拥塞 单个数据流并不大,但在多个数据流交汇的地方可能临时性地发生拥塞,拥塞检测和避免协议(CODA),基于接收者的拥塞检测 开环逐跳回压信号向源节点报告拥塞 闭环多源调节以避免大规模和长期的拥塞,拥塞检测和避免协议(CODA),拥塞检测和避免协议(CODA),闭环多源调节机制,可靠的事件传输协议(ESRT),ESRT协议与保证端到端可靠性的传统传输层协议不同 保证的是事件到汇聚节点的可靠性 提供可靠的事件检测 不需要中间节点作缓存 同时处理传感网的可靠性和拥塞问题。,可靠的事件传输协议(ESRT),ESRT工作原理,可靠的事件传输协议(ESRT),基于拥塞和可靠性的网络操作区域,主要内容,2.1 物理层协议 2.2 MAC层协议 2.3 路由协议 2.4 传输层协议 2.5 6LoWPAN标准 2.6 ZigBee标准,