一种车联网中基于多副本拥塞避免的机会路由算法的制作方法

文档序号:15845864发布日期:2018-11-07 09:00阅读:217来源:国知局
一种车联网中基于多副本拥塞避免的机会路由算法的制作方法
本发明涉及车联网通信
技术领域
,具体涉及一种车联网中基于多副本拥塞避免的机会路由算法。
背景技术
车载自组织网络(vehicularadhocnetwork,vanet)是its中重要的组成部分,通常由车载单元(onboardunit,obu)和路侧单元(roadsideunit,rsu)组成,vanet中支持车车通信(vehicletovehicle,v2v)以及车辆与路边固定基础设施之间的通信(vehicletoinfrastructure,v2i),使得智能驾驶、道路状况预告、安全预警、资源共享等服务都可以成为现实。车载路由是车载网络中实现可靠多跳传输的关键,车辆在城市道路中行驶时需要沿着固定的道路行驶,可以利用道路拓扑、节点位置、速度、方向等信息来辅助路由决策已经成为研究热点。机会路由(opportunisticroutingprotocol)是一种不需要源节点和目的节点之间存在完整路径,采用移动节点的相遇机会实现相互通信的自组织网络,采用“存储-携带-转发”机制,能很好满足车联网通信的特点,目前机会路由研究成果已被广泛应用于车联网中。车载自组织机会路由主要分为两类:基于转发的机会路由和基于多副本的机会路由。基于多副本的机会路由被认为是最合适消息传递的方法,该路由来源于传统的泛洪机制,源节点产生报文后,在移动的过程中,源节点会将其所存储的报文拷贝转发给每一个相遇的中间节点,并通过这些中间节点的泛洪转发,最终将报文递交到目的节点。然而,目前已有的基于多副本的机会路由追求高的传输成功率、低的传输时延,通常会进行大量的数据包转发,大量的无效数据包转发成为节点资源消耗的一个突出问题。在多副本模式的情况下,目前的路由算法并未建立有效的算法来选择最佳下一跳转发节点,这就有可能造成网络拥塞,导致消息传输成功率低、丢包率高、网络开销大等问题。因此,车联网路由协议如何利用好多副本策略,选取最佳下一跳转发节点,避免拥塞,提高网络性能是我们需要解决的问题。技术实现要素:本发明的目的是为了解决现有技术中的上述缺陷,提供一种车联网中基于多副本拥塞避免的机会路由算法。本发明的目的可以通过采取如下技术方案达到:一种车联网中基于多副本拥塞避免的机会路由算法,所述的机会路由算法包括下列步骤:s1、对于任何一个需要转发消息的节点,根据消息副本数的情况分为多副本模式和单副本模式;s2、在多副本模式中,通过邻居节点列表获取邻居节点的节点属性参数,计算候选转发节点的转发效用值,选取合适的转发节点,包括以下子步骤:s201、读取邻居节点列表,获得三个节点属性参数:相遇概率pb(i,d),即邻居节点i与消息目的节点d的相遇概率预测值;空闲缓存比fd(i),即邻居节点i的缓存空闲大小与缓存总大小之比;邻居节点密度nd(i),即节点i的邻居节点数目情况;s202、使用层次分析法计算相遇概率、空闲缓存比、邻居节点密度三个节点属性参数的权重值,并对计算结果进行一致性检验计算;s203、计算邻居节点i的转发效用值,其转发效用值计算表达式如下所示:tu(i)=α*pb(i,d)+β*fd(i)+γ*nd(i)其中,tu(i)为节点i的转发效用值,参数α、β、γ是由层次分析法计算所得的各参数权重值,α+β+γ=1,α≥0,β≥0,γ≥0;s204、根据邻居节点的转发效用值对候选转发节点进行排序,转发效用值越大,候选转发节点传递消息的成功率越高,所以把消息副本转发给该候选转发节点;s3、若消息副本数目等于1则进入单副本模式,不转发消息副本,直到接触到目的节点才转发。进一步地,所述的机会路由算法还包括下列步骤:以转发为圆心,半径为车辆节点通信范围,定期发送hello消息包进行邻居节点列表和相遇概率表的更新与维护。进一步地,所述的层次分析法是采用特征向量法,通过公式aw=λmaxw计算权重,其中矩阵a是权重比矩阵,通过对参数两两之间的重要性比较所得,λmax是矩阵a的最大特征根,权重向量w是矩阵a的最大特征向量,最后将求得的权重向量w通过归一化公式作归一化处理得到各参数的权重,即α,β,γ。进一步地,所述的转发效用值tu计算中包括节点间的相遇概率预测值pb(i,d),计算方法的公式如下所示:节点s与节点i的相遇概率预测值计算公式:pb(s,i)=pb(s,i)old+(1-pb(s,i)old)*pbinit其中,pbinit[0,1]是一个初始常量;节点s与节点i的相遇概率预测值衰减公式:pb(s,i)=pb(s,i)old*γt其中,γ[0,1]是一个衰减常量,t是时间单元的个数;节点s与节点i的相遇概率预测值经由节点j的传递公式:pb(s,i)=pb(s,i)old+(1-pb(s,i)old)*pb(s,j)*pb(j,i)*ε其中,ε(0,1)是传递系数。进一步地,所述的转发效用值tu计算中包括节点i的空闲缓存比fd(i)、节点i的邻居节点密度nd(i),计算方法如下所示:假设源节点s的通信范围内有个邻居节点i,则节点i的空闲缓存比计算公式:其中,fb(i)是节点i的缓存空闲大小,tb(i)是节点i的缓存总大小;邻居节点密度nd(i)计算公式:其中,n(s)为源节点s周围的邻居节点数,n(i)为节点i周围的邻居节点数。进一步地,所述的多副本模式下,每个节点携带的消息副本数是均等转发的,即携带消息节点转发一半数量的消息副本给最佳下一跳转发节点,节点自己剩下另一半数量的消息副本,直到遇到目的节点或者进入单副本模式。进一步地,针对消息m的下一跳转发节点,选择邻居节点中的转发效用值最大,同时大于源节点的转发效用值的节点为最佳下一跳转发节点。本发明相对于现有技术具有如下的优点及效果:1)本发明提供的路由算法解决了在多副本路由中下一跳转发节点选取不合理而造成的传输成功率低、时延大、路由开销大的问题。2)本发明提出的转发效用值算法可有效解决了多副本路由算法中拥塞问题,合理利用网络资源,避免网络资源的浪费,更适合车载自组织网络的特点。附图说明图1是本发明消息转发场景图;图2是本发明路由算法流程图;图3是本发明实施例中theone的仿真城市场景图;图4是本发明实施例中算法与sprayandwait路由协议的投递率比较示意图;图5是本发明实施例中算法与sprayandwait路由协议的端到端时延比较示意图;图6是本发明实施例中算法与sprayandwait路由协议的路由开销比较示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。实施例在本实施例中,如图1是本发明车辆消息转发场景图,如图2是本发明路由算法的整体流程图。利用theone网络仿真器分别对本发明所述的机会路由算法与dtn中经典的基于多副本路由协议sprayandwait进行仿真和比较,仿真参数设置如表1所示,仿真场景地图如图3所示,该地图为荷兰赫尔辛基城市地图。仿真结果如图4、图5和图6所示,其分别为投递率、端到端时延、路由开销的对比分析图。表1.theone的仿真参数值设置表地图大小4500m*3400m(helsinki)仿真时间/s3000缓存大小15m通信半径200m传输速率3mbps消息ttl/min20节点数目180,300,420,540,660副本数8节点速度5.4km/h,28.8km/h,57.6km/h本实施例具体流程如下:(1)如图1所示,构建了一个区域内车辆转发消息的场景,a、b、c车辆节点是s车辆的邻居节点,d车辆节点是s车辆携带消息m的目的节点。每个车辆节点通过hello消息包定期更新周围邻居节点表和相遇概率表。相遇概率预测值的更新公式如下所示:节点s与节点i的相遇概率预测值计算公式:pb(s,i)=pb(s,i)old+(1-pb(s,i)old)*pbinit其中pbinit[0,1]是一个初始常量。节点s与节点i的相遇概率预测值衰减公式:pb(s,i)=pb(s,i)old*γt其中,γ[0,1]是一个衰减常量,t是时间单元的个数。节点s与节点i的相遇概率预测值经由节点j的传递公式:pb(s,i)=pb(s,i)old+(1-pb(s,i)old)*pb(s,j)*pb(j,i)*ε其中,ε(0,1)是传递系数。(2)现s车辆有待发消息m,消息m的副本数为20。当s车辆节点需要转发消息m时,进入步骤(3)。(3)根据消息m的副本数判断采用的策略,当副本数等于1的时候,采用单副本模式,所有携带消息m的节点只有遇到目的节点才将报文递交出去。当副本数大于2的时候,进入多副本模式,即本专利提出的方法。消息m的副本数为20,所以采用多副本模式,进入步骤(4)。(4)车辆s需要在a、b、c车辆节点中选择下一跳转发节点转发消息m。本发明技术方法在选择下一跳转发节点的时候,通过转发效用值来选择最佳下一跳转发节点,进行消息m的多副本转发。本步骤包括以下子步骤:(4.1)读取邻居节点列表,获得三个节点属性参数:相遇概率pb(i,d),即邻居节点i与消息目的节点d的相遇概率预测值;空闲缓存比fd(i),即邻居节点i的缓存空闲大小与缓存总大小之比;邻居节点密度nd(i),即节点i的邻居节点数目情况。其中节点i的空闲缓存比fd(i)、节点i的邻居节点密度nd(i),计算方法如下所示:假设源节点s的通信范围内有个邻居节点i,则节点i的空闲缓存比计算公式:其中fb(i)是节点i的缓存空闲大小,tb(i)是节点i的缓存总大小;邻居节点密度nd(i)计算公式:其中n(s)为源节点s周围的邻居节点数,n(i)为节点i周围的邻居节点数。(4.2)使用层次分析法计算相遇概率、空闲缓存比、邻居节点密度三个节点属性参数的权重值,并对计算结果进行一致性检验计算。标度法如表2所示,对本实例中的节点属性参数进行重要程度赋值,得到权重比矩阵a如表3所示。表2.标度定义表表3.权重比矩阵定义表根据层次分析法中的特征向量法公式aw=λmaxw计算得到矩阵a的最大特征根λmax,矩阵a的最大特征向量权重向量w,最后将求得的权重向量w通过归一化公式作归一化处理得到各参数的权重,即得α=0.3,β=0.54,γ=0.16。对所得的结果进行一致性检验:计算一致性比例:当cr<0.1时候,认为权重比矩阵的一致性是可以接受的,否则应对权重比矩阵作适当修改。本实施例中考虑3个节点属性参数,所以n取3,查下表4,当n=3时,ri=0.52,计算得到本实例cr=0.0079<0.1,所以该权重比矩阵计算得到的权重值是可以接受的。表4.节点属性参数表(4.3)分别计算车辆节点a、b、c、s中b车辆节点的转发效用值,转发效用值的计算公式为:tu(i)=α*pb(i,d)+β*fd(i)+γ*nd(i)其中tu(i)为节点i的转发效用值,参数α=0.3、β=0.54、γ=0.16。(4.4)根据转发效用值对车辆节点a、b、c进行排序,车辆节点s选择邻居节点中转发效用值最大的节点为最佳下一跳转发候选节点。如果该节点的转发效用值大于源节点s的转发效用值,则选该节点为最佳下一跳转发节点;相反,则源节点继续携带该消息,直到合适的转发节点。仿真参数设置如表1所示,按照以上步骤实现本发明方法,并在theone网络仿真器中进行实现与仿真,得到仿真结果如图4、图5、图6所示。图4、图5、图6分别所示的是随着车辆节点数目的增大,本方法较之dtn中经典的基于多副本的机会路由sprayandwait在投递率、端到端时延、路由开销上有明显的提升,优化了网络的性能。上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1