本发明涉及网络数据传输技术领域,尤其涉及一种车载自组网络数据包传送方法及装置。
背景技术:
车载自组网络(vehicularad-hocnetworks;vanet)是由车辆、路边单元(roadsideunit;rsu)和基站(basestation;bs)等异构节点所组成的分布式系统,这些异构节点之间可以交换数据,且支持关键信息、多媒体数据等内容的分发。面对日益增长的网络威胁,vanet中的安全和隐私等问题显得至关重要。然而,受制于固有的分布式机制以及节点的高度移动性和异构性,vanet容易遭受网络中恶意节点的丢包攻击,其安全问题一直得不到有效解决。现有的安全机制主要采用多路径路由和基于信任的路由,前者具有较高的能耗,后者需要对网络节点进行信任评估,这在实践中较难实现。
因此,如何解决现有技术中由于vanet容易遭受恶意路由的攻击,导致网络安全性不高的缺陷已成为业界日益关注的研究重点。
技术实现要素:
本发明提供一种车载自组网络数据包传送方法及装置,用以解决现有技术中由于vanet容易遭受恶意路由的攻击,导致网络安全性不高的缺陷。
本发明提供一种车载自组网络数据包传送方法,包括:
根据车载自组网络的当前状态信息,结合马尔科夫决策过程模型,构建当前网格的状态空间和当前网格的动作空间;其中,所述当前网格中包括数据包发送节点;
根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值,以根据所述最大动作价值收益值确定目标安全网格;
基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送。
根据本发明提供的一种车载自组网络数据包传送方法,所述根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值的步骤,具体包括:
在所述数据包发送节点为车辆节点的情况下,根据所述状态空间和所述动作空间,通过车辆节点联合估计q学习算法模型,确定所述车辆节点的最优动作价值收益值;
在所述数据包发送节点为路边单元节点的情况下,根据所述状态空间和所述动作空间,通过路边单元节点联合估计q学习算法模型,确定所述路边单元节点的最优动作价值收益值;
将所述车辆节点的最优动作价值收益值和所述路边单元节点的最优动作价值收益值中的最大值,作为所述数据包发送节点的最大动作价值收益值。
根据本发明提供的一种车载自组网络数据包传送方法,所述确定所述车辆节点的最优动作价值收益值的步骤,具体包括:
所述车辆节点基于所述状态空间和所述动作空间,选择执行的动作,观察所述动作执行后的结果奖励值;
其中,所述动作指的是所述车辆随机选择的动作或所述车辆节点从相邻车辆节点学习的最优动作;
观察统计所述车辆节点的相邻车辆节点的所述动作选择概率,并得到所述动作选择概率的第一归一化结果;
根据所述第一归一化结果,获取所述动作的第一联合估计动作价值收益值;
根据所述第一联合估计动作价值收益值,更新所述车辆节点的动作价值收益值;
根据所述结果奖励值和所述车辆节点的动作价值收益值,基于贝尔曼方程,获取当前网格的车辆节点的最优动作价值收益值。
根据本发明提供的一种车载自组网络数据包传送方法,所述确定所述路边单元节点的最优动作价值收益值的步骤,具体包括:
所述路边单元节点基于所述状态空间和所述动作空间,选择执行的动作;
其中,所述动作指的是所述路边单元节点从相邻车辆节点学习的最优动作;
统计观察所述路边单元节点的相邻车辆节点的所述动作选择概率,并得到所述动作选择概率的第二归一化结果;
根据所述第二归一化结果,获取所述动作的第二联合估计动作价值收益值;
根据所述第二联合估计动作价值收益值,更新所述路边单元节点的动作价值收益值,作为当前网格的路边单元节点的最优动作价值收益值。
根据本发明提供的一种车载自组网络数据包传送方法,所述基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送的步骤,具体包括:
根据目标安全网格中各个车辆节点的运动矢量和各个车辆节点的目标地理矢量,构建矢量夹角;
其中,所述各个车辆节点的目标地理矢量,是指所述车辆节点到数据包目标节点的地理矢量;
在所述矢量夹角小于预设角度的情况下,将所述矢量夹角最小的车辆节点作为中继节点来传输数据包;
在所述矢量夹角大于或等于预设角度的情况下,将所述目标安全网格中的路边单元节点作为中继节点来传输数据包。
根据本发明提供的一种车载自组网络数据包传送方法,所述构建当前网格的状态空间和当前网格的动作空间的步骤,具体包括:
根据车载自组网络的网络节点集合和无线链路集合,构建所述车载自组网络的无向图;
结合曼哈顿模型,按照预设尺寸,将所述无向图划分成大小相同的正方形网格;
根据当前数据包发送节点的位置信息,确定当前网格,并根据所述网络节点集合的位置信息和所述网络节点集合的通信半径信息,构建所述当前网格的状态空间;
根据与所述当前网格相邻的网格,构建所述当前网格的动作空间。
根据本发明提供的一种车载自组网络数据包传送方法,所述基于最小角度选择策略,在所述目标安全网格中选取中继节点的步骤,还包括:
在所述目标安全网格中仅存在唯一车辆节点或唯一路边单元节点的情况下,将所述唯一车辆节点或唯一路边单元节点作为所述目标安全网格中的中继节点。
本发明还提供一种车载自组网络数据包传送装置,包括:
状态-动作空间构建单元,用于根据车载自组网络的当前状态信息,结合马尔科夫决策过程模型,构建当前网格的状态空间和当前网格的动作空间;其中,所述当前网格中包括数据包发送节点;
目标安全网格确定单元,用于根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值,以根据所述最大动作价值收益值确定目标安全网格;
中继节点确定单元,用于基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述车载自组网络数据包传送方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述车载自组网络数据包传送方法的步骤。
本发明提供的车载自组网络数据包传送方法及装置,基于马尔科夫决策过程模型,构建出数据包发送节点所处当前网格的状态空间和动作空间,通过联合估计q学习算法模型,当前网格中数据包发送节点可以从同一网格中的相邻数据包发送节点学习到最优动作,进而基于贝尔曼方程迭代更新,获得最大动作价值收益值,以确定目标安全网格,并通过最小角度选择策略,在目标安全网格中选取中继节点来传送数据包,提高数据包传送效率,从而实现对恶意路由多种形式丢包攻击的抵御,提升网络的安全性。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的车载自组网络数据包传送方法的流程示意图;
图2是本发明提供的车载自组网络数据包传送方法的分层路由的结构示意图;
图3是本发明提供的网格场景下多智能体强化学习过程的示意图;
图4是本发明提供的车载自组网络数据包传送装置的结构示意图;
图5是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明提供的车载自组网络数据包传送方法的流程示意图,如图1所示,包括:
步骤s110,根据车载自组网络的当前状态信息,结合马尔科夫决策过程模型,构建当前网格的状态空间和当前网格的动作空间;其中,所述当前网格中包括数据包发送节点。
具体地,本发明中所描述的车载自组网络指的是由车辆节点、路边单元(roadsideunit;rsu)节点和基站(basestation;bs)节点组成的网络节点集合以及连接网络节点的无线链路集合;
本发明中所描述的车载自组网络的当前状态信息指的是vanet中的车辆节点、bs节点和rsu节点拥有不同的通信半径,使用gps设备可以获取各个网络节点的位置信息及每个车辆节点实时的位置、方向和速度等信息。
马尔科夫决策过程(markovdecisionprocess;mdp)模型是序贯决策的数学模型,用于在系统状态具有马尔可夫性质的环境中模拟可实现的随机性策略与回报。
本发明所描述的数据包发送节点指的是vanet中有数据包发送任务的网络节点,主要包括车辆节点和rsu节点。
进一步地,在本发明中,为了降低由车辆节点流动性引起的观测复杂性,对于车辆节点的数据包转发过程,将其公式化为mdp模型。进而根据vanet的当前状态信息,构建数据包发送节点所在的当前网格的状态空间。
其中,本发明中的状态空间指的是根据vanet的当前状态信息,在当前网格中全部可能状态的集合。
在本发明的方法中,数据包发送节点在学习的过程中,将下一跳相邻网格的选择视为动作,基于mdp模型,构建数据包发送节点所在的当前网格的动作空间。
其中,本发明中的动作空间指的是处于当前网格中的数据包发送节点,从相邻网格中选择下一跳网格的全部可能动作的集合。
通过步骤s110,基于mdp模型,构建出当前网格的状态空间和当前网格的动作空间,为后续当前网格中的数据包发送节点之间的联合估计q学习做准备。
步骤s120,根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值,以根据所述最大动作价值收益值确定目标安全网格。
具体地,本发明所描述的联合估计q学习算法模型为基于mdp模型,将路由跳变技术和多智能体强化学习算法相结合,提出的一种新颖在线自适应学习算法。在本发明的联合估计q学习算法模型中,数据包发送节点可以通过参数共享来调整自己的q值,从而加快收敛速度。
进一步地,根据当前网格的状态空间和所述动作空间,结合联合估计q学习算法模型,通过观察与数据包发送节点所在同一网格中其它节点的最优选择动作,获得联合估计q值,从而可以有效地更新自己的q值。最后,根据bellman方程迭代更新q值,确定当前网格中数据包发送节点的最大动作价值收益值。
根据最大动作价值收益值,可以进一步确定出下一跳目标安全网格。
通过步骤s120,根据当前网格的状态空间和所述动作空间,结合联合估计q学习算法模型,当前网格中数据包发送节点可获取最大动作价值收益值,以确定下一跳目标安全网格的最佳策略,从而可以在安全网格中选取中继节点来发送数据包。
步骤s130,基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送。
需要说明的是,通过步骤s120,可以确定下一跳目标安全网格,但是如何选择网格内部的中继节点仍然未知。为了选出具有最大数据包传输成功概率的中继节点,本发明提出了一种选择特定车辆节点或rsu节点的策略,即最小角度选择策略。
具体地,本发明中的最小角度选择策略指的是一种使用角度来衡量运动矢量和地理矢量之间相似性的策略,通过判断车辆节点的运动矢量与目标地理矢量之间的夹角,确定目标安全网格中发送数据包的中继节点。其中,目标地理矢量指的是车辆节点到数据包目标节点的地理矢量;数据包目标节点指的是数据包发送后,最终对数据包进行接收的目标网络节点。
进一步地,在vanet中,可以根据目标安全网格中各个车辆节点的运动矢量和各个车辆节点的目标地理矢量,通过矢量计算,得到该运动矢量和该地理矢量之间的矢量夹角。
由此,通过矢量夹角大小可以判断出数据包发送节点到数据包目标节点的距离,具有最小矢量夹角的网络节点更有可能成功传输数据包。因此,本发明选择矢量夹角最小的网络节点作为中继节点,通过该中继节点进行数据包传送。
通过步骤s130,基于最小角度选择策略,在目标安全网格中选取中继节点,通过该中继节点进行数据包传送,可提高数据包传送的效率。
通过本发明的实施例,基于mdp模型,构建出数据包发送节点所处当前网格的状态空间和动作空间,通过联合估计q学习算法模型,当前网格中数据包发送节点可以从同一网格中的相邻数据包发送节点学习到最优动作,进而基于bellman方程迭代更新,获得最大动作价值收益值,以确定目标安全网格,并通过最小角度选择策略,在目标安全网格中选取中继节点来传送数据包,提高数据包传送效率,从而实现对恶意路由多种形式丢包攻击的抵御,提升网络的安全性。
基于上述任一实施例,根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值的步骤,具体包括:
在所述数据包发送节点为车辆节点的情况下,根据所述状态空间和所述动作空间,通过车辆节点联合估计q学习算法模型,确定所述车辆节点的最优动作价值收益值;
在所述数据包发送节点为路边单元节点的情况下,根据所述状态空间和所述动作空间,通过路边单元节点联合估计q学习算法模型,确定所述路边单元节点的最优动作价值收益值;
将所述车辆节点的最优动作价值收益值和所述路边单元节点的最优动作价值收益值中的最大值,作为所述数据包发送节点的最大动作价值收益值。
具体地,本发明中的车辆节点联合估计q学习算法模型指的是在数据包发送节点为车辆节点情况下的联合估计q学习算法模型;路边单元节点联合估计q学习算法模型指的是在数据包发送节点为rsu节点情况下的联合估计q学习算法模型。
进一步地,在数据包发送节点为车辆节点的情况下,根据当前网格的状态空间和动作空间,通过车辆节点联合估计q学习算法模型,车辆节点会与同一网格中的相邻车辆节点进行合作学习,从相邻车辆节点学习到联合估计q值,并使用联合估计q值来更新自己的q值。最后,根据bellman方程更新q值,从而确定车辆节点的最优动作价值收益值。
在本发明中,由于rsu节点不能移动,其只需从同一网格中的相邻车辆节点获得联合估计q值,因此不需要自己学习。
具体地,在数据包发送节点为rsu节点的情况下,根据当前网格的状态空间和动作空间,通过rsu节点联合估计q学习算法模型,rsu节点可以从同一网格中的相邻车辆节点直接获得联合估计q值,并使用联合估计q值来更新自己的q值,从而确定rsu节点的最优动作价值收益值。
进一步地,将上述车辆节点的最优动作价值收益值和上述rsu节点的最优动作价值收益值作比较,选取其中的最大值,作为数据包发送节点的最大动作价值收益值。
通过本发明的实施例,根据状态空间和动作空间,通过车辆节点联合估计q学习算法模型,确定车辆节点的最优动作价值收益值;通过rsu节点联合估计q学习算法模型,确定rsu节点的最优动作价值收益值;选取车辆节点的最优动作价值收益值和rsu节点的最优动作价值收益值中的最大值,作为数据包发送节点的最大动作价值收益值,以确定下一跳目标安全网格。
基于上述任一实施例,所述确定所述车辆节点的最优动作价值收益值的步骤,具体包括:
所述车辆节点基于所述状态空间和所述动作空间,选择执行的动作,观察所述动作执行后的结果奖励值;
其中,所述动作指的是所述车辆随机选择的动作或所述车辆节点从相邻车辆节点学习的最优动作;
观察统计所述车辆节点的相邻车辆节点的所述动作选择概率,并得到所述动作选择概率的第一归一化结果;
根据所述第一归一化结果,获取所述动作的第一联合估计动作价值收益值;
根据所述第一联合估计动作价值收益值,更新所述车辆节点的动作价值收益值;
根据所述结果奖励值和所述车辆节点的动作价值收益值,基于贝尔曼方程,获取当前网格的车辆节点的最优动作价值收益值。
具体地,本发明中所描述的结果奖励值是通过奖励函数得来的。在本发明中,分别考虑了三个因素来定义车辆节点
其中,
其中,本发明中所描述的目的地指的是数据包目标节点所在的网格区域。
进一步地,根据mdp模型,每一个车辆节点或rsu节点的目的是要学习一个策略π来最大化预期收益,其中策略π是从状态空间到动作选择概率的映射,状态价值函数
其中,e表示期望,ri(t k)是即时奖励,γ是一个介于0到1之间的衰减因子。
对于车辆节点
如果
其中,δ是td误差,
其中,在本发明中,智能体指的是具有数据包发送任务的网络节点,主要包括车辆节点和rsu节点。
进一步地,在本发明的方法中,车辆节点之间通过共享联合估计q值进行合作学习。设
为了从其他模型中学习经验模型,每个车辆节点设置了一个计数器
其中,
其中,
其中,
如果车辆节点
可以理解的是,车辆节点通过一个网格的次数越少,其所需的更新系数也就越大。为了选择合适的θt来更新q值,本发明选择sigmoid函数来表征其变化,将
显然,
进而,根据当前网格的状态空间和动作空间,车辆节点会使用贪婪策略从动作空间中随机选择动作或者是从相邻车辆节点学习到最优动作,执行该选择的动作发送数据包后,车辆节点会得到相应结果奖励值ri(t)。待数据包交付后,车辆节点会统计观察相邻车辆节点的动作策略,根据上述公式(6)和(7),得到相邻车辆节点选择相同动作的概率以及对应的归一化概率,进而根据上述公式(8)得到该动作的联合估计q值。根据该联合估计q值,车辆节点可以更新自己q值。结合得到的结果奖励值ri(t),基于bellman方程,车辆节点可以得到最优动作价值收益值。
在本发明中,由于车辆节点经常运动,因此可以探索不同的网络状态。将学习率设为α=1/τ,贪婪因子设为ε=δτ,其中
车辆节点联合估计q学习算法,具体如下所示。
通过本发明的方法,车辆节点基于联合估计q学习算法模型,可以从相邻车辆节点学习到最优动作,以获得最优动作的联合估计q值,并基于bellman方程进行q值迭代,获得当前网格的车辆节点的最优动作价值收益值。
基于上述任一实施例,所述确定所述路边单元节点的最优动作价值收益值的步骤,具体包括:
所述路边单元节点基于所述状态空间和所述动作空间,选择执行的动作;
其中,所述动作指的是所述路边单元节点从相邻车辆节点学习的最优动作;
统计观察所述路边单元节点的相邻车辆节点的所述动作选择概率,并得到所述动作选择概率的第二归一化结果;
根据所述第二归一化结果,获取所述动作的第二联合估计动作价值收益值;
根据所述第二联合估计动作价值收益值,更新所述路边单元节点的动作价值收益值,作为当前网格的路边单元节点的最优动作价值收益值。
具体地,通过路边单元节点联合估计q学习算法模型,根据当前网格的状态空间和动作空间,rsu节点会从相邻车辆节点直接获取到最优动作。与上述车辆节点一样,rsu节点会统计观察相邻车辆节点,根据上述公式(6)和(7),得到相邻车辆节点选择相同动作的概率以及对应的归一化概率,进而根据上述公式(8),得到该动作的联合估计q值。根据此联合估计q值,rsu节点更新自己的q值,并将该q值作为最优动作价值收益值。
本发明通过路边单元节点联合估计q学习算法模型,确定rsu节点的最优动作价值收益值。rsu节点联合估计q学习算法,具体如下所示。
通过本发明的方法,rsu节点基于联合估计q学习算法模型,可以从同一网格中相邻车辆节点学习到最优动作,以获得最优动作的联合估计q值,根据该联合估计q值更新自己的q值,从而获得当前网格的rsu节点的最优动作价值收益值。基于上述任一实施例,所述基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送的步骤,具体包括:
根据目标安全网格中各个车辆节点的运动矢量和各个车辆节点的目标地理矢量,构建矢量夹角;
其中,所述各个车辆节点的目标地理矢量,是指所述车辆节点到数据包目标节点的地理矢量;
在所述矢量夹角小于预设角度的情况下,将所述矢量夹角最小的车辆节点作为中继节点来传输数据包;
在所述矢量夹角大于或等于预设角度的情况下,将所述目标安全网格中的路边单元节点作为中继节点来传输数据包。
可以理解的是,通过前面所述,可以确定出目标安全网格,但是如何选择网格内部的中继节点仍然未知,因此,本发明提出了一种选择特定车辆节点或rsu节点的策略。
具体地,取
在本发明中,由于rsu不能移动,故可以将其预设角度值设置为90°。当θj小于90°时,从节点vj到终点vd的距离会缩短,并且节点vj更有可能成功传输数据包。因此,通过比较每个节点的θ,可以选择出具有最小角度的数据包发送节点,从而确定出中继节点,进而通过该中继节点进行数据包传输。
在本发明中,当矢量夹角大于或等于90°时,本发明将选择目标安全网格中的路边单元节点作为中继节点,并通过该中继节点来传输数据包。
本发明的最小角度选择策略算法的详细描述如下所示,为了防止死锁循环,每个数据包都有一个ttl字段,数据包每走一跳,ttl就会减1。如果ttl大于0,则按照设计的策略传输数据包,如果ttl过期,则数据包将被丢弃。
具体算法如下所示:
在本发明中,在选择下一跳目标安全网格后,在此网格内选择中继节点时,需要考虑如下三种情况:如果目标安全网格内有车辆节点或rsu节点,则车辆节点
通过本发明的方法,在确定出目标安全网格的情况下,基于最小角度选择策略,在目标安全网格中选取中继节点,并通过该中继节点进行数据包传送,以提高数据包传送的效率。
基于上述任一实施例,所述构建当前网格的状态空间和当前网格的动作空间的步骤,具体包括:
根据车载自组网络的网络节点集合和无线链路集合,构建所述车载自组网络的无向图;
结合曼哈顿模型,按照预设尺寸,将所述无向图划分成大小相同的正方形网格;
根据当前数据包发送节点的位置信息,确定当前网格,并根据所述网络节点集合的位置信息和所述网络节点集合的通信半径信息,构建所述当前网格的状态空间;
根据与所述当前网格相邻的网格,构建所述当前网格的动作空间。
具体地,本发明的vanet中,有n个车辆节点、m个bs节点和l个rsu节点,这样可以构建无向图g=(v,e),其中v是由车辆节点、bs节点和rsu节点组成的网络节点集合,其中vi(1≤i≤n m l)。e是连接节点vi和vj的无线链路集合,其中vi,vj∈v。
根据曼哈顿模型,按照预设尺寸,将无向图中地理区域划分成大小相同的正方形网格,将所选的区域划分为h×h个网格。
本发明所描述的预设尺寸指的是针对车载自组网络的无向图网格划分,预先设定的网格划分尺寸。
其中,在本发明实施例中,预设尺寸有3×2个网格、5×5个网格、6×6个网格、8×8个网格等。
进一步地,根据数据包发送节点的当前位置信息,可以确定数据包发送节点所在的当前网格;同时,网络节点集合的位置信息和网络节点集合的通信半径信息,包括:车辆节点、bs节点和rsu节点拥有不同的通信半径,因此需要多跳转发与不在通信范围内的网络节点进行通信,分别定义为rv、rb和rr;此外,v2v和v2i通信均启动,以支持网络中任意一对节点之间的数据交换。根据上述信息,对于车辆节点的转发过程,将其公式化为mdp模型。
为使车辆节点运动而引发的环境动态性大大降低,在本发明中,车辆节点进行水平和纵向移动,rsu节点和bs节点均匀地分布在其中。将每个网格当做网络状态sz(1≤z≤h×h),车辆节点
进一步地,数据包发送节点将当前网格对相邻网格的选择视为动作,表示为
在本发明的实施例中,通过构建车载自组网络的无向图,结合曼哈顿模型和mdp模型,根据车载自组网络当前状态信息,构建当前网格的状态空间和当前网格的动作空间。
基于上述任一实施例,所述基于最小角度选择策略,在所述目标安全网格中选取中继节点的步骤,还包括:
在所述目标安全网格中仅存在唯一车辆节点或唯一路边单元节点的情况下,将所述唯一车辆节点或唯一路边单元节点作为所述目标安全网格中的中继节点。
具体地,在确定好下一跳目标安全网格后,还需要在目标安全网格选择特定的中继节点来进行数据包传送。如果在下一跳目标安全网格中,仅存在唯一车辆节点或者唯一rsu节点,那么,唯一车辆节点或者唯一rsu节点将被选作特定的中继节点,通过该中继节点来传送数据包。
图2是本发明提供的车载自组网络数据包传送方法的分层路由的结构示意图,如图2所示,vanet中分层路由包括两层结构,即物理层结构和网络层结构。
继续参照图2,在基于vanet场景构建的模型中,物理层结构是由车辆节点、rsu节点和bs节点构成的网络节点集合及连接各节点的无线链路集合组成的,这些异构节点之间可以进行数据交换,且支持关键信息、多媒体数据等内容的分发。
网络层结构是由车辆节点路由、rsu节点路由和bs节点路由及恶意节点路由组成的。对于任意数据包而言,从起点(source)到终点(destination),包含了一系列的网络节点和无线链路。
其中,本发明中所描述的恶意节点路由指的是恶意rsu节点路由。
在本发明中,通过引入威胁模型,在威胁模型中引入了恶意rsu的行为。在本发明的威胁模型中,端到端的路由链路已经通过对称秘钥进行加密。因此,如果攻击者不是接收者,则无法通过无线信道解密任何的密文。其次,攻击者可以是位于vanet无线信号范围内的外部人员,或者攻击者可以先破坏一个或者多个rsu,然后再充当内部人员。如果攻击者是外部人员,将对特定的rsu发动ddos攻击,从而导致这些rsu上的数据包被丢弃。这里,攻击者只能对rsu发动攻击,因为rsu的位置都是公开的,且安全级别低于bs。
无论攻击者是外部人员,还是内部人员,任何经过受攻击的rsu的端到端路由都会导致数据包的丢失,设概率为pd。如果pd=1,则是黑洞攻击(bha),即典型的丢包攻击,否则是灰洞攻击(gha)。此外,如果攻击者足够狡猾,可以将虚假的消息发送至上一跳的节点,从而造成受损的rsu完成数据转发的假象。
通过本发明的实施例,数据包从起点传送,总能找到最佳路径进行传送,以避开存在恶意节点路由的网格,直至数据包完好地传送到目标节点,达到完成数据包传送任务的目的。
图3是本发明提供的网格场景下多智能体强化学习过程的示意图,如图3所示,为了简化场景,本发明的实施例中,每个网格中都有一个固定的智能体,并且智能体之间可以互相观察q值,箭头表示转发数据包到邻居网格的动作,每个箭头上方的值表示此操作的q值。本发明定义了四个动作,即上、下、左、右。由于每个网格中只有一个智能体,所以可以忽视网格内部的选择过程。
在本发明的实施例中,定义将数据包发送到目的地的奖励为100,由于恶意节点而导致数据包丢失的奖励为-100,对于其他操作的奖励均为0。同时,设置折扣因子γ=0.9,学习因子α=1。如图3中的(a)所示,如果s3是目标所在的网格,则相邻网格s2和s6中的智能体可以通过一跳路由将数据包发送至目的地。如图3中的(b),根据前面所述的公式(5),可以计算出q(2)(s2,a2→3)=100,q(6)(s6,a6→3)=100。所示,当s5中的智能体转发数据包时,可以选择s2或者s6中的智能体,如图3中的(c)所示,则有q(5)(s5,a5→2)=0 0.9max{-100,100}=90,q(5)(s5,a5→6)=0 0.9max{-100,100}=90。如图3中的(d)所示,反复迭代更新q值,直到收敛为止,达到图3中的(e)显示的最终状态。因此,从图3中的(f)可以明显看出,对于给定的起点s4和终点s3,有两条安全可行的路由可以传送数据包,即s4→s5→s2→s3和s4→s5→s6→s3。
图4是本发明提供的车载自组网络数据包传送装置的结构示意图,如图4所示,包括:
状态-动作空间构建单元410,用于根据车载自组网络的当前状态信息,结合马尔科夫决策过程模型,构建当前网格的状态空间和当前网格的动作空间;其中,所述当前网格中包括数据包发送节点;
目标安全网格确定单元420,用于根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值,以根据所述最大动作价值收益值确定目标安全网格;
中继节点确定单元430,用于基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送。
本发明提供的车载自组网络数据包传送装置,通过结合马尔科夫决策过程模型,构建出数据包发送节点所处当前网格的状态空间和动作空间,基于联合估计q学习算法模型,当前网格中数据包发送节点可以从相邻数据包发送节点学习到最优动作,获取最大动作价值收益值,以根据最大动作价值收益值确定出目标安全网格,并通过最小角度选择策略,在目标安全网格中选取中继节点来传送数据包,提高数据包传送效率,从而实现对恶意路由多种形式丢包攻击的抵御,提升网络的安全性。
根据本发明提供的车载自组网络数据包传送装置,所述根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值的步骤,具体包括:
在所述数据包发送节点为车辆节点的情况下,根据所述状态空间和所述动作空间,通过车辆节点联合估计q学习算法模型,确定所述车辆节点的最优动作价值收益值;
在所述数据包发送节点为路边单元节点的情况下,根据所述状态空间和所述动作空间,通过路边单元节点联合估计q学习算法模型,确定所述路边单元节点的最优动作价值收益值;
将所述车辆节点的最优动作价值收益值和所述路边单元节点的最优动作价值收益值中的最大值,作为所述数据包发送节点的最大动作价值收益值。
根据本发明提供的车载自组网络数据包传送装置,所述确定所述车辆节点的最优动作价值收益值的步骤,具体包括:
所述车辆节点基于所述状态空间和所述动作空间,选择执行的动作,观察所述动作执行后的结果奖励值;
其中,所述动作指的是所述车辆节点随机选择的动作或所述车辆节点从相邻车辆节点学习的最优动作;
观察统计所述车辆节点的相邻车辆节点的所述动作选择概率,并得到所述动作选择概率的第一归一化结果;
根据所述第一归一化结果,获取所述动作的第一联合估计动作价值收益值;
根据所述第一联合估计动作价值收益值,更新所述车辆节点的动作价值收益值;
根据所述结果奖励值和所述车辆节点的动作价值收益值,基于贝尔曼方程,获取当前网格的车辆节点的最优动作价值收益值。
根据本发明提供的车载自组网络数据包传送装置,所述确定所述路边单元节点的最优动作价值收益值的步骤,具体包括:
所述路边单元节点基于所述状态空间和所述动作空间,选择执行的动作;
其中,所述动作指的是所述路边单元节点从相邻车辆节点学习的最优动作;
统计观察所述路边单元节点的相邻车辆节点的所述动作选择概率,并得到所述动作选择概率的第二归一化结果;
根据所述第二归一化结果,获取所述动作的第二联合估计动作价值收益值;
根据所述第二联合估计动作价值收益值,更新所述路边单元节点的动作价值收益值,作为当前网格的路边单元节点的最优动作价值收益值。
根据本发明提供的车载自组网络数据包传送装置,所述基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送的步骤,具体包括:
根据目标安全网格中各个车辆节点的运动矢量和各个车辆节点的目标地理矢量,构建矢量夹角;
其中,所述各个车辆节点的目标地理矢量,是指所述车辆节点到数据包目标节点的地理矢量;
在所述矢量夹角小于预设角度的情况下,将所述矢量夹角最小的车辆节点作为中继节点来传输数据包;
在所述矢量夹角大于或等于预设角度的情况下,将所述目标安全网格中的路边单元节点作为中继节点来传输数据包。
根据本发明提供的车载自组网络数据包传送装置,所述构建当前网格的状态空间和当前网格的动作空间的步骤,具体包括:
根据车载自组网络的网络节点集合和无线链路集合,构建所述车载自组网络的无向图;
结合曼哈顿模型,按照预设尺寸,将所述无向图划分成大小相同的正方形网格;
根据当前数据包发送节点的位置信息,确定当前网格,并根据所述网络节点集合的位置信息和所述网络节点集合的通信半径信息,构建所述当前网格的状态空间;
根据与所述当前网格相邻的网格,构建所述当前网格的动作空间。
根据本发明提供的车载自组网络数据包传送装置,所述基于最小角度选择策略,在所述目标安全网格中选取中继节点的步骤,还包括:
在所述目标安全网格中仅存在唯一车辆节点或唯一路边单元节点的情况下,将所述唯一车辆节点或唯一路边单元节点作为所述目标安全网格中的中继节点。
本发明描述的车载自组网络数据包传送装置与上文描述的车载自组网络数据包传送方法可相互对应参照,故此处不再赘述。
图5是本发明提供的电子设备的结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(communicationsinterface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行所述车载自组网络数据包传送方法,该方法包括:根据车载自组网络的当前状态信息,结合马尔科夫决策过程模型,构建当前网格的状态空间和当前网格的动作空间;其中,所述当前网格中包括数据包发送节点;根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值,以根据所述最大动作价值收益值确定目标安全网格;基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的所述车载自组网络数据包传送方法,该方法包括:根据车载自组网络的当前状态信息,结合马尔科夫决策过程模型,构建当前网格的状态空间和当前网格的动作空间;其中,所述当前网格中包括数据包发送节点;根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值,以根据所述最大动作价值收益值确定目标安全网格;基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的所述车载自组网络数据包传送方法,该方法包括:根据车载自组网络的当前状态信息,结合马尔科夫决策过程模型,构建当前网格的状态空间和当前网格的动作空间;其中,所述当前网格中包括数据包发送节点;根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值,以根据所述最大动作价值收益值确定目标安全网格;基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
1.一种车载自组网络数据包传送方法,其特征在于,包括:
根据车载自组网络的当前状态信息,结合马尔科夫决策过程模型,构建当前网格的状态空间和当前网格的动作空间;其中,所述当前网格中包括数据包发送节点;
根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值,以根据所述最大动作价值收益值确定目标安全网格;
基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送。
2.根据权利要求1所述的车载自组网络数据包传送方法,其特征在于,所述根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值的步骤,具体包括:
在所述数据包发送节点为车辆节点的情况下,根据所述状态空间和所述动作空间,通过车辆节点联合估计q学习算法模型,确定所述车辆节点的最优动作价值收益值;
在所述数据包发送节点为路边单元节点的情况下,根据所述状态空间和所述动作空间,通过路边单元节点联合估计q学习算法模型,确定所述路边单元节点的最优动作价值收益值;
将所述车辆节点的最优动作价值收益值和所述路边单元节点的最优动作价值收益值中的最大值,作为所述数据包发送节点的最大动作价值收益值。
3.根据权利要求2所述的车载自组网络数据包传送方法,其特征在于,所述确定所述车辆节点的最优动作价值收益值的步骤,具体包括:
所述车辆节点基于所述状态空间和所述动作空间,选择执行的动作,观察所述动作执行后的结果奖励值;
其中,所述动作指的是所述车辆节点随机选择的动作或所述车辆节点从相邻车辆节点学习的最优动作;
观察统计所述车辆节点的相邻车辆节点的所述动作选择概率,并得到所述动作选择概率的第一归一化结果;
根据所述第一归一化结果,获取所述动作的第一联合估计动作价值收益值;
根据所述第一联合估计动作价值收益值,更新所述车辆节点的动作价值收益值;
根据所述结果奖励值和所述车辆节点的动作价值收益值,基于贝尔曼方程,获取当前网格的车辆节点的最优动作价值收益值。
4.根据权利要求2所述车载自组网络数据包传送方法,其特征在于,所述确定所述路边单元节点的最优动作价值收益值的步骤,具体包括:
所述路边单元节点基于所述状态空间和所述动作空间,选择执行的动作;
其中,所述动作指的是所述路边单元节点从相邻车辆节点学习的最优动作;
统计观察所述路边单元节点的相邻车辆节点的所述动作选择概率,并得到所述动作选择概率的第二归一化结果;
根据所述第二归一化结果,获取所述动作的第二联合估计动作价值收益值;
根据所述第二联合估计动作价值收益值,更新所述路边单元节点的动作价值收益值,作为当前网格的路边单元节点的最优动作价值收益值。
5.根据权利要求1所述的车载自组网络数据包传送方法,其特征在于,所述基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送的步骤,具体包括:
根据目标安全网格中各个车辆节点的运动矢量和各个车辆节点的目标地理矢量,构建矢量夹角;
其中,所述各个车辆节点的目标地理矢量,是指所述车辆节点到数据包目标节点的地理矢量;
在所述矢量夹角小于预设角度的情况下,将所述矢量夹角最小的车辆节点作为中继节点来传输数据包;
在所述矢量夹角大于或等于预设角度的情况下,将所述目标安全网格中的路边单元节点作为中继节点来传输数据包。
6.根据权利要求1所述的车载自组网络数据包传送方法,其特征在于,所述构建当前网格的状态空间和当前网格的动作空间的步骤,具体包括:
根据车载自组网络的网络节点集合和无线链路集合,构建所述车载自组网络的无向图;
结合曼哈顿模型,按照预设尺寸,将所述无向图划分成大小相同的正方形网格;
根据当前数据包发送节点的位置信息,确定当前网格,并根据所述网络节点集合的位置信息和所述网络节点集合的通信半径信息,构建所述当前网格的状态空间;
根据与所述当前网格相邻的网格,构建所述当前网格的动作空间。
7.根据权利要求1所述的车载自组网络数据包传送方法,其特征在于,所述基于最小角度选择策略,在所述目标安全网格中选取中继节点的步骤,还包括:
在所述目标安全网格中仅存在唯一车辆节点或唯一路边单元节点的情况下,将所述唯一车辆节点或唯一路边单元节点作为所述目标安全网格中的中继节点。
8.一种车载自组网络数据包传送装置,其特征在于,包括:
状态-动作空间构建单元,用于根据车载自组网络的当前状态信息,结合马尔科夫决策过程模型,构建当前网格的状态空间和当前网格的动作空间;其中,所述当前网格中包括数据包发送节点;
目标安全网格确定单元,用于根据所述状态空间和所述动作空间,结合联合估计q学习算法模型,获取所述当前网格中数据包发送节点的最大动作价值收益值,以根据所述最大动作价值收益值确定目标安全网格;
中继节点确定单元,用于基于最小角度选择策略,在所述目标安全网格中选取中继节点,通过所述中继节点进行数据包传送。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述车载自组网络数据包传送方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述车载自组网络数据包传送方法的步骤。
技术总结