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

Authors: Honghai Wu; Qianqian Sang; Yingda Wang; Huahong Ma; Ling Xing
Journal: Mobile Information Systems
 (2021)

---

## Abstract

The Flying Ad Hoc Network (FANET) is a kind of mobile network which is composed of flying 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.


---

## Body

## 1. Introduction

In recent years, with the UAVs gradually entering the public view, the application of UAVs has penetrated into the military and civilian fields. Figure1 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. The 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]. Therefore, 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.Figure 1
FANET network model. As the UAVs moves, they can communicate with the neighbor UAV nodes within the communication range.The traditional opportunistic networks adopt the “store-carry-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. There 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. Therefore, it is important to control the number of copies in a network using multicopy routing.The 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]. The 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]. This 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. Therefore, 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. The 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


## 2. 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]. This section mainly lists some representative multicopy routing protocols. In general, the research on multicopy transfer mechanisms is mainly divided into three categories.


### 2.1. 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. The 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].


### 2.2. 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. The 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. The spray stage is actually a flood algorithm based on L neighbors. The 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. The 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.


### 2.3. 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. The 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 next-hop node. The 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 Table1. Considering the comprehensive performance, the adaptive copy scheme is more suitable for data transmission in opportunistic networks.Table 1
Summary of advantages and disadvantages of traditional multicopy routing.
Routing algorithmAdvantagesDisadvantagesEpidemicNo additional topology control information; high message delivery rate and low end-to-end delayNetwork resource utilization and operating efficiency is lowSpray and waitReduction in the load on the networkThe average delay of message transmission is increasedSpray and focusThe efficiency of the relay nodes is improvedIt consumes network resourcesProphetHigher average message transmission rate, lower communication load, and better average delay performanceLack of message management mechanismHowever, 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. The 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. The 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. Therefore, when we design a copy transmission mechanism for FANETs, we must take the above issues into consideration.


## 2.1. 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. The 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].


## 2.2. 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. The 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. The spray stage is actually a flood algorithm based on L neighbors. The 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. The 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.


## 2.3. 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. The 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 next-hop node. The 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 Table1. Considering the comprehensive performance, the adaptive copy scheme is more suitable for data transmission in opportunistic networks.Table 1
Summary of advantages and disadvantages of traditional multicopy routing.
Routing algorithmAdvantagesDisadvantagesEpidemicNo additional topology control information; high message delivery rate and low end-to-end delayNetwork resource utilization and operating efficiency is lowSpray and waitReduction in the load on the networkThe average delay of message transmission is increasedSpray and focusThe efficiency of the relay nodes is improvedIt consumes network resourcesProphetHigher average message transmission rate, lower communication load, and better average delay performanceLack of message management mechanismHowever, 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. The 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. The 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. Therefore, when we design a copy transmission mechanism for FANETs, we must take the above issues into consideration.


## 3. CCAT Routing Design

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


### 3.1. 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). The 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. The higher the TP value is, the higher the delivery probability of the node pair is.
The calculation of TP consists of three parts: renewal, decay, and transitivity. In the most basic case, when two nodesa and b meet, each will update its TP value:(1)TP=TPa,bold+1−TPa,bold×TPinit,where TPinit is the initialization constant and satisfies TP∈0,1, and TPa,bold 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:(2)TPa,b=TPa,bold×yk,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,(3)TPa,c=TPa,cold+1−TPa,cold×TPa,b×TPb,c×β,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) The 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) The potential nodes of node a are all the nodes in its neighbor nodes whose TP value is greater than its own.
Nodes usually discover their neighbors by broadcasting periodic beacons and show their current state information (including location, speed, energy, etc.) to neighbor nodes [18]. The 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. The pseudocode of data forwarding is shown in Algorithm 1. The methods for estimating network connectivity are described in the next section.


### 3.2. 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 Algorithm1.Algorithm 1: CCAT data forwarding algorithm.
(1)
for all packets in nodea(2)
if node a estimates the network is connected then(3)
optimal node = nodea(4)
for all nodeb in nodea’s neighborhood do(5)
ifTPb>TPoptimal nodethen(6)
optimal node= nodeb(7)
end if(8)
end for(9)
if optimal node≠nodeathen(10)
forward the packet to the optimal node(11)
end if(12)
else(13)
for all nodeb in nodea’s neighborhood do(14)
ifTPb>TPathen(15)
forward a copy to nodeb(16)
end if(17)
end for(18)
end if(19)
end forDefinition 4.
(cluster size) The number of communicable neighbor nodes includes adjacent nodes and nodes that can be reached by multihop communication.
N represents the number of all nodes in the network, and ni represents the number of nodes that the nodes can communicate with, so the cluster size S can be expressed as(4)S=∑i∈NniN.
As shown in Figure2, the cluster size is 2+2+2+1+1/5=1.6.Figure 2
Network diagram. A network consists of five nodes A, B, C, D, and E. Among them, A, B, and C can communicate with each other but cannot communicate with D and E.Definition 5.
(normalized cluster size) It is used to measure the connectivity independent of network size. The 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:(5)Snormalized=SN−1.
Therefore, the network normalized cluster size shown in Figure1 is 1.6/5−1=0.4.
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. Therefore, the criteria for estimating network connectivity are as follows:(i)
Snormalized=1 indicates that the network is in a connected state and all nodes can communicate with each other(ii)
Snormalized<1 indicates that the network is in a state of intermittent connectivity and some nodes are separated from other nodesFigure 3
Node distribution diagram when the network is fully connected. A network consists of five nodes A, B, C, D, and E. Among them, A, B, C, D, and E can communicate with each other.


