当前位置:文档之家› 无线传感器网络中的同步算法

无线传感器网络中的同步算法

WWW.cismag.com.cn54引 言无线传感器网络(WSNs)是当前的一个研究热点,被称为是21世纪最重要的技术之一。

一般来说,无线传感器网络是由大量的传感器节点组成,这些节点能够感知周围的环境,具有数据采集、处理、无线通信和自动组网的能力,能协作完成大型或复杂的监测任务。

无线传感器网络有监测精度高、容错性好、覆盖区域大等显著优点,在军事、环境监测、工业控制和城市交通等方面有着广泛的应用前景,特别适合部署在恶劣环境和人不宜到达的场所。

时间同步是WSNs中的一项关键技术,无线传感器网络的许多应用和关键技术中都离不开时间同步,例如,在多传感器数据融合技术中,网络中的节点必须以一定的精度保持时间同步,否则根本无法实现数据融合。

在低能耗MAC协议的设计中,为减少能量的消耗,通常是通过调节占空比来实现TMDA调度算法的,但需要参与通信的双方首先实现时间同步,并且同步精度越高,防护频带越小,相应的功耗也越低。

定位技术也依赖于时间同步,在声波测距定位中,如果网络中的节点保持时间同步,则声波在节点间的传输时间很容易被确定,反之亦然。

节点间的数据处理也离不开时间同步,通信是无线传感器网络中最主要的能耗单元,传统分布式系统中的集中式数据处理模式需要频繁交换原始数据,不适合无线传感器网络;利用节点上的独立处理能力,发挥节点间的协同作用,对原始采样数据进行加工与萃取,以减小网络传输开销是延长网络生命周期的有效途径。

另外,进行数据压缩和剔除冗余数据等也是减小网络传输的手段,但进行这些处理需要目标附近的节点具有统一的时标来判定不同的原始监测数据是对同一事件的刻画,还是不同事件的描述。

更重要的是,无线传感器网络的一些独特的特性:对于能量、带宽等的限制等,使得现有网络的同步技术不再适合于这种新型的网络,因而有必要研究WSN中的时间同步。

同步算法分析1. 时间同步的基本原理要设计网络中的时间同步算法,必须要了解同步的原理。

图1通过一对节点的双向信息交换,介绍了两个节点是如何同步的。

如图1所示,在T1时刻,节点A向节点B发送一个包含A的标识和T1值的synchronization_pulse信息包,要求与节点B同步;在T2时刻,节点B收到节点A发送的包,此时T2=T1+dr+de,其中dr表示时钟漂移,de表示传播时延;在T3时刻,节点B向节点A返回一个acknowl-edgment信息包,该包包含B的标识以及T1、T2、T3的值;在T4时刻,节点A接收到节点B返回的ac-knowledgment信息包,此时T4=T3-dr+de。

假定,在T1到T4这么短的时间内,时钟漂移和传播时延不会发生变化,则可以算出时钟漂移dr=[(T2-T1)-(T4-T3)]/2,传播时延de=[(T2-T1)+(T4-T3)]/2。

知道了时钟漂移,则节点A就能纠正其时钟,从而与节点B的时钟达到同步,即发送方把其时钟与接收方的时钟同步,这就是发送方-接收方同步的基本原理。

在传统计算机网络中,时间同步基本上都是采用这种发送方-接收方的同步算法,那么在传感器网络中能不能采用这种方法呢?通信技术无线传感器网络中的同步算法 摘 要:无线传感器网络由于其自身的独特性,使得传统网络的时间同步算法不适合于这种网络。

本文分析了当前传感器网络中两种典型的同步算法,提出了一种新的设想。

韩翠红 李立宏 赵尔沅/文图1 节点间双向消息交换的时间线信息安全与通信保密・2005.555通信技术2. 发送方-接收方同步算法传感器网络中一个比较有代表性的同步算法—TPSN就是遵循了发送方-接收方的同步原理。

其主要思想分为两个阶段,第一阶段是层的寻找阶段(level discov-ery phase),即建立网络体系结构,第二阶段是同步阶段。

在建立网络体系阶段可以采用最小生成树法,也可以采用简单泛洪机制。

采用简单泛洪机制的步骤如下:首先确定一个根节点(root node),这种节点在一个体系中只能有一个,并把它定为0层;然后该根节点向直接的邻居节点发送一个携带其层号和标识的信息包,邻居节点接收到该包后会自动把层号加1作为自己的层号;层1节点再向其邻居节点发送类似的信息包,依此类推,直到网络中的所有节点都有了确定的标识和层次。

在同步阶段,由根节点广播一个time_sync信息包来通知网络中的节点将开始同步操作。

层1的节点接收到time_sync信息包后,会等待一段时间,等待的目的是为了避免竞争,然后开始与根节点进行消息交换。

在接收到根节点的acknowledgment信息包后,层1的节点就调整其本地时钟与根节点的时钟同步。

层2的节点在监听到层1节点收到确认信息后,也会等待一段时间,这里等待的目的是确保层1的节点与根节点已经同步,然后才开始与层1的节点进行消息交换。

依此类推,直到最后网络中的所有节点都与根节点同步。

这种算法虽然采用的是传统的发送方-接收方的同步原理,但是相对于传统网络时间同步的毫秒级精度而言,TPSN可以达到微秒级的精度,精确性大大提高。

3. 接收方-接收方同步算法无线传感器网络是一种新型的网络,它不同于传统意义上的计算机网络,因而可以抛开传统时间同步算法的束缚,创建一种别具一格的算法。

参考广播同步算法(RBS)就是这种接收方-接收方同步算法的典型代表。

