Skip to main content
Scientific Reports logoLink to Scientific Reports
. 2023 Jan 24;13:1323. doi: 10.1038/s41598-023-27567-7

An energy-aware routing method using firefly algorithm for flying ad hoc networks

Jan Lansky 1, Amir Masoud Rahmani 2,, Mazhar Hussain Malik 3, Efat Yousefpoor 4, Mohammad Sadegh Yousefpoor 4, Muhammad Umair Khan 5,, Mehdi Hosseinzadeh 6,7
PMCID: PMC9873979  PMID: 36693862

Abstract

Flying ad-hoc networks (FANETs) include a large number of drones, which communicate with each other based on an ad hoc model. These networks provide new opportunities for various applications such as military, industrial, and civilian applications. However, FANETs have faced with many challenges like high-speed nodes, low density, and rapid changes in the topology. As a result, routing is a challenging issue in these networks. In this paper, we propose an energy-aware routing scheme in FANETs. This scheme is inspired by the optimized link state routing (OLSR). In the proposed routing scheme, we estimate the connection quality between two flying nodes using a new technique, which utilizes two parameters, including ratio of sent/received of hello packets and connection time. Also, our proposed method selects multipoint relays (MPRs) using the firefly algorithm. It chooses a node with high residual energy, high connection quality, more neighborhood degree, and higher willingness as MPR. Finally, our proposed scheme creates routes between different nodes based on energy and connection quality. Our proposed routing scheme is simulated using the network simulator version 3 (NS3). We compare its simulation results with the greedy optimized link state routing (G-OLSR) and the optimized link state routing (OLSR). These results show that our method outperforms G-OLSR and OLSR in terms of delay, packet delivery rate, throughput, and energy consumption. However, our proposed routing scheme increases slightly routing overhead compared to G-OLSR.

Subject terms: Engineering, Mathematics and computing, Physics

Introduction

Unmanned ariel vehicles (UAVs) or drones are aircraft driven by embedded programs or remote control. At the first time in 1930, the US military used UAVs for airstrikes, reconnaissance, and monitoring boundaries. Next, in 1990, UAVs have widely been used in many military and civilian applications1,2. Usually, UAVs are divided into two types: fixed-wings and rotary-wings. Rotary-wing UAVs provide vertical landing and take-off and can stay fixed in the air. This feature helps them to be used in sensing tasks. However, they have less energy, limited speed, and low capacity3,4. Fixed-wing UAVs can move on the air and cannot be fixed in the air. They fly faster and have suitable capacity. Also, they are energy-efficient and can carry heavier payload. They can be used for monitoring the airborne. They are more expensive than rotary-wing UAVs3,5.

Moreover, drones are created in different sizes from small to large. According to the size of drones, they can be used in specific applications6,7. For example, drones with large sizes are used in military missions. In contrast, drones with small sizes are usually used in civilian applications8,9. Drones with small sizes include cheap bodies, small batteries, small radio equipment, and microprocessors10. Also, they need low costs for repair and maintenance. However, drones with large sizes have more abilities11,12. Also, they have a high weight and payload. When several drones work together in an ad hoc manner, they build a new ad hoc network called flying ad-hoc network (FANET)13,14. In FANETs, a group of UAVs communicate with each other without any access point. However, at least one of UAVs should communicate with ground station (GS) or satellite15,16. In fact, this network is known as a subset of mobile ad hoc network (MANET) and vehicular ad Hoc network (VANET)17,18. Today, FANETs have provided new opportunities to improve many applications, for example, monitoring the environment, improving urban traffic through smart monitoring, air imaging, search and rescue operations, agricultural operations, and monitoring nuclear powerhouse. However, these networks have many challenges like highly dynamic topology, high-speed of nodes, low density. As a result, routing is a challenging issue in these networks because UAVs have communication links with a short lifetime19,20. Furthermore, drones with small sizes have limited energy due to their structural features. Therefore, this issue must be considered when designing a routing scheme for this network21,22. The most common routing protocols are static routing23,24, proactive routing23,24, reactive routing23,24, hybrid routing25,26, geographical routing23,24, and multi-path routing25,27. The performance of a routing protocol depends on selecting the optimal route, which can be calculated based on various criteria, for example, speed, energy, link lifetime, network traffic, delay, link quality, and movement direction25,28.

In this paper, we propose an energy-aware routing scheme for FANETs. This scheme is inspired by the optimized link state routing (OLSR). In the first step, we present a new technique for calculating connection quality. It is calculated based on ratio of sent/received of hello packets and connection time. We use this parameter for calculating optimal routes. This helps our scheme to select more stable routes. Furthermore, we propose a new approach based on firefly algorithm (FA)29 to select multipoint relays (MPRs). This approach is called MPR-FA. According to MPR-FA, a symmetric and single-hop neighboring node with more energy, higher connection quality, more neighborhood degree, and higher willingness achieves more chance to be selected as MPR. The major contributions of our proposed scheme are summarized as follows:

  • Improving the Hello message format and the topology control (TC) message format.

  • Proposing a new scheme for calculating the connection quality.

  • Selecting MPR nodes using the firefly algorithm.

  • Calculating the routing table based on energy and connection quality.

The rest of the paper is organized as follows: In “Related works” section, we examine various routing methods presented in FANETs. In “Basic concepts” section, we define the concepts related to the firefly algorithm, which is used in the proposed method. In “Network model” section, we present the network model used in our method. In “Proposed method” section, we describe the proposed routing method in detail. In “Simulation and evaluation of results” section, we simulate the proposed method and compare its results with G-OLSR and OLSR. In “Conclusion” section, we conclude the paper.

Related works

Lee et al.30 suggested an energy-aware and predictive fuzzy logic-based routing scheme in FANETs. This approach includes two processes: route discovery and route maintenance. In the route discovery process, each UAV calculates its score based on movement direction, remaining energy, link quality, and node stability. If the node achieves enough score, it can participate in rebroadcasting route request messages (RREQs) and otherwise, it is not allowed to do this. The purpose of this work is to balance energy consumption, reduce congestion in the network, and control the broadcast storm problem. When RREQ messages arrive at the destination, the destination node selects the best path to the source node using the fuzzy system. The best path is a route with a minimum number of hops, low delay, and high fitness. In the route maintenance process, two issues are addressed: preventing path failure and rebuilding failed paths. This method creates stable routes between network nodes. Also, this scheme is simulated in a 3D space. However, the route maintenance process is slightly ambiguous and can be improved.

Mahmoud and Cho31 offered a location estimation-based congestion-aware routing method (LECAR) for FANETs. It is a delay-tolerant network (DTN)-based routing scheme and tries to solve two problems in DTN-based routing schemes: high energy consumption and high network congestion. In this method, each node estimates its location and locations of other nodes using the path-planning mechanism and location map. In the routing process, the source node sends its data packet to the node, which is nearer to the destination and has enough buffer capacity. This method successfully balances energy consumption in the network and prevents network congestion. However, it has high communication overhead and delay. This method is simulated in a two-dimensional space that is not compatible with FANETs.

