无线传感网络算法
1. 无线传感器网络路由协议有哪些基本分类简述spin路由算法特点
(1)能量优先
传统路由协议在选择最优路径时,很少考虑节点的能量消耗问题。而无线传感器网络中节点的能量有限,延长整个网络的生存期成为传感器网络路由协议设计的重要目标,因此需要考虑节点的能量消耗以及网络能量均衡使用的问题。
(2)基于局部拓扑信息
无线传感器网络为了节省通信能量,通常采用多跳的通信模式,而节点有限的存储资源和计算资源,使得节点不能存储大量的路由信息,不能进行太复杂的路由计算。在节点只能获取局部拓扑信息和资源有限的情况下,如何实现简单高效的路由机制是无线传感器网络的一个基本问题。
(3)以数据为中心
传统的路由协议通常以地址作为节点的标识和路由的依据,而无线传感器网络中大量节点随机部署,所关注的是监测区域的感知数据,而不是具体哪个节点获取的信息,不依赖于全网唯一的标识。传感器网络通常包含多个传感器节点到少数汇聚节点的数据流,按照对感知数据的需求、数据通信模式和流向等,以数据为中心形成消息的转发路径。
(4)应用相关
传感器网络的应用环境千差万别,数据通信模式不同,没有一个路由机制适合所有的应用,这是传感器网络应用相关性的一个体现。设计者需要针对每一个具体应用的需求,设计与之适应的特定路由机制。
针对传感器网络路由机制的上述特点,在根据具体应用设计路由机制时,传感器网络需满足一定的路由机制。
2. 在无线传感器网络中,如何根据接收信号的强度来判断发送者的距离有具体的计算公式么
基于RSSI的定位
RSSI测量,一般利用信号传播的经验模型与理论模型。
对于经验模型,在实际定位前,先选取若干测试点,记录在这些点各基站收到的信号强度,建立各个点上的位置和信号强度关系的离线数据库(x,y,ss1,ss2,ss3)。在实际定位时,根据测得的信号强度(ss1′,ss2′,ss3′)和数据库中记录的信号强度进行比较,信号强度均方差最小的那个点的坐标作为节点的坐标。
对于理论模型,常采用无线电传播路径损耗模型进行分析。常用的传播路径损耗模型有:自由空间传播模型、对数距离路径损耗模型、哈它模型、对数一常态分布模型等。自由空间无线电传播路径损耗模型为:
式中,d为距信源的距离,单位为km;f为频率,单位为MHz;k为路径衰减因子。其他的模型模拟现实环境,但与现实环境还是有一定的差距。比如对数一常态分布模型,其路径损耗的计算公式为:
式中,Xσ是平均值为O的高斯分布随机变数,其标准差范围为4~10;k的范围在2~5之间。取d=1,代入式(1)可得,LOSS,即PL(d0)的值。此时各未知节点接收锚节点信号时的信号强度为:
RSSI=发射功率+天线增益一路径损耗(PL(d))
2.2 基于RSSI的三角形质心定位算法的数学模型
不论哪种模型,计算出的接收信号强度总与实际情况下有误差,因为实际环境的复杂性,换算出的锚节点到未知节点的距离d总是大于实际两节点间的距离。如图1所示,锚节点A,B,C,未知节点D,根据RSSI模型计算出的节点A和D的距离为rA;节点B和D的距离为rB;节点C和D的距离为rC。分别以A,B,C为圆心;rA,rB,rC为半径画圆,可得交叠区域。这里的三角形质心定位算法的基本思想是:计算三圆交叠区域的3个特征点的坐标,以这三个点为三角形的顶点,未知点即为三角形质心,如图2所示,特征点为E,F,G,特征点E点的计算方法为:
同理,可计算出F,G,此时未知点的坐标为由仿真得,在图2中,实际点为D;三角形质心算法出的估计点为M;三边测量法算出的估计点为N。可知,三角形质心算法的准确度更高。
3 基于RSSI的三角形质心算法过程
3.1 步骤
(1)锚节点周期性向周围广播信息,信息中包括自身节点ID及坐标。普通节点收到该信息后,对同一锚节点的RSSI取均值。
(2)当普通节点收集到一定数量的锚节点信息时,不再接收新信息。普通节点根据RSSI从强到弱对锚节点排序,并建立RSSI值与节点到锚节点距离的映射。建立3个集合。
锚节点集合:
(3)选取RSSI值大的前几个锚节点进行自身定位计算。
在B_set:中优先选择RSSI值大的信标节点组合成下面的锚节点集合,这是提高定位精度的关键。
对锚节点集合,依次根据(3)式算出3个交点的坐标,最后由质心算法,得出未知节点坐标。
(4)对求出的未知节点坐标集合取平均,得未知节点坐标。
3.2 误差定义
定义定位误差为ER,假设得到的未知节点的坐标为(xm,ym),其真实位置为(x,y),则定位误差ER为:
4 仿 真
利用Matlab仿真工具模拟三角形质心算法,考察该算法的性能。假设在100 m×100 m的正方形区域内,36个锚节点均匀分布,未知节点70个,分别用三边测量法和三角形质心定位算法进行仿真,仿真结果如图3所示。由图3可知,三角形质心算法比三边测量法,定位精度更高,当测距误差变大时,用三角形质心算法得出的平均定位误差比用三边测量法得出的小得多。
5 结 语
在此提出了将RSSI方法和三角形质心定位算法相结合的方法,通过仿真实验,将该算法和三边测量算法相比较,证明了该算法的优越性。下一步将研究在锚节点数量不同时的平均定位误差。
3. 有关无线传感器网络中时间同步机制有哪些方法和策略
1 时间同步技术的重要性
传感器节点的时钟并不完美,会在时间上发生漂移,所以观察到的时间对于网络中的节点来说是不同的。但很多网络协议的应用,都需要一个共同的时间以使得网路中的节点全部或部分在瞬间是同步的。
第一,传感器节点需要彼此之间并行操作和协作去完成复杂的传感任务。如果在收集信息过程中,传感器节点缺乏统一的时间戳(即没有同步),估计将是不准确的。
第二,许多节能方案是利用时间同步来实现的。例如,传感器可以在适当的时候休眠(通过关闭传感器和收发器进入节能模式),在需要的时候再唤醒。在应用这种节能模式的时候,节点应该在同等的时间休眠和唤醒,也就是说当数据到来时,节点的接收器可以接收,这个需要传感器节点间精确的定时。
2 时间同步技术所关注的主要性能参数
时间同步技术的根本目的是为网络中节点的本地时钟提供共同的时间戳。对无线传感器
网络WSN(Wireless Sensor Networks)[1]
的时间同步应主要应考虑以下几个方面的问题:
(1)能量效率。同步的时间越长,消耗的能量越多,效率就越低。设计WSN的时间同步算法需以考虑传感器节点有效的能量资源为前提。
(2) 可扩展性和健壮性。时间同步机制应该支持网络中节点的数目或者密度的有效扩展,并保障一旦有节点失效时,余下网络有效且功能健全。
(3)精确度。针对不同的应用和目的,精确度的需求有所不用。
(4)同步期限。节点需要保持时间同步的时间长度可以是瞬时的,也可以和网络的寿命一样长。
(5)有效同步范围。可以给网络内所有节点提供时间,也可以给局部区域的节点提供时间。
(6)成本和尺寸。同步可能需要特定的硬件,另外,体积的大小也影响同步机制的实现。 (7)最大误差。一组传感器节点之间的最大时间差,或相对外部标准时间的最大差。 3 现有主要时间同步方法研究
时间同步技术是研究WSN的重要问题,许多具体应用都需要传感器节点本地时钟的同步,要求各种程度的同步精度。WSN具有自组织性、多跳性、动态拓扑性和资源受限性,尤其是节点的能量资源、计算能力、通信带宽、存储容量有限等特点,使时间同步方案有其特
殊的需求,也使得传统的时间同步算法不适合于这些网络[2]
。因此越来越多的研究集中在设
计适合WSN的时间同步算法[3]
。针对WSN,目前已经从不同角度提出了许多新的时间同步算法[4]
。
3.1 成对(pair-wise)同步的双向同步模式
代表算法是传感器网络时间同步协议TPSN(Timing-Sync Protocol for Sensor
Networks)[5~6]
。目的是提供WSN整个网络范围内节点间的时间同步。
该算法分两步:分级和同步。第一步的目的是建立分级的拓扑网络,每个节点有个级别。只有一个节点与外界通信获取外界时间,将其定为零级,叫做根节点,作为整个网络系统的时间源。在第二步,每个i级节点与i-1(上一级)级节点同步,最终所有的节点都与根节点同步,从而达到整个网络的时间同步。详细的时间同步过程如图 1 所示。
图1 TPSN 同步过程
设R为上层节点,S为下层节点,传播时间为d,两节点的时间偏差为θ。同步过程由节点R广播开始同步信息,节点S接收到信息以后,就开始准备时间同步过程。在T1时刻,节点S发送同步信息包,包含信息(T1),节点R在T2接收到同步信息,并记录下接收时间T2,这里满足关系:21TTd
节点R在T3时刻发送回复信息包,包含信息(T1,T2,T3)。在T4时刻S接收到同步信息包,满足关系:43TTd
最后,节点S利用上述2个时间表达式可计算出的值:(21)(43)2
TTTT
TPSN由于采用了在MAC层给同步包标记时间戳的方式,降低了发送端的不确定性,消除了访问时间带来的时间同步误差,使得同步效果更加有效。并且,TPSN算法对任意节点的同步误差取决于它距离根节点的跳数,而与网络中节点总数无关,使TPSN同步精度不会随节点数目增加而降级,从而使TPSN具有较好的扩展性。TPSN算法的缺点是一旦根节点失效,就要重新选择根节点,并重新进行分级和同步阶段的处理,增加了计算和能量开销,并随着跳数的增加,同步误差呈线性增长,准确性较低。另外,TPSN算法没有对时钟的频差进行估计,这使得它需要频繁同步,完成一次同步能量消耗较大。
3.2 接收方-接收方(Receiver-Receiver)模式
代表算法是参考广播时间同步协议RBS(Reference Broadcast Synchronization)[7]
。RBS是典型的基于接收方-接收方的同步算法,是Elson等人以“第三节点”实现同步的思想而提出的。该算法中,利用无线数据链路层的广播信道特性,基本思想为:节点(作为发
送者)通过物理层广播周期性地向其邻居节点(作为接收者)发送信标消息[10]
,邻居节点记录下广播信标达到的时间,并把这个时间作为参考点与时钟的读数相比较。为了计算时钟偏移,要交换对等邻居节点间的时间戳,确定它们之间的时间偏移量,然后其中一个根据接收
到的时间差值来修改其本地的时间,从而实现时间同步[11]
。
假如该算法在网络中有n个接收节点m个参考广播包,则任意一个节点接收到m个参考包后,会拿这些参考包到达的时间与其它n-1个接收节点接收到的参考包到达的时间进行比较,然后进行信息交换。图2为RBS算法的关键路径示意图。
网络接口卡
关键路径
接收者1
发送者
接收者2
图2 RBS算法的关键路径示意图
其计算公式如下:
,,1
1,:[,]()m
jkikkinjnoffsetijTTm
其中n表示接收者的数量,m表示参考包的数量,,rbT表示接收节点r接收到参考包b时的时钟。
此算法并不是同步发送者和接收者,而是使接收者彼此同步,有效避免了发送访问时间对同步的影响,将发送方延迟的不确定性从关键路径中排除,误差的来源主要是传输时间和接收时间的不确定性,从而获得了比利用节点间双向信息交换实现同步的方法更高的精确度。这种方法的最大弊端是信息的交换次数太多,发送节点和接收节点之间、接收节点彼此之间,都要经过消息交换后才能达到同步。计算复杂度较高,网络流量开销和能耗太大,不适合能量供应有限的场合。
3.3 发送方-接收方(Sender-Receiver)模式
基于发送方-接收方机制的时间同步算法的基本原理是:发送节点发送包含本地时间戳的时间同步消息,接收节点记录本地接收时间,并将其与同步消息中的时间戳进行比较,调整本地时钟。基于这种方法提出的时间同步算法有以下两种。
3.3.1 FTSP 算法[8]
泛洪时间同步协议FTSP(Flooding Time Synchronization Protocol)由Vanderbilt大学Branislav Kusy等提出,目标是实现整个网络的时间同步且误差控制在微秒级。该算法用单个广播消息实现发送节点与接收节点之间的时间同步。
其特点为:(1)通过对收发过程的分析,把时延细分为发送中断处理时延、编码时延、传播时延、解码时延、字节对齐时延、接收中断处理时延,进一步降低时延的不确定度;(2)通过发射多个信令包,使得接收节点可以利用最小方差线性拟合技术估算自己和发送节点的频率差和初相位差;(3)设计一套根节点选举机制,针对节点失效、新节点加入、拓扑变化
等情况进行优化,适合于恶劣环境[12]
。
FTSP算法对时钟漂移进行了线性回归分析。此算法考虑到在特定时间范围内节点时钟晶振频率是稳定的,因此节点间时钟偏移量与时间成线性关系,通过发送节点周期性广播时间同步消息,接收节点取得多个数据对,构造最佳拟合直线,通过回归直线,在误差允许的时间间隔内,节点可直接通过它来计算某一时间节点间的时钟偏移量而不必发送时间同步消息进行计算,从而减少了消息的发送次数并降低了系统能量开销。
FTSP结合TPSN和RBS的优点,不仅排除了发送方延迟的影响,而且对报文传输中接收方的不确定延迟(如中断处理时间、字节对齐时间、硬件编解码时间等)做了有效的估计。多跳的FTSP协议采用层次结构,根节点为同步源,可以适应大量传感器节点,对网络拓扑结构的变化和根节点的失效有健壮性,精确度较好。该算法通过采用MAC层时间戳和线性回归偏差补偿弥补相关的错误源,通过对一个数据包打多个时戳,进而取平均和滤除抖动较大的时戳,大大降低了中断和解码时间的影响。FTSP 采用洪泛的方式向远方节点传递时间基准节点的时间信息,洪泛的时间信息可由中转节点生成,因此误差累积不可避免。另外,FTSP的功耗和带宽的开销巨大。
3.3.2 DMTS 算法[9]
延迟测量时间同步DMTS (delay measurement time synchronization) 算法的同步机制是基于发送方-接收方的同步机制。DMTS 算法的实现策略是牺牲部分时间同步精度换取较低的计算复杂度和能耗,是一种能量消耗轻的时间同步算法。
DMTS算法的基本原理为:选择一个节点作为时间主节点广播同步时间,所有接收节点通过精确地测量从发送节点到接收节点的单向时间广播消息的延迟并结合发送节点时间戳,计算出时间调整值,接收节点设置它的时间为接收到消息携带的时间加上广播消息的传输延迟,调整自己的逻辑时钟值以和基准点达成同步,这样所有得到广播消息的节点都与主节点进行时间同步。发送节点和接收节点的时间延迟dt可由21()dtnttt得出。其中,nt为发送前导码和起始字符所需的时间,n为发送的信息位个数,t为发送一位所需时间;1t为接收节点在消息到达时的本地时间;2t为接收节点在调整自己的时钟之前的那一时刻记录的本地时间,21()tt是接收处理延迟。
DMTS 算法的优点是结合链路层打时间戳和时延估计等技术,消除了发送时延和访问时延的影响,算法简单,通信开销小。但DMTS算法没有估计时钟的频率偏差,时钟保持同步的时间较短,没有对位偏移产生的时间延迟进行估计,也没有消除时钟计时精度对同步精度的影响,因此其同步精度比FTSP略有下降,不适用于定位等要求高精度同步的应用。
基于发送方-接收方单向同步机制的算法在上述三类方法中需要发送的时间同步消息数目最少。发送节点只要发送一次同步消息,因而具有较低的网络流量开销和复杂度,减少了系统能耗。
4 结论
文章介绍了WSN时间同步算法的类型以及各自具有代表性的算法,分析了各算法的设计原理和优缺点。这些协议解决了WSN中时间同步所遇到的主要问题,但对于大型网络,已有的方法或多或少存在着一些问题:扩展性差、稳定性不高、收敛速度变慢、网络通信冲突、能耗增大。今后的研究热点将集中在节能和时间同步的安全性方面。这将对算法的容错性、有效范围和可扩展性提出更高的要求。
4. 衡量无线传感网络节点定位算法的性能指标有哪些
定位精准度:空间实体位置信息与真实位置之间的接近程度。
有效定位范围:定位系统所能定位的有效范围
节点密度:播撒的传感器节点的疏密程度
信标节点密度:信标节点在整个WSN中所占比例
容错性与自适应性
安全性:指系统对合法用户的响应以及对非法请求的抗拒
功耗:低
代价与成本:包括时间代价,空间代价,资金代价都要尽可能低
5. CP-ABE和KP-ABE
首先,要明白一个概念:访问结构。
访问架构(access structure):访问结构是安全系统研究的术语,系统的访问结构是指被授权的集合的结构。
CP-ABE(ciphertext policy attribute based encryption,密文策略属性基加密系统):所谓密文政策加密系统是指,密文对应于一个访问结构而密钥对应于属性集合,解密当且仅当属性集合中的属性能够满足此访问结构。这种设计比较接近于现实中的应用场景,可以假象每个用户根据自身条件或者属性从属性机构得到密钥,然后加密者来制定对消息的访问控制。
KP-ABE(key policy attribute based encryption,密钥策略属性基加密系统):所谓密钥政策加密系统是指,密钥对应于一个访问控制而密文对应于一个属性集合,解密当且仅当属性集合中的属性能够满足此访问结构。这种设计比较接近静态场景,此时密文用与其相关的属性加密存放在服务器上,当允许用户得到某些消息时,就分配一个特定的访问结构给用户。
CP-ABE流程
①设置:这是一个随机算法,输入隐藏的安全参数,输出公开参数PK和一个主密钥MK。
②加密:这是一个随机算法,输入一个消息m、一个访问结构A、公开参数PK,输出密文E。
③密钥生成:这是一个随机算法,输入一组属性Y、主密钥MK、公开参数PK,输出一个解密密钥D。
④解密算法输入:基于访问结构A加密的密文E,对应属性组Y的解密密钥D,公开参数PK。
如果Y∈A,输出X消息m。
KP-ABE流程
①设置:这是一个随机算法,输入隐藏的安全参数,输出公开参数PK和一个主密钥MK。
②加密:这是一个随机算法,输入一个消息m、一组属性Y、公开参数PK,输出密文E。
③密钥生成:这是一个随机算法,输入访问结构A、主密钥MK、公开参数PK,输出一个解密密钥D。
④解密算法输入:基于属性组Y加密的密文E,对应访问结构A的解密密钥D,公开参数PK。
如果Y∈A,输出X消息m。
(摘自http://blog.sina.com.cn/s/blog_bd6974bf0102wft4.html)
1
在物联网的认证机制中,传感网的认证机制是需要研究的重要部分。无线传感网络中的认证技术主要包括基于轻量级公钥算法的认证技术、基于预共享密钥的认证技术、基于随机密钥预分布的认证技术、利用辅助信息的认证技术以及基于单向散列函数的认证技术等。
(1)基于轻量级公钥算法的认证技术。鉴于经典的公钥算法需要高计算量,在资源有限的无线传感网络中不具有可操作性,当前一些研究正致力于对公钥算法进行优化设计以使其能适应无线传感网络,但在能耗和资源方面仍存在很大的改进空间,如基于RSA公钥算法的Tiny PK认证方案和基于身份标识的认证算法等。
(2)基于预共享密钥的认证技术。SNEP方案中提出两种配置方法:一是结点之间的共享密钥,二是每个结点和基站之间的共享密钥。这类方案使用每对结点之间共享一个主密钥,可以在任何一对结点之间建立安全通信。其缺点是扩展性和抗捕获能力较差,任意一结点被俘获后就会暴露密钥信息,进而导致全网络瘫痪。
(3)基于单向散列函数的认证技术。该技术主要用于广播认证。单向散列函数可生成一个密钥链,利用单向散列函数的不可逆性,保证密钥不可预测。通过某种方式依次公布密钥链中的密钥,可以对消息进行认证。目前,基于单向散列函数的广播认证技术主要是对TESLA协议的改进;它以TESLA协议为基础,对密钥更新过程、初始认证过程进行了改进,使其能够在无线传感器网络有效实施。
2
访问控制 访问控制是指对用户合法使用资源的认证和控制。目前,对信息系统的访问控制主要采用基于角色的访问控制机制( Role Based Access Control,RBAC)及其扩展模型。RBAC机制主要由Sandhu于1996年提出的基本模型RBAC96构成,其认证过程为:一个用户先由系统分配一个角色,如管理员、普通用户等;登录系统后,根据对用户角色所设置的访问策略实现对资源的访问。显然,同样的角色可以访问同样的资源。RBAC机制是一种基于互联网的OA系统、银行系统、网上商店系统等的访问控制方法,是基于用户的。
对物联网而言,末端是感知网络,即可能是一个感知结点或一个物体,采用用户角色的形式进行资源控制显然不够灵活。
一是本身基于角色的访问控制在分布式网络环境中已呈现出不相适应的地方,如对具有时问约束资源的访问控制以及访问控制的多层次适应性等方面均需要进一步探讨;
二是结点不是用户,而是各类传感器或其他RBAC且种类繁多,基于角色的访问控制机制中的角色类型无法一一对应这些结点,因此使RBAc机制难于实现;
三是物联网表现的是信息的感知互动过程,包含了信息的处理、决策和控RBAC程,尤其反向控制是物物互联的特征之一,资源的访问呈现动态性和多层次性,而RBAc机制中一旦用户被指定为某种角色,其可访问的资源就相对固定了。因此,寻求新的访问控制机制是物联网也是互联网值得研究的问题。
基于属性的访问控制( Attribute Based Access Control, ABAC)是近几年研究的热点,若将角色映射成用户的属性,可以构成ABAC与RBAC的对等关系’而且属性的增加相对简单,同时基于属性的加密算法可以使ABAC得以实现。ABAC方法的问题是对较少的属性来说,加密解密的效率较高,但随着属性数量的增加,加密的密文饫度将增加,使算法的实用性受到限制。目前有两个发展方向,即基于密钥策略和基于密文策略,其目标均是改善基于属性的加密算法的性能。
