Copy Adaptive Routing Algorithm Based on Network Connectivity in Flying Ad Hoc Networks

The Flying Ad Hoc Network (FANET) is a kind of mobile network which is composed of ﬂying UAVs (Unmanned Aerial Vehicles) as network nodes. With the high node mobility and dynamic topology, data transmission in FANETs is faced with severe challenges, such as unstable communication links and limited resources in the network. Due to the uncertainty of node encounters, data transmission is usually carried out by opportunistic transmission. However, the opportunistic delivery of data using multicopy routing not only consumes a large amount of network resources but also causes too much transmission overhead and low delivery quality. Thus, this paper designs a connectivity-based copy adaptive transmit routing algorithm (CCAT). Considering the network interruptions caused by high-speed node movement, CCAT makes packet forwarding decisions by estimating network connectivity and uses node transmit prediction value as forwarding utility value to control the number of copies of packets. Simulation results show that the delivery rate of CCAT can be improved by about 30% at the peak compared with traditional multicopy routing strategies and the transmission latency of CCAT is minimal.


Introduction
In recent years, with the UAVs gradually entering the public view, the application of UAVs has penetrated into the military and civilian fields. Figure 1 shows the network model of the FANETs. Since FANET is a network composed of UAV nodes, it has the advantages of flexible configuration and wide coverage [1]. However, due to the high mobility of nodes and the dynamic changes of topology, it is hard to find a complete transmission path between end-to-end. e network is in a state of intermittent connectivity or even be interrupted for a long time, so we need to rely on opportunistic communication brought by node movement to complete message forwarding [2]. erefore, this kind of network belongs to opportunistic networks. In order to support the intermittent link connectivity and opportunistic node contact in FANETs, it is necessary to design an efficient message transmission strategy to ensure the successful transmission of data. e traditional opportunistic networks adopt the "storecarry-forward" mode to forward the message; that is, after receiving the message, the node will store the message when it does not meet the appropriate forwarding node and only performs the forwarding when it meets the appropriate relay node in the process of moving [3]. In this way, the data collection and exchange functions of the network are realized. ere are two common forwarding strategies: single copy forwarding and multiple copy forwarding. A single copy forwarding strategy means that only one copy of the message is stored in the network to save resources, but if the node carrying the copy of the message fails to forward, the destination node will not receive the message. However, in the multicopy forwarding strategy, the flood of message copy will increase the consumption of network resources, increase nodes' energy consumption, and reduce the network performance, especially in the FANETs with limited network resources. erefore, it is important to control the number of copies in a network using multicopy routing. e multicopy routing mechanism can be divided into preset copy number method and adaptive copy method. In most studies, the method of preset threshold of the number of copies is used to control the number of copies of messages [4]. e optimal number of copies is calculated and distributed to each node of the network before the transmission of messages, and the opportunistic transmission is carried out through the movement of nodes [5]. is method can reduce the transmission of unnecessary message copies and, to a certain extent, reduce network congestion. However, the nodes in FANETs move too fast, and the strategy of setting the number of message copies in advance cannot cope with the change of node density. Furthermore, in the case of frequent network interruptions, it is unable to make adaptive adjustment decisions and reduce network performance. erefore, it is more appropriate to use adaptive copy routing to meet the dynamic changes of nodes. But for FANETs, the network topology is three-dimensional, so the three-dimensional characteristics of UAVs nodes in the network should be taken into account when designing routing strategy.
In order to deal with the above challenges, this paper proposes a reliable connectivity-based copy adaptive transmit (CCAT) strategy for FANETs. e main contributions of this paper are as follows: (i). Using the collected information of the number of neighbor nodes, the real-time changes of network connectivity are calculated, and based on this, the appropriate next-hop node is selected to forward the message, which improves the reliability of message forwarding (ii). We propose a connectivity-based copy adaptive transmit (CCAT) strategy, which uses the historical information and transitivity of the encounters between nodes to select the forwarding nodes. And the transmit prediction value is taken as the measurement standard to avoid generating unnecessary message copies (iii). We evaluate the performance of CCAT through two groups of simulations. By comparing with PRCP, epidemic and prophet routing schemes, it is proved that CCAT strategy can better meet the requirements of fully self-organizing networks