Clausen et al.32 presented the optimized link state routing protocol (OLSR) for mobile ad hoc networks (MANETs). It is one of the well-known proactive routing schemes. OLSR depends on multipoint relays (MPRs), which are tasked to produce and forward topology messages in the network. However, OLSR has several disadvantages, including high communication overhead and delay. Therefore, OLSR is not suitable for delay-intolerant applications. Today, many researchers focus on OLSR to modify this protocol for FANETs.

For example, Ali et al.33 proposed the greedy optimized link state routing (G-OLSR) scheme for FANETs. G-OLSR merges two methods, including the greedy perimeter stateless routing (GPSR) and OLSR. G-OLSR minimizes communication overhead and delay in the network. As a result, it is suitable for delay-intolerant applications. This method utilizes a self-adaptation approach when varying network topology. This enhances the network performance. A greedy approach is applied for choosing the next-hop node. In this approach, the next-hop node is selected based on maximum distance from the source toward the destination. When the greedy approach cannot find the next-hop node, G-OLSR switches to the route recovery mode. This case occurs when there is no node whose distance toward the destination node is longer than the previous-hop node. In the recovery mode, G-OLSR considers the angle between a neighboring node and the destination node to select the next-hop node. This method is simulated in a 3D space, which is suitable for FANET. However, G-OLSR ignores the energy and link quality in the routing process. In G-OLSR, unstable paths may be created.

Rahmani et al.34 presented a fuzzy-based routing protocol called OLSR+ for flying ad hoc networks. It is an improved version of the optimized link state routing protocol (OLSR). In this method, the authors proposed a new technique to calculate the lifetime of the link between two UAVs. The link lifetime is obtained based on the received signal strength indication (RSSI), Euclidean distance, relative velocity, and motion direction. Then, MPRs are selected using a fuzzy system. This fuzzy system consists of three inputs, including the residual energy of a neighboring UAV, link lifetime, and the degree of a neighboring UAV. The fuzzy output indicates the chance of a neighboring node to be selected as MPR. Finally, the routing paths are determined between the nodes based on three parameters, including the number of hops, route energy, and route lifetime. The simulation results indicate that OLSR+ has a successful performance in terms of delay and energy consumption. However, OLSR+ has a lot of communication overhead.

Ma et al.35 offered the velocity-aware and stability-estimation-based multi-path routing protocol (VaSe-MRP) in FANETs. This routing scheme includes two steps: route discovery and route maintenance. In the first step, the authors present a forwarding mechanism, which is based on the velocity of nodes and categorizes the nodes into two classes: reliable class and non-reliable class. Next-hop nodes are selected from reliable class. Also, VaSe-MRP calculates the link stability time and selects several routes between transmitter and receiver. Therefore, VaSe-MRP increases packet delivery rate. However, it is implemented in a 2D space, which is not suitable for FANET. VaSe-MRP considers a very low speed for nodes when simulating this scheme. Therefore, it must be evaluated for high-speed nodes.

Chen et al.36 suggested the traffic-aware Q-network enhanced geographic routing scheme (TQNGPSR). TQNGPSR presents a new mechanism based on congestion information. This mechanism balances network traffic. Furthermore, this scheme utilizes the Q-network reinforcement algorithm to analyze link quality according to the congestion information. In fact, the Q-value represents the link quality. Finally, TQNGPSR chooses routes based on Q-value. These routes include low delay, low packet loss rate, and low traffic. However, TQNGPSR is implemented in a 2D space, which is a false option for FANETs. This scheme does not consider the energy parameter and link lifetime. However, they are very important when designing a routing protocol in FANETs. Also, it includes a high communication overhead.

Oubbati et al.37 proposed the energy-efficient connectivity-aware data delivery (ECaD) for FANETs. This scheme prevents route failure and reconstructs failed routes. In ECaD, the energy parameter, link lifetime, and delay are considered in the routing process. If UAVs have enough energy, they can rebroadcast RREQ messages and otherwise, they do not participate in this process. This work balances energy consumption in the network. It is simulated in a 3D space, which is a suitable option for FANET. However, ECaD ignores the movement direction and the link quality when selecting routes.

Liu et al.38 proposed the Q-learning-based multi-objective routing protocol (QMR) for FANETs. QMR utilizes a reinforcement algorithm (Q-learning) for finding paths. Firstly, QMR sets the learning rate and the discount factor in Q-learning algorithm according to network conditions. This scheme decreases delay and energy consumption. In QMR, each node estimates the future status of its neighbors in the network. This advantage helps nodes to choose the best next-hop nodes. QMR considers various parameters like, speed, movement direction, and delay in the routing process. This scheme builds stable route in the network. Furthermore, QMR is simulated in a 2D space, which is a false option for FANET. In addition, QMR predicts route failure and rebuilds failed routes. However, QMR has a major disadvantage. It cannot control swarm connectivity.

Basic concepts

In this section, we explain the firefly algorithm (FA) briefly because this concept is used in our approach for selecting MPR nodes.

Firefly algorithm

In late 2007, Xin-She Yang introduced the firefly algorithm (FA). FA is inspired by optical patterns and the behavior of fireflies29. FA is based on several rules:

  • Fireflies are single-sex. This means that fireflies are attracted to each other without considering their sex.

  • Attractiveness of fireflies is defined based on their brightness. This means that the less bright fireflies are attracted to brighter fireflies. When the distance between fireflies increases, their attractiveness decreases. If there is not a brighter firefly, the movement of fireflies is random.

  • An objective function is defined for calculating the brightness of fireflies.

FA considers two parameters: the variation of light intensity and attractiveness. Attractiveness is obtained based on brightness. Furthermore, brightness is defined based an objective function.

Brightness of a firefly (i.e. I) at a specific position x is I(x)f(x). However, attractiveness (i.e. β) ia relative and depends on the distance rij between fireflyi and fireflyj. Moreover, if firefly is far from the light source, the light intensity reduces. Furthermore, the media absorbs light. Moreover, attractiveness depends on the absorption degree. Usually, the light intensity I(r) varies according to the inverse-square law expressed in Eq. (1):

I(r)=Isr2, 1

where, Is indicates the intensity at the source.

Assume a specific medium, which has a constant light absorption coefficient γ, Eq. (2) computes I according to the distance r:

I(r)=I0e-γr, 2

where, I0 indicates the initial light intensity at r=0. Eqs. (1) and (2) are estimated as Eq. (3) to prevent the singularity at r=0 in the phrase Isr2:

I(r)=I0e-γr2. 3

Also, Eq. (4) computes β of a firefly:

β=β0e-γr2, 4

where, β0 is the attractiveness at r=0. Equation (4) is estimated as Eq. (5) because 11+r2 is computed faster than an exponential function:

β=β01+γr2. 5

Equation (6) expresses the distance between fireflyi and fireflyj at zi and zj, respectively:

