«上一篇 下一篇»
  计算机工程  2022, Vol. 48 Issue (5): 162-169  DOI: 10.19678/j.issn.1000-3428.0062147
0

引用本文  

赵蓓英, 姬伟峰, 翁江, 等. 基于启发式Q学习的FANET可信路由算法[J]. 计算机工程, 2022, 48(5), 162-169. DOI: 10.19678/j.issn.1000-3428.0062147.
ZHAO Beiying, JI Weifeng, WENG Jiang, et al. Trusted Routing Algorithm Based on Heuristic Q-Learning for FANET[J]. Computer Engineering, 2022, 48(5), 162-169. DOI: 10.19678/j.issn.1000-3428.0062147.

基金项目

国家自然科学基金(61902426);中国博士后科学基金(2021M692502)

通信作者

姬伟峰(通信作者),副教授

作者简介

赵蓓英(1997-),女,硕士研究生,主研方向为无人机自组织网络安全;
翁江,讲师;
吴玄,硕士研究生;
李映岐,硕士研究生

文章历史

收稿日期:2021-07-21
修回日期:2021-09-13
基于启发式Q学习的FANET可信路由算法
赵蓓英 , 姬伟峰 , 翁江 , 吴玄 , 李映岐     
空军工程大学 信息与导航学院, 西安 710177
摘要:无人机自组织网络(FANET)是实现无人机自主集群的关键技术,其通过各无人机节点来完成协同通信。但节点的高机动性、网络结构的开放性造成FANET拓扑变化频繁,容易遭受恶意攻击。为此,提出一种基于启发式Q学习的可信路由算法HQTR。将FANET中的路由选择问题映射为有限马尔科夫决策过程,针对路由层面的黑洞攻击与泛洪攻击,引入数据包转发率与路由请求发送速率,通过模糊推理计算节点的信任值,同时考虑节点的邻居关系,提出一种模糊动态信任奖励机制。结合单跳链路状况设计启发式函数,采用改进的$ \epsilon $-贪婪策略来平衡利用-探索过程,引导当前节点选择最优可信下一跳节点。仿真结果表明,相对AOMDV、TEAOMDV与ESRQ算法,HQTR算法能够有效应对黑洞攻击与RREQ泛洪攻击,降低节点高速运动与网络规模变化所造成的影响,提高数据包投递率与吞吐量,减少路由开销与平均端到端时延。
关键词无人机自组织网络    路由攻击    信任模型    Q学习    启发式函数    
Trusted Routing Algorithm Based on Heuristic Q-Learning for FANET
ZHAO Beiying , JI Weifeng , WENG Jiang , WU Xuan , LI Yingqi     
School of Information and Navigation, Air Force Engineering University, Xi'an 710177, China
Abstract: The Flying Ad hoc Network(FANET) is the key technology for realizing UAV autonomous clusters.It completes cooperative communication through UAV nodes.However, owing to the high mobility of nodes and the openness of the network structure, FANET topology changes frequently and is vulnerable to malicious attacks.Therefore, a trusted routing algorithm HQTR based on heuristic Q-learning is proposed.The routing problem in the FANET is mapped to a finite Markov decision process.To mitigate black hole and flooding attacks at the routing level, a packet forwarding rate and a routing request sending rate are introduced.The trust value of the node is calculated via fuzzy reasoning, and considering the neighbor relationship of the node, a fuzzy dynamic trust reward mechanism is proposed.Combined with the single hop link condition, a heuristic function is designed, and an improved greedy strategy is used to balance the utilization-exploration process to facilitate the current node in selecting the best trusted next hop node.Simulation results show that compared with AOMDV, TEAOMDV, and ESRQ algorithms, the HQTR algorithm can effectively address black hole and RREQ flooding attacks, reduce the effects of high-speed node movements and network scale changes, improve the packet delivery rate and throughput, and reduce the routing overhead and average end-to-end delay.
Key words: Flying Ad hoc Network(FANET)    routing attack    trusted model    Q-learning    heuristic function    

开放科学(资源服务)标志码(OSID):

0 概述

近年来,无人机广泛应用于民用和军事领域:在民用领域,无人机用于航空摄影、智慧农业、电力巡检等方面;在军事领域,无人机用于情报侦查、军事打击、电子对抗等任务[1]。单架无人机的载荷与能量有限且覆盖范围小,无法完成大规模、高难度的任务,因此,无人机自主集群成为趋势[2]。无人机自组织网络(Flying Ad hoc Network,FANET)不依赖固定的基础设施,通过各无人机节点协同通信,是实现自主集群的关键技术[3]。但是,FANET中节点的高机动性、网络开放性与拓扑变化频繁等特点,导致网络路由面临性能与安全方面的双重考验[4]

