1. 基础知识
- 无线传感器网络(WSN,Wireless Sensor Network)
- 具有无线射频(RF,Radio Freqency)通信能力的微型传感器组成的网络
- 依赖三项技术的实现
- 微机电系统(MEMS),压缩体积
- 数字电子技术,提供算力
- 无线射频(RF),多跳传递
1.1 硬件组成
- 仅列出了重要的部分
- 可能还有其他组成部分,全球定位系统接收器嵌入,太阳能电池板嵌入等
1.2 具备特征
- 体积小
- 成本低
- 能耗小
- 也常被成为“智能尘埃”(mote)
1.3 存在限制
- 与移动自组织网络的区别
- 无线传感器网络的节点数目高几个数量级,可以进行稠密部署
- 低成本的设计目标,无线传感器网络节点易于失效,但移动自组织网络(如手提电脑)具有更强大的算力
- 大多数的无线传感器网络应用不需要具有移动性,移动自组织网络有高移动性
- 无线传感器网络节点在能量(电池)、算力(CPU主频)、内存(小于100KB)方面严重受限
- 两者的相同点
- 节点间无线通信距离的限制,必须采用逐跳通信机制
- 从能量消耗角度,多跳通信方法好于单挑方法
- 信号的能级会随着距离的增加快速衰减
- RSS为接收器中信号接收强度,d表示发送器与接收器距离,α表示路径损耗比,一般是2~5
- 路径损耗比与地形和天气有关
- 在无线传感器网络中,首要关心的是能耗问题
**
- 无线传感器网络的设计受限和资源受限
- 资源受限:各个传感器电源供应严重受限,无线通信距离短,网络带宽低,CPU处理能力低,存储容量小
- 设计受限:环境障碍物,环境条件和应用需求
1.4 协议挑战
- 开放系统互联(OSI,Open System Interconnection)标准
无需会话层和表示层,下五层就能实现感知数据的成功采集
应用层
- 接收者将数据在屏幕上显示
- 定义了传感器数据的显示格式,并管理传感器数据库
- 如果需要显示在互联网页面上,应用层需要兼容互联网应用层协议(如HTTP)
- 传输层
- 典型协议TCP
- 实现端到端(E2E)可靠数据传输
- 减少网络拥塞,报文重传(packet retransmission)和超时检验(time-out check)
- 控制数据速率减少拥塞
- 因其开销较大,不适用于传感器网络,将使用其他协议
- 路由层
- 多个传感器逐跳数据转发
- 寻找最优传输路径(低能耗、低延迟、或其他优势)
- 维护路由应对随时可能发生变化的情况(某个传感器电池耗尽)
- 数据链路层
- 相邻节点通信问题处理
- 有时也被称为介质访问控制层(MAC,Medium Access Control Layer)
- 实际上MAC仅处理距离为1跳的相邻节点的无线介质共享问题,仅是数据链路层的一部分
- 数据链路层还要负责执行差错检测、数据成帧和其他任务
物理层
- 通过编码/调制和其他无线通信模块将有用的数据转换为无线信号
- 物理层仅能看到‘信号’(如代表电压水平的01)
一般情况下传感器并不运行应用层协议
- 正确显示数据是服务器的任务
- 发送者和接收者之间的转发数据的传感器也不应该运行传输层协议
- 传输层仅存在于两端(发送节点和接收节点)
- 无线传感器网络网络协议栈
2. 介质访问控制层
- 要点是无线传感器网络的MAC机制应该是能量高效和无冲突的
- 并且具有低复杂度调度控制和低内存需求
-
2.1 竞争
MAC协议是在一个共享的无线信道上协调信号传输
- 一组传感器使用同一个无线信号通信,任何时候只能有一对用户使用该频率相互发送数据
- 必须由MAC层调度和规划
MAC协议决定无线信道占用的时间长短和其他事务
最常用的信道共享解决方案是基于竞争的机制
MAC协议中,在给定时间帧内不发送或接收任何数据包的传感器将会睡眠以节省能量
-
3. 路由问题
-
3.1 区别
传统路由机制,互联网协议(IP,Internet Protocol)不完全适用于无线传感器网络
以一种自组织(随机)的方式部署无线传感器网络
- 相应的路由协议是从发现邻居传感器开始的
- 传感器发出多轮HELLO消息并建立本地邻居表(neighbor table)
邻居表包含以下内容
无线通信具备不可靠性
- 使用丢包率(packet drop rate)和信号接收强度(received signal strength)指标衡量
无线传感器网络的不稳定原因之一是网络链路通常是非对称的
传统协议中是通过传输层实现数据传输的可靠性(计时器机制)
- 但在无线传感器网络中端到端的重传不适用,最好是在每跳之间重传而不是等待目的传感器反馈后再重传
-
4.2 唤醒/睡眠调度时间表
睡眠模式的挑战,基于实际数据传输时间状况,如何确定一组相邻传感器的唤醒/睡眠调度时间表
4.3 单播/组播/选播/广播语义
单播(unicast)
- 传感器消息中包含一个特定的目标地址(传感器ID)
- 组播(multicast)
- 指定将消息发送给少数几个传感器
- 选播(anycast)
- 指定一个事件区域,向该区域的任何节点都发送消息
广播
节点定位(node localization):无线传感器网络中往往需要确定传感器的精确位置。如果检测到事件的发生,需要知道传感器的精确位置
信标节点(beacon node):利用信标(位置已知的节点),找到其他节点的位置
如果为每一个传感器节点配备GPS,会大大提高成本,一般不采用
分为两种定位方案
无线传感器网络中每个传感器都应在相同的时间控制方案下进行工作
- 微型传感器内部的事中控制硬件/软件经常会发生时钟偏移,因此,有必要定期对时钟读数同步