rij=zi-zj=k=1d(zi,k-zj,k)2, 6

where, zi,k, is the kth component of the spatial coordinate zi of ith firefly.

According to Eq. (7), the fireflyi is attracted to more attractive fireflyj:

zit+1=zit+β0e-γrij2(zjt-zit)+αεit, 7

where, attraction is expressed in the second phrase. Also, randomization is created using the third phrase. It is achieved through the randomization parameter α. And, i indicates a vector of random numbers. Note that, ϵi can be replaced with rand-12 so that rand generates a random number in [0, 1]. Generally, it is assumed that β0=1 and α[0,1]. For more details, please refer to Ref.29. We use FA to select MPR nodes in the network because this algorithm can satisfactorily explore the optimal global response. Also, FA has a high convergence speed and acceptable accuracy. Furthermore, it can make a balance between global search and local search and is implemented easily.

Network model

In the proposed routing method, we assume that the network includes N nodes such as UAVi,i=1,2,,N. Each node has a unique identifier (IDUAVi). These nodes are randomly distributed in FANET. FANET is a three-dimensional environment and the position of nodes is represented based on length, width, and height. Each node is connected to the global positioning system (GPS) to know its position xit,yit,zit and its speed vx,it,vy,it,vz,it at moment t. Also, nodes move at a speed VUAV in the network. Therefore, the network topology changes continuously and communication links fail. In addition, it is assumed that the network supports UAV to UAV communications (U2U) and UAV to GS communications (U2G). In U2G communication, a small number of UAVs communicate directly with GS, other UAVs act as a relay node and transmit data packets in a multi-hop manner. We use the IEEE 802.11a protocol as a wireless interface in the MAC layer of each UAV because it provides appropriate bandwidth. Also, it supports high-dynamic topologies and provides a wide range of wireless communication. The network model is shown in Fig. 1.

Figure 1.

Figure 1

Network model in the proposed scheme.

Proposed method

In this paper, we propose an energy-aware routing scheme for FANETs. This method is inspired by OLSR. The proposed scheme includes five steps:

  • Improving the Hello message format and the neighborhood table.

  • Calculating the connection quality.

  • Introducing the MPR-FA approach to select MPRs.

  • Modifying the TC message format.

  • Computing different routes.

In the following, these steps are described in detail. Moreover, we present the most important symbols used in our scheme in Table 1.

Table 1.

Symbols used in the paper.

Symbols Definition
N The total number of UAVs
IDUAVi ID of UAVi
xit,yit,zit Spatial coordinates of UAVi at moment t
vx,it,vy,it,vz,it Velocity of UAVi at moment t
CQij The quality of the link between UAVi and UAVj
CQijinitial The quality of the initial connection between UAVi and UAVj
CTijt Connection time of link between UAVi and UAVj
Δθij Movement direction of UAVj with regard to UAVi
R Communication radius of UAVs
Vij Relative velocity of UAVj with respect to UAVi
UAVMPR MPR nodes in the network
SETMPR(UAVi) A set of MPR nodes
List2Hop-Neighbor A list of two-hop neighbors of UAVi
Wi Willingness of a node to carry and send traffic to other nodes
DUAVi The degree of UAVi or the number of its symmetric neighbors
ListOne-hop-neighbor A list of all symmetric single-hop neighbors of UAVi
EUAV The remaining energy of a UAV
Fj The fitness value of UAVj
EPath Path energy
CQPath Path quality

Hello message format and neighborhood table

A Hello message is sent to its neighboring UAVs by each UAVi (i=1,,N). After receiving this message, UAVi knows all its own single-hop and two-hop neighboring UAVs in the network. Figure 2 displays the modified Hello message format. As shown in this figure, all fields of the modified message are similar to the original Hello message32 except two fields, PositionUAV (Yellow color) and EUAV (Purple color). The PositionUAV field indicates spatial coordinates of UAVi, which is obtained using GPS. The EUAV field represents the remaining energy of UAVi.

Figure 2.

Figure 2

Hello message format.

According to Hello message received from neighboring UAVs, a neighborhood table is built in UAVi. For two-hop neighbors, the format of this table is similar to OLSR. But, for single-hop neighbors, this table maintains their main address, their status (symmetric or non-symmetric), their willingness value, their position, their velocity, their remaining energy, and their connection quality. In the following, we describe the most important parameters for single-hop neighbors:

  • Willingness UAVi obtains this parameter from the Hello message. It represents the willingness of a node to carry and send traffic to other nodes. It is a integer number in [0, 7].

  • Position UAVi extracts the spatial coordinates of its neighboring UAV from the PositionUAV field in the Hello message.

  • Velocity UAVi calculates the velocity of a single-hop neighboring node such as UAVj using the PositionUAV field in two sequential Hello messages. This is expressed in Eq. (8):
    Vj=xjp-xjp-12+yjp-yjp-12+zjp-zjp-12tp-tp-1, 8
    where, xjp,yjp,zjp represents the spatial coordinates of UAVj at the moment tp and xjp-1,yjp-1,zjp-1 is the spatial coordinates of UAVj at the moment tp-1.
  • Remaining energy UAVi extracts the remaining energy of its neighbors from the EUAV field in the Hello message.

  • Connection qualit (CQij) UAVi calculates this parameter according to Eq. (10) described in “Calculatingtheconnectionquality” section.

Calculating the connection quality

In a dynamic environment such as FANET, the quality of the connection between two nodes cannot be easily evaluated because the nodes are highly moving and their connection quality changes over time. Therefore, we estimate the quality of the connection between UAVi and UAVj (which is called CQij) using an approximate model. According to this model, UAVi measures the quality of the initial connection between itself and UAVj (which is called CQijinitial) based on the ratio of Hello packets received by UAVi to the total messages transmitted from UAVj to UAVi at a time interval (τ). Note that each node uses a counter for counting the number of Hello messages received from its neighbors within its communication range. Also, we know that Hello messages are sent in a certain time period (for example, one second), so we can obtain the number of sent messages in a time interval. As a result, each node calculates the Hello packet reception rate to evaluate the connection quality. CQijinitial is calculated according to Eq. (9):

CQijinitial=tτRhelloi,jtτShelloi,j, 9

where, Rhelloi,j and Shelloi,j indicate the number of Hello messages received by UAVi and the number of Hello messages sent from UAVj to UAVi in the time period τ, respectively.

Note that the connection quality is not a fixed parameter and changes over time. To evaluate the quality of the connection between two nodes at any moment, the connection quality is updated based on the connection time. Therefore, CQijt is calculated at the moment t, according to Eq. (10):

CQijt=CQijinitiale-1-CTijt, 10

where, CTijt indicates the connection time of link between UAVi and UAVj. CTijt is calculated using Eq. (11). According to Eq. (10), if CTijt is high (i.e. it is close to one), the connection quality is close to the initial connection quality. Also, when the connection time is low (i.e. it is close to zero), the connection quality will be lower than the initial connection quality.