其主要思想是:节点(作为发送方)通过物理层广播周期性的向其邻居节点(作为接收方)发送信标消息。

邻居节点记录下广播信标达到的时间,并把这个时间作为参考点与时钟的读数相比较。

为了计算时钟偏移,要交换对等邻居节点间的时间戳,从而使它们的时钟同步。

假如该算法在网络中有n 个接收节点m 个参考广播包,则n 个节点中任意一个节点接收到m 个参考包后,会拿这些参考包到达的时间与其它n -1个接收节点接收到的参考包到达的时间进行比较,然后进行信息交换。

其计算的公式如下:其中n 表示接收方的数量,m 表示参考包的数量,T r ,b 表示接收到参考b 时的时钟。

这种算法也可以达到微秒级的精度,但是从上式可以看出,随着参考广播包与网络中接收节点的增多,其计算量也会加大,算法的复杂性增加。

4. 误差分析精确的网络时间同步最大的敌人就是不确定性,而造成这种不确定的主要因素就是消息从发送方传递到接收方的时延。

为了减少这种时延的影响,发送方-接收方的同步算法和接收方-接收方的同步算法都对这种不确定性进行了分析,由于算法的不同,二者分析的角度也有差异。

在RBS中,是把整个时间分成四个时间段来考虑,与传统时间同步相比,在其关键路径(critical path)中去掉了发送时间和访问时间(如图2所示),而这两个时间是造成不确定时延的主要因素,接收时间往往比发送时间要小得多,它和传播时间对时延的影响不是很大。

在TPSN中,是把无线链路中的包时延分解为如图3所示的六个时间段。

可以看出,对时间影响最大的就是发送方的时延。

在仍然参照图1的两个节点同步的情况下,可以得出二者的误差公式如下:它们分别表示发送时间、传播时间、接收时间等的不确定性以及在两个节点间消息交换时的时钟漂移。

可以看出,虽然RBS算法中忽略掉了接收时间的不确定性,但总的来说TPSN的误差还是小。

这也说明发送方-接收方的同步算法比接收方-接图2 传统时间同步(左)与RBS(右)的关键路径分析图3 无线链路中的包时延分解WWW.cismag.com.cn通信技术56引 言无线传感器网络将代替或提高传统有线传感器技术,特别是在灾区、领土保卫、制造业等应用中将越来越突出。

在无线传感器网络(WSN)中,节点一般是静止的,如果对于已经部署好的网络,这时有移动节点加入,将会大大扩充网络的功能。

移动节点的接入,可以扩大网络空间的采样范围,当数据采集到后可以充当信息源或者接收器,而且有可能两个移动节点通过静态网络进行通信。

同时对于传感器网络而言,如何减少能量的损耗是设计该网络首要考虑的问题,特别是当移动节点接入,其维持与网络的连接和建立路由都将消耗能量受限的静态网络。

针对该网络的特点和要求,有人提出了窃听登记EAR(Eavesdrop andRegister)算法,该算法能较好地实现移动节点接入网络,但仍存在着一些缺点,本文首先将简单地介绍EAR原理,然后针对EAR存在的缺点,提出改进方案,最后对所提出的方案进行仿真和分析。

EAR算法在提出算法前,首先假定无线传感器网络已达到稳态,即此时静止节点已分布好,链路层结构已形成,从任何节点到槽节点的路由已建立,每个静止节点周期的发送导频信号要求周围邻居节点加入网络协同工作,最重要的是,静止节点是高度能量受限的。

EAR协议采用三种信息方案,假如与静态MAC协议相关的导频信号也假定为一种信息,那么将使用四种信息,算法的具体实现过程如下:—广播邀请(BI):静止节点邀请其它节点加入。

通过该信息,移动节点登记相应的静止节点,提取出发送节点的ID、接收信号质量以及发送功率,通过对多个静止节点的连续登记,移动节点能够判断其离哪个节点更近。

这有两种情况:一是若接收到的BI是一个新的静止节点,在登记表未满的情况下,继续加无线传感器网络中移动节点接入的实现 摘 要:当无线传感器网络引入移动节点时,将会大大拓宽网络的功能。

窃听登记EAR算法是基于MAC层的,即实现移动节点从进入网络到维持网络连接,最后离开网络这一过程。

本文基于EAR算法,在实现该算法的基础上就EAR存在的不足做出改进,通过仿真验证改进后的方案在减少网络能量损耗的同时可以提高移动节点与网络的连接质量。

项 丽 段哲民/文收方的同步算法的性能要好得多。

未来研究方向通过对上述两种典型方法的分析与研究,我们认为未来传感器网络中同步技术的研究应该是一个更全面的过程。

为此,我们设想了一种比较灵活、全面的算法,即双向同步算法。

我们的大致构思是这样:把同步过程分成上行和下行来完成。

在下行同步中,指定一个参考节点(把它当作基站)来发送信标,该参考节点的邻居节点或子节点接到信标后会产生回应,然后由参考节点计算时钟偏移并向其周围的邻居节点广播这一信标,最后这些邻居节点就会达到同步,在上行同步中,允许每个节点独立地获取时间或根据其所处的环境来同步。

由某个要同步的节点先发送一个请求,其父节点接到这个请求后把它转发给上一级父节点,一直这样转发直到到达基站,然后基站会转换到这条路径上,发送相应的信息给要求同步的节点,最后使该节点同步。

我们这样考虑算法可以减少同步的成本,并且具有一定的灵活性,既可以实现网络内所有节点的同步,也可以仅考虑单个节点的同步。

相关主题