基于平均速度的高速公路车载自组织网络广播算法的制作方法

文档序号:17127016发布日期:2019-03-16 00:36阅读:191来源:国知局
基于平均速度的高速公路车载自组织网络广播算法的制作方法

本发明属于无线通信领域的一种广播算法,具体涉及一种基于平均速度的高速公路车载自组织网络广播算法。



背景技术:

车载自组织网络是一种特殊的移动adhoc网络,是由一组带有无线收发功能的车辆节点组成的无线网络。网络中的节点兼具主机和路由器的功能,当目的节点不在源节点覆盖范围内时,可以通过多跳通信将广播分组传输到目的节点。车载自组织网络不仅具备移动adhoc网络的无中心控制节点、自动组网、多跳路由等特点,也有其特有的特点,如:网络拓扑变化较快、车辆移动轨迹有一定的可预测性、无能量和设备的约束、无线信道质量不稳定等。车载自组织网络主要从抑制广播风暴、提高广播可靠性、降低信息传输时延的角度研究广播技术。

随着无线通信技术的不断发展,研究者提出了许多广播方法,其中洪泛方法最为简单,但容易引起严重的广播风暴,产生较多的冗余信息、信道竞争和信号碰撞激烈,最终导致广播不可靠。因此,如何有效抑制广播风暴、提高广播可靠性尤为重要。

车载自组织网络中的sapf(speedadaptiveprobabilisticfloodingscheme)方法是针对高速公路场景设计的基于车辆速度的自适应概率广播算法,该方法中第一次接收到某个广播分组的节点根据当前节点速度确定转发概率,速度越大,转发概率越大。该算法首先从统计的数据中分析得出节点的速度与密度有一定的关系,即密度越大,速度越小,反之,速度越大。因此可以通过当前节点的速度来了解当前节点周围的节点密度情况,也即当前节点周围的网络拥塞状况,进而计算当前节点的转发概率。但是有可能当前节点行驶速度较低,其周围邻居节点行驶速度较高,此时若只是根据当前节点的速度并不能较准确地反映当前节点周围的网络拥塞状况,例如在节点密度较低时,某个节点行驶速度仍然较低,但其周围邻居节点行驶速度较高,此时,若只根据当前节点的速度判断当前节点周围的网络拥塞状况,则得出当前节点周围密度较大,与实际情况相反。若只根据当前节点的速度确定转发概率,所得转发概率较小,可能会导致广播中断,降低广播分组的到达率。因此,仅仅根据当前节点的速度并不能合理反映出当前节点周围的车辆密度情况,也就是网络拥塞状况,若只根据当前节点速度计算转发概率并不合理,针对这个问题,提出了本发明所述的方法。



技术实现要素:

为了解决背景技术中存在的问题,本发明的目的是为了在车载自组织网络中面向高速公路的场景提供一种基于平均速度的广播方法(asbb:averagespeedbasedbroadcastalgorithm),能够解决sapf方法选择转发节点不够合理的问题,有效抑制广播风暴、能适应动态网络拓扑并且提供一定的可靠性。

为了实现上述目的,本发明采用以下技术方案:

本发明以每个车辆作为广播中的节点,通过车辆自身的速度传感器检测获得的行驶速度作为节点的速度信息,通过车辆自身的定位传感器检测获得的定位位置作为节点的位置信息,通过车辆上安装的无线通信设备进行节点之间的广播通信;在单向行驶道路上的各个车辆在行驶过程中,采用基于平均速度的方式进行节点之间的广播通信:源节点i开始向周围的邻居节点发送广播分组;网络中任一节点j接收到广播分组后,判断是否继续转发,转发时根据平均速度计算转发概率,按转发概率发送广播分组;并且网络中的每个节点均设置邻居信息表,邻居信息表含有节点的每个邻居节点的速度信息,在任意两个节点相互广播通信过程中实时更新邻居信息表。

所述的判断是否继续转发,主要判断接收到广播分组的节点j是否位于上一跳节点的后方且是第一次接收该广播分组:

若是,则计算节点j和邻居节点的平均速度,根据平均速度计算转发概率,按转发概率发送该广播分组;

若否,则直接丢弃该广播分组,不转发;

网络中所有节点采用上述方式进行广播通信,直至所有节点不需要再转发该广播分组。