### 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. The 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.Therefore, 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 contact with destination nodes consume significantly less energy to announce information.


### 3.4. 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 Figure4, 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. The algorithm responds dynamically to the change of the number of nodes in the network.Figure 4
CCAT data 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.The advantage of this connectivity-based copy forwarding mechanism is that there is no preset threshold for the number of copies. Therefore, 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. The CCAT algorithm uses the number of communicable nodes to locally estimate the connectivity of the network and calculates the next-hop data forwarding nodes using the measure of transmission predicted value. The complexity of the algorithm isΟn+logn.


## 3.1. 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). The 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. The higher the TP value is, the higher the delivery probability of the node pair is.
The calculation of TP consists of three parts: renewal, decay, and transitivity. In the most basic case, when two nodesa and b meet, each will update its TP value:(1)TP=TPa,bold+1−TPa,bold×TPinit,where TPinit is the initialization constant and satisfies TP∈0,1, and TPa,bold 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:(2)TPa,b=TPa,bold×yk,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,(3)TPa,c=TPa,cold+1−TPa,cold×TPa,b×TPb,c×β,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) The 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) The potential nodes of node a are all the nodes in its neighbor nodes whose TP value is greater than its own.
Nodes usually discover their neighbors by broadcasting periodic beacons and show their current state information (including location, speed, energy, etc.) to neighbor nodes [18]. The 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. The pseudocode of data forwarding is shown in Algorithm 1. The methods for estimating network connectivity are described in the next section.


## 3.2. 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 Algorithm1.Algorithm 1: CCAT data forwarding algorithm.
(1)
for all packets in nodea(2)
if node a estimates the network is connected then(3)
optimal node = nodea(4)
for all nodeb in nodea’s neighborhood do(5)
ifTPb>TPoptimal nodethen(6)
optimal node= nodeb(7)
end if(8)
end for(9)
if optimal node≠nodeathen(10)
forward the packet to the optimal node(11)
end if(12)
else(13)
for all nodeb in nodea’s neighborhood do(14)
ifTPb>TPathen(15)
forward a copy to nodeb(16)
end if(17)
end for(18)
end if(19)
end forDefinition 4.
(cluster size) The number of communicable neighbor nodes includes adjacent nodes and nodes that can be reached by multihop communication.
N represents the number of all nodes in the network, and ni represents the number of nodes that the nodes can communicate with, so the cluster size S can be expressed as(4)S=∑i∈NniN.
As shown in Figure2, the cluster size is 2+2+2+1+1/5=1.6.Figure 2
Network diagram. A network consists of five nodes A, B, C, D, and E. Among them, A, B, and C can communicate with each other but cannot communicate with D and E.Definition 5.
(normalized cluster size) It is used to measure the connectivity independent of network size. The 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:(5)Snormalized=SN−1.
Therefore, the network normalized cluster size shown in Figure1 is 1.6/5−1=0.4.
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. Therefore, the criteria for estimating network connectivity are as follows:(i)
Snormalized=1 indicates that the network is in a connected state and all nodes can communicate with each other(ii)
Snormalized<1 indicates that the network is in a state of intermittent connectivity and some nodes are separated from other nodesFigure 3
Node distribution diagram when the network is fully connected. A network consists of five nodes A, B, C, D, and E. Among them, A, B, C, D, and E can communicate with each other.


## 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. The 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.Therefore, 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 contact with destination nodes consume significantly less energy to announce information.


## 3.4. 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 Figure4, 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. The algorithm responds dynamically to the change of the number of nodes in the network.Figure 4
CCAT data 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.The advantage of this connectivity-based copy forwarding mechanism is that there is no preset threshold for the number of copies. Therefore, 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. The CCAT algorithm uses the number of communicable nodes to locally estimate the connectivity of the network and calculates the next-hop data forwarding nodes using the measure of transmission predicted value. The complexity of the algorithm isΟn+logn.


## 4. Results and Discussion