Related Work
In order to overcome the intermittent connectivity of links, the routing algorithms in DTN (Delay Tolerant Network) usually aim at maximizing the probability of message delivery and minimizing the transmission delay, so the multicopy strategy is often adopted by researchers [6]. is section mainly lists some representative multicopy routing protocols. In general, the research on multicopy transfer mechanisms is mainly divided into three categories.

Unrestricted Copy Schemes.
In this transmission mechanism, each data can be replicated, so there are multiple copies of data in the network, and if one copy is transmitted to the destination, the data is considered to have been successfully transmitted. A large number of copies and their independent transmission bring a great increase in delivery efficiency, but at the cost of network resources. e most representative example is this epidemic [7], which uses node mobility to increase the connection ability between nodes, carry out message exchange, finally transmit the message generated by the source node to the destination node, and increase the transmission rate by increasing the number of copies of the bundle [8].

Predetermined Copy Schemes.
In order to improve the data transmission rate and reduce the transmission cost, this kind of method defines the maximum number of copies of each data in advance before data transmission. e difference among them is how to copy the data before the number of copies reaches their respective thresholds. Take a typical example, Spray and Wait [9] scheme which consists of two stages: spray stage and wait stage. e spray stage is actually a flood algorithm based on L neighbors. e source node duplicates L copies of the messages to be transmitted and forwards them independently to different relay nodes. In the wait phase, the L relay nodes that carry a copy of the message do not forward the message, but instead, each performs a direct transmission algorithm and waits for an encounter with the destination node. e authors of [10] proposed Spray and Focus scheme; when there is only one copy of the message left in the node cache, the relay node switches to the focus phase. Unlike the spray and wait algorithm, in the wait phase, the node directly delivers the message to the destination node, while in the focus phase the message can be forwarded to other relay nodes according to the given criteria.

Adaptive Copy Schemes.
Although the predetermined copy schemes can reduce the energy consumption of the network to some extent, they cannot meet the requirements of data transmission with the dynamic changes of the network. In order to better balance data delivery ratio and network energy consumption, it is necessary to adopt an adaptive replication mechanism in a dynamic network, so that the number of copies in the network can be adjusted adaptively according to the changes in the network. e  scheme of prophet proposed in [11] is the typical one in this class. Unlike the epidemic routing algorithm that blindly copies messages to all neighboring nodes, each node in the prophet routing algorithm will use the historical information and transitivity between nodes to estimate the probability of reaching the destination node and select the nexthop node. e index of delivering probability is used to describe the probability of successful message transmission between nodes. Whenever two nodes A and B meet, A copies a message to B only if the delivery prediction value of B arriving at the destination node is greater than A.
An analysis of their advantages and disadvantages is shown in Table 1. Considering the comprehensive performance, the adaptive copy scheme is more suitable for data transmission in opportunistic networks.
However, all the above algorithms are relatively traditional. In recent years, researchers have also proposed some new adaptive algorithms. A fuzzy routing and forwarding algorithm (FCNS) based on the similarity of nodes in opportunistic social networks is proposed in [12]. FCNS takes the similarity between nodes into comprehensive consideration and is a combination of mobile similarity and social similarity; the Mamdani fuzzy system is used to calculate the transmission preference values of each node. e author of [13] proposed predictability and connectedness-based congestion-aware adaptive routing protocol, which solved the problem of receiving and forwarding messages when the node is in a state of congestion. e author of [14] proposed an efficient routing scheme called FGAR; it controls message replication in a decentralized manner by taking into account expected message delivery rates, replication history, and real-time network conditions. It can achieve high message delivery rates with very low message overhead.
Although there are already many replica-controlled routing algorithms, when considering FANET application scenarios, there are still some key challenges: (i) the blindness of message forwarding will produce too many message copies in the network, which can consume limited cache space or even lead to network congestion; (ii) in the case of frequent network interruptions, the traditional opportunistic forwarding mode will cause high transmission delay, and frequent retransmission will also consume limited resources, such as energy, bandwidth, and cache [15,16]; (iii) the above routing schemes are not applicable to the FANETs with three-dimensional topology. erefore, when we design a copy transmission mechanism for FANETs, we must take the above issues into consideration.