邻居节点是指无线信号覆盖范围内能相互接收到广播分组信号的节点,即能实现相互通信的节点。对于车辆来说,两车之间的距离小于无线信号覆盖范围半径,则相互之间能通信;两车之间距离大于无线信号覆盖范围半径,则相互之间无法接收到信号,无法通信。

本发明采用基于平均速度的方式。所述的无线通信设备包括车辆上安装的可以与别的车辆进行通信的各种无线通信设备。

网络中的每个节点均设置邻居信息表和广播分组接收记录表,其中邻居信息表含有每个邻居节点的速度信息,广播分组接收记录表含有广播分组已接收记录;按照包括以下几个方面的基于平均速度的方式进行广播通信:

(1)节点转发

以车载自组织网络中任一节点i作为产生广播分组的源节点,源节点i产生一个广播分组后首先在节点i的广播分组接收记录表中建立一个新的条目,记录该广播分组已接收,并对该条目设置超时时间t2;节点i获取当前节点的速度vi,然后将源节点i的ip地址、广播分组序列号、当前节点i的ip地址、广播目的ip地址、当前节点i的速度和位置信息封装在广播分组头中,然后以广播的方式向自身周围的节点发送广播分组,接收到广播分组的节点再判断是否向自身周围的邻居节点转发广播分组,直至所有节点不需要再转发该广播分组;

(2)接收广播分组

任一节点j接收到一个广播分组,若是第一次接收该广播分组,则在节点j的广播分组接收记录表中建立该广播分组对应条目,设置超时时间t2,并在该条目下记录该广播分组已接收;

(3)发送广播分组

任一节点j接收并处理了一个广播分组后,在发送该广播分组前,将源节点i的ip地址、广播分组序列号、当前节点j的ip地址、广播目的ip地址、当前节点j的速度信息和位置信息写入广播分组头部,然后发送广播分组;

(4)任一节点j接收到广播分组后采用以下方式处理转发

若节点j从节点k接收到一个广播分组,则节点k即为节点j的邻居节点,依次判断是否是第一次从节点k收到广播分组、是否第一次收到该广播分组、是否位于节点k的后方,然后做出对应处理:

或者建立或更新邻居信息表中邻居节点k对应的条目;

或者因不是第一次接收而直接丢弃该广播分组;

或者因节点j位于上一跳节点k的前方而直接丢弃该广播分组;

或者根据节点j和邻居节点的平均速度计算转发概率,按转发概率转发广播分组;

(5)任一节点j的邻居信息表中每个邻居节点的条目均设置有超时时间t1,针对节点k和节点j任意两个节点相互通信过程中采用以下方式删除节点j的邻居信息表中节点k的条目,其中节点k为节点j的邻居节点:

若节点j的邻居信息表中邻居节点k的条目下对应的超时时间t1计时到,说明该时间内邻居信息表中节点k的邻居信息没有被刷新,则将节点j的邻居信息表中对应节点k的条目删除。

所述(4)中,任一节点j接收到广播分组后处理具体为:

(4-1)首先判断节点j是否第一次从邻居节点k收到广播分组:

若是,则从接收到的广播分组头部中提取出邻居节点k的ip地址和速度信息vjq,在节点j的邻居信息表中建立邻居节点k的条目,将邻居节点k的ip地址和速度信息写入该条目中,并写入邻居节点k对应的超时时间t1进行计时,转向(4-2);

若否,则更新邻居信息表中对应条目下节点k的速度信息,重新设置超时时间t1,转向(4-2);

(4-2)接着判断是否第一次收到该广播分组,具体是根据收到的广播分组中的源节点ip地址和广播分组序列号判断节点j的广播分组接收记录表中是否有该广播分组已接收的记录进行判断:

若是,表示节点j不是第一次收到该广播分组,则丢弃该广播分组,转向步骤(4-3);

若否,表示节点j第一次收到该广播分组,则根据节点j和节点k的位置坐标判断节点j是否位于节点k的后方:

若是,则首先在节点j的广播分组接收记录表中建立该广播分组对应条目,为该条目设置超时时间t2,添加该广播分组已接收的记录,然后计算当前节点j和自身所有邻居节点的平均速度根据平均速度计算当前节点j的转发概率pj,按概率pj转发广播分组,转向步骤(4-3);

若否,则丢弃该广播分组,转向步骤(4-3);

(4-3)结束。

所述的按转发概率发送广播分组,具体为:

(1)当前节点和邻居节点的平均速度采用以下公式计算:

对于节点j,节点j和邻居节点的平均速度计算公式为:

其中,n表示节点j的邻居信息表中记录的邻居节点总数量,vj表示当前节点j的速度,vjq表示节点j的第q个邻居节点的速度,q表示邻居节点在邻居信息表中记录的序数;

(2)计算平均速度后,再采用以下公式计算节点的转发概率:

对于节点j,转发概率pj计算公式为:

其中,表示节点j和邻居节点的平均速度;

(3)节点j以转发概率pj发送广播分组具体为:

节点j利用随机函数产生一个在0-1范围内均匀分布的随机数σ,若σ>pj,则节点j直接丢弃该广播分组;否则,节点j发送该广播分组。

上述是否位于节点k的后方具体是根据单向行驶道路(已知行驶方向)上各个节点的位置信息来判断。

本发明将行驶在高速道路上的各个车辆通过各自车载传感器设备、定位设备采集的数据和通信设备建立了车载网络,通过上述方法使得各个车辆相互通信进行广播,能够帮助车辆通信的顺畅,提高广播可靠性,降低了网络通信拥塞的概率。

本发明根据节点的平均速度动态调整转发概率,赋予平均速度大的节点较大的转发概率,赋予平均速度小的节点较小的转发概率,能有效抑制广播风暴,适应动态变化的网络拓扑。此外,本发明所需的邻居信息是通过广播分组头携带的,因此不需要额外周期性交换hello分组来获取邻居节点的相关信息,这样减少了网络负荷,降低了拥塞的概率,减轻了广播风暴,也提高了广播可靠性。

本发明方法设计的网络要求为:网络中所有节点均处于高速公路上;网络中每个车辆节点均配备全向天线和定位设备(例如gps);网络中各车辆节点地位平等;网络中车辆节点都具备全向通信的能力,只要在彼此的通信范围内,就可以互相收发广播分组。

网络中车辆节点的无线覆盖区域均为半径为r的圆形区域;网络采取双向通信链路,每个车辆节点均具备接收和转发广播分组的功能;网络采用共享的无线信道,mac层采用ieee802.11dcf协议。

所述广播分组包括源节点ip地址、广播分组序列号、广播目的ip地址、当前节点ip地址、当前节点的速度、当前节点的x轴坐标、当前节点的y轴坐标以及数据区。

所述节点的邻居信息表包括当前节点的ip地址和各个邻居节点的条目,每个邻居节点条目包括邻居节点的ip地址、邻居节点的速度以及该条目的超时时间。

所述节点的广播分组接收记录表包括当前节点的ip地址和当前节点已接收的广播分组条目,每个已接收的广播分组条目包括发送该广播分组的源节点ip地址、广播分组序列号、该条目的超时时间以及是否已接收记录。

本发明具有如下有益效果:

(1)本发明能够有效抑制广播风暴。

首先,本发明是基于概率的广播算法,每个节点按一定概率转发广播分组,减少了参与广播分组转发的节点数,能有效抑制广播风暴。

其次,本发明的邻居信息是通过广播分组头携带的,不需要额外周期性交换hello分组来获取邻居节点的相关信息,这样减少了网络负荷,降低了拥塞的概率,减轻了广播风暴。

此外,本发明中只有位于源节点或中继节点后方的节点才有可能参与广播分组的转发,因此也在一定程度上减少了参与转发的节点数,抑制了广播风暴。

(2)本发明在一定程度上也提高了广播可靠性。由于本发明减少了冗余广播分组,因此这也减少了网络负荷,降低了信道争抢、信号碰撞的概率,进而提高了广播可靠性。

其次,本发明根据当前节点和邻居节点的平均速度计算转发概率,平均速度能较准确地反映当前节点周围的节点密度,根据平均速度自适应地调整转发概率,提高了可靠性。

附图说明

图1是本发明的一种广播流程图;

图2为本发明的源节点发送广播分组的一种流程图;

图3为本发明的任一节点接收与转发广播分组的一种流程图;

图4为本发明的删除邻居信息表中节点条目的一种流程图;

图5为本发明中的邻居信息表实例格式示意图;

图6为本发明中的广播分组接收记录表实例格式示意图。

具体实施方式

下面结合附图和具体实施方式对本发明做进一步的描述。

如图1所示,本发明的一种广播流程图具体包括如下步骤:

步骤100,源节点发送广播分组:假定节点i为网络中任一产生广播分组的源节点,源节点i产生序列号为z的广播分组,首先在广播分组接收记录表中建立该广播分组对应条目,设置超时时间t2,并在该条目下记录该广播分组已接收;

