一种车辆自组织网络路由方法与流程

文档序号:11779291阅读:273来源:国知局
一种车辆自组织网络路由方法与流程

本发明涉及车辆自组织网络vanet(vehicleadhocnetwork)技术领域,特别涉及一种车辆自组织网络路由方法。



背景技术:

vanet是一种由具有无线通信能力的可移动节点组成、不需要基础设施支持的无线通信系统。在vanet中,所有车辆节点地位平等,车辆自身充当路由器并转发数据,通过协作实现与其它节点的相互通信;同时,由于车辆节点可移动,网络拓扑具有动态变化的特点。由于vanet具有节点移动、拓扑变化、自组织等特点,使得vnaet网络中的分布式应用有别于传统网络的信息分发方式,并且需要更先进的通信技术。

基于地理位置的路由协议及其方法具有高效、可靠和健壮性强等优点,因此是一种适合vnaet中分布式应用的通信技术,近年来受到人们的持续关注。

mjerbi等人于2006年在文献improvedgreedytrafficawareroutingprotocolforvehicularadhocnetworksincityenvironments,internationalworkshoponvehicularadhocnetworks,2006:88-89提出了一种路由转发算法gytar,每个车辆节点预先装载能提供街道级图的电子地图,通过电子地图车辆节点能够获取到自己所在路段、自己的位置、本路段与其他路段相交的路口位置。该算法假设所有参与算法的车辆节点均可以感知到交通密度(两个相邻路口之间的节点个数,例如图1中jc与j1之间的车辆节点数量)。这个交通密度可以很容易地从路口附近布设的交通传感器节点中获取到,也可以通过部署在所有节点中一个分布式计算机制来实现。

gytar分为两个部分,第一部分确定数据包将经过的下一个相邻路口,此路口为数据包必须经过才能达到目的地的相邻路口,例如图1所示,假设数据包要从路口jc到达目的节点d,当数据包到达jc时,需要先确定下一个转发路口,那么由于路口j1和路口j1都与路口jc相邻备选路口,都是备选路口,第二部分,改进了经典的贪婪转发算法,将此改进后的算法用于相邻两个路口之间的数据包转发,从备选路口中确定必经路口。据此,数据包能在城市环境下找到一条足够健壮的路由通往目的节点。该方案中,所有转发节点依据交通密度状况和与目标节点之间的距离来动态地计算,依次选择数据包必经的下一个个路口。

每个与当前路口相邻的路口均会依据下面公式被计分:

score(j)=α×[1-dp]+β×[min(navg/ncon,1)](1)

式中,dp为候选路口与目的节点之间的距离与当前路口与目的节点之间的距离的比值;α和β分别为距离权重因子和密度权重因子,两者相加之和为1;navg是每个定义单元的平均车辆节点个数;ncon表示在保持联通度的前提下每个定义单元的理想车辆节点个数。

通过上式计算与当前路口相邻的各个路口的得分,将得分最高的路口作为数据包的必经路口来转发数据包。当下一个路口确定之后,每个待转发的数据包就被标注上这个必经路口的信息,同时通过邻居节点信息表,每个参与转发的节点都会保持有邻居节点的当前位置、速度和方向信息,并且可以通过周期性交换的hello数据包进行更新。因此,每个转发节点在收到数据包的时候,可以根据邻居信息表中记录的信息预测出所有邻居的当前位置,然后做出更合理的转发选择。

根据研究,上述现有技术存在的不足包括:在选择下一个数据包必经的路口的时候,没有考虑车辆节点的移动方向。这就导致虽然可以确保选择到交通密度较高的路口,但是形成高密度的节点包括了驶离目标节点的车辆。因此这种情况下的丢包率得不到很好地控制,进而数据包的成功投递率较低,端到端的时延也随之增加;在路口之间传递数据包时候,转发节点也没有考虑车辆的移动方向问题,导致数据包遭遇局部最优的问题更加突出,从而降低路由算法的性能。