CCAT Routing Design
Based on the above background, an adaptive copy forwarding routing algorithm based on network connectivity (CCAT) is proposed in this paper. is section describes the content of the CCAT algorithm in detail.

Calculation of the Transmit Predication Value.
In CCAT routing, each node in the network maintains a value of transmit predication (TP).

Definition 1. Transmit Predication (TP).
e TP value represents the probability of message transmission from this node to the encounter node and is an indicator to measure the node delivery probability. e higher the TP value is, the higher the delivery probability of the node pair is. e calculation of TP consists of three parts: renewal, decay, and transitivity. In the most basic case, when two nodes a and b meet, each will update its TP value: where TP init is the initialization constant and satisfies TP ∈ (0, 1), and TP (a,b)old is the previously predicted delivery ratio. Based on this, it can be found that if a pair of nodes (a,b) do not encounter each other in a certain period of time, their TP values will decay according to the following formula: where y is the reduction factor and satisfies y ∈ (0, 1), and k is the time period experienced by the two nodes since the last encounter. In addition, considering the transitivity of nodes, if node a and node b often meet and node b also often meet node c; then, where β is the transfer factor. Since the encounter situation between nodes in FANETs is random [17], it is impossible to directly determine which nodes are more likely to meet the target node and complete data transmission, so the encounter probability between nodes can be estimated by using the historical encounter information of nodes. A high TP value means that the node pair encounters frequently and the delivery probability is high. On the contrary, a low TP value indicates a low encounter frequency of the node pair, which means that the distance between the two nodes is far and they can only be connected through many relay nodes, or one of the nodes is isolated from the network without a complete path.
By predicting the delivery probability of nodes, we can determine which nodes are more likely to meet the target nodes; thus, when the candidate node is selected to forward the data packet, the encounter node with a higher transmit prediction value with the target node can be selected for data forwarding. It not only avoids invalid replication of packets and reduces the traffic burden of the buffer but also increases the efficiency of successful packet delivery and saves the cost of data transmission in the network.
Definition 2. (optimal nodes) e optimal node of node a is the node with the biggest TP value among its neighbors and is smaller than its own TP value.
Definition 3. (potential nodes) e potential nodes of node a are all the nodes in its neighbor nodes whose TP value is greater than its own.

Mobile Information Systems
Nodes usually discover their neighbors by broadcasting periodic beacons and show their current state information (including location, speed, energy, etc.) to neighbor nodes [18]. e CCAT routing scheme proposed in this paper uses beacons to maintain the information of the node's transmit prediction value, which belongs to the node's state information. In the process of packet forwarding, if node a estimates that the network is connected, it will forward the packet to the optimal node in the neighbor nodes. Otherwise, node a forwards packets to all potential nodes in the neighbor nodes. e pseudocode of data forwarding is shown in Algorithm 1. e methods for estimating network connectivity are described in the next section.

Estimation of Network Connectivity.
In order to adapt to the unstable communication links of the FANETs, the CCAT algorithm proposed in this paper estimates the network connectivity before making packet forwarding decisions. Network connectivity is measured as given in Algorithm 1. N represents the number of all nodes in the network, and n i represents the number of nodes that the nodes can communicate with, so the cluster size S can be expressed as As shown in Figure 2, the cluster size is 2 Definition 5. (normalized cluster size) It is used to measure the connectivity independent of network size. e value of the normalized cluster size of the network is equal to the cluster size divided by the number of nodes in the network minus 1: erefore, the network normalized cluster size shown in Figure 1 It can be concluded from equations (4) and (5) that the characteristics of the normalized network cluster size are as follows: when the number of nodes in the network remains unchanged, the larger the communication range of nodes is, the larger the normalized network cluster size will be. When the communication range of nodes is fixed, the larger the number of nodes in the network, the larger the size of the normalized cluster. In short, the normalized cluster size is related to the number of nodes that the node can communicate with. A large number of neighbor nodes that the node can communicate with indicate a good network connectivity state. When the network is in a connected state, as shown in Figure 3, all nodes in the network can communicate with each other through single or multiple hops, and the value of the maximum normalized cluster size of the network is 1. erefore, the criteria for estimating network connectivity are as follows: (i) S normalized � 1 indicates that the network is in a connected state and all nodes can communicate with each other (ii) S normalized < 1 indicates that the network is in a state of intermittent connectivity and some nodes are separated from other nodes 3.3. Neighbor Discover Efficiency. Typically, each node in the network broadcasts a short hello message (beacon) locally to announce its status to the surrounding nodes. After each node receives the beacon, it stores the information of the neighbor node in the neighbor table. If a node does not receive any beacons from its neighbors within a certain interval of time, the node is considered out of transmission range or unreachable for some reason and is removed from the neighbors table. In literature [19], the author analyzed the influence of different beacon settings (beacon timing, node density, node speed, etc.) on routing performance. e length of the beacon interval used in the neighbor discovery process is the balance between the accuracy of the neighbor information and the energy consumption. Setting a small beacon interval consumes more energy than a large beacon interval but can obtain the latest network information. erefore, the CCAT routing proposed in this paper adopts the adaptive beacon method; that is, the extended trickle algorithm [20] is used to obtain the latest neighbor information while avoiding consuming too much network energy resources. When the predicted postvalue of a node is updated, the information version number is also updated. As a result, nodes with a high frequency of contact with target nodes are quickly announced, while nodes with less and less Mobile Information Systems contact with destination nodes consume significantly less energy to announce information.