然后将源节点i的的ip地址、广播分组序列号、当前节点i的ip地址、广播目的ip地址、当前节点i的速度和位置信息封装在广播分组头中,然后以广播的方式发送该广播分组。

步骤200,网络中任一节点j接收与转发广播分组:当任一节点j从其邻居节点k接收一个广播分组后:

步骤201,首先判断节点j是否第一次从邻居节点k收到广播分组,若是,则从接收到的广播分组头中提取出邻居节点k的ip地址和速度vjq,在节点j的邻居信息表中建立邻居节点k的条目,将邻居节点k的ip地址以及速度写入该条目中,并写入邻居节点k对应条目的超时时间t1,转向步骤202;若否,则重置节点j的邻居信息表中节点k对应条目的超时时间t1,并更新该条目下节点k的速度,转向步骤202;

步骤202,根据接收到的广播分组中的源节点ip地址和广播分组序列号判断节点j的广播分组接收记录表中是否有该广播分组已接收的记录,若是,表明不是第一次接收,直接丢弃该广播分组(该广播分组所有数据均丢弃),转向步骤400;若否,表明是第一次收到该广播分组,转向步骤203;

步骤203,判断节点j是否位于节点k的后方,若是,则首先在节点j的广播分组接收记录表中建立该广播分组对应条目,为该条目设置超时时间t2,添加该广播分组已接收的记录,然后计算当前节点j和邻居节点的平均速度,并根据平均速度计算节点j的转发概率pj,按转发概率发送该广播分组,转向步骤400;若否,则直接丢弃该广播分组(该广播分组所有数据均丢弃),转向步骤400。

步骤300,删除节点j的邻居信息表和广播分组接收记录表中超时的条目:若节点j的邻居信息表中邻居节点k条目下对应的超时时间t1计时到,说明该时间内邻居信息表中节点k的信息没有被刷新,邻居节点k已经长期没有广播分组发过来了,已经不是节点j的邻居节点了,则将节点j的邻居信息表中对应节点k的条目删除;若节点j的广播分组接收记录表中某个条目的超时时间t2计时到,则将广播分组接收记录表中该条目删除,以免广播分组接收记录表中的条目一直占用内存空间。

步骤400,网络中所有节点反复交替执行步骤100至300,直至所有节点不需要再转发该广播分组。

如图2所示,具体实施的源节点发送广播分组的方法,包括如下步骤:

节点i为网络中任一产生广播分组的源节点,节点i产生序列号为z的广播分组,首先在广播分组接收记录表中建立该广播分组对应条目,设置超时时间t2,并在该条目下记录该广播分组已接收;然后,节点i将源节点i的ip地址、广播分组序列号、当前节点i的ip地址、广播目的ip地址、当前节点i的速度和位置信息封装在广播分组头中,然后以广播的方式发送该广播分组。

如图3所示,具体实施的任一节点接收与转发广播分组的方法,包括如下步骤:

假定节点j为车载自组织网络中任一节点,仿真时所有车辆节点是自西向东行驶,x轴坐标值逐渐增大,节点j从其任一上一跳节点k接收一个源节点为i、序列号为z的广播分组,需要做以下处理:

(1)节点j从其上一跳节点k接收一个源节点为i、序列号为z的广播分组后,判断节点j是否是第一次从节点k接收广播分组:

若是,则在邻居信息表中为节点k建立一个新的条目,记录节点k的速度vjq,并为该条目设置超时时间t1,转向步骤(2);

若否,则更新邻居信息表中节点k对应条目下的速度vjq,重置超时时间t1,转向步骤(8);

(2)查看节点j的广播分组接收记录表是否记录该广播分组已接收:

若是,则节点j不是第一次接收该广播分组,直接丢弃该广播分组(该广播分组所有数据均丢弃),转向步骤(8);

若否,则节点j是第一次接收该广播分组,转向步骤(3);

(3)获取广播分组头中上一跳邻居节点k的位置(xk,yk),获取当前节点j的位置(xj,yj),比较xj和xk的大小:

若xj>xk,则说明节点j位于上一跳节点k的前方,直接丢弃该广播分组(该广播分组所有数据均丢弃),转向步骤(8);

若xj≤xk,则说明节点j位于上一跳节点k的后方或并行行驶,转向步骤(4);

