1、无线传感器网络简明教程无线传感器网络简明教程(第(第2 2版)版)崔逊学崔逊学 左从菊左从菊 编著编著传感传感探测探测感知感知传感器网络终端节点传感器网络终端节点应用层的基础性技术是支撑传感器网络完成任务的关键:应用层的基础性技术是支撑传感器网络完成任务的关键:时间同步机制时间同步机制定位技术定位技术数据融合数据融合能量管理能量管理安全机制安全机制本章内容本章内容4.1 时间同步机制1 1、传感器网络时间同步的意义、传感器网络时间同步的意义 时间同步机制是分布式时间同步机制是分布式系统基础框架的一个关键机系统基础框架的一个关键机制。制。4.1.1 传感器网络的时间同步机制 在分布式系统中,时间
2、同步涉及在分布式系统中,时间同步涉及“物理时间物理时间”和和“逻辑时间逻辑时间”两个不同的概念。两个不同的概念。4.1.1 传感器网络的时间同步机制“物理时间物理时间”用来表示人类社用来表示人类社会使用的绝对时间;会使用的绝对时间;“逻辑时间逻辑时间”体现了事件发生体现了事件发生的顺序关系,是一个相对概念。的顺序关系,是一个相对概念。1 1、TPSNTPSN协议的操作过程协议的操作过程 TPSN TPSN协议包括两个阶段:协议包括两个阶段:4.1.2 TPSN时间同步协议第一个阶段第一个阶段生成层次结生成层次结构构第二个阶段第二个阶段实现所有实现所有树节点的时间同步树节点的时间同步2 2、相邻
3、级别节点间的同步机制、相邻级别节点间的同步机制 邻近级别的两个节点对间通过交换两个消息实现邻近级别的两个节点对间通过交换两个消息实现时间同步。时间同步。4.1.2 TPSN时间同步协议 边节点边节点S S在在T T1 1时间发送同步请求时间发送同步请求分组给节点分组给节点R R,分组中包含,分组中包含S S的级别的级别和和T T1 1时间。节点时间。节点R R在在T T2 2时间收到分时间收到分组,组,然后在,然后在T T3 3时间时间发送应答分组给节点发送应答分组给节点S S,分组中包含,分组中包含节点节点R R的级别和的级别和T T1 1、T T2 2和和T T3 3信息。信息。节点节点S
4、 S在在T T4 4时间收到应答,时间收到应答,因此可以推导出右面算式:因此可以推导出右面算式:节点节点S S在计算时间偏差之后,将在计算时间偏差之后,将它的时间同步到节点它的时间同步到节点R R。2143()()2TTTT2143()()2TTTTd43()TT d 21()TT d 4.1.2 TPSN时间同步协议 这里介绍一个例子,说明磁阻这里介绍一个例子,说明磁阻传感器网络对机动车辆进行测速,传感器网络对机动车辆进行测速,为了实现这个用途,网络必须先完为了实现这个用途,网络必须先完成时间同步。由于对机动车辆的测成时间同步。由于对机动车辆的测速需要两个探测传感器节点的协同速需要两个探测传
5、感器节点的协同合作,测速算法提取车辆经过每个合作,测速算法提取车辆经过每个节点的磁感应信号的脉冲峰值,并节点的磁感应信号的脉冲峰值,并记录时间。记录时间。如果将两个节点之间的距离如果将两个节点之间的距离d d除除以两个峰值之间的时差以两个峰值之间的时差tt,就可以,就可以得出机动目标通过这一路段的速度得出机动目标通过这一路段的速度(VelVel):):dVelt4.1.3 时间同步的应用示例4.2 定位技术1 1、定位的含义、定位的含义 在传感器网络的很多应用问题中,没有节点在传感器网络的很多应用问题中,没有节点位置信息的监测数据往往位置信息的监测数据往往是没有意义的。是没有意义的。无线传感器
6、网络定位无线传感器网络定位问题的含义是指自组织的问题的含义是指自组织的网络通过特定方法提供节网络通过特定方法提供节点的位置信息。点的位置信息。4.2.1 传感器网络节点定位问题物理位置物理位置指目标在特定指目标在特定坐标系下的位坐标系下的位置数值,表示置数值,表示目标的相对或目标的相对或者绝对位置者绝对位置位置信息位置信息符号位置符号位置指在目标与一个指在目标与一个基站或者多个基基站或者多个基站接近程度的信站接近程度的信息,表示目标与息,表示目标与基站之间的连通基站之间的连通关系,提供目标关系,提供目标大致的所在范围大致的所在范围位置信息的分类位置信息的分类4.2.1 传感器网络节点定位问题2
7、 2、基本术语、基本术语4.2.1 传感器网络节点定位问题非视线非视线关系关系测距测距锚点锚点邻居节邻居节点点连接度连接度到达时到达时间间基础设基础设施施跳数跳数到达角到达角度度视线关视线关系系到达时到达时间差间差接收信接收信号强度号强度指示指示3 3、定位性能的评价指标、定位性能的评价指标4.2.1 传感器网络节点定位问题 4 4、定位系统的设计要点、定位系统的设计要点 在设计定位系统的时候,在设计定位系统的时候,要根据预定的性能指标,在要根据预定的性能指标,在众多方案之中选择能够满足众多方案之中选择能够满足要求的最优算法,采取最适要求的最优算法,采取最适宜的技术手段来完成定位系宜的技术手段
8、来完成定位系统的实现。通常设计一个定位系统需要考虑两个主要统的实现。通常设计一个定位系统需要考虑两个主要因素,即定位机制的物理特性和定位算法。因素,即定位机制的物理特性和定位算法。4.2.1 传感器网络节点定位问题1 1、测距方法、测距方法(1)(1)接收信号强度指示接收信号强度指示(RSSI)(RSSI)/nRTPPr10 lg10lg/TRnrP P10lg10 lgRPAn r ()10 lgRP dBmAn r 4.2.2 基于测距的定位技术0102030405060708090100-100-90-80-70-60-50-40-30-20-100距 离(m)RSSI(dBm)无线信号
9、接收强度指示与信号传播距离之间的关系无线信号接收强度指示与信号传播距离之间的关系(2)(2)到达时间到达时间/到达时间差到达时间差(ToA/TDoA(ToA/TDoA)ToAToA测距原理的过程示例测距原理的过程示例4.2.2 基于测距的定位技术(3)(3)到达角到达角(AoA)(AoA)4.2.2 基于测距的定位技术ToA ToA 测距原理的过程示例测距原理的过程示例假设已知信标锚点假设已知信标锚点A A1 1,A A2 2,A A3 3,A A4 4,的坐标依次分别为(的坐标依次分别为(x x1 1,y y1 1),),(x x2 2,y y2 2),(),(x x3 3,y y3 3),
10、(),(x x4 4,y y4 4),),即各锚点位置为,即各锚点位置为 。如果。如果待定位节点的坐标为(待定位节点的坐标为(x,yx,y),并且已知它至各锚点的测距数值为),并且已知它至各锚点的测距数值为 ,可得如下图,其中可得如下图,其中(x(x,y)y)为待求的未知坐标为待求的未知坐标。222111222()()()()nnnxxyydxxyyd4.2.2 基于测距的定位技术2 2、多边定位、多边定位将第前将第前n-1n-1个等式减去最后等式:个等式减去最后等式:22222211111222222111112()2()2()2()nnnnnnnnnnnnnnnxxxx x yyyy y
11、ddxxxx x yyyy y dd用矩阵和向量表达为形式用矩阵和向量表达为形式Ax=bAx=b,其中:,其中:11112()2().2()2()nnnnnnxxyyxxyyA222222111222222111.nnnnnnnnnxxyyddxxyyddb4.2.2 基于测距的定位技术 根据最小均方估计(根据最小均方估计(Minimum Mean Square Error,Minimum Mean Square Error,MMSEMMSE)的方法原理,可以求得解为:)的方法原理,可以求得解为:,当矩阵求逆不能计算时,这种方法不适用,否则可成功当矩阵求逆不能计算时,这种方法不适用,否则可成功
12、得到位置估计得到位置估计 。从上述过程可以看出,这种定位方。从上述过程可以看出,这种定位方法本质上就是最小二乘估计。法本质上就是最小二乘估计。1()TTxA AA b x4.2.2 基于测距的定位技术 多边定位法的浮点运算量大,计算代价高。多边定位法的浮点运算量大,计算代价高。Min-maxMin-max定位是根据若干锚点位置和至待求节点的测距值,创建定位是根据若干锚点位置和至待求节点的测距值,创建多个边界框,所有边界框的交集为一矩形,取此矩形的多个边界框,所有边界框的交集为一矩形,取此矩形的质心作为待定位节点的坐标。质心作为待定位节点的坐标。采用三个锚点进行定位的采用三个锚点进行定位的Min
13、maxMinmax方法示例,即以方法示例,即以某锚点某锚点i i(i=1,2,3)(i=1,2,3)坐标坐标()()为基础,加上或减为基础,加上或减去测距值去测距值 ,得到锚点,得到锚点i i的边界框:的边界框:,iix yid-,-,iiiiiiiix d y dx d y d4.2.2 基于测距的定位技术3 3、Min-maxMin-max定位方法定位方法 在所有位置点在所有位置点 中取最小值、所有中取最小值、所有 中取最大值,则交集矩形取作:中取最大值,则交集矩形取作:三个锚点共同形成交叉矩形,矩形质心即为所求节点的估计位置。三个锚点共同形成交叉矩形,矩形质心即为所求节点的估计位置。,i
14、iiixdyd,iiiixdydmax(),max()min(),min()iiiiiiiixdydxdyd锚点1锚点2锚点3估计位置(矩形中心)真实位置4.2.2 基于测距的定位技术 无需测距的定位技术不需要直接测量距离和角度信息。无需测距的定位技术不需要直接测量距离和角度信息。1 1、质心算法、质心算法 在计算几何学里多边形的几何中心称为质心,多边形顶点坐标在计算几何学里多边形的几何中心称为质心,多边形顶点坐标的平均值就是质心节点的坐标。的平均值就是质心节点的坐标。假设多边形定点位置的坐标向量表示为假设多边形定点位置的坐标向量表示为 p pi i=(x=(xi i,y yi i)T T,则
15、这个,则这个多边形的质心坐标多边形的质心坐标 为:为:,xy1111,(,)nniiiixyXYnn4.2.3 无需测距的定位技术2 2、DV-HopDV-Hop算法算法 DV-Hop DV-Hop算法解决了低锚点密度引发算法解决了低锚点密度引发的问题,它根据距离矢量路由协议的的问题,它根据距离矢量路由协议的原理在全网范围内广播跳数和位置。原理在全网范围内广播跳数和位置。4.2.3 无需测距的定位技术 位置信息有很多用途,在某些应用中可以起到关键性的位置信息有很多用途,在某些应用中可以起到关键性的作用。定位技术的用途大体可分为导航、跟踪、虚拟现实、作用。定位技术的用途大体可分为导航、跟踪、虚拟
16、现实、网络路由等。网络路由等。4.2.4 定位系统的典型应用4.3 数据融合 我们将各种传感器直接给出的信息称作源信息,如我们将各种传感器直接给出的信息称作源信息,如果传感器给出的信息是已经数字化的信息,就称作源数果传感器给出的信息是已经数字化的信息,就称作源数据,如果给出的是图像就是源图像。源信息是信息系统据,如果给出的是图像就是源图像。源信息是信息系统处理的对象。处理的对象。源信息、传感器与环境之间的关系:源信息、传感器与环境之间的关系:目 标杂 波干 扰噪 声环 境输 入传 感 器 源 信 息输 出源 数 据源 图 像源 波 形4.3.1 多传感器数据融合概述数据融合的定义数据融合的定义
17、:4.3.1 多传感器数据融合概述数据融合是多信源、数据融合是多信源、多层次的处理过程,多层次的处理过程,每个层次代表信息的每个层次代表信息的不同抽象程度不同抽象程度数据融合过程包数据融合过程包括数据的检测、括数据的检测、关联、估计与合关联、估计与合并并数据融合的输出包括数据融合的输出包括低层次上的状态身份低层次上的状态身份估计和高层次上的总估计和高层次上的总战术态势的评估战术态势的评估多传感器的多传感器的目标探测目标探测数据关联数据关联跟踪与识别跟踪与识别情况评估和情况评估和预测预测4.3.1 多传感器数据融合概述数据融合的内容数据融合的内容:数据融合的主要作用可归纳为以下几点:数据融合的主
18、要作用可归纳为以下几点:(1)(1)提高信息的准确性和全面性。提高信息的准确性和全面性。(2)(2)降低信息的不确定性。降低信息的不确定性。(3)(3)提高系统的可靠性。提高系统的可靠性。(4)(4)增加系统的实时性。增加系统的实时性。由于传感器网络节点的资源十分有限,在收集信息的过由于传感器网络节点的资源十分有限,在收集信息的过程中,如果各个节点单独地直接传送数据到汇聚节点,则程中,如果各个节点单独地直接传送数据到汇聚节点,则是不合适的,主要原因如下:是不合适的,主要原因如下:(1)(1)浪费通信带宽和能量。浪费通信带宽和能量。(2)(2)降低信息收集的效率。降低信息收集的效率。4.3.2
19、传感器网络中数据融合的作用数据的信息含量进行分类数据的信息含量进行分类与应用层数据语义的关系进行分类与应用层数据语义的关系进行分类操作的级别进行分类操作的级别进行分类数据融合数据融合技术技术4.3.3 数据融合技术的分类(1)(1)综合平均法综合平均法(2)(2)卡尔曼滤波法卡尔曼滤波法(3)(3)贝叶斯估计法贝叶斯估计法(4)D-S(4)D-S证据推理法证据推理法(5)(5)统计决策理论统计决策理论(6)(6)模糊逻辑法模糊逻辑法(7)(7)产生式规则法产生式规则法(8)(8)神经网络方法神经网络方法4.3.4 数据融合的主要方法根据类根据类SQLSQL语言进行网内处理的示例语言进行网内处理
20、的示例(604,24)604(604,24)(604,23)(602,22)(602,23)602(603,27)603(603,26)(601,26)(601,25)11(601,24)7:GroupMax Temp60126603278:GroupMax Temp60126603269:GroupMax Temp601266014.3.5 传感器网络应用层的数据融合示例4.4 能量管理 传感器节点通常由四个部分组成:传感器节点通常由四个部分组成:处理器单元、无线传输单元、处理器单元、无线传输单元、传感器单元和电源管理单元传感器单元和电源管理单元。其中传感器单元能耗与应用特征相关,。其中传感
21、器单元能耗与应用特征相关,采样周期越短、采样精度越高,则传感器单元的能耗越大。采样周期越短、采样精度越高,则传感器单元的能耗越大。由于传感器单元的能耗要比处理器单元和无线传输单元的能耗由于传感器单元的能耗要比处理器单元和无线传输单元的能耗低得多,几乎可以忽略,因此通常只讨论处理器单元和无线传输单低得多,几乎可以忽略,因此通常只讨论处理器单元和无线传输单元的能耗问题。元的能耗问题。电 源 管 理 单 元传 感 器 单 元处 理 器 单 元无 线 传 输 单 元 4.4.1 能量管理的意义1 1、休眠机制、休眠机制 休眠机制的主要思想是,当节点周围没有感兴趣休眠机制的主要思想是,当节点周围没有感兴
22、趣的事件发生时,计算与通信单元处于空闲状态,把这的事件发生时,计算与通信单元处于空闲状态,把这些组件关掉或调到更低能耗的状态,即休眠状态。些组件关掉或调到更低能耗的状态,即休眠状态。4.4.2 传感器网络的电源节能方法2 2、数据融合、数据融合 数据融合的节能效果主要体现在路由协议的实现数据融合的节能效果主要体现在路由协议的实现上。路由过程的中间节点只转发有用的信息。数据融上。路由过程的中间节点只转发有用的信息。数据融合有效地降低了整个网络的数据流量。合有效地降低了整个网络的数据流量。4.5 安全机制4.5.1 传感器网络的安全问题 网络安全一网络安全一直是网络技术的直是网络技术的重要组成部分
23、,重要组成部分,加密、认证、防加密、认证、防火墙、入侵检测火墙、入侵检测、物理隔离等、物理隔离等都都是网络安全保障是网络安全保障的主要手段。的主要手段。1 1、通信安全需求、通信安全需求4.5.1 传感器网络的安全问题被动抵御入侵的能力被动抵御入侵的能力主动反击入侵的能力主动反击入侵的能力节点的安全保证节点的安全保证2 2、信息安全需求、信息安全需求 信息安全就是要保信息安全就是要保证网络中传输信息的证网络中传输信息的安全性。对于无线传安全性。对于无线传感器网络而言,具体感器网络而言,具体的信息安全需求内容的信息安全需求内容包括:包括:4.5.1 传感器网络的安全问题 数数据的机据的机密性密性
24、。保证保证网络内传输的信息不网络内传输的信息不被非法窃听。被非法窃听。数据数据鉴别鉴别 保证用户收到的信息来自保证用户收到的信息来自己方节点而非入侵节点。己方节点而非入侵节点。数据数据的完整的完整性性 保证数据在传输过程中没保证数据在传输过程中没有被恶意篡改。有被恶意篡改。数据数据的实效的实效性性 保证数据在时效范围内被保证数据在时效范围内被传输给用户。传输给用户。传感器网络的安全问题和一般网络的安全问题相比而传感器网络的安全问题和一般网络的安全问题相比而言,它们的言,它们的 出发点是相同的,都需要解决如下问题:出发点是相同的,都需要解决如下问题:4.5.1 传感器网络的安全问题 传感器网络安
25、全问题的解决方法与传统网络安全问题传感器网络安全问题的解决方法与传统网络安全问题不同,主要原因如下:不同,主要原因如下:4.5.1 传感器网络的安全问题 (1)(1)有限的存储空间和计算能力有限的存储空间和计算能力 (2)(2)缺乏后期节点布置的先验知识缺乏后期节点布置的先验知识 (3)(3)布置区域的物理安全无法保证布置区域的物理安全无法保证 (4)(4)有限的带宽和通信能量有限的带宽和通信能量 (5)(5)侧重整个网络的安全侧重整个网络的安全 (6)(6)应用相关性应用相关性1 1、物理层、物理层 物理层面临的主要问题是无线通信的干扰和节点物理层面临的主要问题是无线通信的干扰和节点的沦陷,
26、遭受的主要攻击包括拥塞攻击和物理破坏。的沦陷,遭受的主要攻击包括拥塞攻击和物理破坏。4.5.2 传感器网络的安全设计分析物理层物理层拥塞拥塞攻击攻击物理物理破坏破坏完善物理损完善物理损害感知机制害感知机制信息加密信息加密2 2、链路层、链路层4.5.2 传感器网络的安全设计分析3 3、网络层、网络层4.5.2 传感器网络的安全设计分析 这种攻击通常需要两个这种攻击通常需要两个恶意节点相互串通,合谋进恶意节点相互串通,合谋进行攻击。在通常情况下一个行攻击。在通常情况下一个恶意节点位于恶意节点位于sink(sink(即簇头节即簇头节点点)附近,另一个恶意节点离附近,另一个恶意节点离sinksink
27、较远。较远的那个节点较远。较远的那个节点声称自己和声称自己和sinksink附近的节点附近的节点可以建立低时延和高带宽的可以建立低时延和高带宽的链路,从而吸引周围节点将链路,从而吸引周围节点将数据包发给它。在这种情况数据包发给它。在这种情况下,远离下,远离sinksink的那个恶意节的那个恶意节点其实也是一个点其实也是一个SinkholeSinkhole。AAA攻击者Sink节点传感器节点无线低功率链路低时延、高带宽链路WormholeWormhole攻击示意攻击示意4.5.2 传感器网络的安全设计分析4 4、传输层、传输层 由于传感器网络节点的内部资源条件限制,节点无法保存由于传感器网络节点
28、的内部资源条件限制,节点无法保存维持端到端连接的大量信息,而且节点发送应答消息会消耗大维持端到端连接的大量信息,而且节点发送应答消息会消耗大量能量,因此目前关于传感器节点的传输层协议的安全性技术量能量,因此目前关于传感器节点的传输层协议的安全性技术并不多见。并不多见。4.5.2 传感器网络的安全设计分析5 5、应用层、应用层 在应用层,密钥管理和安全组播为整个传感器网络的安在应用层,密钥管理和安全组播为整个传感器网络的安全机制提供了安全基础设施,它主要集中在为整个传感器网全机制提供了安全基础设施,它主要集中在为整个传感器网络提供安全支持,也就是密钥管理和安全组播的设计技术。络提供安全支持,也就
29、是密钥管理和安全组播的设计技术。SPINS SPINS安全协议族是最早的无线传感器网络的安全框安全协议族是最早的无线传感器网络的安全框架之一,包含了架之一,包含了SNEP(Secure Network Encryption SNEP(Secure Network Encryption Protocol)Protocol)和和TESLA(micro Timed Efficient TESLA(micro Timed Efficient Streaming Loss-tolerant authentication Protoco1)Streaming Loss-tolerant authentic
30、ation Protoco1)两个安全协议。两个安全协议。4.5.3 传感器网络安全框架协议:SPINSTESLA协议单向密匙链的示例协议单向密匙链的示例P1P2P3P4P5P6P7K0K1K2K3K4TFFFF4.5.4 SPINS协议的实现问题与系统性能 随机数 计数器37a82def 00000000RC5分组加密算法密匙明文/密文密文/明文 随机数 计数器37a82def 00000001RC5分组加密算法密匙明文/密文密文/明文1、加密算法的选择加密算法的选择RC5-CTR算法的加解密过程算法的加解密过程1EE2E3H1H2H34.5.4 SPINS协议的实现问题与系统性能2、消息认证算法的选择消息认证算法的选择CBC-MAC认证算法的实现过程认证算法的实现过程 协议协议 算法算法 协议代码量协议代码量(B)内存内存占用占用(B)运行指令运行指令数数(指令数指令数/包)包)加密协议加密协议 RC5-CTR392 80 120508802 认证协议认证协议 RC5-CBC-MAC480 20 6005961210 广播认证密钥广播认证密钥建立协议建立协议 RC5-CBC-MAC622 120 80006226864.5.4 SPINS协议的实现问题与系统性能模型算法和性能评估结果