一种基于车辆adhoc网络拓扑结构的时间同步方法

文档序号:7699371阅读:186来源:国知局
专利名称:一种基于车辆ad hoc网络拓扑结构的时间同步方法
技术领域
一种基于车辆ad hoc(自组织)网络拓扑结构的时间同步方法是属于移动ad hoc网络时间 同步研究领域。
背景技术
ad hoc网络是一种无基础设施的分布式网络,这类网络由无线移动节点组成自治系统, 每个节点既是主机,又是路由器,不存在集中式的网络管理,可以灵活地适应拓扑结构的变 化。每个节点的处理机具有高度的自治性,又相互协同,甚至有时需要共享系统中的所有软 硬件资源。而时间是分布式网络中重要的坐标,是一个不可缺少的参数。通常情况下,任何 一个时钟和标准时间之间都会存在偏差,而且各个时钟的速率都有所不同,于是,人们需要 经常地为网络各节点进行对时,与标准时间保持同步。
车载adhoc网络是一种分布式网络,它具有节点移动速度快、路由变化快的特点,解决 车载ad hoc网络的时间同步问题,有助于设计基于时间的路由算法并提高QoS(Quality of Service,服务质量)。如果要参考有线IP网络的时间同步服务器的方法,则需要高性能的设备 作为服务器,但是该服务器既不可能跟随车辆移动,国家或企业也没有计划在路边设置这种 专用服务器。另外,虽然IP网络的NTP (网络时间协议)对网络定时精度较高,但是运算复 杂,同步过程漫长,且该协议是一种由客户端发起的点对点的时间同步法,不适用于路由变 化快的车载adhoc网络的全局同步;无线传感器网络的同歩问题已经有很多机构进行了研究, 这种网络是一种无线分布式网络,与车载adhoc网络有很多相似之处,但是,移动传感器网 络一般应用在移动速度较慢的特定环境,邻居相对稳定,拓扑结构相对稳定,同样不适合车 载adhoc网络。
有些轿车配备了GPS导航设备,GPS是一种基于精确时间坐标的定位系统,但由于种种 原因不可能每辆车都安装GPS设备。本发明把具有GPS设备的节点作为一个时间服务器, 从GPS设备中提取时间和速度信息。带有GPS设备的节点虽然有助于车辆进行同步,但是 从实际的角度,作为时间服务器需要付出能量和带宽,从分布式网络的概念来讲,也不应该 使某些节点负荷过重,因为在一个处理机能力基本相同的网络中, 一个奇点可能打破网络的 平衡,导致整体性能下降。
因此如何根据车辆行驶的特点,设计一种能适应路由快速变化的车载ad hoe网络的时间 同步方法,是解决车载ad hoc网络协同工作的关键问题之一。