本文提出一种基于启发式Q学习的可信路由(Heuristic Q-learning based Trusted Routing,HQTR)算法。将FANET中的路由选择问题映射为有限马尔科夫决策过程,并提出模糊动态信任奖励机制,针对路由层面的黑洞攻击与泛洪攻击,考虑节点的转发行为与路由请求发送速率,通过模糊推理计算节点的信任值,根据信任值与跳数计算节点的奖励值。结合单跳链路状况设计启发式函数,加速最优可信下一跳节点Q值的更新,引导当前节点选择最优可信下一跳节点。同时在路由过程中,根据信任值检测并隔离恶意节点,从而实现安全可靠且高效的数据传输。

1 相关工作

在高动态的FANET中,路由协议应该能够自适应地感知环境的变化,选择一个可靠的邻居节点来完成通信。强化学习是一种以环境反馈为输入的自适应机器学习算法,智能体可以根据环境反馈来不断调整行动策略,从而更好地适应动态的网络环境,因此,强化学习常被用于改进自组织网络的路由算法,以提高服务质量[5]

在路由性能优化方面,强化学习算法主要用于优化不同的服务质量参数,如端到端延迟、吞吐量、数据包投递率、跳数、路由开销等[6]。文献[7]提出一种基于Q-learning的无人机网络地理路由协议QGeo,该协议采用强化学习算法,根据数据包传输速度计算奖励值,同时根据邻居节点的距离调整折扣因子,选择Q值最高的节点作为下一跳节点。文献[8]提出一种基于Q-learning的多目标优化路由协议QMR,其考虑时延与剩余能量设计奖励函数,根据节点的邻居关系调整学习率与折扣因子,从而为FANET提供低延迟、低能耗的通信服务质量。模糊数学能够很好地处理信息的不确定性与不完整性,同时可以融入人类专业知识,适用于自组织网络高度动态的网络环境[9]。文献[10]提出一种改进的AODV协议PFQ-AODV,其利用链路带宽、链路质量以及车辆方向、速度变化的模糊推理结果修正Q值更新函数,在路由发现过程中选择Q值最大的邻居节点作为下一跳节点。文献[11]提出一种基于模糊Q-learning的路由算法FQ-AGO,该算法考虑可用带宽、链路质量、节点传输功率和距离,利用模糊逻辑来评估无线链路,采用Q-learning算法选择最优的下一跳节点。针对Q-learning算法效率低的问题,文献[12-13]引入启发式函数指导动作的选取,提出启发式Q-learning。文献[14]结合节点间的延迟信息来指导节点的转发行为,设计启发式函数和评价函数,加快当前最优动作Q值的更新,减少不必要的探索,从而提高Q-learning过程的收敛速度以及学习效率。

采用信任模型是确保自组织网络路由安全性与可靠性的有效措施之一[15]。文献[16]抽象出一种分布式信任推理模型,采用直接信任度、间接信任度、历史信任度、链路质量等作为信任评估因子,通过模糊层次分析法来确定权重,提出一种轻量级信任增强路由协议TEAOMDV。文献[17]将信任机制与Q-learning算法相结合,根据节点转发行为确定节点的可信度,并将其作为奖励值,选择满足剩余能量要求的最大Q值节点,以有效应对槽洞攻击与黑洞攻击。文献[18]针对VANET中的窃听、干扰和欺骗攻击,通过信任模型评估节点对VANET的威胁级别,采用区块链技术防止信息篡改,基于Q-learning决定是否响应源节点的请求或选择可靠的中继节点。针对SDN架构的VANET,文献[19-20]采用信任模型评估邻居转发数据包的行为,以应对恶意节点的丢包攻击,SDN控制器作为Agent,通过深度强化学习确定VANET中最可信的路由路径。

随着FANET的发展,其承载的业务更加复杂繁重,安全威胁层出不穷,对路由算法的性能与安全性都提出了更高的要求。然而,目前大多数算法仅关注性能优化或安全防护,为了有效应对潜在的恶意攻击,同时优化算法性能并提高服务质量,需要设计实现一种安全、高效且可靠的路由算法。

2 系统模型 2.1 多跳FANET模型

本文考虑一种多无人机协同作业场景,无人机之间形成自组织网络,不依赖地面站即可完成机间通信,从而摆脱地面站对无人机群活动范围的限制,扩大网络覆盖区域[21]。如图 1所示,无人机节点同时充当终端与路由器,邻居节点直接通信,非邻居节点可通过其他节点作为中继节点进行多跳通信。多跳FANET模型的关键在于找到一条最优路径,能够在低延迟、低开销的情况下安全传输数据。

Download:
图 1 多跳FANET模型 Fig. 1 Multi-hop FANET model
2.2 攻击模型