In Eq. (11), the connection time between between UAVi and UAVj is calculated based on two parameters, including the Euclidean distance and relative velocity of UAVj with regard to UAVi. In this equation, the movement direction is also considered.

CTijt=R-λ1xit-xjt2+yit-yjt2+zit-zjt2Vit-λ2VjtTmax, 11

where, Tmax indicates the maximum connection time. This parameter is a fixed value and is determined based on the simulation time. R is the communication radius of UAVs. Also, xit,yit,zit and Vit indicate spatial coordinates and speed of UAVi at time t, respectively. xjt,yjt,zjt and Vjt are spatial coordinates and speed of UAVj at the moment t, respectively. In addition, Δθij is the movement direction of UAVj with regard to UAVi. It is obtained according to Eq. (12):

Δθij=cos-1vx,itvx,jt+vy,itvy,it+vz,itvz,it|Vit||Vjt|,0Δθijπ, 12

where, vx,it,vy,it,vz,it and vx,jt,vy,jt,vz,jt indicate the velocity vectors of UAVi and UAVj at the moment t, respectively. Furthermore, Vit=vx,it2+vy,it2+vz,it2 and Vjt=vx,jt2+vy,jt2+vz,jt2.

Finally, λ1 and λ2 are configuration parameters in Eq. (11). These parameters are determined based on the four modes:

  • Mode 1 When UAVi and UAVj move in the same direction (i.e. 0Δθijπ2), and UAVi is ahead of UAVj (see Fig. 3a). Then, λ1=1 and λ2=1.

  • Mode 2 When UAVi and UAVj move in the same direction (i.e. 0Δθijπ2), and UAVi is behind UAVj (see Fig. 3b). Then, λ1=-1 and λ2=1.

  • Mode 3 When UAVi and UAVj move in the opposite direction (i.e. π2Δθijπ), and UAVi is approaching UAVj (see Fig. 3c). Then, λ1=-1 and λ2=-1.

  • Mode 4 When UAVi and UAVj move in the opposite direction (i.e. π2Δθijπ), and UAVi is going away from UAVj (see Fig. 3d). Then, λ1=1 and λ2=-1.

Figure 3.

Figure 3

Various modes of UAVi and UAVj.

Selecting MPR nodes

In this step, MPR nodes (UAVMPR) are selected using the firefly algorithm. Each UAVi (i=1,,N) must select a set of its neighbors as “multipoint relays”(MPRs). This set is called SETMPRUAVi. When calculating various routes, MPRs are responsible for creating the route from a source node to any destination in the network. This means that only these nodes can forward control message (TC message) into the network. This reduces the number of transmission when flooding control traffic. In this section, we present the MPR-FA approach based on firefly algorithm to select UAVMPR (see Fig. 4). In this process, we assume that each firefly expresses each symmetric single-hop neighbor of UAVi such as UAVj. Firstly, a random value is assigned to each firefly. As a result, UAVi considers each of its symmetric single-hop neighbors as a firefly, which can be selected as UAVMPR. Rand function determines the initial attractiveness of a firefly. The end condition for this algorithm is equal to 100 iterations. Finally, a firefly having the most fitness value is selected as a MPR node. In the proposed algorithm, each UAVi follows the following steps:

Figure 4.

Figure 4

Flowchart of MPR node selection.

1. Consider each of its symmetric single-hop neighbors as a firefly.

2. Initialize the firefly population randomly.

3. Set SETMPRUAVi=.

4. Prepare the two-hop neighbor list of UAVi (List2Hop-Neighbor).

5. Insert the identifier of all symmetric single-hop neighbors of UAVi, which their willingness is equal to “WILL-ALWAYS”, into SETMPRUAVi.

6. Calculate the degree of each single-hop neighbor (i.e. the number of its symmetric neighbors), like UAVj according to the information in its neighborhood table. This metric is represented as DUAVj.

7. Insert the identifier of a single-hop neighbor into SETMPRUAVi, when UAVi can communicate with its two-hop neighbor only by this single-hop neighbor.

8. Remove identifiers of all two-hop neighbors from List2hop-neighbor when they are covered by at least one MPR.

9. Repeat the following steps until List2hop-neighbor=:

  • Calculate the fitness function presented in Eq. (18) for each firefly. This function is calculated based on four parameters. We explain these parameters in the following:
    • EjResidual This metric indicate the remaining energy of each firefly at any moment to determine how much the UAV has the ability to manage the required network tasks and can continue its activity in the network. This metric helps UAVi to choose high-energy nodes as UAVMPR. This is because MPRs have high communication overhead and require a lot of energy. Thus, this parameter leads to energy saving and higher lifetime. Each UAV loses a certain value of its energy for sending and receiving data or doing internal operations such as computing, linking, updating. Remaining energy is equal to the UAV energy level after doing these operations. If the remaining energy is lower than the threshold (EjMin), UAV cannot be selected as UAVMPR to participate in the routing process. To choose UAVMPR, each node acquires the remaining energy of its neighbors by exchanging the Hello message. Assume that EjMaxt is the primary energy of UAVj at the moment t. The remaining energy of UAVj (EjResidual) is obtained after a time interval τ using Eq. (13):
      EjResidualt+τ=EjMaxt-EjConsumedt+τ, 13
      where, EjConsumedt+τ indicates the consumed energy of UAVj at time interval τ. This parameter is due to sending, receiving data and internal operations done by UAVj in this interval. Also, the consumed energy for receiving l bits, namely EjReceivedt+τ and the consumed energy for sending l bits, namely EjSendt+τ (when the Euclidean distance between UAVj and UAVi is equal to dij) are calculated according to Eqs. (14) and (15), respectively:
      EjReceivedt+τ=l×Eelec, 14
      EjSendt+τ=l×Eelec+l×dij2×Eamp. 15
      So that Eelec is the energy consumed by transceiver circuit for a single bit, dij is the Euclidean distance between UAVi and UAVj. Additionally, Eamp indicates the energy required by amplifier. In addition, the energy consumption of UAVs for doing internal operations is displayed as EjComputingt+τ. Therefore, the consumed energy of UAVj in a time interval τ is equal to the total energy consumption of this node for sending/receiving data and internal operations. It is calculated through Eq. (16):
      EjConsumedt+τ=tτEjSendt+τ+EjReceivedt+τ+EjComputingt+τ. 16
      As a result, Eq. (13) is written as follows:
      EjResidualt+τ=EjMaxt-tτEjSendt+τ+EjReceivedt+τ+EjComputingt+τ. 17
    • CQi,j This parameter is calculated using Eq. (10). When CQi,j is high, this means that the communication between UAVi and UAVj is more stable.
    • DNeighbor It is the number of two-hop neighbors of UAVi that are covered by UAVj. When DNeighbor of UAVj is high, the communication overhead is reduced. UAVi extracts DNeighbor from its neighborhood table.
    • Wj It indicates the willingness of UAVj to carry and send traffic to other UAVs, so that 1Wi7. UAVi extracts Wj from its neighborhood table. When Wj is high, UAVj has more chance to be selected as a MPR node.
    Now, we have:
    Fj=EjResidual-EMinEMax-EMin+CQi,j-CQMinCQMax-CQMin+DNeighbor-DMinDMax-DMin+Wj-WMinWMax-WMin, 18
    where, EMax is the maximum energy of UAVs in the network. And, EMin is equal to 0. Also, CQMax is the maximum connection quality in the neighborhood table of UAVi and CQMin is the minimum connection quality in this table. Furthermore, DMax represents the maximum neighborhood degree in the neighborhood table of UAVi and DMin-Neighbor is the minimum neighborhood degree in this table. Also, WMax=7 and WMin=1.
  • Update the position of fireflies based on Fj and using the equations represented in the firefly algorithm (Eqs. 17).

  • Remove identifiers of all two-hop neighbors from List2Hop-Neighbor when they are covered by at least one MPR.

