一种车载AdHoc网络的自适应路由协议方法

文档序号:10493051阅读:379来源:国知局
一种车载Ad Hoc网络的自适应路由协议方法
【专利摘要】本发明涉及车辆自组织网络领域,更具体地,涉及一种车载Ad Hoc网络的自适应路由协议方法。所述协议方法包括路由节点网络和链路状态的监控步骤,监控步骤包括:A1.网络中的节点周期性发送路由请求包REQ,利用贝叶斯网络计算各个节点和邻居节点之间的发包概率,建立网络状态概率转移矩阵;A2.网络中的其他节点收到REQ,更新网络状态概率转移矩阵,得到马尔科夫链;A3.利用节点间的网络状态概率转移矩阵计算马尔科夫链之中每个链路的连通性并选择发送REQ或者REP数据包。本发明的监控机制不仅有效解决了VANET网络中通信链路不稳定的问题,减少了数据包冲突的发生概率,还为数据流量模型预测提供了一个很好的途径。
【专利说明】
_种车载Ad Hoc网络的自适应路由协议方法
技术领域
[0001] 本发明涉及车辆自组织网络领域,更具体地,涉及一种车载Ad Hoc网络的自适应 路由协议方法。
【背景技术】
[0002] 车载Ad hoc网络(VANETVehicular Ad-hoc NETwork,车辆自组织网络)是一种由 若干个移动的具有接收和发送功能的无线节点构成的自适应网络,其便捷、灵活、自组织的 特性弥补了现有网络的不足,因此VANET通信网络在军事和民用领域具有广泛的用途。 VANET中的节点需要在没有预设任何基础设施的情况下完成通信,不仅需要充当信源和信 宿节点,还需要充当路由器对其他节点发送的分组进行转发,因此需要有合适的路由协议 实现这些功能。但由于VANET中的节点随着车辆高速移动,网络拓扑结构变化频繁,通信链 路割裂严重,此外复杂多变的城市环境等特点使传统的Ad Hoc路由协议直接运用在VANET 上的效果很不理想,所以根据城市交通下VANET的通信特点,研究出能保证车辆间高效且可 靠通信的路由协议,一直是Ad Hoc网络讨论的重点。
[0003] 现有的路由协议如A0DV和GPSR在进行路由选择时,只是考虑节点的位置、节点间 距离和Q0S等这些静态参数,而没有考虑交通的实时情况。这一类协议计算出的路径,部分 路段长度过长、车辆密度太小,导致车辆间连通性较低,时延很大,甚至出现数据分组的丢 失,或者链路经常断裂造成延时变大,分组传输冲突的比率上升,造成网络的负载较大。

【发明内容】