针对FANET路由层面存在的攻击,根据其特征的不同可分为以下3类:

1) 以丢包为特征的攻击,如黑洞、灰洞、选择性转发攻击。

2) 以篡改、伪造报文为特征的攻击,如槽洞、黑洞、灰洞、虫洞攻击。

3) 以泛洪为特征的攻击,如Hello消息泛洪攻击、RREQ消息泛洪攻击。

本文假设攻击者具有以下破坏能力:

1) 外部攻击者可以捕获网络内部节点,将其转化为一个恶意节点。

2) 内部攻击者或被转化的恶意节点可以篡改路由信息,如篡改路由回复报文、欺骗邻居节点其距离目的节点最近,从而加入转发路径,继而发动黑洞、灰洞等攻击,丢弃接收到的数据包。

3) 内部攻击者或被转化的恶意节点不受路由请求发送速率的限制,利用RREQ泛洪特性不断广播虚假的请求报文,淹没正常请求,占用网络资源,造成网络拥塞。

2.3 安全目标

为保证多跳FANET中无人机节点间的通信安全并协同完成通信任务,本文考虑以下安全目标:

1) 检测与防范黑洞、灰洞等丢包类攻击与路由请求RREQ消息泛洪攻击。

2) 通过验证节点之间的可信度,隔离内部恶意节点。

3) 提供从源节点到目的节点的安全数据传输,实现高吞吐量和高数据包投递率,控制网络开销,优化平均端到端时延。

3 基于启发式Q-learning的可信路由算法 3.1 FANET Q-learning模型

Q-learning是基于有限马尔科夫决策过程的强化学习算法,主要由智能体(Agent)、环境(Environment)、状态(State)、动作(Action)组成,如图 2所示[22]。智能体在执行某个动作后,环境将转换到一个新的状态并给出奖励(Reward)信号,随后智能体根据新的状态和环境反馈的奖励,按照一定的策略执行新动作。

Download:
图 2 马尔科夫决策过程 Fig. 2 Markov decision process

本文将FANET中的路由选择问题描述为一个马尔科夫决策过程,给出如下定义:

1) 基本组件。

(1) 学习环境:整个FANET网络环境,包括无人机节点、通信链路等。

(2) 智能体:FANET中每个无人机节点作为学习主体Agent。

(3) 状态空间:本节点以外其余节点构成该节点的状态空间。

(4) 动作空间:动作表示节点在数据传输时对下一跳节点的选择,动作空间为其邻居节点。

2) 奖励。

将节点对下一跳节点的可信度评估作为奖励信号,表示节点动作选择的可靠性。奖励值函数定义如式(1)所示:

$ {R}_{s}(d, x)=\left\{\begin{array}{l}1/0, s\in \varGamma \left(d\right)\\ {k}_{1}{T}_{sx}+{k}_{2}(0.6+{\mathrm{e}}^{-h}), \mathrm{其}\mathrm{他}\end{array}\right. $ (1)

其中:$ \varGamma \left(d\right) $表示目的节点的邻居节点集,目的节点为当前节点的可信邻居节点时,奖励值为1,否则奖励值为0;$ {T}_{sx} $表示当前节点$ s $通过邻居节点$ x $作为中继节点传输数据的可信程度;$ h $为节点$ x $距离目的节点的跳数。可信度越高,跳数越少,奖励值越高。

3) Q值更新函数。

Q-learning的动作值函数更新如式(2)所示:

$ {Q}_{s}(d, x)\leftarrow (1-\alpha ){Q}_{s}(d, x)+\alpha \left(R+\gamma \underset{y\in \varGamma \left(x\right)}{\mathrm{m}\mathrm{a}\mathrm{x}}{Q}_{x}(d, y)\right) $ (2)

其中:$ {Q}_{s}(d, x) $表示当前节点$ s $选择$ x $作为下一跳到达目的地$ d $的Q值;$ \underset{y\in \varGamma \left(x\right)}{\mathrm{m}\mathrm{a}\mathrm{x}}{Q}_{x}(d, y) $表示节点$ x $选择$ y $作为下一跳到达目的地$ d $的Q值;$ y $$ x $邻居节点中Q值最大的点;$ \alpha $为学习率;$ \gamma$为折扣因子。每个节点维护一个Q表,节点将最大Q值添加到Hello消息中,通过定期交换Hello消息来更新Q值。学习任务分配到每个节点,使算法能够快速收敛到最优路径,并依据网络拓扑的变化进行及时调整。

3.2 模糊动态信任奖励机制