因此,bilal,s.,madani,s.a.,&khan,i.于2011年在文献enhancedjunctionselectionmechanismforroutingprotocolinvanet.internationalarabjournalofinformationtechnology,8(4),422-429中提出了e-gytar算法,其基本原理和主要操作与gytar方案类似,改进之处主要在于:提出了方向密度的概念,在选择数据包必经的下一路口时候,不仅考虑交通密度,同时考虑车辆的移动方向,使得计算出的必经路口更合理,减少了数据包投递过程中由于车辆节点的移动引起链接断开导致的丢包现象。

e-gytar算法改进了gytar算法的主要不足,但却仍存在以下技术问题:

在使用公式(1)计算候选路口分值的时候,由于使用的dp这个比值不能准确反映道路的形态,导致错过最佳路口。一个很显然的列子如图1所示。jc是当前路口,按照公式(1)计算,路口j1的分值会高于路口j2,然而jc可以直接把数据包交给路口j2,却要经过两跳转发才可以把数据包交给路口j1。这种情况在城市道路环境中是经常存在的,由此带来的数据包投递的端到端时延的急剧增加极大地破坏了路由性能。

为了计算方向密度,额外增加了cdp数据包,控制信息增加,导致占用了有限的带宽,同时也增加了计算量,降低了路由性能。

在路口之间传递数据包的时候,采用加强的贪婪算法寻找转发节点,这种方法总是会选取在地理位置上离发送节点最远的节点作为下一跳,然而因为无线电波的特点,这样的节点通信的稳定性是得不到保障的。因此,路由常常会因此而中断,导致丢包率增加,降低了路由算法的性能。



技术实现要素:

为解决以上技术问题,本发明提供一种车辆自组织网络路由方法。

本发明的一种车辆自组织网络路由方法,如图3所示,从与当前位置相邻的备选路口位置中确定数据包必须经过的下一个路口位置,当前位置的车辆节点将数据包发送到数据包必须经过的下一个路口位置的车辆节点。

优选地,所述从与当前位置相邻的备选路口位置中确定数据包必须经过的下一个路口位置,包括:计算各个与当前路口位置相邻的备选路口位置的评估得分,选择评估得分最高的备选路口位置为数据包必须经过的下一个路口位置。

优选地,所述计算各个与当前位置相邻的备选路口位置的评估得分,包括:

其中,score(jn)表示与当前位置相邻的备选路口位置jn的评估得分,dcd表示当前路口位置jc和目标节点位置d之间的欧几里德距离,dnd表示从jn到d的沿道路形态的路径长度;dcn表示从jc到jn的沿道路形态的路径长度;navg表示平均车辆密度;ncon表示能提供节点之间良好的连接度的理想车辆密度;α和β分别表示距离权重因子和密度权重因子,且α+β=1。

优选地,所述当前位置的车辆节点将数据包发送到数据包必须经过的下一个路口位置的车辆节点,包括:当前位置的车辆节点更新数据包头,将数据包广播出去,收到数据包广播的车辆节点确定自己是否处于候选转发集中,从候选转发集中确定一个车辆节点更新数据包后广播出去,直到数据包必须经过的下一个路口位置的车辆节点收到数据包。

优选地,所述更新数据包头包括,将数据包必须经过的下一个路口位置和离此路口车辆节点最近的邻居车辆节点的位置附加到数据包包头中。

优选地,所述收到数据包广播的车辆节点确定自己是否处于候选转发集中包括:

其中,longn和latn是收到数据包广播的车辆节点的经度和纬度,longb和latb分别是离收到数据包广播的车辆节点的邻居节点的经度和纬度,r是无线传输的信号覆盖范围。

优选地,所述从候选转发集中确定一个车辆节点包括:从候选转发集中选择离数据包必须经过的下一个路口位置最近的车辆节点。

优选地,所述从候选转发集中确定一个车辆节点包括:候选转发集中的车辆节点分别设定一个定时器,定时器的定时先到达且定时到达之前没有收到序号相同的数据包的车辆节点。

优选地,定时器的定时时长采用以下方式设定:

其中,tn是候选转发集中的车辆节点n的定时器的定时时长,cn是当前车辆节点与候选转发集中的车辆节点n之间的距离,bn是离数据包必须经过的下一个路口位置最近的车辆节点和候选转发集中的车辆节点n之间的距离,rt是重传定时器。

优选地,所述数据包未设置forwarderlist字段和fwdlistsize字段,所述forwarderlist代表转发集的内容,所述fwdlistsize为forwarderlist的大小。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为现有技术路口选择示例图;