Discovering network topology

In this phase, UAVMPR nodes broadcast the topology control (TC) message in the network. When a UAVMPR receives this message, it rebroadcasts TC message in the network. TC message format is shown in Fig. 5. We add two fields, including EPath and CQPath, to this message. These fields are shown in Fig. 5 with yellow and purple colors, respectively. In the following, we explain how calculate these two parameters.

  • EPath This field indicates the route energy. It means the lowest energy of UAVMPR nodes in one path. In general, the energy of Routei (EPathi) is calculated according to Eq. (19):
    EPathi=minUAVMPRjRouteiEUAVMPRj,j=1,...,Mi, 19
    where, Mi indicates the number of UAVMPR nodes in Routei. And, EUAVMPRj is the residual energy of UAVMPRj.
  • CQPath This field indicates the route quality. It is equal to the lowest quality of the link between UAVMPR nodes in a route. In general, the quality of Routei is obtained using Eq. (20):
    CQPathi=minUAVMPRjRouteiCQUAVMPRj-1,UAVMPRj,j=1,...,Mi, 20
    where, Mi is the number of UAVMPR nodes in Routei. In addition, CQUAVMPRj-1,UAVMPRj indicates the connection quality of the link between UAVMPRj and its previous hop node, namely UAVMPRj-1 in Routei.

Figure 5.

Figure 5

TC message format.

After broadcasting the TC message, each node in the network creates a topology table. Note that the topology table template in our scheme is similar to OLSR, but there are two differences. We add two fields, including EPath and CQPath to the topology table. The topology table format is presented in Table 2. In the following, we explain the fields of this table. Note that the topology table is used to calculate the routing table, which is explained in “Computing different routes” section.

Table 2.

Topology table.

UAVDestination UAVLast-hop ANSN EPath CQPath TimeValid
  • UAVDestination This field indicates the main address of the neighboring node. It is obtained from the Advertised Neighbor Main Address field in the TC message.

  • UAVLast-hop This field indicates the address of UAVMPR, which sends the TC message.

  • ANSN This field is the sequence number that is obtained from the TC message. It is used to detect duplicated TC messages.

  • EPath In the topology table, we record the route energy. It is achieved from the TC message.

  • CQPath In the topology table, we record route quality, which is obtained from the TC message.

  • TimeValid This field indicates the validity time of this entry in the topology table.

Figure 6 represents the flowchart of the network topology discovery.

Figure 6.

Figure 6

Flowchart of the network topology discovery.

Computing different routes

In the route calculation process, OLSR only considers hop count. However, the proposed method considers several parameters for this process. They include hop count, route energy, and route quality. As a result, our approach creates more stable routes. Table 3 shows the routing table stored in the memory of the nodes. Note that if the neighborhood table or the topology table have changed, the routing table must be re-calculated. Initially, we introduce the fields of the routing table.

Table 3.

Routing table.

UAVDestination UAVNext-hop HopCount Interface_address
  • UAVDestination This field is the destination node address.

  • UAVNext-hop This field indicates the next-hop address to reach the destination node.

  • HopCount This field represents the number of hops from the current node to the destination node.

  • Interface_address This field is the local interface address to send data to the next-hop node.

In the following, we describe steps for calculating the routing table. Furthermore, it is expressed in Fig. 7.

  • UAVi, (i=1,...,N), extracts the address of its single-hop neighbors from the neighborhood table and inserts them as the destination node into the routing table. In this case, the UAVNext-hop field is also equal to the node address.

  • UAVi extracts the address of the two-hop neighbors from the neighborhood table and inserts them as the destination node into the routing table. Note that UAVi records the address of UAVMPR related to the two-hop neighbor in the UAVNext-hop field. If UAVi checks its neighborhood table and finds that UAV2-hop-neighbor is related with several UAVMPR nodes, then UAVi calculates RankMPR for these UAVMPR nodes and insert the node with the most RankMPR as the next-hop node into the UAVNext-hop field. This rank is calculated using Eq. (21):
    RankMPR=w1Wi7+w2EUAVMPREMax+w3CQ¯MPRCQMax, 21
    where, Wi is the willingness of a node for transmitting traffic to other nodes in the network and 0Wi7. EUAVMPR is the remaining energy of UAVMPR. EMax indicates the primary energy of UAVs. Also, CQMax indicates the maximum connection quality of the neighboring nodes of UAVi. Note that all of this information is obtained from the neighborhood table. Also, CQ¯MPR is calculated using Eq. (22):
    CQ¯MPR=CQi,MPR+CQMPR,2-hop-neighbor2, 22
    where, CQi,MPR is the quality of the link between UAVi and UAVMPR. CQMPR,2-hop-neighbor indicates the quality of the link is between UAVMPR and UAV2-hop-neighbor. Also, w1, w2, and w3 are weight coefficients, so that i=13wi=1 and w1=w2=w3=13.
  • UAVi inserts the address of multi-hop nodes (UAVn-hop-neighbor) as the destination node into its routing table. First, UAVi checks its topology table. If there are several entries in the topology table for UAVn-hop-neighbor, then UAVi inserts the UAVLast-hop node with the highest RankLast-hop as the next-hop node into the UAVNext-hop field. RankLast-hop is calculated using Eq. (23):
    RankLast-hop=w1Wi7+w2EPathEMax+w3CQPathCQMAX-Path, 23
    where, Wi is the willingness of a node for transmitting traffic to other nodes in the network and 0Wi7. EPath and CQPath are the route energy and the route quality obtained from the topology table. Also, CQMAX-Path is the maximum quality of different routes for UAVn-hop-neighbor. It is extracted from the topology table. Also, w1, w2, and w3 are weight coefficients, so that i=13wi=1 and w1=w2=w3=13.

Figure 7.

Figure 7

Flowchart of calculating routing table.

Simulation and evaluation of results

