第7章 时间同步
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第7章 时间同步
第7章 时间同步
2.WSN时间同步协议(TPSN)
TPSN(Timing-Sync Protocol for Sensor Networks)算法[8]是Ganeriwal等 人提出的适用于WSN整个网络范围内的时间同步算法。该算法分两步:分级 和同步。第一步的目的是建立分级的拓扑网络,每个节点有个级别。只有一 个节点定为零级,叫做根节点。在第二步,i级节点与i-1级节点同步,最后所 有的节点都与根节点同步,从而达到整个网络的时间同步。 (1)分级 (2)同步
第7章 时间同步
3.HRTS(Hierarchy Referencing Time Synchronization Protocl) 和BTS 2004年Dai.H提出的HRTS[13]是在TPSN模型和RBS模型基础上演变出来 的一种时间同步算法,当一个节点发时间请求的时候,所有的相关节点都收到 请求,并记录接到请求的本地时间。例如O发M1进行时间同步的请求,K、P 节点都接到请求,他们记录收到请求时的本地时间,其中K节点和O进行信息 交互,计算出K、O节点间的时间偏此时K、P根据接收到的时间信息,进行 时间信息的同步 。
第7章 时间同步
7.1.2 算法设计的影响因素 第一,传感器节点需要彼此并行操作和协作去完成复杂的传感任务。数据 融合是这种并行操作的实例,不同的节点收集的数据集合为一个有意义的结 果。例如,在车辆跟踪系统中,传感器节点记录车辆的位置和时间并传送给 网关节点,然后结合这些信息估计车辆的位置和速度。很明显,如果传感器 节点缺乏统一的时间戳(也就是说没有同步),估计将是不准确的。 第二,许多节能方案是利用时间同步来实现的。例如,传感器可以在适当 的时候休眠(通过关闭传感器和收发器进入节能模式),在需要的时候再唤醒。 当应用这种节能模式的时候,节点应该在同等的时间休眠和唤醒,也就是说 当数据到来时,节点的接收器并没有关闭。这个需要传感器节点间精确的定 时。调度算法,例如TDMA,能够通过不同的时隙共享信道,进而去估计传 输阻塞和保存能量。因此,同步是信道调度的基础。
第7章 时间同步
7.2 时间同步算法 7.2.1经典时间同步算法 1.基于参考广播的时间同步协议(RBS) 2.WSN时间同步协议(TPSN)
3.Tiny-Sync算法和Mini-Sync算法
4.LTS算法
第7章 时间同步
1.基于参考广播的时间同步协议(RBS) 由于RBS算法将发送者的不确定性从关键路径中排除(如图7-1),所以获得 了比传统的利用节点间双向信息交换实现同步的方法较好的精确度。由于发 送者的不确定性对RBS算法的精确度没有影响,误差的来源主要是传输时间 和接收时间的不确定性。首先假设单个广播在相同时刻到达所有接收者,因 此,传输误差可以忽略。当广播范围相对较小(相对于同步精确度好几倍的光 速),这种假设是正确的,而且也满足传感器网络的实际情形,所以在分析这 个模型精确度的时候,只需要考虑接收时间误差。 RBS(Reference Broadcast Synchronization)算法[7]是Elson等人以“第三 节点”实现同步的思想而提出的。该算法是一个典型的接受者——接受者模 式的同步算法。它是利用无线链路层广播信道特点,一个节点发送广播消息, 在同一广播域的其它节点同时接收广播消息,并记录该点的时间戳。之后接 收节点通过消息交换它们的时间戳,通过比较和计算达到时间同步。该算法 中,节点发送参考消息给它的相邻节点,这个参考消息并不包含时间戳。相 反的,它的到达时间被接收节点用作参考来对比本地时钟。此算法并不是同 步发送者和接收者,而是使接收者彼此同步。
第7章 时间同步
4.LTS算法 LTS(Lightweight Tree-Based Synchronization)算法是Greunen和Rabaey 提出的[10],与其他算法最大的区别是该算法的目的并不是提高精确度,而 是减小时间同步的复杂度。该算法在具体应用所需要的时间同步精确度范围 内,以最小的复杂度来满足需要的精确度。WSN的最大时间精确度相对较低 (在几分之一秒内),所以能够利用这种相对简单的时间同步算法。 Greunen和Rabaey提出了两种用于多跳网络同步的LTS算法,它们都是基 于文献[7]的pair-wise同步方案,两个算法都需要节点与一些参考节点同步,例 如WSN中的网关节点。 第一种算法是集中算法,首先要构造树状图,然后沿着树的n-1子叶边缘进行 成对同步。希望通过构造树状图使同步精度最大化,因此,最小深度的树是最 优的。 第二种多跳LTS算法通过分布式方法实现全网范围内的同步。每个节点决 定自己同步的时间,算法中没有利用树结构。
第7章 时间同步
TPSN算法不仅应用在了Berkeley的Mica上,而且利用了在MAC层给包打 时间戳,这样可以降低发送者的不确定性。Ganeriwal等人声称TPSN算法获 得的精确度两倍于RBS算法,而且声明RBS算法的6.5μs的精确度是由于使 用了高级操作系统(Linux)和更加稳定的晶体,因此,RBS算法应用在Mica中 获得了和TPSN算法一样优良的精确度。在早些时候,RBS算法确实在 Berkeley Motes上测试过,获得的精确度是11μs。但是,Ganeriwal等人证 明说RBS算法在Mica上的实验结果是29.13μs,而TPSN算法在相同的平台上 是16.9μs。本质上来说,通过在底层加时间戳使得发送端的不确定性对整个 同步的误差影响很小,因此,在WSN中,经典的“发送—接收同步”比“接 收—接收同步”更加有效。
3.HRTS(Hierarchy Referencing Time Synchronization Protocl) 和BTS 4.其它同步思想
第7章 时间同步
1.延时测量时间同步协议(DMTS) 文献[11]提到的延时测量时间同步(Delay Measurement Time Synchronization),它是在多跳网络中采用了层次型的分级结构来实现全网范 围内的时间同步,它避免了冗余分组的传输,只接收级别比自己低的节点广播 的分组。该协议能更好的支持与外部时间源及多个网络的同步。该协议是在 RBS的基础上做了改进,它是一种基于广播时间的时间同步机制,和RBS相比 它为了避免往返传输时间估计,减少消息交换量,同时兼顾可扩展性,能量消耗 和估算成本,它是选择一个节点作为主节点,广播含有节点时间的分组,接收节 点对分组的传输延迟进行测量,并且将自己的本地时间设置为接收到的分组中 包含的时间加上分组传输时延。这样所有广播范围内的节点都可以与主节点 进行同步。 但是由于DMTS在能量开销和同步精度之中做了折中,所以它主要应用在对 精度要求不是很高的无线传感网中。
第7章 时间同步
7.2.2基于前同步思想的同步算法 前同步是不论系统是否有触发条件,都要进行时间同步,也就是说系统会定 期的自动进行时间同步的校正。常见方法如下 1.延时测量时间同步协议(DMTS)
2.泛洪时间同步协议FTSP(Flooding Time Synchronization Protocol)
第7章 时间同步
第7章 时间同步
3.Tiny-Sync算法和Mini-Sync算法 Tiny-Sync算法和Mini-Sync算法是由Sichitiu和Veerarit tip han 提出的两种 用于WSN的时间同步算法[9]。该算法假设每个时钟能够与固定频率的振荡器 近似。就像前面讨论的一样,两个时钟C1(t),C2(t)假设线性相关: C1(t)=a12· C2(t)+b12(2) 其中:是a12两个时钟的相对漂移,b12是两个时钟的相对偏移。
第7章 时间同步
7.1.3 算法的性能指标 WSN时间同步方案设计的目的是为网络中节点的本地时钟提供共同的时间 戳[6]。评价一个WSN时间同步算法的性能,一般包含网络能量效率、可扩展 性、精确度、健壮性、寿命、有效范围、成本和尺寸、直接性等指标。 (1) 能量效率。无线传感器网络的主要特点就是节点的能量受限问题,设 计的时间同步算法需以考虑传感器节点有效的能量资源作为前提。 (2) 可扩展性。WSN需要部署大量的传感器节点,时间同步方案应该有效 扩展网络中节点的数目或者密度。 (3) 精确度。精确度的需求依赖于特殊的应用和时间同步的目的而有所不 同,对于某些应用,知道时间和消息的先后顺序就够了,然而某些其他的, 则要求同步精确到微秒。 (4) 健壮性。WSN可能在敌对区域长时间无人管理,一旦某些节点失效, 在余下的网络中,时间同步方案应该继续保持有效并且功能健全。
第7章 时间同步
7.1 时间同步概述 7.1.1消息传递过程分解 将消息在WSN节点间传递的过程分解成不同的阶段是对时间同步问题研究 的关键,一条消息在WSN节点间的传递过程可分解成以下六个部分。 (1)Send Time:发送节点构造一条消息所需要的时间,包括内核协议处理 和缓冲时间等,它取决于系统调用开销和处理器当前负载。 (2)Access Time:消息等待传输信道空闲所需时间,即从等待信道空闲到 消息发送开始时的延迟,它取决于网络当前负载状况。 (3)Transmission Time:发送节点按位(bit)发射消息需时间,该时间取决 于消息长度和发射速率。 (4)Propagation Time:消息在两个节点之间传输介质中的传播时间,该时 间主要取决于节点间的距离(电磁波在空气中的传播速率是一定的)。 (5)Reception Time:接收节点按位(bit)接收消息并传递给MAC层的时间, 这个过程和(3)相对应。 (6)Receive Time:接收节点重新组装消息并传递给上层应用所需的时间。
第7章 时间同步
2.泛洪时间同步协议FTSP(Flooding Time Synchronization Protocol) 2004年Maroti M等人提出Flooding Time Synchronization Protocol (FTSP) [11,12]的目标是实现整个网络的时间同步并将误差控制在微秒级,它考虑了 根节点的选择,根节点和子节点的失效造成的拓扑变化以及冗余信息的处理 等方面的问题,同时它采用了线性回归算法使同步精度提高,适用于军事场 合。 DMTS和FTSP都是RBS的演进,它们完全不考虑发送时间和访问时间, 绝对的路径变短,使得同步误差大大的减少。只是DMTS算法是传输的消息 条数减少,从而使算法的开销最小,可是精度不如RBS。
第7章 时间同步
在RBS算法最简单的构成中,节点广播单个脉冲给两个接收者,接收者在 收到脉冲的基础上再交换记录的脉冲时间,进而估计节点间相对的相位偏移。 这种基本的RBS算法可以扩展为两个方面:① 通过单个脉冲同步个节点(>2)。 ② 通过增加参考脉冲的数目提高精确度通过仿真,在同步两个节点的时候, 30个参考广播(对于时间的单同步)能够将精确度从11μs提高到1.6μs,同时可 以利用这个冗余信息估计时钟歪斜。 与通过多个观测值取相位偏移的平均值不同(例如30个参考脉冲平均),RBS 算法是通过最小均方线性衰落的方法取得这个数据。然后,节点本地时钟相对 于远端节点的频率和相位可以通过图线的斜率和截取值获得。
第7章 时间同步
(5) 寿命。时间同步算法提供的同步时间可以是瞬时的,也可以和网络的 寿命一样长。 (6) 有效范围。时间同步方案可以给网络内所有的节点提供时间,也可以 给局部区域内的部分节点提供时间。由于可扩展性的原因,全面的时间同步 是有难度的,对于大面积的传感器网络,考虑到能量和带宽的利用,也是非 常昂贵的。另一方面,大量节点达到共同时间需要收集来自遥远节点的用于 全面同步的数据,对于大规模的无线传感器网络是很难实现的,而且直接影 响了同步的精确度。 (7) 成本和尺寸。WSN节点非常小而且廉价。因此,在传感器网络节点上 安装相对较大或者昂贵的硬件(例如GPS接收器)是不合逻辑的。WSN的时间 同步方案必须考虑有限的成本和尺寸。 (8) 直接性。某些WSN的应用,比如紧急情况探测(例如气体泄漏检测,入 侵检测等)需要将发生的事件直接发送到网关。在这种应用中,网络不容许任 何的延迟,但是某些协议是在依赖事件发生后的额外处理而设计的,这些协 议需要节点在任何时间达到预先同步,这样看来,似乎和前面提到的直接性 有些矛盾。