Data Forwarding Mechanism.
Instead of forwarding packets to all neighbor nodes, CCAT routing forwards packets to the appropriate next hop through an effective packet replication control mechanism to reduce the amount of energy consumed when sending unnecessary copies. Different from most existing replication control mechanisms with preset thresholds, CCAT determines packet replication and forwarding based on the predicted value of node delivery based on network connectivity measurement. As shown in Figure 4, if the network is estimated to be connected, the node carrying packets will forward a packet to the optimal node, that is, the node with the highest delivery probability between the node and the target node. Otherwise, the node forwards a copy of the packet to each of the potential nodes, that is, to all the neighbor nodes whose delivery predicted value is greater than that of the node. If neither the optimal node nor the potential node exists, the node will retain the packet, because forwarding the packet to those nodes with a low delivery success rate will consume energy and waste limited network resources. Due to the mobility of nodes, their delivery prediction values are constantly updated, and nodes make forwarding decisions based on the reestimated connectivity. e algorithm responds dynamically to the change of the number of nodes in the network. e advantage of this connectivity-based copy forwarding mechanism is that there is no preset threshold for the number of copies. erefore, when the communication range or node density changes, there is no need to reconfigure the network. In addition, this connectivity estimation method can help reduce unnecessary packet copies. Combined with the delivery probability as the forwarding standard of node utility value, it solves the problem of data forwarding blindness of traditional DTN routings. e CCATalgorithm uses the number of communicable nodes to (1) for all packets in node a (2) if node a estimates the network is connected then (3) optimal node � node a (4) for all node b in node a 's neighborhood do (5) ifTP b > TP optimal node then (6) optimal node = node b (7) end if (8) end for (9) if optimal node ≠ node a then (10) forward the packet to the optimal node (11) end if (12) else (13) for all node b in node a 's neighborhood do (14) if TP b > TP a then (15) forward a copy to node b (16) end if (17) end for (18) end if (19)   Mobile Information Systems locally estimate the connectivity of the network and calculates the next-hop data forwarding nodes using the measure of transmission predicted value. e complexity of the algorithm is Ο(n + log n).

