本发明涉及车联网数据传输技术领域,具体为一种基于命名数据网络的车联网混合路由转发策略。
背景技术
传统车联网中由于其自身拓扑结构变化迅速,车辆高度动态等因素,导致网络频繁断开,通信不稳定,消息传输效率难以保障。命名数据网络(ndn)采用命名数据代替ip地址,是一种以数据为中心,由内容请求者驱动的新型网络架构,可以有效的解决车联网中的移动性和间歇性连接带来的数据通信问题,因此更适用于车联网现实应用环境。现有的基于命名数据网络的路由转发协议大多没有考虑消息类别划分、不同消息对于传输的不同需求以及地理位置因素对消息传输的影响,因此将其直接应用于车联网时,消息的传输效率有待进一步提高。
技术实现要素:
本发明的目的在于提供一种基于命名数据网络架构的车联网混合路由转发策略,以有效提高消息的转发效率,减小传输延迟,降低丢包率,从而为车联网快速、可靠的消息转发提供技术保障。
为达到上述目的,本发明采用如下技术方案:
一种基于命名数据网络的车联网混合路由转发策略,包括以下步骤:
步骤1),节点vi查看特定字段判断自身所请求的消息是否与位置相关,若与位置相关,则跳转至步骤2),若不相关则跳转至步骤3);
步骤2),节点vi所请求消息与位置相关时,寻找最佳下一跳转发节点
步骤3),节点vi所请求消息与位置无关时,寻找最佳下一跳转发节点
进一步的,步骤2)具体包括以下步骤:
步骤2.1、节点vi对所有邻居节点
d:节点vi和消息发送的目的地之间的距离;
步骤2.2vi判断消息是否为紧急型消息,针对不同消息选择不同的转发策略;
步骤2.3节点vi向已确定的下一跳节点
步骤2.4接收interest包后,节点
若未到期,节点
进一步的,步骤2.2具体包括以下步骤:
步骤2.2.1、与位置相关的紧急消息包括:路况信息、交通事故和拥堵;
根据听等时间t1和转发率r进行权重分析来选择最佳下一跳节点
(1)听等时间t1:节点vi计算与其每一邻居节点
t0是一个时间影响因子,为常量,定义为距离请求车辆最近的邻居车辆处理interest包所需的最小时延;
(2)转发率r:选择可靠性更高的邻居节点作为下一跳节点;
从车辆的历史交互信息获取到这一时间段内车辆节点转发的消息数量,记为n,时间段记为time,转发率r计算如下:
(3)通过两个指标进行权重分析,计算出f;
α的值要进行多次实验,从而确定它的最佳取值;
根据所计算出的f值来选择最佳下一跳转发节点
步骤2.2.2与位置相关的普通信息包括停车场信息和路侧建筑信息;
通过计算节点vi与邻居节点
进一步的,设置t0=5ms。
进一步的,步骤3)具体步骤如下:
步骤3.1节点vi一跳洪泛interest包;
步骤3.2其邻居节点
步骤3.3邻居节点
若到期,则放弃转发并结束;
若未到期,节点
步骤3.4节点
进一步的,步骤3.4.1、紧急消息包括恶劣天气;
通过如下听等公式,节点
t3=td+tl+tvr+tc(5)
听等时间t3通过车间距离相关时间(td)、位置相关时间(tl)、车速/方向相关时间(tvr)和避免冲突时间(tc)相加得到;
3.4.2普通消息:根据距离计算听等时间t4,距离最远,听等时间最短的车辆进行转发,确定出最佳转发节点
dm:邻居节点的最大传输范围。
进一步的,步骤3.4.1具体步骤如下:(1)车间距离相关时间(td)
车间距离为节点
t0是一个时间影响因子,为常量,定义为距离请求车辆最近的邻居车辆处理interest包所需的最小时延。根据实验经验总结,设置5ms;
(3)位置相关时间(tl)
靠近交叉路口中心的车辆vi拥有更多的信号覆盖范围,所以在单跳情况下想要覆盖更多的车辆,需要优先选择处于路口的车辆。我们将十字路口分成两部分,中心部分c,外围部分e,不在路口为n。处于中心位置的车辆会有更少的tl,我们对tl的设置如下:
(3)车速/方向相关时间(tvr)
tvr表示节点
t0表示时间影响因子,为常量;si表示上一跳节点vi的速度;sb表示节点
(4)避免冲突时间(tc)
在车辆比较密集的环境中,由于车辆距离,位置等条件的影响,可能会有多辆车的等待时间几乎相同,从而产生冲突,因此通过均匀分布随机数tc来避免冲突,可以有效解决data包回传时的拥塞问题,tc∈[0,1];
确定转发节点:邻居节点
与现有技术相比,本发明具有以下有益的技术效果:
本发明一种基于命名数据网络的车联网混合路由转发策略,通过在车联网环境中,利用多种类的消息类型,包括安全消息、娱乐消息、公共服务消息以及辅助驾驶消息,考虑地理位置信息、消息分类以及消息发送的实时性需求对消息传输的影响,将消息划分为位置相关和位置无关两类,每类消息包含紧急消息和普通消息,并采取不同的转发策略来进行自适应的转发,最终实现消息在车联网环境中的快速、可靠转发,方便快捷,减小传输延迟,降低丢包率,从而为车联网快速、可靠的消息转发提供技术保障,提高了消息的转发效率。
附图说明
图1为本发明所述算法的流程框图。
具体实施方式
下面结合附图对本发明做进一步详细描述:
如图1所示,一种基于命名数据网络的车联网混合路由转发策略,步骤如下:车联网环境中每个车辆节点都配备至少一个无线通信接口,gps定位以及电子地图,同时具有存储和计算能力,可以通过gps获取到interest包中所指向的目的地的位置。本设计涉及三种类型的数据包:(1)interest包:节点请求数据时,会发送interest包,其中记录着需要的数据的名字,(2)data包:如果节点收到interest包,且有对应的数据包,则会回复data包,并根据interest包的转发路径原路返回到请求该数据的节点,(3)bancon包:节点之间定期发送bancon消息,通过bancon消息获取邻居节点信息(包括邻居节点的历史交互信息),从而计算与邻居节点之间的距离。设车联网中车辆节点集合为v={v1,v2,vi……vn},n为车联网中车辆节点的数目,vi为车联网中任意一个车辆节点,节点vi的邻居节点的集合为
步骤1,节点vi查看特定字段判断自身所请求的消息是否与位置相关,若与位置相关,则跳转至步骤2,若不相关则跳转至步骤3;
步骤2,节点vi所请求消息与位置相关时,寻找最佳下一跳转发节点
2.1、节点vi对所有邻居节点
d:节点vi和消息发送的目的地之间的距离;
2.2vi判断消息是否为紧急型消息,针对不同消息选择不同的转发策略;
2.2.1与位置相关的紧急消息,一般包括:路况信息,交通事故,拥堵等;
根据听等时间t1和转发率r进行权重分析来选择最佳下一跳节点
(1)听等时间t1:节点vi计算与其每一邻居节点
t0是一个时间影响因子,为常量,定义为距离请求车辆最近的邻居车辆处理interest包所需的最小时延。根据实验经验总结,设置t0=5ms;
(2)转发率r:选择可靠性更高的邻居节点作为下一跳节点,即选择就近一个时间段内,单位时间内所转发消息的数量来衡量;
从车辆的历史交互信息获取到这一时间段内车辆节点转发的消息数量,记为n,时间段记为time,转发率r计算如下:
(3)通过两个指标进行权重分析,计算出f;
α的值要进行多次实验,从而确定它的最佳取值。
根据所计算出的f值来选择最佳下一跳转发节点
2.2.2与位置相关的普通信息,比如:停车场信息,路侧建筑信息等;
通过计算节点vi与邻居节点
2.3节点vi向已确定的下一跳节点
2.4接收interest包后,节点
若到期,放弃转发,结束;
若未到期,节点
步骤3,节点vi所请求消息与位置无关时,寻找最佳下一跳转发节点
3.1节点vi一跳洪泛interest包;
3.2其邻居节点
3.3邻居节点
若到期,则放弃转发并结束;
若未到期,节点
3.4节点
3.4.1紧急消息包括恶劣天气;
通过如下听等公式,节点
t3=td+tl+tvr+tc(5)
听等时间t3通过车间距离相关时间(td)、位置相关时间(tl)、车速/方向相关时间(tvr)和避免冲突时间(tc)相加得到。
其中:
(1)车间距离相关时间(td)
车间距离为节点
t0是一个时间影响因子,为常量,定义为距离请求车辆最近的邻居车辆处理interest包所需的最小时延。根据实验经验总结,设置5ms;
(4)位置相关时间(tl)
靠近交叉路口中心的车辆vi拥有更多的信号覆盖范围,所以在单跳情况下想要覆盖更多的车辆,需要优先选择处于路口的车辆。我们将十字路口分成两部分,中心部分c,外围部分e,不在路口为n。处于中心位置的车辆会有更少的tl,我们对tl的设置如下:
(3)车速/方向相关时间(tvr)
tvr表示节点
t0表示时间影响因子,为常量;si表示上一跳节点vi的速度;sb表示节点
(4)避免冲突时间(tc)
在车辆比较密集的环境中,由于车辆距离,位置等条件的影响,可能会有多辆车的等待时间几乎相同,从而产生冲突,因此通过均匀分布随机数tc来避免冲突,可以有效解决data包回传时的拥塞问题,tc∈[0,1];
确定转发节点:邻居节点
3.4.2普通消息:根据距离计算听等时间t4,距离最远,听等时间最短的车辆进行转发,确定出最佳转发节点
dm:邻居节点的最大传输范围。