In this section, we simulate our method using NS3 software. To simulate the movement of drones in the network, we use the random waypoint mobility (RWP). In RWP, UAVs are stopped at a fixed time interval called the stop period. When this time is terminated, the node selects a random position and a random speed in the simulation environment. Then, it moves toward this position. After the UAV reaches this position, it waits for the stop period to restart its movement. This process continues during all simulation times. In RWP, the most important advantage is its simple implementation. For this reason, most routing methods use this model to simulate the movement of drones in FANET. In the simulation process, assume that the network size is equal to 500×1500×1500 m3. Also, the number of UAVs in the network is between 10 and 50. These nodes are randomly and uniformly distributed in the network. The simulation time is 200 seconds. Table 4 presents the most important simulation parameters in summary. Then, we compare the simulation results of our proposed routing scheme with the two methods, including G-OLSR33 and OLSR32. They are evaluated in terms of delay, routing overhead, packet delivery rate, throughput, and energy consumption.

Table 4.

Simulation parameters.

Parameter Value
Simulator NS3
MAC protocol IEEE 802.11a
Network size (m3) 500×1500×1500 m3
Mobility model RWP
The number of nodes 10–50
Speed of nodes (m/s) 25
Communication ranges (m) 250
Initial energy of UAVs (J) 2000
Data rate (Mbps) 3
Packet interval (s) 0.2
Simulation time (s) 200

End-to-end delay

This parameter divides the time required for transferring the message from the source node to the destination node by the total number of nodes in a path. It consists of the transmission delay (Dtrans), the propagation delay of the signal (Dprop), and the queuing delay (Dqueue) in the entire network. This metric can be calculated using Eq. (24).

Dend-to-end=NDtrans+Dprop+Dproc+Dqueue. 24

Figure 8 compares the end-to-end delay in different routing methods. As shown in this figure, our method has the lowest delay in comparison with other routing schemes. In Fig. 8, our scheme reduces the end-to-end delay by 15.29% and 48.20% compared to G-OLSR and OLSR, respectively. The proposed method considers two parameters, including route quality and route energy to make more stable paths. This reduces the number of route failures. Furthermore, it decreases the updating time of the routing table, this helps our scheme to reduce the transmission delay. In contrast, OLSR considers only the number of hops for creating different paths. It is not enough. Also, G-OLSR does not consider energy and link quality in the route establishment process. In G-OLSR, paths are determined by a greedy scheme, which is based on the distance from nodes to the destination. If the greedy method cannot find a proper path to the destination, G-OLSR switches to the route recovery process and selects a node with the minimum angle toward the destination as the next-hop node. This routing strategy reduces the end-to-end delay properly. However, it has weaker performance than our scheme. On the other hand, we design a new approach based on the firefly algorithm for selecting MPRs. According to the MPR-FA algorithm, when nodes have high energy and more stable links and more neighborhood degree, they obtain more fitness to be selected as MPRs. As a result, the MPR-FA scheme helps our approach to select more stable nodes as the MPR node. This increases the network stability. As a result, the paths formed between nodes are valid for more time. This successfully reduces delay in our scheme compared to other methods. According to Fig. 8, when the number of nodes in the network is high, the delay is reduced in our scheme and G-OLSR. While this issue does not affect OLSR and even increases the delay. This is because our method and G-OLSR select optimal routes to the destination. These methods are more consistent with FANETs, and they can manage rapid changes in the topology and high-speed nodes, which fail communication links. While OLSR is not such and cannot manage this condition. As a result, it has a weak performance in FANET.

Figure 8.

Figure 8

Comparison of different routing methods in terms of end-to-end delay.

Routing overhead

This parameter indicates the ratio of Beacon messages to the total number of messages in the network. Figure 9 shows routing overhead in different schemes. As shown in this figure, our method reduces routing overhead compared to OLSR, but it has a weaker performance than G-OLSR. In Fig. 9 our routing method improves the routing overhead in comparison with OLSR (21.74%), while it has a higher routing overhead compared to G-OLSR (6.93%). This is because the proposed scheme uses a firefly algorithm-based mechanism for selecting MPRs. This mechanism increases computational and communication overheads. On the other hand, G-OLSR considers a greedy mechanism for selecting the next-hop node. A combination of the greedy scheme and OLSR helps G-OLSR to reduce routing overhead. Another important point is that in all methods, when increasing the number of nodes in the network, the routing overhead is also increased because in this case, the schemes exchange more Hello messages and TC messages to update neighborhood table and topology table in nodes.

Figure 9.

Figure 9

Comparison of different routing methods in terms of routing overhead.

Packet delivery rate

This parameter indicates the ratio of messages received at the destination to the total messages transmitted in the network. It is calculated based on Eq. (25):

PDR=i=1nPri=1nPs×100, 25

where, Pr is packets received by the destination UAV and Ps is packets sent by the source UAV. As shown in Fig. 10, our method has the best PDR compared to G-OLSR and OLSR. In Fig. 10, the proposed routing scheme increases PDR by 2.86% and 9.76% in comparison with G-OLSR and OLSR methods, respectively. When PDR has a better value, this means that routes are more stable. In the proposed method, we focus on the route stability. We consider the energy of nodes in the route calculation process and the MPR selection process so that high-energy nodes have more chance to participate in the route formation process. Also, we focus on the link quality and estimate the connection quality based on the ratio of sent/received of hello packets and connection time to select routes with high quality link for sending data packets. In contrast, OLSR does not consider these parameters. G-OLSR uses a greedy routing process only based on distance. Also, it focuses on only one parameter, namely motion angle in the recovery phase. For these reasons, our method has better performance than OLSR and G-OLSR in terms of PDR. According to Fig. 10, another point is that PDR in different schemes increases when increasing the number of nodes in the network, because it reduces the probability of route failures.

Figure 10.

Figure 10

Comparison of different routing methods in terms of PDR.

Throughput

This parameter is the ratio of messages delivered to the destination to the total time required to reach the destination. As shown in Fig. 11, our proposed approach improves throughput by 10.17% and 26.46% compared to G-OLSR and OLSR, respectively. This proves that our method form suitable paths between nodes in the network. This is because low-energy nodes do not participate in the route creation process and have a very small chance to be selected as MPR nodes. As a result, routes have more energy and higher lifetime. As a result, our scheme prevents unstable paths. These reasons improve throughput in our method compared to other methods. As shown in Fig. 11, when increasing nodes in the network, throughput is also increased in all methods because this increases the chance to find the suitable paths between nodes and improves connections between nodes in the network.

Figure 11.

Figure 11

Comparison of different routing methods in terms of throughput.

Energy consumption

In Fig. 12, the average energy consumption is compared in different methods. As shown in this figure, our method has the lowest energy consumption than other schemes. Based on Fig. 12, the proposed method reduces energy consumption by 13.28% and 18.98% compared with G-OLSR and OLSR, respectively. This is because we consider the energy parameter for calculating paths and selecting MPR nodes, while OLSR and G-OLSR do not pay attention to this parameter in their routing process. Also, our scheme forms more stable paths because this method considers energy consumption and connection quality. Therefore, paths are valid for more time. As a result, our method has a lower need for updating routing tables. This helps our scheme to improve energy consumption. Another point is that in all methods, energy consumption is boosted when increasing the number of nodes in the network. This is because in this case, these routing methods need to exchange more control messages (Hello and TC messages) in the network. This increases their communication overhead and energy consumption.