Simulation Environment Setup.
In order to obtain the most realistic UAV movement data, we choose to use a random waypoint (RWP) model to generate data sets. We use Java language to write a simulation environment suitable for FANETs. As shown in Figure 5, in the simulation environment based on the RWP model, the movement speed and communication range of the nodes can be customized; thus, we can change the density and communication range of nodes according to the demand. e simulation parameters in our simulation were set as shown in Table 2. In this experiment, the number of nodes and the communication range of nodes are variable parameters. erefore, we use two sets of experiments to verify the performance of these protocols: one is to change the communication range of the nodes in the network; the second is to change the number of nodes. During the experiment, all nodes have the same initial cache space. When the cache space of the node is full, the packets will be discarded according to the order of receiving packets. In addition, due to the limitation of the simulation environment, we set the flying height of UAV nodes as a constant value. During the process of data transmission, when a node receives a packet, the receiver sends an acknowledgment packet to the sender. If a copy of the packet is received, the receiver will set the flag of a copy in the confirmation message, indicating that the packet is discarded. If the packet comes from a node with a high delivery probability value, the receiver sets a routing loop flag in the acknowledgment message to indicate that the node's delivery probability value is recalculated. Upon receipt of such a confirmation packet, the sender broadcasts a neighbor discovery message with its latest transmit prediction value to update its neighbor's delivery probability. If the receiver does not have available space to receive the packet, it sets a drop flag  Figure 4: CCATdata forwarding mechanism. Nodes first estimate the network connectivity and then find the optimal node if the network is connected; otherwise, they find the potential nodes.
in the acknowledgment packet. After receiving such a confirmation packet, the sender broadcasts a neighbor discovery message with the current delivery forecast to find the next hop. e node will set a confirmation timer after sending the packet. If the sender does not receive the acknowledgment packet before the timeout, the sender will resend the packet. After a certain number of retransmission cases, the sender drops the packet. Each packet is set with a time-to-live (TTL) and is discarded as soon as the maximum lifetime is exceeded. Finally, we recorded the number of copies of each packet in the network to calculate the number of copies existing in the network.
In the process of data transmission, the duration of communication among nodes is really important. Due to the mobility of nodes, the duration time is short, and the amount of data that can be transmitted is limited. Generally speaking, two types of data need to be delivered through networks despite the diversities of scenarios and applications. e first one is scalar data, such as temperature, humidity, and NO 2 concentration, which is very small in volume and can be transmitted in a fraction of a second. us, the short communication duration has a little adverse effect on the transmission of this type of data. e other one is video data, which is relatively large in volume, and has strong relevance among them. e short contact duration is not enough for them to transmit all the data carried in their buffers and has a great adverse effect on the transmission. For this case, on the purpose to weaken the adverse effect to the performance of our routing algorithm, the packets in each node will be prioritized according to their importance to the reconstruction quality of video data, and the video packets with high value will be transmitted preferentially when the transmission opportunity is coming. By this means, the transmission quality of video data can be optimized under such situations (this work can be found in our previous publication [15]).

Introduction of Comparison Protocols.
In order to accurately evaluate the performance of our proposed protocol, the following three routing protocols are selected for simulation and comparative analysis: (i) PRCP routing [21]: adopting an incentive-based replication strategy, it provides incentives for the nodes participating in data forwarding to prevent them from acting selfishly. e group replication control mechanism distinguishes the number of group replicas that a node can recreate within its group and within different groups by recording estimates of the reputation of the same group and other groups. is mechanism can avoid the invalid copy of data and improve the efficiency of successful delivery of packets (ii) Epidemic routing: using node mobility to increase the connectivity between nodes, the exchange of messages, and ultimately the transmission of messages produced by the source nodes to the destination nodes, the transmission rate is increased by increasing the number of copies of the bundle. Each node maintains a message summary vector that records which messages are stored in the node cache. When two nodes can connect, they exchange missing messages with each other by exchanging message vectors. Over time, every node in the network will receive all the messages (iii) Prophet routing: unlike the epidemic routing algorithm that blindly copies messages to all neighboring nodes, each node in the prophet routing algorithm will estimate the probability of reaching the destination node and select the next-hop node using the historical information and transitivity of the node encounters. e delivery probability is used to describe the probability of successful message transmission between nodes. Whenever two nodes A and B meet, A copies a message to B only if the delivery probability of B arriving at the destination node is greater than A. node waypoint link