发明内容
本发明提供了一种基于adhoc网络邻居节点数目,结合车辆行驶的道路形状,对车载ad hoc网络设备进行同步的方法。它依照以下步骤实现
步骤l:带有GPS设备的节点根服务器A在一个同步周期内,当其速度低于某一个门限 值VT时启动同步,VT值可由环境进行人工调整,如市区20km/h,郊区30km/h。首先从其 路由表中提取当前所有邻居节点的ID号,并从GPS设备上获得时间信息,同时向邻居节点
广播当前的发送时刻TAO和所有邻居节点的ID号Bi(w,2,......,m);
步骤2:当次级节点Bi接收到根服务器A的消息后,立即记下当前收到消息的时刻TM), 并存储该消息发来的发送时间TAG,提取自身的邻居列表,去掉A发来的邻居列表中的已存 在的节点,计算出剩余邻居节点个数NBi(i=1,2,......,m),将自己的ID号Bi和NBi发还给根服务器
A并同时记录发送时的时刻TM,当某些节点在本同步周期内已经被其他GPS同步过,或存 在包含GPS设备的其他节点时,向A返回拒绝参与的消息,他们将不参与任何同步过程;当 一个尚未完成同步的节点在同步过程中有可能收到多个服务器的消息,则取最先发来的消息 服务器为其上一级服务器;
步骤3:服务器A收到了节点Bi的回应消息时,记录接收时刻Tab卯、2,......,m), Bi和NBi,
并根据NBi的大小进行插入排序Max Min(NBi"(NBw, NBx, NBw, NBz……}。
令排序后的Ne,最大的4个节点SB^Bw, SB2= Bx, SB3=By, SB4= Bz,暂定为次 一级月艮务器;对SBj(i=i,2,3,4) 发送消息接受时刻TABU,本消息发送时刻TABi2,以及暂定次一级 服务器的ID号SBi(—u,......,m);对其他非暂定服务器节点Bi,仅发送原发来消息的接受时刻
Tabu,本消息发送时刻Tabc;
步骤4:节点Bi获得了消息后进行本地对时,
假设时间差为S,即S= TSefver - Tclient,
其中,TABu为服务器接收消息时刻TServer, TBil为客户端发送消息时刻Tclient, dcsi为消 息从客户端到服务器的传输和处理时间,Si为A与Bi的时间误差,dSCi为消息从服务器到客
户端的传输和处理时间,
假设dcsi = dsci= di,即消息往返的处理、传输时间相同则消去di可得
即Bi只需用已知的T^,、 T^2、 TBll、 1B,2计算出Si并对当前时间进行修正即可获得标准时间;
同时,通过比较TAO-T柳与TABi2-TBi2来验证链路的稳定性,当差距非常大时,表示链
路不稳定,可采取其他技术措施,稳定链路,或进行多次同步取平均;
步骤5:对于暂定服务器的节点SBi,从其路由表中提取当前所有邻居节点的ID号并减 去已经同步过的节点集合B,得到次一级尚未同步节点Ci(i=1,2,......,m),并从本地获得时间信息,
同时向邻居节点广播当前的发送时刻T弧和C《i=1,2,......,的以及A节点指定的暂定服务器的ID号
SBi和SBj(H,2,3,4j—),对于非暂定服务器,则完成同步工作,返回确认信息即可;
步骤6:其他暂定服务器SBn,2,糾H)若能收到SBi广播的消息,则将发来节点的集合与 本地节点尚未同步的邻居节点集合d(w,2,......,m)进行交集和并集运算,交集节点数目占并集节
点数目的一半,即相似度在50%以下时,可确立自己的次一级服务器地位,并在与A同步后, 按照服务器A的工作方式重复步骤2 步骤7,向自身次一级的节点进行逐级同步;若相似 度在50%以上甚至完全包含时,说明该节点与SBj距离很近,直接回复拒绝信息给服务器A, 且暂定服务器按照服务器顺序,有拒绝的优先权,拒绝排序靠后的暂定服务器;若未收到SBj 的消息,说明该节点与SB,距离很远,符合次一级服务器的条件;可等待服务器A对其同步 时的委派信息,正式委派后按照服务器A的工作方式重复步骤2 步骤7,向C级、D级、E 级、……的节点进行逐级同步;
步骤7:服务器A若收到拒绝信息则立即在原NB,排列顺序中标记被拒绝的节点,选择 NBi最大的四个未标记节点,修正为暂定服务器的ID;按照先暂定服务器后普通节点的顺序 继续步骤3 步骤7,直到完成所有的同步工作。