Figure 12.

Figure 12

Comparison of different routing methods in terms of energy consumption.

Conclusion

In this paper, we proposed an energy-aware routing scheme using firefly algorithm for FANETs. In our scheme, a new approach is introduced for estimating the connection quality. It is estimated based on the ratio of sent/received of hello packets and connection time. Then, we presented the MPR-FA algorithm to choose the best set of MPRs in the network. In this algorithm, a fitness function is defined based on four parameters, including energy, connection quality, neighborhood degree, and willingness. Finally, our scheme calculates the paths between nodes based on path energy and path quality. NS3 software is used for simulating our scheme and evaluating its performance. The RWP mobility model is considered for simulating the movement of UAVs in the simulation process. We compare our scheme with G-OLSR and OLSR. The simulation results show that our method has a successful performance compared to G-OLSR and OLSR in terms of end-to-end delay, PDR, throughput, and energy consumption. However, our approach has more routing overhead compared to G-OLSR. In the future research direction, we must evaluate our scheme with other mobility models and more scenarios to highlight the efficiency of our method. Also, we try to present a multi-path routing scheme using machine learning (ML) techniques in FANET for improving network fault tolerance.

Acknowledgements

Authors thank Michal Merta, and Zdeněk Truhlář for their help with the research connected with the topic of the article.

Author contributions

J.L., A.M.R., and E.Y.: initial conceptualization. M.H.M.: experimental setup. M.U.K., M.H.: field testing M.H., M.U.K., J.L., A.M.R., M.S.Y., and E.Y.: wrote the main manuscript text. M.S.Y., and E.Y.: prepared figures. M.S.Y., M.H., E.Y., J.L.: wrote the analysis section. M.H. and A.M.R.: reviewed the final manuscript.

Funding

The result was created through solving the student project “Security analysis and developing lightweight ciphers and protocols”using objective-oriented support for specific university research from the University of Finance and Administration, Prague, Czech Republic.

Data availability

All data generated or analyzed during this study are included in this published article.

Competing interests

The authors declare no competing interests.

Footnotes

Publisher's note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Contributor Information

Amir Masoud Rahmani, Email: rahmania@yuntech.edu.tw.

Muhammad Umair Khan, Email: mehdihosseinzadeh@duytan.edu.vn.