图2为本发明路口车辆自组织网络路由方法路口间转发节点确定示例图;

图3为本发明路口车辆自组织网络路由方法流程示意图;

图4为现有路口车辆自组织网络路由方法数据包包头结构示意图;

图5为本发明路口车辆自组织网络路由方法数据包包头结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

本发明一种车辆自组织网络路由方法,假设模拟场景如图1所示,假设数据包处于当前位置jc的车辆节点,存在两个备选路口位置j1和j2(当然也可能存在多个备选路口,对于存在多个备选路口的情形,本发明也同样适用),需要将数据包经过j1和j2转发发送到目的地d。本发明当前位置既可能在路口位置也可能不在路口位置,不管当前位置是否在路口位置,都可以获知数据包可可能经过的下一个备选路口位置。

首先,从与当前位置相邻的备选路口位置中确定数据包必须经过的下一个路口位置。即是说,当前位置jc此时需要确定转发数据的路口位置,因为此时存在两个或多个备选路口位置(例如图1中j1和j2),需要从两个或多个备选路口位置中确定一个路口位置来转发数据。

可选地,计算各个与当前位置相邻的备选路口位置的距离,选择距离最短的备选路口位置作为数据包必须经过的下一个路口位置,来转发数据。但此距离最短并不能确保当前位置与目的地d之间沿道路形态的距离最短,也不能确保当前位置的车辆节点与目的地d的车辆节点之间具备数据通信的可用链路,这为数据包到达目的地d的车辆节点造成了极大不确定性。

优选地,本发明实施例计算各个与当前位置相邻的备选路口位置的评估得分,选择评估得分最高的备选路口位置为数据包必须经过的下一个路口位置,来转发数据。

可选地,所述计算各个与当前位置相邻的备选路口位置的评估得分,包括:

公式(2)中,score(jn)表示与当前位置相邻的备选路口位置jn的评估得分,dcd表示当前位置jc和目标节点位置d之间的欧几里德距离,dnd表示从jn到d的沿道路形态的路径长度;dcn表示从jc到jn的沿道路形态的路径长度;navg表示平均车辆密度;ncon表示能提供节点之间良好的连接度的理想车辆密度;α和β分别表示距离权重因子和密度权重因子,且α+β=1。

例如在图1所示的场景中,通过上述方式,当前位置jc可以确定数据包必须经过的下一个路口位置为j1。

本实施例经评估得分最高的节点被选为下一个数据包必经的路口,这种选择机制同时考虑了交通密度和路口的地理位置两个因素,使得选择更合理,算法也具有更好的鲁棒性。

特别地,如果当前位置发现没有相邻的备选路口,则直接执行当前位置的车辆节点将数据包发送到目的地d的车辆节点。

在确定数据包必须经过的下一个路口位置时,本发明实施例考虑了道路的形态,通过沿道路形态的路径长度而非欧几里得距离来作为计算依据,是基于地理位置的路由算法在城市道路环境下的重要改进。通过这种新机制,使得基于地理位置的路由协议在城市道路环境下具有更好的生存性和更高的性能,数据传输更加快速高效。

在确定数据包必须经过的下一个路口位置之后,就需要考虑如何将数据包从当前位置发送到数据包必须经过的下一个路口位置。也即是说,当前位置的车辆节点将数据包发送到数据包必须经过的下一个路口位置的车辆节点。例如在图1的场景中,就是当前位置jc的车辆节点将数据包发送到数据包必须经过的下一个路口位置j1的车辆节点。

在本发明中,由于当前位置与数据包必须经过的下一个路口位置之间存在多个车辆节点,每一个车辆节点都可以路由转发数据包,如何确定哪些车辆节点来进行转发就是接下来要解决的问题。

例如图2所示,阴影部分中的黑点代表当前位置与数据包必须经过的下一个路口位置之间存在的多个车辆节点(其中包括c、b、n几个车辆节点),目标是要将数据包从源车辆节点c发送到数据包必须经过的下一个路口位置的车辆节点j。