图1:车载adhoc网络示意图
A:带有GPS的根时间服务器
暂定服务器 Ci: SBi所覆盖的下一级的未同步节点 图2:服务器A参与的同步过程
A:带有GPS的根时间服务器的ID号 Bi(i=i,2,……,m): A邻居节点的ID号 SB^,2,3,4):本地暂定服务器节点的ID号 SBj^",",非本地暂定服务器节点的ID号Ci: SBi所覆盖的下一级未同步节点的ID号 TV始訂齢符)节点发送和接受消息的本地时钟时刻 d:消息传递和处理时间 NBi: Ci个数 图3:服务器A与非服务器节点同步过程 A:带有GPS的根时间服务器ID号 Bi(w,2,......,m): A邻居节点的ID号
TV她意下标钟)节点发送和接受消息的本地时钟时刻 d:消息传递和处理时间 NBl: Ci个数 图4:服务器SB启动服务的衔接过程
A:带有GPS的根时间服务器的ID号 B,(m,2,......,m): A邻居节点的ID号
SBi(i=u,3,4):暂定服务器的ID号
Ci: SB,所覆盖的下一级未同步节点的ID号
T,力任意下标字符)节点发送和接受消息的本地时钟时刻 d:消息传递和处理时间 NBi: Ci个数
NCi: SCi所覆盖的下一级尚未同步节点个数 图5:车载ad hoc网络选举结果例图1
SB1:暂定服务器l 图6:车载adhoc网络选举结果例图2
A:带有GPS的根时间服务器
SBi(w,2,3,4):暂定服务器
具体实施例方式
如图1所示,在一个真实的较为复杂的十字路口,直观的分析图中所标识的节点为最佳
次级服务器。根据本发明的算法,可以达到同样的效果,参照图2、 3、 4,具体实施方式
如下
1. 服务器A在低于某一速度的时刻向其信号覆盖范围(假设为一个标准圆)广播其时间及其路 由中的邻居列表信息,发起同步。低速节点很可能处于某一交通路口,能够直接同步更多 的节点。采取这种多播的方式,虽然消息长,但是效率较高,所有邻居节点均可收到该消 息。
2. 接收到消息的各节点进行集合的减运算,即用本地邻居列表减去接收到的列表,从而得到 A节点通过本节点两跳可达的节点。立即回复运算结果的个数和自己的ID号。虽然采取 这种方式可能造成消息传递数量突然增加,但是由于消息的长度非常短,甚至节点ID号 也可省略,由报头获得,因此减小了网络产生严重冲突的概率。
3. 服务器A在接受消息的同时,进行插入排序,服务器A根据排序结果的顺序回复各个节 点发来消息的接受时刻和本消息发送时刻,对于排序靠前的4个节点暂定为服务器,并在 给暂定服务器的消息中包含暂定服务器的ID号。由于优先回复时间服务器的节点收发消 息的时间间隔较短,链路变化一般较小,算法中dcsi-dsc产di的假设成立的概率更大,因 此对次级服务器的^t时精度高于其他普通节点。
4. 各个节点根据回复信息进行计算与服务器的时间差,然后根据时间差进行时钟修正。同步 的计算工作完全在各个节点进行,服务器不需要进行复杂的计算工作。另外,本方法提供 了 一次检验链路稳定性的措施。
5. 次级服务器广播当前发送时刻的时间、自己信号覆盖范围内的次一级未同步节点ID和4 个次级服务器的ID号。这样一次广播完成了三个任务,即对服务器A委派的汇报、发起 其作为服务器的初始化报文和与其他次级服务器进行联系,极大地提高了效率。
6. 次级服务器收到其他次级服务器的委任消息后,对照自己的未同步列表,进行相似度比较。 当相似度很高时,立即回复拒绝消息给根服务器A, A对下一服务器进行对时的时候,更 新次级服务器ID号,直到确定所有的次级服务器或邻居列表中标记去掉了所有的节点为 止。当处于非十字路口的结构时,将会出现找不到4个暂定服务器的情况,此时达到了道 路形状的自适应特征。因此,将次一级服务器个数定义为4,符合车载adhoc网络拓扑结 构。并且,在最坏情况下(节点分布极不平均)服务器A每次对某节点发起1次委派信息, 将拒绝3个节点,收敛较快。
例如图5中,直观的观察第一次委任的很可能是路口北侧的某四个节点,但是当第一个次 级服务器广播其邻居节点时,其余三个暂定服务器都会给根服务器A发送拒绝信息,拒 绝自己,致使服务器A修改暂定服务器ID,当A修改后,委任服务器很可能是如图6所示的情况。此时,对SB2进行同步时,包含了新的暂定服务器ID,这时,由于SB!的等 级较高,当它发现自己与SB2周围未同步节点相似度非常高甚至处于包含状态时,将向A 发送拒绝信息,拒绝SB2。此时,服务器A更新暂定节点ID号,变更为图l所示,由于 他们相似度不高,甚至完全不能直接通信。服务器的委任工作完毕,此时,服务器A只 需完成其他节点的同步工作即可。
7.次级服务器履行服务器职能,对周围节点按照根节点的方式进行同步, 一级一级地沿道路 拓扑进行扩展。当某些节点近期已经被其他GPS同步过,或存在其他GPS设备时,它们 返回拒绝参与消息,将不参与任何同步过程。这样避免了同步信息的不必要的反向传递。
权利要求
1. 一种基于车辆ad hoc网络拓扑结构的时间同步方法,其特征在于依照以下步骤实现,步骤1带有GPS设备的节点根服务器A在一个同步周期内,当其速度低于某一个门限值VT时启动同步,VT值由环境进行人工调整,首先从其路由表中提取当前所有邻居节点的ID号,并从GPS设备上获得时间信息,同时向邻居节点广播当前的发送时刻TA0和所有邻居节点的ID号Bi(i=1,2,……,m);步骤2当次级节点Bi接收到根服务器A的消息后,立即记下当前收到消息的时刻TBi0,并存储该消息发来的发送时间TA0,提取自身的邻居列表,去掉A发来的邻居列表中的已存在的节点,计算出剩余邻居节点个数NBi(i=1,2,……,m),将自己的ID号Bi和NBi发还给根服务器A并同时记录发送时的时刻TBi1,当某些节点在本同步周期内已经被其他GPS同步过,或存在包含GPS设备的其他节点时,向A返回拒绝参与的消息,他们将不参与任何同步过程;当一个尚未完成同步的节点在同步过程中收到多个服务器的消息,则取最先发来的消息服务器为其上一级服务器;步骤3服务器A收到了节点Bi的回应消息时,记录接收时刻TABi1(i=1,2,……,m),Bi和NBi,并根据NBi的大小进行插入排序Max~Min(NBi)={NBw,NBx,NBw,NBz……};令排序后的NBi最大的4个节点SB1=Bw,SB2=Bx,SB3=By,SB4=Bz,暂定为次一级服务器;对SBi(i=1,2,3,4)发送消息接受时刻TABi1,本消息发送时刻TABi2,以及暂定次一级服务器的ID号SBi(i=1,2,……,m);对其他非暂定服务器节点Bi,仅发送原发来消息的接受时刻TABi1,本消息发送时刻TABi2;步骤4节点Bi获得了消息后进行本地对时,假设时间差为δ,即δ=TServer-Tclient,则其中,TABi1为服务器接收消息时刻TServer,TBi1为客户端发送消息时刻Tclient,dCSi为消息从客户端到服务器的传输和处理时间,δi为A与Bi的时间误差,dSCi为消息从服务器到客户端的传输和处理时间;假设dCSi=dSCi=di,即消息往返的处理、传输时间相同则消去di得即Bi只需用已知的TABi1、TABi2、TBi1、TBi2计算出δi并对当前时间进行修正,获得标准时间;同时,通过比较TA0-TBi0与TABi2-TBi2来验证链路的稳定性,当差距非常大时,表示链路不稳定,采取其他技术措施,稳定链路,或进行多次同步取平均;步骤5对于暂定服务器的节点SBi,从其路由表中提取当前所有邻居节点的ID号并减去已经同步过的节点集合Bi得到次一级尚未同步节点Ci(i=1,2,……,m),并从本地获得时间信息,同时向邻居节点广播当前的发送时刻TSBi和Ci(i=1,2,……,m)以及A节点指定的暂定服务器的ID号SBi和SBj(j=1,2,3,4,j≠i),对于非暂定服务器,则完成同步工作,返回确认信息;步骤6其他暂定服务器SBj(j=1,2,3,4,j≠i)若能收到SBi广播的消息,则将发来节点的集合与本地节点尚未同步的邻居节点集合Ci(i=1,2,……,m)进行交集和并集运算,交集节点数目占并集节点数目的一半,即相似度在50%以下时,确立自己的次一级服务器地位,并在与A同步后,按照服务器A的工作方式重复步骤2~步骤7,向自身次一级的节点进行逐级同步;若相似度在50%以上甚至完全包含时,说明该节点与SBi距离很近,直接回复拒绝信息给服务器A,且暂定服务器按照服务器顺序,有拒绝的优先权,拒绝排序靠后的暂定服务器;若未收到SBi的消息,说明该节点与SBi距离很远,符合次一级服务器的条件;等待服务器A对其同步时的委派信息,正式委派后按照服务器A的工作方式重复步骤2~步骤7,向C级、D级、E级、……的节点进行逐级同步;步骤7服务器A若收到拒绝信息则立即在原NBi排列顺序中标记被拒绝的节点,选择NBi最大的四个未标记节点,修正为暂定服务器的ID;按照先暂定服务器后普通节点的顺序继续步骤3~步骤7,直到完成所有的同步工作。
全文摘要
本发明公开了一种基于车辆ad hoc网络拓扑结构的时间同步方法。根据车辆总体分布呈现I型、T型或者X型的特点,以具有GPS设备的车辆作为初始时间服务器,按照分级的思想,以路由表中的邻居节点数目为标准,边进行同步,边选出最佳的次一级时间服务器。选出的次一级服务器符合道路形状的特点,且满足具有最多个尚未同步的下一级邻居节点。本发明的特点在于同步和次一级服务器的选择同时进行,防止快速变化的路由造成选出的次级服务器失效。采用了多播和较短的同步信息进行对时,当网络进行全局同步时,使网络产生冲突而瘫痪的机会降低。服务器仅进行一次插入排序过程,其他运算完全由其他节点分担,降低了服务器的运算量。
文档编号H04W84/18GK101534551SQ20091008066
公开日2009年9月16日 申请日期2009年3月25日 优先权日2009年3月25日
发明者侯国梁, 周贤伟, 安建伟, 扬 杨, 杨裕亮 申请人:北京科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1