References

  • 1.Hosseinzadeh M, Tho QT, Ali S, Rahmani AM, Souri A, Norouzi M, Huynh B. A hybrid service selection and composition model for cloud-edge computing in the internet of things. IEEE Access. 2020;8:85939–85949. doi: 10.1109/ACCESS.2020.2992262. [DOI] [Google Scholar]
  • 2.Rahmani AM, Ali S, Yousefpoor MS, Yousefpoor E, Naqvi RA, Siddique K, Hosseinzadeh M. An area coverage scheme based on fuzzy logic and shuffled frog-leaping algorithm (sfla) in heterogeneous wireless sensor networks. Mathematics. 2021;9(18):2251. doi: 10.3390/math9182251. [DOI] [Google Scholar]
  • 3.Yousefpoor MS, Yousefpoor E, Barati H, Barati A, Movaghar A, Hosseinzadeh M. Secure data aggregation methods and countermeasures against various attacks in wireless sensor networks: A comprehensive review. J. Netw. Comput. Appl. 2021;190:103118. doi: 10.1016/j.jnca.2021.103118. [DOI] [Google Scholar]
  • 4.Rezwan S, Choi W. A survey on applications of reinforcement learning in flying ad-hoc networks. Electronics. 2021;10(4):449. doi: 10.3390/electronics10040449. [DOI] [Google Scholar]
  • 5.Mesbahi MR, Rahmani AM, Hosseinzadeh M. Highly reliable architecture using the 80/20 rule in cloud computing datacenters. Futur. Gener. Comput. Syst. 2017;77:77–86. doi: 10.1016/j.future.2017.06.011. [DOI] [Google Scholar]
  • 6.Mohammadi M, Rashid TA, Karim SHT, Aldalwie AHM, Tho QT, Bidaki M, Rahmani AM, Hosseinzadeh M. A comprehensive survey and taxonomy of the SVM-based intrusion detection systems. J. Netw. Comput. Appl. 2021;178:102983. doi: 10.1016/j.jnca.2021.102983. [DOI] [Google Scholar]
  • 7.Sadrishojaei M, Navimipour NJ, Reshadi M, Hosseinzadeh M. A new preventive routing method based on clustering and location prediction in the mobile internet of things. IEEE Internet Things J. 2021;8(13):10652–10664. doi: 10.1109/JIOT.2021.3049631. [DOI] [Google Scholar]
  • 8.Zhang H, Song L, Han Z. Unmanned Aerial Vehicle Applications Over Cellular Networks for 5G and Beyond. Springer; 2020. [Google Scholar]
  • 9.Bhardwaj V, Kaur N, Vashisht S, Jain S. SecRIP: Secure and reliable intercluster routing protocol for efficient data transmission in flying ad hoc networks. Trans. Emerg. Telecommun. Technol. 2021;32(6):e4068. doi: 10.1002/ett.4068. [DOI] [Google Scholar]
  • 10.Darabkh KA, Alfawares MG, Althunibat S. MDRMA: Multi-data rate mobility-aware AODV-based protocol for flying ad-hoc networks. Veh. Commun. 2019;18:100163. doi: 10.1016/j.vehcom.2019.100163. [DOI] [Google Scholar]
  • 11.Yousefpoor MS, Barati H. Dynamic key management algorithms in wireless sensor networks: A survey. Comput. Commun. 2019;134:52–69. doi: 10.1016/j.comcom.2018.11.005. [DOI] [Google Scholar]
  • 12.Kumar S, Raw RS, Bansal A, Mohammed MA, Khuwuthyakorn P, Thinnukool O. 3D location oriented routing in flying ad-hoc networks for information dissemination. IEEE Access. 2021;9:137083–137098. doi: 10.1109/ACCESS.2021.3115000. [DOI] [Google Scholar]
  • 13.Yousefpoor MS, Barati H. DSKMS: A dynamic smart key management system based on fuzzy logic in wireless sensor networks. Wirel. Netw. 2020;26(4):2515–2535. doi: 10.1007/s11276-019-01980-1. [DOI] [Google Scholar]
  • 14.Lakew DS, Sa’ad U, Dao NN, Na W, Cho S. Routing in flying ad hoc networks: A comprehensive survey. IEEE Commun. Surv. Tutor. 2020;22(2):1071–1120. doi: 10.1109/COMST.2020.2982452. [DOI] [Google Scholar]
  • 15.Yousefpoor E, Barati H, Barati A. A hierarchical secure data aggregation method using the dragonfly algorithm in wireless sensor networks. Peer-to-Peer Netw. Appl. 2021;14(4):1917–1942. doi: 10.1007/s12083-021-01116-3. [DOI] [Google Scholar]
  • 16.Arafat MY, Poudel S, Moh S. Medium access control protocols for flying ad hoc networks: A review. IEEE Sens. J. 2020;21(4):4097–4121. doi: 10.1109/JSEN.2020.3034600. [DOI] [Google Scholar]
  • 17.Singh K, Verma AK. TBCS: A trust based clustering scheme for secure communication in flying ad-hoc networks. Wireless Pers. Commun. 2020;114(4):3173–3196. doi: 10.1007/s11277-020-07523-8. [DOI] [Google Scholar]
  • 18.Bharany S, Sharma S, Badotra S, Khalaf OI, Alotaibi Y, Alghamdi S, Alassery F. Energy-efficient clustering scheme for flying ad-hoc networks using an optimized LEACH protocol. Energies. 2021;14(19):6016. doi: 10.3390/en14196016. [DOI] [Google Scholar]
  • 19.Kaur M, Singh A, Verma S, Jhanjhi NZ, Talib MN, et al. FANET: Efficient routing in flying ad hoc networks (FANETs) using firefly algorithm. In: Kaur M, et al., editors. Intelligent Computing and Innovation on Data Science. Springer; 2021. pp. 483–490. [Google Scholar]
  • 20.Khanmohammadi E, Barekatain B, Quintana AA. An enhanced AHP-TOPSIS-based clustering algorithm for high-quality live video streaming in flying ad hoc networks. J. Supercomput. 2021;77(9):10664–10698. doi: 10.1007/s11227-021-03645-3. [DOI] [Google Scholar]
  • 21.Khan A, Khan S, Fazal AS, Zhang Z, Abuassba AO. Intelligent cluster routing scheme for flying ad hoc networks. Sci. China Inf. Sci. 2021;64(8):1–14. doi: 10.1007/s11432-019-2984-7. [DOI] [Google Scholar]
  • 22.Tan Y, Liu J, Kato N. Blockchain-based key management for heterogeneous flying ad hoc network. IEEE Trans. Ind. Inf. 2020;17(11):7629–7638. doi: 10.1109/TII.2020.3048398. [DOI] [Google Scholar]
  • 23.Srivastava A, Prakash J. Future FANET with application and enabling techniques: Anatomization and sustainability issues. Comput. Sci. Rev. 2021;39:100359. doi: 10.1016/j.cosrev.2020.100359. [DOI] [Google Scholar]
  • 24.Khan IU, Shah SBH, Wang L, Aziz MA, Stephan T, Kumar N. Routing protocols & unmanned aerial vehicles autonomous localization in flying networks. Int. J. Commun. Syst. 2021 doi: 10.1002/dac.4885. [DOI] [Google Scholar]
  • 25.Agrawal J, Kapoor M. A comparative study on geographic-based routing algorithms for flying ad-hoc networks. Concurr. Comput. Pract. Exp. 2021;33(16):e6253. doi: 10.1002/cpe.6253. [DOI] [Google Scholar]
  • 26.Yadav A, Verma S. A hybrid approach based on ACO and firefly algorithm for routing in FANETs. In: Yadav A, Verma S, editors. International Conference on Computing Science, Communication and Security. Springer; 2021. pp. 234–246. [Google Scholar]
  • 27.Bvijitha Ananthi J, Subha Hency P. Mobile Computing and Sustainable Informatics. Springer; 2022. A review on various routing protocol designing features for flying ad hoc networks; pp. 315–325. [Google Scholar]
  • 28.Ibrahim MMS, Shanmugaraja P. Optimized link state routing protocol performance in flying ad-hoc networks for various data rates of un manned aerial network. Mater. Today Proc. 2021;37:3561–3568. doi: 10.1016/j.matpr.2020.09.543. [DOI] [Google Scholar]
  • 29.Yang XS. Firefly Algorithm (Chapter 8). Nature-inspired Metaheuristic Algorithms. Luniver Press; 2008. [Google Scholar]
  • 30.Lee SW, Ali S, Yousefpoor MS, Yousefpoor E, Lalbakhsh P, Javaheri D, Rahmani AM, Hosseinzadeh M. An energy-aware and predictive fuzzy logic-based routing scheme in flying ad hoc networks (fanets) IEEE Access. 2021;9:129977–130005. doi: 10.1109/ACCESS.2021.3111444. [DOI] [Google Scholar]
  • 31.Mahmud I, Cho YZ. LECAR: Location estimation-based congestion-aware routing protocol for sparsely deployed energy-efficient UAVs. Sensors. 2021;21(21):7192. doi: 10.3390/s21217192. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 32.Clausen, T. et al. Optimized Link State Routing Protocol (OLSR) (2003).
  • 33.Ali H, Islam SU, Song H, Munir K. A performance-aware routing mechanism for flying ad hoc networks. Trans. Emerg. Telecommun. Technol. 2021;32(1):e4192. doi: 10.1002/ett.4192. [DOI] [Google Scholar]
  • 34.Rahmani AM, Ali S, Yousefpoor E, et al. OLSR+: A new routing method based on fuzzy logic in flying ad-hoc networks (FANETs) Veh. Commun. 2022 doi: 10.1016/j.vehcom.2022.100489. [DOI] [Google Scholar]
  • 35.Ma Z, Guo Q, Ma J, Zhang Z, Ma H, Peng L, Li Y. VaSe-MRP: Velocity-aware and stability-estimation-based multi-path routing protocol in flying ad hoc network. Int. J. Distrib. Sens. Netw. 2019;15(11):1550147719883128. doi: 10.1177/1550147719883128. [DOI] [Google Scholar]
  • 36.Chen YN, Lyu NQ, Song GH, Yang BW, Jiang XH. A traffic-aware Q-network enhanced routing protocol based on GPSR for unmanned aerial vehicle ad-hoc networks. Front. Inf. Technol. Electron. Eng. 2020;21(9):1308–1320. doi: 10.1631/FITEE.1900401. [DOI] [Google Scholar]
  • 37.Oubbati OS, Mozaffari M, Chaib N, Lorenz P, Atiquzzaman M, Jamalipour A. ECaD: Energy-efficient routing in flying ad hoc networks. Int. J. Commun. Syst. 2019;32(18):e4156. doi: 10.1002/dac.4156. [DOI] [Google Scholar]
  • 38.Liu J, Wang Q, He C, Jaffrès-Runser K, Xu Y, Li Z, Xu Y. QMR: Q-learning based multi-objective optimization routing protocol for flying ad hoc networks. Comput. Commun. 2020;150:304–316. doi: 10.1016/j.comcom.2019.11.011. [DOI] [Google Scholar]

Associated Data

This section collects any data citations, data availability statements, or supplementary materials included in this article.

Data Availability Statement

All data generated or analyzed during this study are included in this published article.


Articles from Scientific Reports are provided here courtesy of Nature Publishing Group

RESOURCES