一种基于频偏竞标及动态拓扑的大规模无线传感器网络同步器的制造方法
【专利说明】一种基于频偏竞标及动态拓扑的大规模无线传感器网络同止3&
ty 口口
技术领域
[0001]本发明属于无线传感器网络节点间的时间同步领域。
【背景技术】
[0002]作为无线传感器网络(Wireless Sensor Networks, WSNs)的基础协议,时间同步协议对于整个网络性能的维持起着至关重要的作用。根据发送方和接收方同步消息交互的情况,可以将WSNs中经典的时间同步协议分为如下三类:①单向的发送/接收模型,DTMS(Delay Measurement Time Synchronizat1n), FTSP(Flooding TimeSynchronizat1n Protocol);②双向的发送/接收模型,TPSN(Timing_sync Protocol forSensor Networks);③接收 / 接收模型,RBS (Reference Broadcast Synchronizat1n) 0
[0003]但是,这些传统的同步协议研究基本都是针对一跳范围之内的。当其应用于整个网络的多跳同步时,往往只是简单的复用一跳范围内的同步协议,却没有从整体结构上提出优化。这样,必然造成每跳误差的重复累积,使累积误差近似于线性增长,很容易使处于远端层次高的节点的误差超出允许范围,最终导致同步协议失效。
[0004]继经典同步协议之后,提出了一些对误差的多跳累积改进措施的协议。如在LTS(Lightweight Time Synchronizat1n)协议中,对每跳误差进行权衡,并利用生成树算法进行路径选择,但是由于算法比较复杂等,缺乏实用性。在DRL-TSP(Dynamic Route Listbased Timing-Sync Protocol)中,使用挑选路径质量最好的父节点方法进行同步,其在大规模网络中取得了一定的效果。但是,这套协议是基于分层结构的,同步时需要严格按照下层节点跟上层节点同步。对于节点可能会随时产生一定的弱移动的应用场景里,这套协议可能会因为上下层节点漂移错位而导致部分区域不能同步。如果是较多节点产生错位,会直接导致整个网络的同步瘫痪。现存的同步协议基本都是采用静态拓扑结构,有层状结构和树状结构。这类协议在运行时,节点不允许被移动,而且当需要拓展网络时,还必需重启整个协议,给实际应用带来困难。
[0005]目前在WSNs中,随着网络规模的不断扩大,经典时间同步方法也面临着一个严峻的挑战。因为随着跳数的增多,节点间同步误差的过量累积是不可避免的,所以,研究一种适用于大规模网络中的时间同步器是势在必行的。
【发明内容】
[0006]针对当前时间同步协议在多跳误差累积抑制方面和具有弱移动性的监测场景中研究的不足,本发明设计了一种基于频偏竞标(frequency skew bid,FB)和动态拓扑(dynamic topology,DT)的同步器。此同步器通过频偏竞标的方式选择竞标标准小的上跳节点发起同步。这里的竞标标准与频偏、跳数和被同步次数等参数有关。该同步器同时采用动态拓扑结构,从而保证所有节点在弱移动下都能顺利的完成时间同步。
[0007]本发明是通过以下技术方案实现的:
[0008]该技术方案的同步器建立和维护的具体实现过程如下:
[0009](I)根节点发起同步
[0010]同步开始时,由根节点根据应用需求设定同步数据包的类型为快速同步或者慢速同步;同时设定同步轮次和同步跳数等参数信息,然后将数据包发出;启动定时器,经过一个同步周期的间隔后再次发起下一轮同步;同时监听并回应下跳节点发来的同步请求。
[0011](2)非根节点快速同步
[0012]非根节点在同步开始时监听其他节点发来的同步数据包;收到第一个数据包后,如果是快速同步数据包,而且同步轮次值比上一轮的值大,则进行快速同步,即立刻选定这个节点为父节点。
[0013](3)非根节点慢速同步
[0014]非根节点监听其他节点发来的同步数据包;收到第一个同步轮次值比上一轮的值大的数据包后,如果是慢速同步数据包,则进行慢速同步,设定定时器开启频偏竞标过程;在定时器到时之前,节点一直监听是否有其他同步数据包到来;对收到的数据包计算其竞标标准(Standard,STD);最终选取具有最小竞标标准STD的节点为父节点。
[0015](4)类TPSN单跳范围同步
[0016]当待同步节点选定父节点后,关闭同步数据包的监听;向父节点发起类TPSN的同步请求;父节点收到同步请求后及时回应消息。待同步节点利用本次同步过程记录的4个时间值,计算出时间偏差和延时,并进行本地时钟的校正;然后向其他节点发出同步包。
[0017](5)网络的扩展
[0018]当有新的节点加入到已经运行的网络中时,他们可以根据竞标标准STD自动选择最佳的上跳节点为父节点进行同步,而不需要重新启动整个网络的同步协议;如果加入的节点数据较多,则可以让根节点发起一定次数的快速同步,使新节点的时钟大致的统一到网络的标准时间。
[0019]本发明的基于频偏竞标及动态拓扑同步器在大规模网络环境下及其在动态拓扑中的实现细节如下:
[0020]采用区域分簇的机制将大规模节点网络分为簇头网络和簇内网络两部分。每个簇头作为中间Sink节点,负责簇内区域小节点信息的汇聚、处理和转发,并且作为簇内网络的根节点发布同步消息。当进行时间同步时,先完成簇头网络的同步,再分别进行簇内网络的同步,这样便可以大大减少同步跳数,提高同步精度。本发明的基于频偏竞标及动态拓扑同步器可适用于簇头网络和簇内网络两种网络中。
[0021]本发明的同步器中节点的频偏是指时钟漂移,即单位时间内节点时钟偏离真实时钟的速度,频偏体现节点时钟晶振的稳定性。当节点的时钟漂移(频偏)值越小,其本地时钟越稳定;在进行一次时钟校正后,其时间值偏离真实值也越小,这样在同步时造成的误差也越小。
[0022]本发明的同步器采用跳数(Hop Number,HN)参数来实现在动态拓扑结构的多跳网络中的同步。每个同步消息包中都含有跳数HN消息,根节点发出的消息中跳数为0,节点每转发一次就将HN数值加I。当节点进行弱移动时,会使网络的拓扑发生动态变化。这里的弱移动性是指待同步节点在频偏竞标的等待时间(Waiting Time, WT)内,就是在慢速同步的定时器未超时之前,参与竞标的上跳节点没有移出待同步节点的通信范围。STD的计算式为STD = λ (HN).|FB|。其中,λ (HN)是关于跳数HN的表达式,具体参数值应根据实际应用进行测试获得,以实现最佳的父节点的选取。
[0023]本发明的有益效果在于:
[0024]1.利用频偏竞标策略实现误差多跳累积的抑制
[0025]在频偏竞标的过程中,节点发出的数据包中携带有频偏信息FB ;当下一跳节点收到该数据包后,将FB作为一个主要的影响因子计算竞标标准STD。当接收到多个节点的竞标数据包后,计算出STD最小的上跳节点作为父节点ΡΝ,然后跟PN进行同步。当网络规模越大,节点可选的父节点越多时,本发明的同步器对误差多跳累积抑制的效果越明显。图6中所示为3种同步方式在多跳网络中同步时的误差累积图。其中Fid-bid曲线即是本发明的同步器采用的频偏竞标策略对误差多跳累积抑制的效果曲线。
[0026]2.快速同步和慢速同步结合的策略
[0027]由于同步协议往往都是牺牲一种性能来换取另一种性能,而不存在一种同步器在各方面都具有良好的性能;同理,也更不可能存在一套同步器能适用于多种不同要求的场景。所以,本发明的同步器中采用了快速和慢速同步结合的方式来应对应用需求的变化。快速同步可以认为是以牺牲同步精度为代价来获取较短的收敛周期;而慢速同步则相反是牺牲收敛周期来实现同步精度的提高。
[0028]图5所示的是快速和慢速同步过程各跳完成同步所需的延时。程序中设定在频偏竞标过程中定时器的值为2分钟,即慢速同步的周期为2分钟,这个数值可以根据具体应用环境进行调整。根据在一个7跳网络中的测试结果,这个网络的收敛时间,即第7跳上节点完成同步需要的时间,快速同步为4.092s,慢速同步为22.6283s。
[0029]3.适合弱移动性
[0030]如果无线传感器节点发生弱性移动时,经典的同步协议DMTS、TPSN和RBS等,以及最近提出的具有多跳误差累积抑制的同步协议(DRL-TSP)都不能适用于拓扑动态变化的场合。本发明的同步器具有良好的弱移动性能,能很好运用在这类环境中进行时间同步。
[0031]如图3所示,当节点进行弱移动的时候,会使网络的拓扑发生动态变化。在图3(a)中,tl时刻节点5通过判断STD选取节点7作为父节点;在图3(b)中,在t2时刻进行下一轮同步的时候,由于节点间的移动导致原来最佳STD的父节点7移出了节点5的通信范围;不过由于每轮同步时