可选地,当前位置的车辆节点可以将数据包发送给离其最近的第一车辆节点,再由第一车辆节点将数据包发送给离其最近的第二车辆节点,依次类推,直到发送给数据包必须经过的下一个路口位置的车辆节点,但这种方式会极大增加数据网络开销,效率极低。在选择车辆节点时候,现有的选择算法可以建立从数据包源节点到目的节点的一条最短的路径,但是这种思路不能确定该路径上是否有足够多的可用车辆节点来确保数据包可以逐跳转发至数据包必须经过的下一个路口位置的车辆节点。

现有技术的做法是由转发车辆节点计算出候选转发节点集,并随数据包一起广播出去,收到广播包的节点通过查看自己是否在候选转发节点集中,并且通过查看此部分信息来确定自己的转发时机。但是这个转发车辆节点集列表大大增加了控制消息的开销。

优选地,所述当前位置的车辆节点将数据包发送到数据包必须经过的下一个路口位置的车辆节点,包括:当前位置的车辆节点更新数据包头,将数据包广播出去,收到数据包广播的车辆节点确定自己是否处于候选转发集中,从候选转发集中确定一个车辆节点更新数据包后广播出去,直到数据包必须经过的下一个路口位置的车辆节点收到数据包。

所述更新数据包头包括,将数据包必须经过的下一个路口位置和离此路口车辆节点最近的邻居车辆节点的位置附加到数据包包头中。

为便于区别,体现本发明的改进及有益效果,对现有技术数据包的包头结构802.11pheader如图4所示,说明如下,dest和source分别为数据包的源节点和最终目的节点;pktnum为数据包编号,用于判断收到的数据包是否是重复的;speed和location为当前发送该数据包的节点的行驶速度和地理位置信息;fwdlistsize为forwarderlist的大小,因为网络拓扑在动态变化,所以数据包每次发送节点时候所处的网络环境都可能不一样,因此处于转发集forwarderlist中的节点个数也可能不一样,故每个数据包中forarderlist域,不仅内容不一样,长度也不一样,所以需要一个专门的fwdlistsize字段来说明其大小;payloadlen是所发送数据的长度;checksum是对头部做校验用的校验和字段,因为转发集中的内容是每个节点判断自己是否转发数据包的根据,因此相对重要,设置该校验和字段保证包括转发集在内的整个包头部信息的正确性;

根据上述描述可知,forwarderlist字段代表的是转发集的内容,如前所说,其大小和内容都会随时间的变化而变化;在密度较高的网络环境下,该字段较大,网络开销较大。

基于以上考虑,本发明重新设计了数据包的包头结构802.11pheader,如图5所示,其中dest是数据包的最终目的节点,source是数据包的源节点,thishop是数据包来源转发节点,tarjun是本发明确定的得分最高的下一个必经路口,bestfor是最远邻居车辆节点,表示来源转发节点计算出的在其邻居节点中离数据包必须经过的下一个路口位置车辆节点最近的车辆节点位置,tag标志了节点的位置特性,如果来源转发节点是路口节点,该域被置为1,否则被置为0,payloadlen是所发数据的长度,sernum是该数据包的序列号。

与现有技术相比,本发明数据包未设置forwarderlist字段和fwdlistsize字段,不携带整个候选转发节点集列表的信息,而设置最远邻居车辆节点和数据包来源转发节点两个字段信息;收到广播包的所有车辆节点,通过获取到的这两个信息来自行计算自己是否在候选转发节点集中,从而采取相应的措施。

通过forwarderlist字段内容的节省,很大程度上降低了路由控制信息开销,对提高路由性能起到机器重要的作用。

数据包的产生节点在产生数据包的时候,位于路口的节点在收到直路段传来的数据包的时候,启用公式(2)计算最佳的数据包下一个必经路口,然后更新数据包头部的tarjun字段。位于直路段的节点,和位于路口的节点在收到来自路口节点的数据包时候,均不更新该字段。

收到广播包的转发节点,通过数据包头部获取到的thishop和bestfor的内容,依据公式(3)计算自己是否候选属于转发节点集。如果自己不在集合中,则丢弃数据包,如果在集合中,则按照公式(4)确定自己的转发定时器,定时器到期之前如果没有再次收到序列号相同的广播包,则启动自己的广播进程。