[0004] 本发明为克服上述现有技术所述的至少一种缺陷(不足),提供一种能够增强链路 稳定性和有效性的车载Ad Hoc网络的自适应路由协议方法。
[0005] 为解决上述技术问题,本发明的技术方案如下:
[0006] 一种车载Ad Hoc网络的自适应路由协议方法,所述协议方法包括路由节点网络和 链路状态的监控步骤,监控步骤包括:
[0007] A1.网络中的节点周期性发送路由请求包REQ,利用贝叶斯网络计算各个节点和邻 居节点之间的发包概率,建立网络状态概率转移矩阵;
[0008] A2.网络中的其他节点收到REQ,更新网络状态概率转移矩阵,得到马尔科夫链;
[0009] A3.利用节点间的网络状态概率转移矩阵计算马尔科夫链之中每个链路的连通性 并选择发送REQ或者REP数据包。
[0010] 本发明的路由协议方法通过路由节点网络和马尔科夫链在相邻网络节点间建立 网络状态概率转移矩阵,该监控机制不仅有效解决了 VANET网络中通信链路不稳定的问题, 减少了数据包冲突的发生概率,还为数据流量模型预测提供了一个很好的途径。
[0011 ]上述方案中,所述路由请求包REQ中包括数据包唯一性标志号、节点IP地址、节点 唯一标识号、目的节点的IP地址位置、目的节点唯一性标志号、当前节点链路状态。
[0012]上述方案中,A1中网络状态概率转移矩阵的具体建立过程如下:
[0013]将链路中节点之间的发包概率看做一个状态空间,将状态空间之中任意相邻的节 点E发送数据包到达节点H的联合概率看作是一个贝叶斯过程:
[0015 ] 其中pHE表示H和E两个节点之间的发包数量,PH表示经过节点H的发包数量,P (HIE) 表示节点E向节点H发送数据包的概率。
[0016]上述方案中,A2中马尔科夫链路的建立具体如下:
[0017]网络中的节点每发送一次路由请求包REQ,更新一次状态转移矩阵,则由p(XnW# 至ljp(xn+1),此过程表示为一个马尔科夫过程,利用马尔科夫模型对节点之间的数据包发送 进行定量预测,得到一个路由序列:
[0018] p(xi, A ,Xk) =p(xk | xi, A ,Xk-i) A p(x21 xi)p(xi);
[0019] 其中,xn表示当前网络之中的当前节点,xn+i表示和当前节点相连的下一跳节点,p (xi,…,Xk )表示节点XI至Xk组成一个联通链路的概率,其由p (xi,…,Xk-1)推导出来。
[0020] 上述方案中,A3的具体步骤包括:
[0021] A31.当源节点需要发送数据时,其向周围的第一层邻居节点广播路由请求包REQ;
[0022] A32.当中间节点H收到寻址请求数据包时,中间节点H提取数据包的信息,并统计 过去一段时间的收发数据包情况,计算和上一跳节点E的联系概率P(H|E),判断当前的马尔 科夫链概率是否大于预设的阈值,若是则停止转发数据包,并发送包含本链路信息的应答 数据包REP到达源节点;否则,中间节点继续检查当前数据包是否已经到达过本节点,若是 则丢弃该数据包,否则中间节点更新自身ip地址、物理地址和链路概率到REQ数据包中,接 着继续向外转发数据包;
[0023] A33.若源节点收到自外层网络发来的REP数据包,源节点提取数据包中的信息,并 检查路由表之中是否包含相同的链路信息,若是更新该链路信息,否则将该马尔科夫链保 存到路由表之中;其中若过了预定时间某条链路信息没有更新,则该链路从路由表中删除。
[0024]上述方案中,所述协议方法还包括数据包转发步骤,具体包括:
[0025] B1.需要发送数据的源节点,计算获得自身以及目的节点的ip地址和物理地址,并 获得自身的适应值和邻居节点的适应值,然后更新到自身的路由缓存之中;
[0026] B2.源节点按照路由表的链路信息计算获取最佳下一跳节点,把包含目的节点信 息在内的数据包发给最佳的下一跳节点;
[0027] B3 .中间节点收到数据包之后,判断自身是否是目的节点,若是则停止发送数据 包,并且发送应答REP包沿着链路路由节点返回到源节点,否则更新自身的路由信息到数据 包之内,然后发送到下一跳节点。
[0028] 本发明进行分组转发时,利用粒子群算法进行下一跳的节点选择,考虑全局和局 部的特性,使得所选择的下一跳更加准确,大大提高了分组投递率,降低了链路之中的时 延。
[0029] 上述方案中,B1中源节点的适应值和邻居节点的适应值的具体计算方式如下:
[0030] 定义<⑴为和当前节点i相连的下一跳节点j到目的节点d的距离,定义;(0为下 一跳节点j和当前节点i的距离值,根据如下公式计算下一跳节点j相对于当前节点i的适应 值:
[0031 ] g"⑴二 orL;;⑴ + 供;;(,)
[0032] 其中a和e为加权系数,a和赌卩大于0且满足a+e=l,glj(t)表示下一跳节点j的初始 适应值,t表示当前时刻,c表示源节点
[0033] 上述方案中,B2中源节点按照路由表的链路信息计算获取最佳下一跳节点的具体 步骤为:
[0034] B21.比较计算得到局部最优和全局最优节点以及它们对应的适应值;
[0035] B22.根据各个节点的连通度和延时情况更新认知系数;
[0036] B23.代入粒子群公式计算各个节点的相对适应值,选择最小的相对值适应值对应 的节点作为最佳的下一跳节点。
[0037]上述方案中,B21的具体步骤为:
[0038] 当前节点计算链路最外层节点对应的适应值,选择最小的适应值gbest对应的节 点作为全局最优,将邻居节点适应值最小的节点pbest最为局部最优;
[0039] B23各个节点的相对适应值的计算方式如下:
[0040] A Fk = y〇vk+lii*f (pbestk-F)+li2*f (gbestk-F)
[0041] 其中,k表示当前节点的第k个邻居节点,A Fk表示第k个邻居节点和当前节点的相 对适应值;惯性权重为常数;Vk是指第k个邻居节点和当前节点的距离变化率,源节点初始 适应值为〇,pbestk是当前节点的第k个邻居节点对应的适应值,gbestk代表第k个邻居节点 对应的全局最优节点的适应值;F表示当前节点的适应值,默认为0;;对于更新函数f (x ),定 义如下:
[0042] f(x)=Rx*ex*c
[0043] 其中k为常数,f(x)的作用是自适应调整适应值x,防止因为x过大或者过小造成路 径选择出现偏差;Rx表示调整系数,定义如下 ^ [1,、丨'.[x>0
[0044] ,
[-1, !x <0
[0045] 学习因子y1:
[0047] 其中tr代表当前传输的局部时延,N代表与当前节点联通的节点数目;
[0048] 学习因子叱:
[0050] 其中tk代表当前传输的全局时延。
[0051] 上述方案中,所述协议方法还包括路由修复步骤,具体是网络节点在数据包传输 过程中,当链路发生断裂或者数据包发生丢失时,开始路由修复模式。
[0052]上述方案中,所述路由修复模式具体包括:
[0053] C1.当监控步骤中的寻址过程发生丢包时,发生丢包的节点更新贝叶斯节点网络 的网络状态概率转移矩阵,通过计算新的网络状态概率转移矩阵得到可用的马尔科夫链, 当前节点将新的链路信息封装到路由请求数据包发送到相邻的节点,相邻节点收到路由请 求包并重新评估网络状态,然后重发寻址数据包。
[0054] C2.当数据包转发步骤中的数据传输过程发生丢包时,若中间节点收不到应答REP 包,其会更新自身的网络状态概率转移矩阵,按照各条马尔科夫链路计算局部和全局最优, 然后计算邻居节点相对的适应值和连通度,按照计算得到的结果选择最佳的下一跳节点; 如果一段时间之内没有收到回复数据包,中间节点重发数据包或者选择新的路径发送数据 包。
[0055] 本发明采用连通度修正的方法,调整认知系数,降低了链路断裂的可能性,提高了 路由的准确率。
[0056] 与现有技术相比,本发明技术方案的有益效果是:
[0057]本发明建立路由节点网络和链路状态监控机制,通过路由节点网络和马尔科夫链 在相邻的网络节点之间建立网络状态概率转移矩阵,该监控机制增强了链路的稳定性和有 效性。
[0058]本发明在进行分组转发过程中,采用PS0算法进行下一跳的节点选择,基于全局和 局部的特性,选择下一跳更加准确,大大提高了分组投递率,降低了链路之中的时延。
[0059]此外本发明还采用连通度修正的方法,调整认知系数,降低了链路断裂的可能性, 有效提尚了路由的准确率。
[0060]本发明的仿真对比和结果分析表明本发明的方法对VANET环境有更好地适应性, 在确保链路Q0S质量的前提下,能对网络的动态变化做出迅速反应。
【附图说明】
[0061 ]图1为本发明一种车载Ad Hoc网络的自适应路由协议方法具体实施例中贝叶斯网 络监控步骤的流程图。
[0062]图2为本发明一种车载Ad Hoc网络的自适应路由协议方法具体实施例中数据包发 送步骤的流程图。
[0063]图3为本发明一种车载Ad Hoc网络的自适应路由协议方法具体实施例中利用不同 协议进行仿真中节点变化时分组投递率变化结果图。
[0064]图4为本发明一种车载Ad Hoc网络的自适应路由协议方法具体实施例中利用不同 协议进行仿真中发包速率变化时分组投递率变化结构图。
[0065]图5为本发明一种车载Ad Hoc网络的自适应路由协议方法具体实施例中利用不同 协议进行仿真中节点变化时端到端时延变化结果图。
[0066]图6为本发明一种车载Ad Hoc网络的自适应路由协议方法具体实施例中利用不同 协议进行仿真中发包速率变化时端到端时延变化结果图。
【具体实施方式】
[0067] 附图仅用于示例性说明,不能理解为对本专利的限制;
[0068] 为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品 的尺寸;
[0069] 对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解 的。
[0070] 下面结合附图和实施例对本发明的技术方案做进一步的说明。
[0071] 实施例1
[0072] 一种车载Ad Hoc网络的自适应路由协议方法,所述协议方法包括路由节点网络和 链路状态的监控步骤、数据包转发步骤和路由修复步骤。具体地,监控步骤具体包括:
[0073] A1.网络中的节点周期性发送包括当前节点链路状态、节点ip地址、唯一性标识号 的路由请求包REQ,利用贝叶斯网络计算各个节点和邻居节点之间的发包概率,建立网络状 态概率转移矩阵。
[0074] A2.网络中的其他节点收到REQ,更新网络状态概率转移矩阵,得到马尔科夫链;
[0075] 为了在网络之中维护信息表,需要在网络的若干层节点之间保持链路联系。在本 具体实施例中,采用贝叶斯网络的方法来确定链路表的大小。先将VANET网络的网络拓朴结 构表示为一个有向无环图(DAG)。路由节点网络的有向无环图中的节点表示随机变量{X:, X2,Xn},为了决定贝叶斯网络的结构,需要满足要求的节点子集pal(i = l,2,…,n)以及将变 量Xi,X2,??义按照某种次序排列。
[0076] 令G=(I,E)表示一个有向无环图(DAG),其中I代表图形中所有的节点的集合,而E 代表有数据包传递的边集合,且令E、Hei为其有向无环图中的某两个随机节点,那么节点E 发送数据包到达H的联合概率可以表示成:
[0078] 其中phe表示H和E两个节点之间的发包数量,ph表示经过节点H的发包数量,P (H | E) 表示节点E向节点H发送数据包的概率,为了连接一定层数的节点,因此需要计算若干节点 的传输概率。将此过程表示为一个马尔科夫过程,利用此模型对节点之间的数据包发送做 出定量预测,就会产生一个路由序列。
[0079] p(xi, A ,Xk) =p(xk | xi, A ,Xk-i) A p(x21 xi)p(xi) (2)
[0080]其中,xn表示当前网络之中的当前节点,xn+i表示和当前节点相连的下一跳节点,p (XI,…,Xk)表示节点XI至Xk组成一个联通链路的概率,其由p (XI,…,Xk-l)推导出来,依次类 推得到其他连通链路的概率,其中P(Xi,X2)代表两个节点之间的概率。
[0081 ]马尔科夫链是根据状态转移概率联系起来的一个个状态所组成的"链路",然后可 以根据VANET之中数据包传播的概率矩阵,求出预测值状态的各阶转移概率矩阵,当某个链 路的概率大于一定的阈值,就会认为当前链路是稳定的可靠的,即数据包通过该链路是有 一定概率可以发生的。否则认为该链路不可靠。
[0082] A3.利用节点间的网络状态概率转移矩阵计算马尔科夫链之中每个链路的连通性 并选择发送REQ或者REP数据包。当网络之中的节点数目小于一定的值,比如10,就可以采用 全局广播然后接收应答REP包的办法,直接获得最佳的路由路径。当网络之中的节点数目大 于该值之后,此时洪泛算法不实用这种情况,为了提高连通性,本文通过贝叶斯网络计算得 到马尔科夫链,然后利用概率转移矩阵计算得到每个链路的概率和跳数等信息,也就是每 个链路预计的跳数值。具体地如图1所示:
[0083] A31.当源节点需要发送数据时,其向周围的第一层邻居节点广播路由请求包REQ; REQ包中包含数据包唯一性标志号、节点IP地址、节点唯一标识号、目的节点的IP地址位置、 目的节点唯一性标志号、当前节点链路状态等信息。
[0084] A32.当中间节点H收到寻址请求数据包时,中间节点H提取数据包的信息,并统计 过去一段时间的收发数据包情况,计算和上一跳节点E的联系概率P(H|E),判断当前的马尔 科夫链概率是否大于预设的阈值,若是则停止转发数据包,并发送包含本链路信息的应答 数据包REP到达源节点;否则,中间节点继续检查当前数据包是否已经到达过本节点,若是 则丢弃该数据包,否则中间节点更新自身ip地址、物理地址和链路概率到REQ数据包中,接 着继续向外转发数据包;
[0085] A33.若源节点收到自外层网络发来的REP数据包,源节点提取数据包中的信息,将 链路信息保存在自身的路由信息表中,以及设置链路计数值计数,并检查路由表之中是否 包含相同的链路信息,若是更新该链路信息,否则将该马尔科夫链保存到路由表之中;其中 若过了预定时间某条链路信息没有更新,则该链路从路由表中删除。
[0086] 如图2所示,数据包转发步骤具体包括:
[0087] B1.需要发送数据的源节点,计算获得自身以及目的节点的ip地址和物理地址,并 获得自身的适应值和邻居节点的适应值,然后更新到自身的路由缓存之中。具体地,定义 4(0为和当前节点i相连的下一跳节点j到目的节点d的距离,定义;(0为下一跳节点j和 当前节点i的距离值,根据如下公式计算下一跳节点j相对于当前节点i的适应值:
[0088] g;l{t)^aL'ij(f) + pLiXt)⑴
[0089] 其中a和0为加权系数,a和0都大于0且满足a+0=l,两者反映了目的节点d和当前 节点i对适应值的影响程度。gij (t)表示下一跳节点j的适应值,在此公式中,适应值计算需 要考虑到源节点和目的节点的距离,因此计算的适应值是各个邻居节点相对源节点的相对 适应值数组,故源节点的适应值,不需要计算,默认源节点的&(0为0。从公式中可以看出, 状态空间节点的适应值和当前节点以及目的节点都有关系,距离越近,适应值越小,网络发 生锻炼的可能性就越小,网络就越稳定。
[0090] B2.源节点按照路由表的链路信息计算获取最佳下一跳节点,把包含目的节点信 息在内的数据包发给最佳的下一跳节点;其中源节点按照路由表的链路信息计算获取最佳 下一跳节点的具体步骤为:
[0091] B21.比较计算得到局部最优和全局最优节点以及它们对应的适应值。具体地,当 前节点计算链路最外层节点对应的适应值,选择最小的适应值gbest对应的节点作为全局 最优,将邻居节点适应值最小的节点pbest最为局部最优。
[0092] B22.根据各个节点的连通度和延时情况更新认知系数;
[0093] B23.代入粒子群公式计算各个节点的相对适应值,选择最小的相对值适应值对应 的节点作为最佳的下一跳节点。其中各个节点的相对适应值的计算方式如下:
[0094] A Fk = y〇vk+lii*f (pbestk-F)+li2*f (gbestk-F) (4)
[0095]其中,k表示当前节点的第k个邻居节点,A Fk表示第k个邻居节点和当前节点的相 对适应值;惯性权重为常数;Vk是指第k个邻居节点和当前节点的距离变化率,源节点初始 适应值为〇,pbestk是当前节点的第k个邻居节点对应的适应值,gbestk代表第k个邻居节点 对应的全局最优节点的适应值;F表示当前节点的适应值,默认为0;
[0096]对于更新函数f (X),定义如下:
[0097] f(x)=Rx*ex*c (5)
[0098] 其中公式(5)中的c为常数,一般取值(0,1)之间,f (x)的作用是自适应调整适应值 X,防止因为X过大或者过小造成路径选择出现偏差;Rx表示调整系数,定义如下 f 1,当x > 0
[0099] = 1 1 ^ n H,彐*<〇 (6)
[0100] 节点的连通度修正用来调整邻居节点的相对适应值,当某个节点连通度N很小,数 据包经过该节点可能丢失,意味着链路不稳定性变大;
[0101] 学习因子:
[0103] 其中tr代表当前传输的局部时延,当tr增大,m也会变大,相对适应值变大代表链 路容易断裂不稳定,当tr变小,^也会变小,代表链路稳定。N代表与当前节点联通的节点数 目,即为连通度,N越大,链路不稳定性越小;
[0104] 学习因子叱:
[0106] 其中tk代表当前传输的全局时延。
[0107] 本具体实施例中的PSO路由选择算法,在进行适应值计算的时候考虑了全局和局 部的特性,使下一跳节点的选择更加准确,降低了传输时延和丢包的概率。
[0108] B3.中间节点收到数据包之后,判断自身是否是目的节点,若是则停止发送数据 包,并且发送应答REP包沿着链路路由节点返回到源节点,否则更新自身的路由信息到数据 包之内,然后发送到下一跳节点。
[0109] 具体地,路由修复步骤具体是网络节点在数据包传输过程中,当链路发生断裂或 者数据包发生丢失时,开始路由修复模式。具体包括:
[0110] C1.当监控步骤中的寻址过程发生丢包时,发生丢包的节点更新贝叶斯节点网络 的网络状态概率转移矩阵,通过计算新的网络状态概率转移矩阵得到可用的马尔科夫链, 当前节点将新的链路信息封装到路由请求数据包发送到相邻的节点,相邻节点收到路由请 求包并重新评估网络状态,然后重发寻址数据包。
[0111] C2.当数据包转发步骤中的数据传输过程发生丢包时,若中间节点收不到应答REP 包,其会更新自身的网络状态概率转移矩阵,按照各条马尔科夫链路计算局部和全局最优, 然后计算邻居节点相对的适应值和连通度,按照计算得到的结果选择最佳的下一跳节点; 如果一段时间之内没有收到回复数据包,中间节点重发数据包或者选择新的路径发送数据 包。
[0112] 本具体实施例在进行NS2仿真实验时通过改变VANET之中的节点数目和发包速率 来观察本算法的延时性能和分组投递率,延时是表示单位数量数据包的平均延时长度,分 组投递率代表一定的时间内数据包成功发送的比例。节点数目用来模拟VANET网络的拓扑 结构,节点数目越大,表示贝叶斯网络状态空间的链路数目越多,链路断裂的可能性越小; 发包速率用来模拟网络的负载状态,发包速率越小,代表网络需要传输的数据包越少,发生 冲突的概率就会越小。
[0113] 图3-6是本发明的仿真结果图。图3和4表示,随着节点数目变大的时候,相对于 AODV和GPSR,本发明的分组投递率和延时性能明显优于前者,这是因为本发明的状态监控 机制和APSO算法在VANET网络动态变化的时候有更好的适应性能。图5和6表示,随着发包速 率变大,在网络的负载变重的情况下本发明依然具有更好的分组投递率和实验性能,这是 因为本发明的自适应调控机制大大降低数据包冲突和丢包概率。
[0114] 相同或相似的标号对应相同或相似的部件;
[0115] 附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;
[0116] 显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对 本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可 以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本 发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求 的保护范围之内。
【主权项】
1. 一种车载Ad Hoc网络的自适应路由协议方法,其特征在于,所述协议方法包括路由 节点网络和链路状态的监控步骤,监控步骤包括: Al.网络中的节点周期性发送路由请求包REQ,利用贝叶斯网络计算各个节点和邻居节 点之间的发包概率,建立网络状态概率转移矩阵; A2.网络中的其他节点收到REQ,更新网络状态概率转移矩阵,得到马尔科夫链; A3.利用节点间的网络状态概率转移矩阵计算马尔科夫链之中每个链路的连通性并选 择发送REQ或者REP数据包。2. 根据权利要求1所述的车载Ad Hoc网络的自适应路由协议方法,其特征在于,Al中网 络状态概率转移矩阵的具体建立过程如下: 将链路中节点之间的发包概率看做一个状态空间,将状态空间之中任意相邻的节点E 发送数据包到达节点H的联合概率看作是一个贝叶斯过程:其中PHE表示H和E两个节点之间的发包数量,PH表示经过节点H的发包数量,P (HIE)表示 节点E向节点H发送数据包的概率。3. 根据权利要求1所述的车载Ad Hoc网络的自适应路由协议方法,其特征在于,A2中马 尔科夫链路的建立具体如下: 网络中的节点每发送一次路由请求包REQ,更新一次状态转移矩阵,则由ρ(χη)得到p (χη+1),此过程表示为一个马尔科夫过程,利用马尔科夫模型对节点之间的数据包发送进行 定量预测,得到一个路由序列: p(xi, A ,xk)=p(xk|xi, Λ ,xk-i) Ap(x21 χι)ρ(χι) 其中,Xn表示当前网络之中的当前节点,Xn + l表示和当前节点相连的下一跳节点,P (Xl,…,Xk )表示节点Xl至Xk组成一个联通链路的概率,其由P ( Xl,…,Xk-1)推导出来。4. 根据权利要求1所述的车载Ad Hoc网络的自适应路由协议方法,其特征在于,A3的具 体步骤包括: A31.当源节点需要发送数据时,其向周围的第一层邻居节点广播路由请求包REQ; A32.当中间节点H收到寻址请求数据包时,中间节点H提取数据包的信息,并统计过去 一段时间的收发数据包情况,计算和上一跳节E点的联系概率P(H|E);判断当前的马尔科夫 链概率是否大于预设的阈值,若是则停止转发数据包,并发送包含本链路信息的应答数据 包REP到达源节点;否则,中间节点继续检查当前数据包是否已经到达过本节点,若是则丢 弃该数据包,否则中间节点更新自身ip地址、物理地址和链路概率到REQ数据包中,接着继 续向外转发数据包; A33.若源节点收到自外层网络发来的REP数据包,源节点提取数据包中的信息,并检查 路由表之中是否包含相同的链路信息,若是更新该链路信息,否则将该马尔科夫链保存到 路由表之中;其中若过了预定时间某条链路信息没有更新,则该链路从路由表中删除。5. 根据权利要求4所述的车载Ad Hoc网络的自适应路由协议方法,其特征在于,所述协 议方法还包括数据包转发步骤,具体包括: BI.需要发送数据的源节点,计算获得自身以及目的节点的ip地址和物理地址,并获得 自身的适应值和邻居节点的适应值,然后更新到自身的路由缓存之中; B2.源节点按照路由表的链路信息计算获取最佳下一跳节点,把包含目的节点信息在 内的数据包发给最佳的下一跳节点; B3.中间节点收到数据包之后,判断自身是否是目的节点,若是则停止发送数据包,并 且发送应答REP包沿着链路路由节点返回到源节点,否则更新自身的路由信息到数据包之 内,然后发送到下一跳节点。6. 根据权利要求5所述的车载Ad Hoc网络的自适应路由协议方法,其特征在于,Bl中源 节点的适应值和邻居节点的适应值的具体计算方式如下: 定义#(0为和当前节点i相连的下一跳节点j到目的节点d的距离,定义;⑴为下一跳 节点j和当前节点i的距离值,根据如下公式计算下一跳节点j相对于当前节点i的适应值: 其中CX和β为加权系数,CX^jpw人丁LU=U两- i,gij V L ;长示下一跳节点j的适应值,t 表示当前时刻,c表示源节点。7. 根据权利要求5所述的车载Ad Hoc网络的自适应路由协议方法,其特征在于,B2中源 节点按照路由表的链路信息计算获取最佳下一跳节点的具体步骤为: B21.比较计算得到局部最优和全局最优节点以及它们对应的适应值; B22.根据各个节点的连通度和延时情况更新认知系数; B23.代入粒子群公式计算各个节点的相对适应值,选择最小的相对值适应值对应的节 点作为最佳的下一跳节点。8. 根据权利要求7所述的车载Ad Hoc网络的自适应路由协议方法,其特征在于,B21的 具体步骤为: 当前节点计算链路最外层节点对应的适应值,选择最小的适应值gbest对应的节点作 为全局最优,将邻居节点适应值最小的节点pbest最为局部最优; B23各个节点的相对适应值的计算方式如下: A Fk = y〇vk+yi*f (pbestk~F)+y2*f (gbestk-F) 其中,k表示当前节点的第k个邻居节点,△ Fk表示第k个邻居节点和当前节点的相对适 应值;惯性权重μ〇为常数;Vk是指第k个邻居节点和当前节点的距离变化率,源节点初始适应 值为〇,pbestk是当前节点的第k个邻居节点对应的适应值,gbestk代表第k个邻居节点对应 的全局最优节点的适应值;F表示当前节点的适应值,默认为0; 对于更新函数f (X),定义如下: f(x) =Rx^exte 其中c为常数,f(x)的作用是自适应调整适应值X,防止因为X过大或者过小造成路径选 择出现偏差;Rx表示调整系数,定义如下 学习因子μ1:其中tr代表当前传输的局部时延,N代表与当前节点联通的节点数目; 学习因子μ2:其中tk代表当前传输的全局时延。9. 根据权利要求6-8任一项所述的车载Ad Hoc网络的自适应路由协议方法,其特征在 于,所述协议方法还包括路由修复步骤,具体是网络节点在数据包传输过程中,当链路发生 断裂或者数据包发生丢失时,开始路由修复模式。10. 根据权利要求9所述的车载Ad Hoc网络的自适应路由协议方法,其特征在于,所述 路由修复模式具体包括: Cl.当监控步骤中的寻址过程发生丢包时,发生丢包的节点更新贝叶斯节点网络的网 络状态概率转移矩阵,通过计算新的网络状态概率转移矩阵得到可用的马尔科夫链,当前 节点将新的链路信息封装到路由请求数据包发送到相邻的节点,相邻节点收到路由请求包 并重新评估网络状态,然后重发寻址数据包。 C2.当数据包转发步骤中的数据传输过程发生丢包时,若中间节点收不到应答REP包, 其会更新自身的网络状态概率转移矩阵,按照各条马尔科夫链路计算局部和全局最优,然 后计算邻居节点相对的适应值和连通度,按照计算得到的结果选择最佳的下一跳节点;如 果一段时间之内没有收到回复数据包,中间节点重发数据包或者选择新的路径发送数据 包。
【文档编号】H04W40/38GK105848247SQ201610329566
【公开日】2016年8月10日
【申请日】2016年5月17日
【发明人】彭石, 周杰英, 刘映淋, 许杨鹏
【申请人】中山大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1