Abstract
Introduction
With the recent development of communication systems and recent-developed communication paradigms, unmanned aerial vehicles (UAVs) are expected to have dramatic applications in many fields. 1 The near release of fifth generation cellular system (5G/IMT2020) is expected to assist UAV networks and enable the development of new applications. UAV is defined by the 3rd Generation Partnership Project (3GPP) and International Telecommunication Union (ITU) as a main use case of 5G/IMT2020; this pushes the development, as well as enhances and optimizes the UAV networks to enable such expected applications.2,3
UAV networks can be classified, based on the network application, into three main categories: UAV–UAV interaction, UAV–ground node interaction, and UAV–VANET (vehicular ad hoc network) interaction. 4 The first application category is the applications that require the cooperation and interaction between UAVs only, without any communication with any ground nodes. In this kind of applications, the deployed UAVs usually work together to perform a common task. 5 These applications always require the deployment of high-density UAVs, with limited task duration. These applications include remote sensing, remote localization, target detection, and catastrophic monitoring. 6 The second class of UAV applications is the applications that require the cooperation and interaction between UAV and ground node. These applications include military applications, mission critical applications, and mobile-assisted applications. 7 The ground nodes deployed for this category of applications are either fixed stations or mobile nodes. Such kind of applications requires the deployment of medium- to high-density UAVs. The third category is the applications that require the interaction between UAV and VANET. This represents a recent paradigm that considers the use of UAVs to assist ground vehicular communications such as traffic monitoring and route assessment applications. 8 This kind of applications requires deploying low density of UAVs at low attitudes.
Designing of ad hoc UAV networks (some referred to as flying ad hoc network (FANET)) faces a lot of challenge that faces the design of UAV networks; these challenges include the following:9,10
Mobility: UAV nodes are always deployed with high mobility that put constraints on designing such networks. The relative speed between deployed UAV nodes and between UAV nodes and ground nodes, either stationary or mobile, must be considered. 11
Topology: UAV networks suffer from dynamic topology changing due to high mobility of deployed nodes. Undetermined topology represented a challenge that should be considered while designing such networks. 12
Energy: UAVs have limited capabilities in terms of energy; this constraint should be considered especially for micro-UAVs. Designing UAV networks and comprised algorithms should be efficient in terms of energy to enable the stable operation of the network for a long time.
Connectivity: This constraint should be considered for low-density UAV networks, since deployed nodes are always distantly separated and the probability that there are unconnected nodes become higher.
For general ad hoc networks, one of the main challenges is the design of routing protocols; in a similar way, designing a reliable routing protocol for ad hoc UAV networks is a challenge, mainly due to high mobility and other introduced features. 13 Due to high mobility of nodes, routing protocols for UAV networks should be able to support this mobility and introduce alternative routes quickly and efficiently. 14
In this work, we develop a proactive energy and latency efficient routing protocol for ad hoc UAV networks (i.e. FANET). The proposed protocol represents a modified version to one of the common proactive routing protocol, which is the optimized link state routing protocol (OLSR). 15 The proposed protocol considers the high mobility and nature of the UAV networks, and also it considers all modified versions of OLSR. The protocol is referred to as multi-objective OLSR (MO-OLSR) that introduces a novel mechanism while selecting multipoint relay (MPR) nodes. The “Background and related works” section provides a background and literature review of the developed routing protocols for UAV networks. In the “MO-OLSR routing protocol” section, the proposed MO-OLSR routing protocol is introduced, with the proposed novel algorithm of selecting MPRs. The “Performance evaluation” section provides the simulation process and the obtained results, with the analysis of these results.
Background and related works
The current developed routing protocols for MANETs (mobile ad hoc networks) and VANETs cannot be deployed for UAV; instead, new routing protocols or modified versions of the existing protocols for VANETs and MANETs should be deployed. 16 This is because of the very high mobility of the UAVs, which in turn causes a dramatic change in network topology, and also the deployment scenarios. Thus, data forwarding schemes of MANETs and VANETs have to consider the mobility models of UAVs and also the deployment scenarios. 17
Routing protocols for ad hoc UAVs, as well as routing protocols for MANETs and VANETs, can be categorized into two main classes: static routing protocols and dynamic routing protocols.4,16,18 Static routing protocols are single-hop protocols that are developed mainly for static environment with fixed predefined topology and cannot be used for dynamic environments. In this type of routing protocols, UAVs act as packet carriers that forward data packets, while traveling from source point to destination. Static routing protocols employ static routing tables with no available updates. The main features of these protocols are the lightweight and simplicity, while these protocols are dedicated with certain applications that ensure fixed topology.19,20
Dynamic routing protocols are multi-hop routing protocols that are mainly developed for dynamic environments with high-rate topology changing. Each UAV employs a routing table that is updated based on the network topology and status. Each UAV node, based on multi-hop routing protocol, has to discover the surrounding nodes through a discovery process to build its routing table. Data are forwarded hop by hop from the source until it reaches the destination; however, the main challenge is how to arrange these hops or how to find the optimal next hop route. 21 There are many criteria and objectives that rule the process of selecting next hop route such as energy, latency, and link budget. 22
Based on the selection process of the next hop, dynamic routing protocols for UAVs can be subcategorized into two subgroups: position aware and topology aware.16,18 Position aware dynamic routing protocols for UAVs are those protocols that are built based on the information of location of each UAV. Topology aware dynamic routing protocols for UAVs consider the dynamic change of the network topology, which represents a feature of the plurality of UAV’s applications—since most applications consider ultra high-mobility deployment scenario of UAVs. Developed topology aware dynamic routing protocols can be viewed as active routing, passive routing, and hybrid routing.
Active routing—topology aware dynamic routing protocols, also called proactive routing protocols—is used for low-latency applications, since the routing table is updated continuously. Once a source UAV has data to be transmitted, the routing path is extracted instantly. The main problem with these routing protocols is the packet overhead, while this problem, to a satisfied level, has been improved by considering reduction of number and size of control packets such as the mechanism of OLSR routing protocol.15,23
Unlike active routing, passive routing—topology aware dynamic routing protocols, also called reactive routing protocols—suffers from long delay, since the routing path is estimated only when the source has data to be sent. 24 In this way, the number of control packets is reduced and thus the packet overhead is reduced. Hybrid routing—topology aware dynamic routing protocols—employs features of active and passive routing protocols to achieve better performance for moderate mobility and latency applications. 25 Table 1 indicates the topology-dedicated routing protocols recommended for applications with heterogeneous key performance indications (KPIs) in terms of latency and mobility.
Subcategories of topology-dedicated dynamic routing protocols for different UAV’s applications.
Many literatures consider the recent-developed routing protocols for ad hoc UAV networks; the recent work, in this context, can be founded in previous studies.4,16,26 In this work, we consider developing a proactive routing protocol based on OLSR and modified versions, mainly DOLSR (directional optimized link state routing protocol) and ML-OLSR (mobility and load aware OLSR).
MO-OLSR routing protocol
In this part, the proposed multi-hop/multi-objective routing protocol for dense UAV networks is introduced. The proposed algorithm is a proactive routing protocol that is developed on top of the OLSR, which is one of the most common routing protocols used for ad hoc networks. The proposed routing algorithm considers the limitations of the OLSR and also considers the modified algorithms of the OLSR that have been developed. 27 The key operation and performance of the OLSR protocol is the selection of intermediate points associated with each node to forward data and control packets; these nodes are defined as MPRs. The performance of the routing algorithm depends mainly on the selection process of MPRs. Thus, all modified versions of OLSR protocol mainly consider enhancing the MPR selection process, by considering new metrics that are ignored by the original OLSR.
The proposed algorithm considers mainly optimizing the selection process of MPR in terms of new objectives (e.g. energy, traffic load, node load, and latency). Table 2 provides a comparison between proposed algorithm, OLSR algorithm, and common modified versions of OLSR, in terms of considered metrics. The proposed algorithm is termed as MO-OLSR. Furthermore, in MO-OLSR, the addresses of both source and destination nodes are considered to be physical addresses instead of logical addresses. In traditional control packets, the plurality of the used addresses are either logical or, for certain applications, both physical and logical; however, the proposed algorithm uses the physical address to overcome the problem of disconnectivity and does not deploy both addresses to avoid packet overhead.
Metrics-based comparison between proposed MO-OLSR algorithm and OLSR with its modified versions.
MO-OLSR: multi-objective optimized link state routing protocol; OLSR: optimized link state routing protocol; MPR: multipoint relay; DOLSR: directional optimized link state routing protocol; ML-OLSR: mobility and load aware OLSR.
Metrics considered for MPR selection
Stability of communication link
Due to the mobility of UAV nodes and relative mobility between nodes, there is a dynamic change in network topology and thus, the stability of communication link between nodes should be checked and ensured. In the proposed routing protocol, the communication link stability is estimated based on the methods developed in Yu et al. 22 and Li et al. 29 Deploying stability check function represents an important method for achieving higher performance of UAV routing protocol, as it allows the routing algorithm to continuously delete and predict the unsuitable links (e.g. links exposed to failure). 30
Each UAV node receives the location information of all neighboring nodes and then calculates the distances between the node and all neighboring nodes. The stability of the communication link between node and each neighbor node can be statistically calculated, using Chebyshev inequality, based on the distances to neighboring nodes.
31
The Chebyshev inequality, for any discrete variable
where
In Chebyshev inequality, if the random variable is set to the distance between UAV and neighbor node, then the current value of distance between node A and B can be compared to the expected value of this distance. Thus, the smaller the value of variance of distance, the less the relative mobility between two considered nodes. This means that the communication link between two considered nodes is more stable. For distance variance, between nodes A and B, of one, the link is considered to be completely unstable and the neighboring node should be deleted from the routing path; this represents the worst case. In the other side, the best case for the link stability is when the distance variance indicates zero value, which means that there is no relative mobility between nodes and the relative speed between the two UAVs is zero; the link between A and B, in this case, is defined to be completely stable.
Thus, the link stability function of the link
where
Network congestion
In order to achieve higher network performance, in terms of congestion, the network load should be managed and balanced. Using traditional available routing protocols, for UAV networks, degrades the network congestion performance, because the dynamic nature of the environment due to high mobility of deployed nodes can produce network congestion at high level and may lead to failure. Thus, routing protocols for UAV networks should consider the network congestion and deploy methods to avoid such highly expected performance degradation.
For the proposed routing protocol, a method for avoiding network congestion is considered based on keeping some network congestion metrics at a level that achieves the required congestion performance. The considered metrics are the main metrics that measure the network congestion for heterogeneous ad hoc networks. These metrics include the following:32,33
Buffer occupancy;
Load balancing:
34
Communication channel load; Node load; Neighboring nodes’ load.
Buffer occupancy
The buffer occupancy of the UAV,
where
where
Channel load
The load on the communication channel is also an important metric for the network congestion and thus, for reliable routing protocol with high network congestion performance, the load on the communication channel should be kept at minimum level and should not exceed certain levels that affect the network performance and reliability. In another word, the load should be balanced by distributing traffic among network in an efficient way. 37 One of the main challenges in balancing load for UAV networks is the high mobility that features these networks. Channel load can be defined as the acting traffic load on a certain channel that accessed by multiple nodes. 38
For ad hoc architecture of UAV networks, in order to avoid conflicts of packets when transmitting messages between distributed nodes, the distributed UAV nodes are assumed to use the common IEEE 802.11 as the MAC protocol. 39 IEEE 802.11 works based on the distributed coordination function (DCF) mechanism, which deploys the carrier sense multiple access/collision avoidance (CSMA/CA) technique. 40 This requires UAV nodes to sense the shared medium to check if another node is transmitting. The sensation of the medium turns the UAV node to transmit if the medium is available or to wait if the medium is recorded to be busy. In the proposed MO-OLSR algorithm, a modified version of IEEE 802.11 that supports smart directional antennas, with reduced packet interval, is considered. 41
When the channel is busy, UAV node cannot transmit and thus, packets have to be buffered. This represents a load on the node, when the waiting period become long and more packets arrive to the buffer. Routing protocol has to consider this load to avoid performance degradation. To calculate the traffic load on a certain communication link, the proposed method in Zheng et al.
42
is modified for UAV networks. The traffic load on an UAV node (
where
where
MO-OLSR routing protocol for UAV networks
The proposed routing protocol consists of two main phases: the discovery phase and the topology control (TC) phase. The TC phase consists of two main processes: MPR set selection and the TC message broadcast.
Annotation
Before introducing the proposed processes of the proposed MO-OLSR routing protocol, the considered parameters are first defined. Notion of the considered variables and parameters are presented in Table 3. The set of UAV nodes deployed in the networks is
Key notations.
UAV: unmanned aerial vehicle.

Flowchart of the proposed MO-OLSR routing protocol.
To facilitate the proposed algorithm operation, binary decision variables are used for deciding the following
1. Link type
2. Link existence between two nodes
3. Energy decision
4. Node load decision
5. Channel load decision
6. Link stability decision
Discovery process
Each UAV node has to discover the surrounding neighbors by periodically broadcasting a Hello message to all surrounding nodes to tell them the one-hop neighboring list and update it. The Hello message is broadcasted so that all surrounding neighbor nodes, within the communication range, receive it. Each UAV node uses the received Hello messages to form and update their routing tables, and to select and modify the appropriate MPR sets. If the node receives a message that contains its address, it registers the link to the source node of the message as symmetric and it extracts the other information in the message to update its routing table. However, if the node receives a message that does not contain its address, it indicates that it is moved near to a new neighbor and it registers the dedicated link as asymmetric. The main reason for Hello message is to perform the following:
Neighbor discovery;
Link discovery and sensing;
Selection of MPR sets.
The format of the considered Hello message is illustrated in Figure 2. The proposed message represents a modified version of the original OLSR protocol and its modified versions (e.g. DOLSR and ML-OLSR). The proposed routing protocol assumes that UAVs are heterogeneous and randomly distributed over the network.

Formats of Hello message.
For better illustration of the proposed discovery process, an example is considered as introduced in Figure 3. Figure 3 illustrates the discovery process for a considered UAV node (

Example of the discovery process for UAV network with six nodes.
MPR selection
MPRs are intermediate nodes in the communication path between source and destination nodes; these nodes are selected by other nodes that will transmit their data via these MPRs. MPR nodes are either one or two communication hops away from its selectors. The main objective of selecting MPRs is to relay data packets and control packets. Since the selection of the MPR is the key performance of the proposed routing protocol, we develop a novel method for MPR selection that considers the route stability, network congestion, latency, and energy efficiency.
Based on the OLSR, the UAV
Modified versions of OLSR developed for UAV networks consider, at least, one more metric than OLSR as previously introduced. In the proposed routing protocol, various metrics are considered for MPR selection; these metrics represent combination of all metrics considered by OLSR and modified versions with the consideration of energy, latency, and UAV node load as new metrics.
Algorithm 1 introduces the proposed method for MPR selection that represents the most critical step in routing protocol and the main factor that affects its performance. Each UAV node discovers and estimates its one- and two-hop neighbor nodes sets (
Members of
High network stability;
High energy performance;
Reduced packet overhead;
Reduced network congestion;
High latency performance.
TC
For building and controlling the topology of the network, considering mobility constraints, each UAV node should periodically broadcast TC message and build the network topology based on the mechanism introduced in the study by Zheng et al.
28
The format of the TC message is introduced in Figure 4. The TC message includes the address of the UAV node

TC message format.
MO-OLSR is an OLSR-based proactive routing protocol that should always have available routing table with routes to all available nodes in the network and periodically update its entries based on the network status. Each UAV node in the network builds its routing table and fills its entries by extracting the required information from the Hello messages and TC messages.
Performance evaluation
In this part, the proposed MO-OLSR is simulated over a reliable environment and compared to the original OLSR and other two benchmark modified versions (DOLSR and ML-OLSR).
Simulation set-up
In previous proposed works, OLSR is deployed for UAV networks and its performance has been compared to other proactive and reactive routing protocol; thus in this work, we consider only comparing the proposed algorithm with OLSR and its modified versions. To this end, we built our own discrete event–based simulator over the MATLAB environment. The considered simulation parameters are introduced in Table 4. For evaluating the performance of the proposed MO-OLSR routing algorithm, various performance metrics and simulation cases are considered. Three simulation cases are considered; in each case, the network is deployed with different number of UAV nodes. Table 5 indicates the number of deployed nodes in each case. The considered metrics for the performance evaluation include the following:
Total number of selected MPRs;
End-to-end latency;
Packet delivery ratio (PDR);
Energy consumption.
Simulation parameters.
TC: topology control; MAC: medium access control; CBR: constant bit rate.
Simulation cases.
Simulation results and analysis
The number of selected MPR nodes represents an important parameter while considering the performance of OLSR-based routing protocol, since maintaining the same performance with reduced number of MPR is preferred—as it achieves higher efficiency in terms of packet overhead and bandwidth utilization. To this end, the proposed MO-OLSR routing protocol is compared to OLSR and modified versions in terms of average selected number of MPRs during the considered simulation interval. Figure 5 illustrates the average number of selected MPRs for MO-OLSR, OLSR, DOLSR, and ML-OLSR, in each considered simulation case. As presented in the figure, the proposed scheme selects average MPRs less than other considered protocols; this indicates that the proposed protocol achieves higher efficiency in terms of packet overhead and bandwidth utilization.

Average number of selected MPRS for the considered three cases: (a) case 1, (b) case 2, and (c) case 3.
Table 6 provides the upper confidence limit (UCL), the lower confidence limit (LCL), and the mean value of the selected MPRs introduced in Figure 5, with confidence of 95%. The values of the mean and the confidence intervals are indicated for each considered system in each considered simulation case. Based on the results indicated in Figure 5 and Table 6, the proposed MO-OLSR achieves 50% reduction of the number of selected MPRs than the original OLSR for the network represented in case 1. However, for a dense network that is represented in case 3, MO-OLSR achieves 25% reduction of the number of selected MPRs than the original OLSR.
Confidence intervals and mean values of the selected MPRs.
UCL: upper confidence limit; LCL: lower confidence limit; OLSR: optimized link state routing protocol; DOLSR: directional optimized link state routing protocol; ML-OLSR: mobility and load aware OLSR; MO-OLSR: multi-objective optimized link state routing protocol.
Latency is an important performance metric; the total delay can be measured using end-to-end latency metric. The end-to-end latency can be defined as the total time from the packet generation by the source node to the packet reception by the destination node. The average end-to-end latency can be calculated by averaging end-to-end latency of communicated packets. Figure 6 illustrates the comparison between MO-OLSR, OLSR, and modified versions of OLSR in terms of end-to-end latency for the considered simulation cases. Results indicate that the proposed MO-OLSR routing algorithm achieves higher latency efficiency. This can be interpreted by considering the deployment of directional antennas that achieve lower delay than omnidirectional antennas used by OLSR and the reduction of intermediated points (MPRs) in the overall communication link that reduces the communication delay. Moreover, the proposed MO-OLSR algorithm achieves higher latency efficiency than reactive routing protocols; this is because reactive protocols construct routing table on demand unlike the proposed algorithm and OLSR-based algorithms that are proactive routing protocols that always have available routing table.

End-to-end latency of the OLSR-based algorithms compared to MO-OLSR, for the considered three cases: (a) case 1, (b) case 2, and (c) case 3.
Table 7 provides the UCL, the LCL, and the mean value of the measured end-to-end latency introduced in Figure 6, with confidence of 95%. The values of the mean and the confidence intervals are indicated for each considered system in each considered simulation case. Based on the results indicated in Figure 6 and Table 7, the proposed MO-OLSR achieves 41% reduction of the end-to-end latency than the original OLSR for the network represented in case 1. However, for a dense network that is represented in case 3, MO-OLSR achieves 53% reduction of the end-to-end latency than the original OLSR.
Confidence intervals and mean values of the measured end-to-end latency.
UCL: upper confidence limit; LCL: lower confidence limit; OLSR: optimized link state routing protocol; DOLSR: directional optimized link state routing protocol; ML-OLSR: mobility and load aware OLSR; MO-OLSR: multi-objective optimized link state routing protocol.
The third metric that can be considered for performance evaluation and comparison is the PDR that represents the amount of packet received successfully compared to the total transmitted packets. Figure 7 illustrates the value of the average PDR for each considered OLSR-based protocols compared to the proposed MO-OLSR routing protocol, in each considered simulation case; this is for a duration of 700 s. Results indicate that the proposed protocol improves the PDR by 5.5% compared to the ML-OLSR and by 13% compared to the original OLSR.

The percentage of PDR for OLSR-based algorithms compared to MO-OLSR, for the considered three cases.
The last considered performance metric is the energy consumption, which represents an important metric, especially for micro UAV networks that have restrictions on energy. Proactive routing protocols consume more energy than reactive routing protocols, since these protocols always have available routing tables that need to be updated periodically. To this end, consideration of energy for OLSR and modified versions is an important issue. Figure 8 illustrates the percentage of the average consumed energy, by each OLSR-based protocol and MO-OLSR-proposed protocol during the simulation process for each of the considered simulation case, compared to initial energy at the start of the network; this is for the duration of 700 s. Results indicate that the proposed MO-OLSR routing algorithm achieves higher energy efficiency by factor of around 20% than the original OLSR.

The percentage of energy consumption of UAV nodes during simulation, for the considered three cases.
Conclusion
Designing of routing protocols for ad hoc UAV networks represents a challenge, since the high mobility of deployed nodes produces frequent changes in network topology and affects the communication links between distributed nodes. In this work, a proactive routing protocol for ad hoc UAV networks has been developed based on the OLSR routing protocol. The proposed MO-OLSR routing protocol is energy and latency efficient one that considers the high mobility of network nodes. The work considers all modified versions of OLSR and introduces a novel mechanism for selecting MPR nodes. MO-OLSR protocol has been simulated and compared with OLSR and its modified versions over a reliable environment for various considered simulation cases. Simulation results indicate that the proposed MO-OLSR protocol achieves higher efficiency in terms of latency, reliability, and energy.