本发明从数据包中删除了候选转发节点集相关(如图4的forwarderlist字段和fwdlistsize字段)的信息,极大地减少了控制消息的长度,降低了控制开销,使车载自组织网络中的路由开销和数据转发开销更小、效率更高。

所述收到数据包广播的车辆节点确定自己是否处于候选转发集中包括:

公式(3)中,longn和latn分别是收到数据包广播的车辆节点的经度和纬度,longb和latb分别是离收到数据包广播的车辆节点的邻居节点的经度和纬度,r是无线传输的信号覆盖范围。

可选地,所述从候选转发集中确定一个车辆节点包括:从候选转发集中选择离数据包必须经过的下一个路口位置最近的车辆节点。

通过公式(3)确定的转发集为图2所示的阴影部分。其中c是当前车辆节点,b是其邻居节点中离数据包必须经过的下一个路口位置的车辆节点j最近的车辆节点。

作为一种优选实施方式,所述从候选转发集中确定一个车辆节点包括:候选转发集中的车辆节点分别设定一个定时器,定时器的定时先到达且定时到达之前没有收到序号相同的数据包的车辆节点。

可选地,所述定时器的定时时长采用以下方式设定:

公式(4)中,tn是候选转发集中的车辆节点n的定时器的定时时长,cn是当前车辆节点与候选转发集中的车辆节点n之间的距离,bn是离数据包必须经过的下一个路口位置最近的车辆节点和候选转发集中的车辆节点n之间的距离,rt是重传定时器。在仿真实验的时候,根据ieee802.11p定义的一个重传定时器rt,用于发送方对回复信息的计时,该重传定时器发送时启动,如果该重传定时器到期还没有收到清除发送/确认cts/ack等相应回复,就会重传数据包。

例如,图2所示,其中cb是源车辆节点c和目标车辆节点b(c感知的离j最近的节点)之间的距离,cn是源车辆节点c和转发集中的任意一个车辆节点n之间的距离,bn是目标车辆节点b和转发集中的任意一个车辆节点n之间的距离。

在两个已经确定的路口之间,以定时转发方式确定目标车辆节点,但是如果由于车辆节点密度过大,则会造成冲突过多,丢包率增加,上述定时转发机制会存在较大的冲突。

为避免由于每一次转发均以距离最远的节点为目的节点导致的链路不稳定性,提高包转发成功率,同时减小内容消息的端到端时延,加快数据传输,进一步采用以下贪婪转发方式进行转发。

如果一个车辆节点连续多次遭遇超时重发,则切换为贪婪转发方式。超时重发是ieee802.11p二层设置的超时重传机制,如果定时器到期,还没有收到接收方发来的确认数据。则认为接收方没有收到,所以就会重传数据。这个二层设置的重传次数可以预定义。在实验时,本发明实施例在路由协议中提前设置一个重传次数(小于二层设置的重传次数),比如3次,我们就放弃机会转发,切换到贪婪转发。因为这种超时,主要是由于车辆节点密度过高,大量候选节点集中的节点同时转发数据产生的冲突导致的,此时就应该停止定时转发而切换为贪婪转发。

所述贪婪转发具体包括:采用公式(5)对连续多次遭遇超时重发的车辆节点和其邻居节点进行评分,然后选择得分最高的节点来携带数据包。

score(n)=m[γ(1-d/l)+λ(v/vmax)](5)

公式(5)中,d是连续多次遭遇超时重发的车辆节点与数据包必须经过的下一个路口位置之间的距离,v是被评分车辆节点的速度,l和vmax是数据包当前所在路段的长度和限速,γ和λ分别是距离权重因子和速度权重因子,γ+λ=1,m是方向因子,如果被评分车辆节点移向数据包必须经过的下一个路口位置则为+1,如果驶离数据包必须经过的下一个路口位置则为-1。

在车辆节点密度较低或适中的路段,采用定时转发的方式会提高包转发率,降低传输时延,但是当数据包所处路段交通密度较大时候,广播数据包会造成大量冲突,导致传输时延增大甚至丢包发生,则更适宜采用贪婪转发方式。

本发明实施例根据车辆节点密度来确定采用定时转发还是贪婪转发,以使得整个路由机制既能适用于一般交通状况场合,也能适用于交通严重拥塞的场合,最大化地提升路由性能。

以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1