(4)首先在节点j的广播分组接收记录表中建立该广播分组对应条目,为该条目设置超时时间t2,添加该广播分组已接收的记录;

(5)获取当前节点j的速度vj,遍历邻居信息表中每个邻居节点的速度vjq,并统计邻居节点总数为n,根据计算当前节点j与其邻居节点的平均速度

(6)根据平均速度计算节点j的转发概率pj,然后产生一个在[0-1]之间均匀分布的随机数σ,比较σ和pj的大小关系:

若σ>pj,则直接丢弃该广播分组(该广播分组所有数据均丢弃),转向步骤(8);

若σ≤pj,则转向步骤(7);

(7)节点j根据广播分组的格式重新封装广播分组,转发该广播分组;

(8)结束。

如图4所示,具体实施的删除邻居信息表中超时条目的方法:若节点j的邻居信息表中邻居节点k对应条目下的超时时间t1计时到,节点k对应的条目没有被刷新,则说明节点k已经不再是节点j的邻居节点了,将邻居信息表中节点k对应的条目删除。每次记录和刷新后将超时时间t1设置为初始值。在实际仿真程序中,通过设置定时中断来删除邻居信息表中超时的条目,即每个tw时间中断一次,在本发明仿真程序中,tw设置为0.5s,定时中断到来后,就删除超时计时到的邻居信息。

如图5所示,为具体实施中的邻居信息表实例格式,具体包括:

①ipaddress(currentnode:j):表示当前节点j的ip地址;

②节点j的第q个邻居节点的信息,其中q=1,2,…,n,包括:

ipaddress(neighborq):表示节点j的第q个邻居节点的ip地址;

vjq:表示节点j的第q个邻居节点的速度;

t1:表示节点j的第q个邻居节点的超时时间,在本发明仿真程序中,t1初始值均设置为5s。

如图6所示,为具体实施中的广播分组接收记录表实例格式,具体包括:

①ipaddress(currentnode:j):表示当前节点j的ip地址;

②源节点i发出的广播分组序列号为x的分组情况,具体为:

ipaddress(sourcenode:i):表示源节点i的ip地址;

sequencenumberx(sourcefromnodei):表示序列号为x的广播分组;

t2:为每个广播分组设置的超时时间,用于删除广播分组接收记录表中超时的条目,实时更新广播分组接收记录表,在本发明仿真程序中,t2初始值均设置为10s。

bereceived:表示该广播分组是否已接收,yes表示已接收,no表示未接收;

在本发明仿真程序中,同样是通过设置定时中断来删除广播分组接收记录表中超时的条目,具体过程同邻居信息表中删除超时条目的过程一样,删除广播分组接收记录表中超时条目的中断间隔tw设置为5s。

根据本实施方式的流程就可以撰写出本发明协议方法的程序代码,代码编译成功之后就可以应用于网络的广播中。为了更好的体现本发明协议方法的性能提高,用网络仿真模拟软件对本发明协议方法进行仿真。

本发明方法主要从三个性能指标进行分析:(1)转发节点比例(retransmittedratio):在仿真过程中,参加转发广播分组的节点个数占网络中节点总数的比例。(2)到达率(reachability):所有目的节点实际接收的广播分组数目与所有目的节点本应收到的广播分组数目的比值。(3)平均传输时延(averagetransmissiondelay):从源节点发出广播分组开始到该广播分组被全部目的节点收到所产生的延时的平均值。

为了能更好的看出本发明协议方法的优势所在,将本发明的方法asbb与sapf、flooding两种协议方法进行对比。其中,sapf方法根据节点自身的速度调整当前节点的转发概率;flooding方法中,每个首次接收到某个广播分组的节点都需要转发广播分组。

对于网络中节点密度、发包速率cbr不同的情况进行了仿真。

(1)本发明中的asbb方法的转发节点比例低于sapf和flooding方法。

(2)本发明中的asbb方法的到达率明显高于sapf方法,低于flooding方法。

(3)本发明中的asbb算法的平均传输时延明显小于flooding方法,也小于sapf方法。

根据仿真结果分析,本发明在转发节点比例、到达率和平均传输时延上均优于sapf方法,相比较于sapf方法中根据当前节点的速度计算转发概率,本发明中当前节点和邻居节点的平均速度更能反映出当前节点周围的网络拥塞状况,转发节点的选择合理有效,应用于高速公路能有效抑制广播风暴,可靠性较高,信息平均传输时延短,具有明显的技术效果。

应理解,本实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

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