### 4.1. 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 Figure5, 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.Figure 5
Nodes’ movement in the RWP model. This is the random generation of a group of node movement trajectories in the RWP model. At this time, the number of nodes is 50, the speed is 10 km/h, and the communication range is 300 m.The simulation parameters in our simulation were set as shown in Table2. In this experiment, the number of nodes and the communication range of nodes are variable parameters. Therefore, 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.Table 2
Simulation parameter setting.
ParameterValueSimulation area2 km × 2 kmMAC typeIEEE 802.11 gNode cache space20 MbData size500 KB–1 MBTTL of packet10 minNumber of nodes50/100Node communication range300 m/500 mNode movement speed10 km/hNode mobility modelRandom waypoint model (RWP)Simulation time120 minDuring 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 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. The 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. The first one is scalar data, such as temperature, humidity, and NO2 concentration, which is very small in volume and can be transmitted in a fraction of a second. Thus, the short communication duration has a little adverse effect on the transmission of this type of data. The other one is video data, which is relatively large in volume, and has strong relevance among them. The 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]).


### 4.2. 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. The 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. This 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. The delivery probability is used to describe the probability of successful message transmission between nodes. Whenever two nodesA 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.


### 4.3. 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. The second group sets the communication range of the nodes unchanged, which is 300 m, and the number of nodes increases from 10 to 100. Through 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. The experimental results are as follows:Figure6 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. The 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. This 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
Performance comparison under different communication ranges. (a) Comparison of delivery rate. (b) Comparison of latency. (c) Comparison of hops. (d) Comparison of overhead.
(a)(b)(c)(d)Figure6(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. The higher the communication range, the lower the hop number of packet transmission. This is because it is easier to maintain network connectivity in the case of a higher node communication range, as shown in Figure6(c).Figure6(d) shows the maximum number of copies produced by each routing in the first round experiment. It is 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 CCAT can adapt to network changes. Prophet routing only considers the node encounter probability, so it cannot control the number of copies well.Figure7 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.Figure 7
Performance comparison under different node density. (a) Comparison of delivery rate. (b) Comparison of latency. (c) Comparison of hops. (d) Comparison of overhead.
(a)(b)(c)(d)As shown in Figure7(b), among the four routing protocols, packet delay also shows an increasing trend with the increase of the number of nodes. This 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.The average hop count of packet transmission is increased with the number of nodes, as shown in Figure7(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.Figure7(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. Therefore, 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.


## 4.1. 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 Figure5, 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.Figure 5
Nodes’ movement in the RWP model. This is the random generation of a group of node movement trajectories in the RWP model. At this time, the number of nodes is 50, the speed is 10 km/h, and the communication range is 300 m.The simulation parameters in our simulation were set as shown in Table2. In this experiment, the number of nodes and the communication range of nodes are variable parameters. Therefore, 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.Table 2
Simulation parameter setting.
ParameterValueSimulation area2 km × 2 kmMAC typeIEEE 802.11 gNode cache space20 MbData size500 KB–1 MBTTL of packet10 minNumber of nodes50/100Node communication range300 m/500 mNode movement speed10 km/hNode mobility modelRandom waypoint model (RWP)Simulation time120 minDuring 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 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. The 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. The first one is scalar data, such as temperature, humidity, and NO2 concentration, which is very small in volume and can be transmitted in a fraction of a second. Thus, the short communication duration has a little adverse effect on the transmission of this type of data. The other one is video data, which is relatively large in volume, and has strong relevance among them. The 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]).


## 4.2. 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. The 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. This 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. The delivery probability is used to describe the probability of successful message transmission between nodes. Whenever two nodesA 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.


## 4.3. 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. The second group sets the communication range of the nodes unchanged, which is 300 m, and the number of nodes increases from 10 to 100. Through 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. The experimental results are as follows:Figure6 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. The 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. This 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
Performance comparison under different communication ranges. (a) Comparison of delivery rate. (b) Comparison of latency. (c) Comparison of hops. (d) Comparison of overhead.
(a)(b)(c)(d)Figure6(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. The higher the communication range, the lower the hop number of packet transmission. This is because it is easier to maintain network connectivity in the case of a higher node communication range, as shown in Figure6(c).Figure6(d) shows the maximum number of copies produced by each routing in the first round experiment. It is 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 CCAT can adapt to network changes. Prophet routing only considers the node encounter probability, so it cannot control the number of copies well.Figure7 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.Figure 7
Performance comparison under different node density. (a) Comparison of delivery rate. (b) Comparison of latency. (c) Comparison of hops. (d) Comparison of overhead.
(a)(b)(c)(d)As shown in Figure7(b), among the four routing protocols, packet delay also shows an increasing trend with the increase of the number of nodes. This 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.The average hop count of packet transmission is increased with the number of nodes, as shown in Figure7(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.Figure7(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. Therefore, 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.


## 5. Conclusions

This 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. This 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.



---

*Source: 8580795-2021-10-04.xml*