LTS协议
扫描二维码
随时随地手机看文章
;;; ;在有些传感器网络应用中,对时间同L4931ABD33步的精度要求并不是很高,秒级往往就能够达到要求,同时需要时间同步的节点可能不是整个网络的所有节点,这样就可以使用简单的轻量的时间同步机制,通过减少时间同步的频率和参与同步的节点数目,在满足同步精度要求的同时降低节点的通信和计算开销,减少网络能量的消耗。LTS(Lightweight Tree-based
Synchronization)同步算法的设计目标就是适用于低成本、低复杂度的传感器节点时间同步,侧重最小化同步的能量开销,同时具有鲁棒性和自配置的特点,特别是在出现节点失败、动态调整信道和节点移动的情况下,LTS算法仿能够正常工作。Anceaume和Puaut把时间同步模块划分为3个组成部件:重同步时间监测、远程时钟估计和时钟修正。重同步时间监测用来确定节点进行时间同步的时刻,可以采用两种方式确定重同步时刻:一种是基于初始同步的时间,以kR固定周期进行重同步,R是单个时间同步周期的长度,后是大于1的实数,用来防止两个同步周期的重叠:另一种是一个特定节点在kR时间后发送初始同步消息给其他节点,节点在收到消息后启动时间同步,消息延迟会影响时间同步的精度。远程时钟估计部件用来决定网络中另一个节点的本地时钟。通常采用两种技术:第一种技术是“时间发送”,远程时钟的时间值放在发送消息中;第二种技术是“远程时钟读取”,在不知延迟边界时使用。它们都需要发送附加消息,增加了通信开销,因此在轻量算法中应该避免使用。在同步事件发生和获取远程时钟的估计信息后,时钟修正部件用来更正节点的本地时间。该部件根据估计集计算一个调整值,估计集是由时钟估计部件产生的包含相关远程时钟估计值的集合。有两种基本时钟修正函数类型:收敛的基于均值的函数(返回一个估计集中的平均值)和收敛的基于非均值的函数。
;;; 在分析单跳节点对之间基于发送一接收方式的时间同步机制基础上,J.Greunen和J.Rabaey提出了集中式和分布式两类LTS多跳时间同步算法。集中式多跳同步算法是单跳同步的简单线性扩展,其基本思想是构造低深度的生成树,然后以树根为参考节点,依次向叶节点进行逐级同步,最终达到全网同步。根节点通过同步其邻居子节点启动时间同步过程;接着,每个节点再与它的子节点同步;如此反复,直到树的叶节点都被同步。集中式多跳同步算法中,根节点初始化同步,所有节点采用相同频率进行重同步,算法的运行时间正比于生成树的深度,优化的生成树具有小的深庋,沿着所有树枝并进行同步操作,叶节点几乎能够同时完成时间同步。在聆个节点组成的网络中,多跳同步需要(n-l)个节点之间的同步。多跳同步的通信复杂性和精度与生成树的构造方法以及树的深度相关,重同步频率与时钟漂移以及单跳同步精度相关。
;;; 在分布式多跳LTS算法中,任何节点j在需要重同步时都可以发起同步请求,从参考节点到节点i路径上的所有节点采用节点对的同步方式,逐跳实现与参考节点的时间同步。节点需要跟踪自己的时钟漂移和同步精度,确定重同步的发起时刻。由于离参考节点较远节点的同步误差较大,因而相应的重同步频率也较高。同步请求沿着到参考点的路径传送,中间节点被动地现了时间同步,就不需要产生同步请求。另外,为了减少开销,可以进行同步请求消息的合并,以及节点以不同概率沿着不同路径发送同步请求消息,这可使得更多节点被动地与参考节点同步。当所有节点需要同时进行时间同步时,集中式多跳同步算法更为高效,当部分节点需要频繁同步时,分布式机制需要相对少量的成对同步。LTS算法与TPSN协议的区别在于LTS只需要与其直接父节点同步。LTS算法的同步次数是节点高度(与根节点的距离)的线性函数,降低了交换的信息量,间时也降低了同步精度。LTS算法的精度与生成树的深度相关,构造和维护深度小的生成树需要一定的计算和通信开销,同时算法还依赖从节点到参考节点的路由消息,错误的路由消息可能导致同步失败。