针对FANET中的黑洞攻击与RREQ泛洪攻击,本文提出一种模糊动态信任奖励机制,该机制包括模糊化处理、模糊推理和去模糊化3个步骤,实时监测节点的数据包转发率、RREQ发送速率,周期性地计算节点可信度,并将其作为节点的奖励值。该机制的具体流程如图 3所示,其中,数据包转发率、RREQ发送速率计算公式如式(3)、式(4)所示,$ {N}_{\mathrm{R}\mathrm{D}\mathrm{P}} $为节点接收到的数据包个数,$ {N}_{\mathrm{F}\mathrm{D}\mathrm{P}} $为转发的数据包个数,$ \tau $为信任计算周期,$ {N}_{\mathrm{R}\mathrm{R}\mathrm{E}\mathrm{Q}} $为一个周期内节点发送的路由请求报文个数。

$P_{\mathrm{PFR}}=N_{\mathrm{FDP}} / N_{\mathrm{RDP}}$ (3)
$R_{\mathrm{RSR}}=N_{\mathrm{RREQ}} / \tau$ (4)
Download:
图 3 模糊动态信任奖励机制流程 Fig. 3 Procedure of fuzzy dynamic trust reward mechanism

本文模糊动态信任奖励机制各步骤具体如下:

1) 模糊化处理。定义数据包转发率与RREQ发送速率的模糊隶属函数如图 4(a)图 4(b)所示,参考文献[23],将数据包转发率分为3个等级,RREQ发送速率分为2个等级,利用隶属函数将其转换成模糊值。

Download:
图 4 模糊隶属函数 Fig. 4 Fuzzy membership function

2) 模糊推理。定义模糊规则库如表 1所示,根据模糊规则库进行模糊推理,输出信任值对应的模糊等级与隶属度。

下载CSV 表 1 模糊规则库 Table 1 Fuzzy rule base

3) 去模糊化。定义输出信任值的隶属函数如图 4(c)所示,采用隶属度加权平均法对模糊推理结果进行去模糊化处理,计算方式如式(5)所示。模糊推理输出一个信任等级,根据该等级的隶属度函数及隶属度得到对应的信任值,有2个点则取平均值。若对应多个信任等级,则分别求出其对应的信任值,再以归一化后的隶属度作为权重系数,加权平均得到最终信任值。

$ T=\sum\limits_{i=1}^{5}{\mu }_{i}\left(x\right)\times {\mu }_{i}^{-1}\left(x\right)/\sum\limits_{i=1}^{5}{\mu }_{i}\left(x\right) $ (5)
3.3 启发式路由选择算法

在FANET环境下,Q值的更新速度受到Hello消息发送间隔的限制,间隔过小将加重网络负载,间隔过大将无法及时感知拓扑变化,导致算法收敛速度变慢。同时,大多数算法根据Q值采用贪婪策略选择下一跳,然而高可信度节点可能链路状况较差,并非最佳下一跳节点,这也会增加高可信度节点的负担。因此,本文提出一种基于启发式Q学习的路由选择算法,通过利用-探索平衡策略,根据单跳延迟与链路质量来确定当前最优的可信下一跳节点。启发式评价函数用于更新当前最优动作的Q值,若节点$ x $为最优可信下一跳,为其赋予一个适当的启发值,引导当前节点选择该节点作为下一跳,以加快收敛速度,提高路由算法的效率。

3.3.1 利用-探索平衡策略

当选择转发数据包的邻居节点时,HQTR算法不直接选择Q值最大的下一跳节点,而采用改进的标准贪婪策略选择动作,如式(6)所示:

$ A=\left\{\begin{array}{l}\underset{x\in \varGamma \left(s\right)}{\mathrm{a}\mathrm{r}\mathrm{g}\mathrm{m}\mathrm{a}\mathrm{x}}\left({Q}_{s}\right(d, x)+\sigma {H}_{s}(d, x\left)\right), P=1-\epsilon \\ \mathrm{R}\mathrm{a}\mathrm{n}\mathrm{d}\mathrm{o}\mathrm{m}\mathrm{A}\mathrm{c}\mathrm{t}\mathrm{i}\mathrm{o}\mathrm{n}, P=\epsilon \end{array}\right. $ (6)

其中:$ A $表示选取的动作,即下一跳节点;$ {H}_{s}(d, x) $表示当前最优动作的启发式函数值;$ \sigma \in \left[\mathrm{0, 1}\right] $是度量启发式函数影响程度的实数,本文中取$ \sigma =1 $$ P=\epsilon $表示算法以一定的概率$ \epsilon $随机选择下一跳节点,即智能体在环境中“探索”;$ P=1-\epsilon $表示算法以$ 1-\epsilon $概率选择价值最大的邻居节点作为下一跳节点,即智能体直接“利用”已经探索得到的信息。

3.3.2 最优动作确定

多跳路由的效率取决于构成该路由的所有直接无线链路(即单跳链路),因此,为提高通信服务质量,本文考虑单跳节点间的链路状况,包括单跳延迟与链路质量,通过衡量单位时间内接收Hello消息的平均单跳延迟与数量,确定最优可信下一跳。最优可信下一跳定义如式(7)所示,其中:$ {A}_{\mathrm{A}\mathrm{D}\mathrm{e}\mathrm{l}\mathrm{a}\mathrm{y}} $为平均单跳延迟,计算方式如式(8)、式(9)所示;$ {H}_{\mathrm{H}\mathrm{R}\mathrm{R}} $为Hello包接收率,计算方式如式(10)所示;$ {T}_{{A}^{\mathrm{*}}} $为当前节点对下一跳节点的信任值;$ \theta $为可信阈值。平均单跳延迟越小,Hello包接收率越高,表明其与该节点之间的链路状况越好,此节点将被确定为最优可信下一跳。

$ {A}^{\mathrm{*}}=\mathrm{m}\mathrm{i}\mathrm{n}({w}_{1}\times {A}_{\mathrm{A}\mathrm{D}\mathrm{e}\mathrm{l}\mathrm{a}\mathrm{y}}+{w}_{2}\times (1-{H}_{\mathrm{H}\mathrm{R}\mathrm{R}}\left)\right), {T}_{{A}^{\mathrm{*}}}\ge \theta $ (7)
$ {D}_{\mathrm{D}\mathrm{e}\mathrm{l}\mathrm{a}\mathrm{y}}=\frac{\sum\limits_{i=1}^{{N}_{r\mathrm{e}\mathrm{c}\mathrm{H}}}({t}_{\mathrm{s}\mathrm{e}\mathrm{n}}^{i}-{t}_{\mathrm{r}\mathrm{e}\mathrm{c}}^{i})}{{N}_{\rm{recH}}} $ (8)
$ {A}_{\mathrm{A}\mathrm{D}\mathrm{e}\mathrm{l}\mathrm{a}\mathrm{y}}=\frac{{D}_{\mathrm{D}\mathrm{e}\mathrm{l}\mathrm{a}\mathrm{y}}-{D}_{\mathrm{D}\mathrm{e}\mathrm{l}\mathrm{a}{\mathrm{y}}_{\mathrm{m}\mathrm{i}\mathrm{n}}}}{{D}_{\mathrm{D}\mathrm{e}\mathrm{l}\mathrm{a}{\mathrm{y}}_{\mathrm{m}\mathrm{a}\mathrm{x}}}-{D}_{\mathrm{D}\mathrm{e}\mathrm{l}\mathrm{a}{\mathrm{y}}_{\mathrm{m}\mathrm{i}\mathrm{n}}}} $ (9)
$ {H}_{\mathrm{H}\mathrm{R}\mathrm{R}}=\frac{{N}_{\rm{rec}}}{{N}_\rm{{sen}}} $ (10)
3.3.3 启发式函数

当确定最优可信下一跳节点后,启发式函数$ {H}_{s}(d, x) $引导当前节点选择该节点并更新相应的Q值。启发式函数定义如式(11)所示,其中,$ \eta $取0.01。若节点$ x $为最优可信下一跳,为其赋予一个适当的启发值,否则启发值为0。$ {H}_{s}(d, x) $的值必须大于$ {Q}_{s}(d, x) $值之间的变化,以便其可以影响动作选择,同时为了最小化误差,$ {H}_{s}(d, x) $必须尽可能小。

$ {H}_{s}(d, x)=\left\{\begin{array}{l}\underset{y\in \varGamma \left(s\right)}{\mathrm{m}\mathrm{a}\mathrm{x}}{Q}_{s}(d, y)-{Q}_{s}(d, x)+\eta , x={A}^{\mathrm{*}}\\ 0, \mathrm{其}\mathrm{他}\end{array}\right. $ (11)

综上,将启发式路由算法主要分为Hello消息维护、数据传输、路由发现、恶意节点隔离4个部分,描述如算法1所示,将该算法应用于AOMDV协议中,建立多条可信路径,便于在链路中断、恶意节点破坏时进行路径切换。

算法1    HQTR算法

1. Part1:Hello消息维护

2. 初始化Q表:Q值初始化为0;

3. Repeat(对于每个信任计算周期):

4. 按照3.2节计算节点的信任值,同时根据式(8)~式(10)计算单跳延迟与Hello包接收率。

5. Repeat(对于每个Hello包发送周期):

6. Step1:各节点将Q表中$ \underset{\mathrm{y}\in \mathrm{\Gamma }\left(\mathrm{s}\right)}{\mathrm{m}\mathrm{a}\mathrm{x}}{\mathrm{Q}}_{\mathrm{s}}(\mathrm{d}, \mathrm{y}) $添加到Hello消息中并广播;

7. Step2:当节点收到来自邻居节点广播的Hello包时,根据式(2)更新Q表。

8.Part2:数据传输

9. 当源节点要发送数据包时,首先查找路由表,若目的节点是邻居节点且可信,则直接发送数据,否则放弃传输,转Part4;若有到目的节点的下一跳节点,则根据3.3节利用-探索平衡策略选择下一跳,否则转Part3。

10. 在数据包转发过程中,同时检测下一跳节点信任值,若小于$ \mathrm{\theta } $,转Part4。

11.Part3:路由发现

12. Step1:源节点广播路由请求RREQ;

13. Step2:邻居节点收到RREQ后,若来自非可信节点,则直接丢弃该请求;否则检查路由表中是否有到达目的节点的路由,有则产生路由回复RREP,转Step3,否则继续转发到目的节点,建立反向路径;

14. Step3:节点收到RREP后,若来自非可信节点,则直接丢弃,否则继续转发到源节点,建立正向路径。

15.Part4:恶意节点隔离

16.删除恶意节点所在的相关路径,并利用ERROR消息将恶意节点信息发送到前驱节点,直到源节点收到此消息并删除此路径。

本文HQTR算法的复杂度主要与信任值、Q值和启发式函数值的更新相关,三者的时间复杂度与空间复杂度相同,分别为$ {\rm O}\left(N\right) $$ {\rm O}\left({N}^{2}\right) $$ {\rm O}\left({N}^{2}\right) $,因此,算法1的时间复杂度与空间复杂度均为$ {\rm O}\left({N}^{2}\right) $

4 仿真结果与分析

本文采用NS2模拟器进行仿真实验,具体参数设置如表 2所示,基于包投递率、吞吐量、路由开销、平均端到端时延这4个性能评价指标,对AOMDV、TEAOMDV[16]、ESRQ[17]与HQTR进行仿真对比,分析恶意攻击、节点移动速度与网络规模对算法性能的影响,比较结果如表 3所示。

下载CSV 表 2 仿真参数设置 Table 2 Simulation parameters setting
下载CSV 表 3 算法性能比较结果 Table 3 Algorithms performance comparison results
4.1 恶意攻击下的算法性能评估

设置节点最大移动速度为10 m/s,黑洞攻击中设置6个恶意节点,泛洪攻击中设置1个恶意节点,2种攻击并存时设置3个恶意节点,仿真结果如图 5所示。

Download:
图 5 恶意攻击下的算法性能比较 Fig. 5 Performance comparison of algorithms under malicious attacks

图 5(a)可知,在未受到攻击时,包投递率都保持在90%以上,TEAOMDV与HQTR选择了链路质量较高的下一跳节点,ESRQ考虑距离因素,包投递率略高于AOMDV。当受到黑洞攻击时,AOMDV包投递率有所下降,而TEAOMDV、ESRQ与HQTR隔离了恶意节点,包投递率下降幅度较小。当存在泛洪攻击节点时,大量的RREQ消息被不断地转发,占用了有效带宽,导致数据包得不到及时处理而被丢弃,AOMDV、TEAOMDV与ESRQ包投递率下降,而HQTR丢弃了来自恶意节点的路由请求,包投递率下降幅度较小,降低了泛洪攻击对网络的影响。当恶意节点同时发动2种攻击时,TEAOMDV与ESRQ虽然能够检测出黑洞攻击,但恶意节点的请求仍然能够被发送与转发,而HQTR可以同时应对2种攻击,包投递率更高。

图 5(b)可知,AOMDV由于受到恶意节点的攻击,丢包状况严重,网络吞吐量下降,TEAOMDV与ESRQ在一定程度上防御了黑洞攻击,提升了吞吐量,但无法应对泛洪攻击,当存在泛洪攻击时,两者的吞吐量较低,HQTR能够有效应对黑洞攻击与泛洪攻击,吞吐量始终保持较高水平。

图 5(c)可知,在未受到攻击时,HQTR与AOMDV、ESRQ路由开销相近,而TEAOMDV略高,表明在正常情况下HQTR未引入冗余开销。当受到黑洞攻击时,隔离恶意节点需要路径切换或重新建立新路径,HQTR的路由开销相比TEAOMDV与ESRQ更低,选择的路径更加安全可靠。当受到泛洪攻击时,恶意节点不断发送请求报文,同时这些报文也被其他节点转发,导致路由开销大幅上升。HQTR将不再接受恶意节点的请求,抑制了RREQ的传播,控制了路由开销,但不能阻止恶意节点发送RREQ,因此,其路由开销相比正常情况高。当恶意节点同时发动2种攻击时,TEAOMDV与ESRQ中部分节点由于检测出黑洞攻击而隔离了恶意节点,降低了路由开销,但恶意节点的请求仍能被其他节点接收并转发,因此,TEAOMDV与ESRQ的路由开销高于HQTR。同时,TEAOMDV需要发送额外的控制包用于信任推荐,其路由开销较ESRQ更高。

图 5(d)可知,在未受到攻击时,HQTR平均端到端时延较低,当受到黑洞攻击时,平均端到端时延均有所上升,TEAOMDV略高,TEAOMDV将恶意节点从路径中剔除后,需重新选择可信路由路径,可能会增加跳数,从而导致时延增大。ESRQ优先选取距离较近的下一跳,平均端到端时延低于TEAOMDV。HQTR在选择下一跳时考虑跳数、单跳延迟与链路质量,优化了时延。当存在泛洪攻击时,由于网络中充斥大量请求报文,产生拥塞,时延明显上升,HQTR缓解了网络拥塞,其时延相比TEAOMDV与ESRQ更低。

4.2 不同节点移动速度下的算法性能评估

设置3个恶意节点,同时进行黑洞攻击与泛洪攻击,仿真结果如图 6所示。由图 6可知,随着节点移动速度的提升,链路中断频繁,丢包状况严重,包投递率与吞吐量均不断下降,同时需要发送更多的控制包用于路由发现与维护,路由开销与平均端到端时延有所上升。ESRQ仅考虑了距离因素,而节点移动速度过大时,链路质量不稳定,因此,其包投递率与吞吐量较低,路由开销与平均端到端时延也逼近TEAOMDV。HQTR避免了存在恶意节点以及丢包严重节点的路径,通信链路较为稳定,相比TEAOMDV与ESRQ,其包投递率与吞吐量下降缓慢,始终保持较高水平,同时降低了路由开销与平均端到端时延。

Download:
图 6 不同节点移动速度下的算法性能比较 Fig. 6 Performance comparison of algorithms under different node moving speeds
4.3 不同网络规模下的算法性能评估

设置节点最大移动速度为10 m/s,3个恶意节点同时进行黑洞攻击与泛洪攻击,仿真结果如图 7所示。由图 7可知,在相同的飞行范围内,当网络中节点数量较少时,数据包转发跳数较多,由于无线链路的不稳定性,导致数据包投递率与吞吐量略低。随着网络规模的扩大,恶意节点造成的破坏更加严重,导致数据包投递率与吞吐量不断下降,路由开销与平均端到端时延不断上升。HQTR能够有效抵御恶意节点的黑洞攻击与泛洪攻击,其相比AOMDV、TEAOMDV与ESRQ性能更优且稳定。

Download:
图 7 不同网络规模下的算法性能比较 Fig. 7 Performance comparison of algorithms under different network sizes
5 结束语

本文提出一种基于启发式Q学习的可信路由算法HQTR,该算法考虑黑洞攻击、RREQ泛洪攻击的主要攻击特征,检测与隔离恶意节点,建立多条可信路径,采用启发式Q学习引导当前节点选择链路状况最佳的可信下一跳节点。仿真结果表明,HQTR能够有效应对黑洞攻击与RREQ泛洪攻击,在不增加路由开销的情况下可以降低网络拓扑频繁变更与网络规模变化所带来的影响,提高数据包投递率与吞吐量,优化平均端到端时延。下一步将运用深度学习方法对FANET中存在的多种路由攻击进行入侵检测,同时在路由选择时结合强化学习方法来实现安全且智能的路由。

参考文献
[1]
CHRIKI A, TOUATI H, SNOUSSI H, et al. FANET: communication, mobility models and security issues[J]. Computer Networks, 2019, 163: 106877. DOI:10.1016/j.comnet.2019.106877
[2]
游静, 董超, 吴启晖. 大规模无人机自组网分层体系架构研究综述[J]. 计算机科学, 2020, 47(9): 226-231.
YOU J, DONG C, WU Q H. Survey of layered architecture in large-scale FANETs[J]. Computer Science, 2020, 47(9): 226-231. (in Chinese)
[3]
SRIVASTAVA A, PRAKASH J. Future FANET with application and enabling techniques: anatomization and sustainability issues[J]. Computer Science Review, 2021, 39: 100359. DOI:10.1016/j.cosrev.2020.100359
[4]
JEAN-AIMÉ M, MOHAMED-SLIM B M, NICOLAS L. Survey on UAANET routing protocols and network security challenges[EB/OL]. [2021-06-05]. https://hal-enac.archives-ouvertes.fr/hal-01465993/document.
[5]
NAZIB R A, MOH S. Reinforcement learning-based routing protocols for vehicular ad hoc networks: a comparative survey[J]. IEEE Access, 2021, 9: 27552-27587. DOI:10.1109/ACCESS.2021.3058388
[6]
CHETTIBI S, CHIKHI S. A survey of reinforcement learning based routing protocols for mobile ad-hoc networks[M]. Berlin, Germany: Springer, 2011.
[7]
JUNG W S, YIM J, KO Y B. QGeo: Q-learning-based geographic ad hoc routing protocol for unmanned robotic networks[J]. IEEE Communications Letters, 2017, 21(10): 2258-2261. DOI:10.1109/LCOMM.2017.2656879
[8]
LIU J M, WANG Q, HE C T, et al. QMR: Q-learning based multi-objective optimization routing protocol for flying ad hoc networks[J]. Computer Communications, 2020, 150: 304-316. DOI:10.1016/j.comcom.2019.11.011
[9]
SINGH K, VERMA A K. TBCS: a trust based clustering scheme for secure communication in flying ad-hoc networks[J]. Wireless Personal Communications, 2020, 114(4): 3173-3196. DOI:10.1007/s11277-020-07523-8
[10]
WU C, OHZAHATA S, KATO T. Flexible, portable, and practicable solution for routing in VANETs: a fuzzy constraint Q-learning approach[J]. IEEE Transactions on Vehicular Technology, 2013, 62(9): 4251-4263. DOI:10.1109/TVT.2013.2273945
[11]
ALSHEHRI A, BADAWY A H A, HUANG H. FQ-AGO: fuzzy logic Q-learning based asymmetric link aware and geographic opportunistic routing scheme for MANETs[J]. Electronics, 2020, 9(4): 576. DOI:10.3390/electronics9040576
[12]
BIANCHI R A C, RIBEIRO C H C, COSTA A H R. Accelerating autonomous learning by using heuristic selection of actions[J]. Journal of Heuristics, 2008, 14(2): 135-168. DOI:10.1007/s10732-007-9031-5
[13]
BIANCHI R A C, MARTINS M F, RIBEIRO C H C, et al. Heuristically-accelerated multiagent reinforcement learning[J]. IEEE Transactions on Cybernetics, 2014, 44(2): 252-265. DOI:10.1109/TCYB.2013.2253094
[14]
YANG X Y, ZHANG W L, LU H M, et al. V2V routing in VANET based on heuristic Q-learning[J]. International Journal of Computers Communications & Control, 2020, 15(5): 12-23.
[15]
KHANNA N, SACHDEVA M. Study of trust-based mechanism and its component model in MANET: current research state, issues, and future recommendation[J]. International Journal of Communication Systems, 2019, 32(12): e4012. DOI:10.1002/dac.4012
[16]
XIA H, YU J, TIAN C L, et al. Light-weight trust-enhanced on-demand multi-path routing in mobile ad hoc networks[J]. Journal of Network and Computer Applications, 2016, 62: 112-127. DOI:10.1016/j.jnca.2015.12.005
[17]
LIU G S, WANG X, LI X H, et al. ESRQ: an efficient secure routing method in wireless sensor networks based on Q-learning[C]//Proceedings of the 17th IEEE International Conference on Trust, Security and Privacy in Computing and Communications. Washington D. C., USA: IEEE Press, 2018: 149-155.
[18]
DAI C H, XIAO X Y, DING Y Z, et al. Learning based security for VANET with blockchain[C]//Proceedings of IEEE International Conference on Communication Systems. Washington D. C., USA: IEEE Press, 2018: 210-215.
[19]
ZHANG D J, YU F R, YANG R Z, et al. A deep reinforcement learning-based trust management scheme for software-defined vehicular networks[C]//Proceedings of the 8th ACM Symposium on Design and Analysis of Intelligent Vehicular Networks and Applications. New York, USA: ACM Press, 2018: 1-7.
[20]
ZHANG D J, YU F R, YANG R Z. A machine learning approach for software-defined vehicular ad hoc networks with trust management[C]//Proceedings of IEEE Global Communications Conference. Washington D. C., USA: IEEE Press, 2018: 1-6.
[21]
MAAKAR S K, SINGH Y, SINGH R. Flying ad hoc network: a newest research area for ad hoc networks[C]//Proceedings of the 2nd International Conference on Intelligent Communication and Computational Techniques. Washington D. C., USA: IEEE Press, 2019: 298-302.
[22]
YU Y J, QIN Y, GONG H C. A fuzzy Q-learning algorithm for storage optimization in islanding microgrid[J]. Journal of Electrical Engineering & Technology, 2021, 16(5): 2343-2353.
[23]
SINGH K, VERMA A K. A fuzzy‐based trust model for flying ad hoc networks(FANETs)[J]. International Journal of Communication Systems, 2018, 31: 23-47.