Experimental Results and Analysis.
Our experiment is divided into two groups. In the first group, the number of nodes is 80, and the communication range of nodes is increased from 100 m to 500 m. e second group sets the communication range of the nodes unchanged, which is 300 m, and the number of nodes increases from 10 to 100. rough each round of experiments, we recorded the four metrics of delivery rate, delay, hops, and routing overhead of each protocol, and routing overhead is measured by the maximum number of copies produced in the network. e experimental results are as follows: Figure 6 shows the comparison of the delivery rate, delay, transmission hops, and overhead when the node communication range increases from 100 m to 500 m. In Figure 6(a), it can be seen that the CCAT routing compared with the other three agreements achieved a higher delivery rate; at the time of communication range which is 500 m, the delivery rate is the highest and the delivery rate is the lowest at 100 m; this is because the CCAT routing under higher communication range can sustain higher network connectivity and high packet transmission success opportunities. e delivery rate of PRCP routing shows an increasing trend. Due to the incentive mechanism of nodes, when the communication range of nodes increases, the number of selected nodes also increases correspondingly, and more nodes participate in the transmission process of packets. As for epidemic routing, the delivery rate is relatively low.
is routing does not consider the poor connectivity of the network and the limited energy of nodes, so the failure rate of packet transmission is high. Figure 6(b) shows that the CCAT routing by predicting network connectivity to achieve better performance in terms of delay and the prophet routing only consider meeting frequency, and the node in the network copy only according to the node number of the delivery rate is set because there is no complete transmission path in FANETs and therefore realizes the higher transmission delay.
In terms of hop number, we found that the hop number of these four routing protocols begins to show a downward trend when the node communication range reached 300 m. e higher the communication range, the lower the hop number of packet transmission. is is because it is easier to maintain network connectivity in the case of a higher node communication range, as shown in Figure 6(c).  obvious that epidemic routing generated the most copies, no matter what the communication range is. Both CCAT routing and PRCP can better control the number of replicas when the communication range reaches the highest, but CCAT is still lower than PRCP because CCATcan adapt to network changes. Prophet routing only considers the node encounter probability, so it cannot control the number of copies well. Figure 7 shows the performance comparison of the four protocols under different node densities. Figure 7(a) shows that when the nodes in a network reach a certain number, the delivery rate of the four protocols will present a downward trend; the reason is the traffic load increases as the number of nodes increases. However, CCAT routing still has the best delivery rate because of its adaptive copy control mechanism and forwarding decisions. CCAT routing mechanism is more robust than PRCP routing and is more suitable for intermittently connected networks than the traditional epidemic and prophet routing.
As shown in Figure 7(b), among the four routing protocols, packet delay also shows an increasing trend with the increase of the number of nodes. is is because the routing path will become longer with the increase in the number of nodes in the network. However, because CCAT can make forwarding decisions according to network connectivity, which greatly improves the efficiency of data forwarding, it has less transmission delay than the other three routes. With regard to the epidemic routing, when the number of nodes increases, there will be more copies of packets in the network, which is more likely to cause network congestion, resulting in low transmission efficiency and long delay. e average hop count of packet transmission is increased with the number of nodes, as shown in Figure 7(c). When the number of nodes is greater than 60, the hop growth of PRCP routing is not as dramatic as that of CCAT routing, because PRCP routing groups all participating nodes and selects the optimal node through the incentive mechanism for data forwarding. However, when the network is connected, the routing path of CCAT becomes relatively long, so the average hop number of packets will increase. Figure 7(d) shows the comparison of the number of packets generated in the network as the number of nodes changes. Epidemic routing always keeps the highest number of copies, so it has the most overhead. As for prophet routing,  when nodes encounter another node with a higher delivery probability, it will transmit a copy. erefore, with the increase in the number of nodes, it will incur a large overhead. CCAT and PRCP have the same network overhead because they all consider an adaptive scheme to choose relay nodes.

Conclusions
is paper proposes a new multicopy routing algorithm CCAT for a resource-constrained and intermittently connected situation in FANETs. First, the concept of transmitting prediction value is introduced, and a forwarding method based on network connectivity estimation is proposed. CCAT uses this method to use the measured connectivity to control the number of forwarded copies and locally determine the appropriate next-hop node for data forwarding, avoiding invalid replication of data packets in the opportunistic network and saving network resources. Adaptive replication control mechanisms and local forwarding decisions enable CCAT to achieve higher delivery rates and lower latency than other traditional protocols.
However, due to insufficient communication range, CCAT routing is less efficient in scenarios where nodes are extremely sparse, as the nodes in the network are unable to gather enough information from their neighbors to make appropriate forwarding decisions. is is still a challenge in real FANETs application scenarios. In the future, we can explore the introduction of SDN (Software Defined Network) [22] technology into FANET to solve this problem and then test the solution in various network scenarios.

Data Availability
e data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest
e authors declare that there are no conflicts of interest regarding the publication of this paper.