Adaptive Beaconless Opportunistic Routing for Multimedia Distribution

. User experience on watching live videos must be satisfactory even under the inﬂuence of diﬀerent network conditions and topology changes, such as happening in Flying Ad-Hoc Networks (FANETs). Routing services for video dissemination over FANETs must be able to adapt routing decisions at runtime to meet Quality of Experience (QoE) requirements. In this paper, we introduce an adaptive beaconless opportunistic routing protocol for video dissemination over FANETs with QoE support, by taking into account multiple types of context information, such as link quality, residual energy, buﬀer state, as well as geographic information and node mobility in a 3D space. The proposed protocol takes into account Bayesian networks to deﬁne weight vectors and Analytic Hierarchy Process (AHP) to adjust the degree of importance for the context information based on instantaneous values. It also includes a position prediction to monitor the distance between two nodes in order to detect possible route failure.


Introduction
Collaboration between multiple Unmanned Aerial Vehicles (UAVs) to set up a Flying Ad-Hoc Network (FANET) is a growing trend, since future applications claim for more autonomous and rapid deployable systems. In this context, FANETs have been employed in many kinds of new smart city scenarios, such as disaster recovery, environmental monitoring, and others. For such scenarios, multimedia data plays an important role in helping ground rescue teams to make appropriate decisions based on detailed visual information [1].
Video transmissions require Quality of Experience (QoE) support to deliver the content with a minimal quality level based on the user perspective, which demands low frame loss rate, tolerable end-to-end delay, and low jitter [2]. Many UAVs may also be responsible for transmitting simultaneous videos from monitored areas, resulting in network congestion and buffer overflow. In addition, one of the main challenges to route packets in FANETs is how to mitigate the effects of UAV mobility in a 3D space to avoid communication flaws, delays, and packet loss during video transmissions [3]. This is because UAVs fly in a 3D space, worsening the effects of node mobility, e.g., breaking plenty of communication links. Hence, a routing strategy must consider the nature of network, application, and scenario characteristics to deliver high quality videos [4].
Existing routing protocols for FANETs establish end-to-end routes by taking into account existing information on routing tables. Nevertheless, the dynamic nature of UAVs, e.g., UAV mobility in a 3D space, leads to frequent topology changes, resulting in constant routing table updates, routing inconsistency, or route failures. In this context, beaconless Opportunistic Routing (OR) acts in a completely distributed manner to pick up one of the possible relay nodes to forward packets [5]. Nodes do not need prior establishment of routes for data transmission, avoiding frequent beacon exchange for route maintenance or discovery, and saving scarce network resources, such as bandwidth and energy. Beaconless OR works with the concept of Dynamic Forwarding Delay (DFD), where nodes calculate a short waiting-time (i.e., DFD) before forwarding the received packet [6]. DFD value can be computed as a multi-criteria cost function based on multiple context information, such as energy, distance, etc. By context, we refer to any information that impacts on the routing decision to deliver videos over FANETs with QoE support, e.g., link quality, energy, buffer state, geographic information in a 3D space. However, it is important to first analyse which metric has more impact on the forwarding decision. In addition, the degree of importance for each context metric changes continuously at runtime, and has a great influence on the network performance. In this context, Analytic Hierarchy Process (AHP) provides optimum solutions when multiple contexts are integrated into the routing process, and also supports dynamic weight calculation based on instantaneous network changes [7].
To address the above issues, we introduce an adaptive context-aware beaconless OR protocol (CABR) to deliver simultaneous video flows transmitted over FANETs with QoE support. We take into account multiple types of context information to compute the DFD, which can be acquired locally (node's energy, buffer state, and 3D geographical location) or derived from received packets (link quality and UAV neighbours mobility information). We also include position prediction to monitor the distance between a given node and its forwarding node to detect route failures. We consider a Bayesian Network (BN) to analyse which CABR metrics have more impact on the final video quality level, resulting in a weight vector. We take into account AHP to adjust the degree of importance of each context metric based on the instantaneous network or node conditions. We performed simulations to evaluate CABR performance. In contrast to well known beaconless OR protocols, CABR provides multimedia transmission with QoE support in case of simultaneous video dissemination and mobile nodes.
The remainder of the paper is structured as follows. Section 2 outlines existing routing protocols or mechanisms, and their main drawbacks. Section 3 describes CABR, which was evaluated by means of simulation experiments as shown in Section 4. Section 5 presents the main contributions and results of this paper.
Li et al. [8] introduced mobility prediction to monitor the distance between a given node and its next hop to avoid route failures, and considers only distance for the routing decision. Costa et al. [9] proposed ECORA, a mechanism that combines multiple 3D geographic criteria to select forwarding nodes with shortterm speed and direction variations, and low possibility of route failures, i.e., it considers link validation time (LIVE), direction and distance of interception.
However, these protocols [8,9] consider only geographical information for routing decisions, increasing the packet loss ratio and reducing the video quality level, since the most distant node might suffer from poor link quality connectivity [10]. In addition, such protocols assume end-to-end routes to forward packets or rely on beacon-based approaches to acquire information from neighbour nodes, but beacon-based schemes consume scarce network resources and end-to-end route may be subject to frequent interruptions or do not exist at any time, due to the dynamic characteristic of FANETs. Our proposal considers a position prediction mechanism and combines multiple 3D geographic criteria, but we also add other context information for routing decisions.
Heissenbüttel et al. [6] introduced the idea of DFD for forwarding decisions in Beaconless Routing Protocol (BLR), where source nodes broadcast a data packet. Before possible relay nodes forward the received packet, they compute the DFD value based only on location information. The node that computes the shortest DFD forwards the packet first and becomes the forwarding node. As soon as the neighbour nodes recognize the occurrence of relaying, they cancel the scheduled transmission for the same packet. Rosário et al. [11] proposed a Link Quality and Geographic-aware beaconless OR protocol (XLinGO), which combines different context information to compute the DFD, namely link quality, queue length, location, and residual energy. It considers a mechanism to detect and quickly react to route failures. Zhao et al. [12] introduced a contextaware adaptive beaconless OR protocol (CAOR), which also exploits multiple context information to compute the DFD, i.e., link quality, 2D node movement, and residual energy. CAOR considers an AHP method to adjust the degree of importance for each type of context metric according to their runtime values in order to adapt the protocol behaviour.
However, CAOR does not consider 3D location information to compute the LIVE metric and XLinGO only computes distance from a given node to the destination node, and thus CAOR and XLinGO do not mitigate the influence of UAV mobility to avoid communication flaws, delays and packet loss during multimedia transmission. XLinGO gives the same degree of importance to each type of context information, and both CAOR and XLinGO do not analyse which context metrics have more impact on the final video quality level. Finally, both do not consider a prediction mechanism to monitor the distance between a given node and its next hop in the following n seconds, which do not allow both protocols to detect route failures. Our proposal follows the beaconless OR approach with multiple context information to compute the DFD, considering BN to analyse the degree of importance for each context metric and AHP method to adapt the protocol behaviour. In addition, we integrate a position prediction mechanism and combine multiple 3D geographic criteria to select forwarding nodes with short variations in speeds/directions and low possibility of route failures.
Based on the analysis of our related work, we conclude that it is essential to consider multiple types of context information to compute the DFD to provide video dissemination with QoE support, and also it must consider the degree of importance of each metric on the final video quality level. In addition, the protocol must adapt its forwarding decision at runtime, since network or node conditions can be subject to continuous changes, and it must detect possible route failures to avoid communication flaws and packet loss. However, so far not all of these key features have been provided in a unified beaconless OR protocol.

Adaptive Context-aware Beaconless OR (CABR)
In this section we describe CABR that relies on multiple context-information to compute the DFD. CABR also includes a position prediction to detect possible route failure. We consider BN to analyse which CABR metrics have more impact on the final video quality, resulting in a weight vector. CABR adapts the protocol behaviour by considering AHP to change the context priority at runtime, allowing more realistic decision-making.

Network and System Model
CABR delivers high quality video transmitted over FANETs, as soon as the standard fixed network infrastructure becomes unavailable as the result of a natural disaster, such as an earthquake or hurricane. Hence, multimedia content plays an important role in enabling humans in the control center to take action to explore a hazardous area based on rich video information. Figure 1 shows an overview of the main CABR components. We first transmitted videos with different characteristics in an experimental setup in order to collect information about video quality, link quality, buffer state, energy, and connectivity. We take into account such experiment results to define the weight vector, i.e., the degree of importance for each metric, which serves as input to apply in an AHP method to adjust the weights at runtime based on network or node conditions.
We consider a FANET composed of n mobile nodes, i.e., UAVs, deployed in the monitored area. Each UAV has an individual identity denoted as i ∈ [1, n]. These nodes are represented in a dynamic graph G(V, E), where the vertices V = {v 1 , · · · , v n } represent a finite set of nodes, and edges E = {e 1 , · · · , e n } build a finite set of wireless links between neighbour UAVs (v i ). We denote N (v i ) ⊂ V as a subset of UAV neighbours within the radio range of a given node v i . Each UAV v i is equipped with a camera, an image encoder, a radio transceiver, and a limited energy supply. We assume a network scenario with one static Destination Node (DN ) ⊂ V equipped with a radio transceiver, an image decoder, unlimited energy, and also one-to-multiple Source Nodes (SN ) ⊂ V that can be any UAV v i capturing video flows.
Link quality estimator (LQE) is measured at the physical layer, e.g. Received Signal Strength Indicator (RSSI) or Signal to Noise Ratio (SNR), which has a maximum LQE value (LQE max ). LQE can be used to analyse the characteristics of each link e i , as soon as a given node v i receives a packet. In addition, each node v i has a queue (Q) with a maximum queue capacity (Q max ) and current queue length (Q length ). The queue policy schedules the packet transmission by using the First In First Out (FIFO) algorithm. Each node v i can estimate its Remaining Energy (RE) and it is aware of its own location (x i , y i , z i ) in a 3D space (R 3 ) by means of GPS, or any other positioning services. The DN location is known a priori by each node v i , since we assume one static DN .

Contention-based Forwarding Mode
In a similar way as existing beaconless OR protocols, where whenever a given Source node (SN ) wants to send a video flow, it broadcasts the video packet to its neighbours N (SN ). Before the SN transmits a video packet, it must determine its own location (x SN , y SN , z SN ), speed (s SN ), and direction ( −−−→ dir SN ) to include them in the packet header. Afterwards, SN neighbours N (SN ) compete to forward the received packets in a completely distributed manner, and CABR ensures that only one node forwards the received packet, where N (SN ) closer to DN than to SN compute the DFD, i.e., a short time interval for possible relay nodes to wait before forwarding the received packet.
Instead of immediately forwarding the received packet, each possible relay must compute the DFD to start a timer, and wait for the time-out to forward the received packet. The relay node that generates the smallest DFD value forwards the packet first, and becomes the forwarding node. Another possible relay node that overhears the packet transmission must cancel the scheduled transmission, and delete the buffered packet. At the same time, CABR uses the transmitted packet as passive acknowledgement, and thus the SN knows which node has the best conditions to unicast subsequent packets, and it must change to the persistent route mode. The algorithm continues until the packet reaches DN , which sends an explicit acknowledgement. In the persistent route mode nodes transmit packets in unicast, and without any additional delay.
The DFD can be computed as a multi-criteria cost function based on context information acquired locally (node energy, buffer state, and geographical location) or derived from the received broadcast packets (link quality and UAV mobility neighbour information), where there are no additional communication costs involved when collecting this context information. The utility cost function method is used for multi-criteria selection. We suggest to use the following utility function to quantify the DFD for a given node v i .
metric i is the value for a given type of context information i, i.e. link quality, energy, buffer state, and UAV mobility in a 3D space. We consider f (metric i ) ∈ [0, 1] as a normalized function for each type of context information i, which expresses different unit characteristics in a numerical representation. There are different normalized functions introduced in the literature to solve several problems in communication networks, e.g., linear piecewise, logarithmic, exponential, and sigmoid functions. We consider the sigmoid function to normalize each metric f (metric i ), since sigmoid is well known function often used in communication networks to represent the values for a given metric i [13]. We represent c i as the weight for each metric i, where n i=1 c i = 1. We consider a BN to define the weight vector, by analysing empirically which CABR metric have more impact on the final video quality. Afterwards, CABR considers AHP to adjust the degree of importance for the context information based on instantaneous network or node conditions. Finally, DF D Max means the predefined maximum delay value allowed for each node to wait before forwarding the received packet.
1) Context Metrics: CABR considers link quality as context information to ensure that the selected forwarding node provides multimedia transmission with packet delivery guarantees. In case of simultaneous video flow transmissions, considering buffer state avoids the selection of a forwarding node with heavy traffic, ensuring video dissemination with a QoE guarantee, since video streaming generates a larger amount of packets, which might cause buffer overflows and interference along the route [14]. Energy is another important type of context information to prevent the selection of a forwarding node with low energy, since UAVs are battery-powered and have limited energy resources. It is not desirable to choose a forwarding node that suffers from energy failures, which might cause packet losses. CABR considers the link quality, buffer state, energy, and progress definitions proposed by XLinGO [11], as shown in Eq. 2, 3, and 4.
f (buf f erState) = UAV mobility in a 3D space appears as another important type of context information in FANETs, since it worsens the effects of node mobility by breaking plenty of communication links. CABR considers connectivity of given pairs of neighbour nodes computed based on LIV E [9], Direction of Interception (DirI) [9], and progress [11], as shown in Eq. 5. Hence, CABR mitigates the influence of UAV mobility effects to avoid communication flaws, delays and packet loss during multimedia transmission. We consider weights (α, β, γ) for each criteria, and the sum of them is equal to 1.
We compute distances and directions between a given pair of nodes v i and v j based on Eq. 6, where LIV E i,j estimates the link duration in the Radio Range (RR) of each other based on speed and direction variations, and θ i , φ i , θ j , φ j means mobility directions. High LIV E i,j values indicate that the nodes are moving into opposite directions or with different moving speeds, and this link is more susceptible to communication flaws caused by UAV mobility.
DirI i,DN computed based on Eq. 7 indicates whether a given node v i is moving towards the DN . This is because the selection of the forwarding node moving into opposite direction away from the DN increases the number of hops, reduces robustness, and increases the packet loss ratio. We denote θ 1 as the angle between the positive x-axis and the speed components of a given node v i . On the other hand, θ 2 means the angle between the positive x-axis of a given node v i and the imaginary line that connects v i to DN . Finally, angleT h represents the threshold used for the choice of a node within a predefined area, allowing the selection of forwarding node with better direction towards the DN .
We attempt to reduce the number of hops by considering the progress from a given node v i towards the DN (progress vi,DN ), since longer routes reduce the packet delivery ratio. For this reason, we prefer to select nodes closer to the DN . Hence, we compute progress vi,DN according to Eq. 8.
2) Degree of Importance for each Context Information: We estimate the individual importance of each type of context information to find an appropriate global solution for routing decisions. In this way, we consider BN and K2 Algorithms as data correlation models to find how a given CABR context metrics influence the others to increase or decrease the video quality level. We perform data correlation based on a database with information about the context metrics and the video quality level.
In this way, we performed a set of simulations, where two source nodes transmitted video sequences with different motion and complexity levels via multiple forwarding nodes. We collected information about link quality, buffer state, energy, and connectivity at each possible relay node, as well as the quality level of videos received at the DN . Based on inferences by different context information (i.e., link quality, buffer, energy, and connectivity) on the video quality, we found the weight vector that indicates the degree of importance of each context metric. According to our database, we obtained the following weight vector: [0.399, 0.269, 0.204, 0.128], which means that link quality, buffer, energy, and connectivity have 39.9%, 26.9%, 20.4%, and 12.8% degree of importance, respectively, in order to provide video dissemination with acceptable quality.

3) Runtime Context Weight Adaptation Scheme:
The degree of importance for each type of context information might change at runtime, since considering fixed weight assignments for each metric is unrealistic and makes it difficult to cope with frequent context switching during the multimedia transmission. In this way, the AHP method provides a structured technique for decision-making problems with multiple parameters, which makes pairwise comparison between numerical values of a given metric and their relative importance to adjust weights at runtime. High weight means more importance should be attached to this particular metric, and we define five importance levels, as shown in Table 1. Table 1. Pairwise Context Importance ci,j Importance Degree 3 i is much more important than j 2 i is more important than j 1 i is as important as j 1/2 i is less important than j 1/3 i is much less important than j Hence, every node v i constructs its own matrix to compare all context-pairs according to their instantaneous values. We denote c i,j as the comparison matrix, as shown in Eq. 9, where c i,j value means how important the i − th element is compared with the j − th element. 1 c 1,2 c 1,3 c 1 Based on previous simulations and existing studies, we defined thresholds for each type of context by mapping its value into three categories: poor, intermediate, and good, as shown in Table 2. We consider real-time context values as input to compare them with the defined thresholds, and then apply AHP to estimate their importance based on pairwise context comparison. For instance, metric i is more important than metric j, as soon as metric i value is in a more critical range (i.e., poor range) than metric j (i.e., good range), and thus metric i has c i,j equals to 3. To illustrate the method described above, let us assume a given node v i with context values in the following ranges: LQE ∈ (LQE good , LQE max ), C ∈ (∞, C bad ), E ∈ (E good , E max ), and BS ∈ (BS min , BS good ). Based on the pairwise context information, the comparison matrix can be represented as: CABR obtains the relative weights vector c i by normalizing them by dividing each context value by the total sum of each column. The contribution of each criterion in the overall target is obtained by calculating the matrix eigenvector. Based on the comparison matrix of Eq. 10, the new weight vector can be derived as w = [0.453, 0.142, 0.262, 0.142].

Persistent-route mode
CABR avoids the drawbacks of broadcasting transmissions by introducing a persistent route mode, where nodes transmit subsequent packets in a unicast fashion. Video flows must be delivered even in presence of continuous topology changes. CABR relies on a mechanism to detect and respond to route failures, but CABR includes a position prediction mechanism to monitor the distance between a given node and its next hop to detect possible route failures.
CABR considers that every node that composes the route should assess whether the route is still a reliable or valid route to transmit subsequent packets. This is achieved by a given forwarding node n j sending a reply message to its last hop n i , and piggyback the exponential average for the link quality and Packet Received Ratio (PRR) perceived in the last k received packets, and also x ′ j , y ′ j , z ′ j , v j , θ i , and φ i . In this way, n i must return to the contention-based forwarding mode, as soon as it detects lower link quality or PRR for the packets received by its forwarding node n j .
Position prediction enables a given node n i to estimate the location of its forwarding node n j (x pred , y pred , z pred ) based on Eq. 11, which considers coordinates information in the 3D space (x ′ j ,y ′ j ,z ′ j ), speed (v j ), and timestamp (t) from n j . We denote ∆t as the difference between the current timestamp t c and the timestamp t l of the last reply message for a given node n j , i.e., ∆t = t c − t l . In addition, θ i and φ i mean the moving directions of n j . A given forwarding node n j might move out of RR of node n i , and thus the estimated position enables CABR to monitor the distance between a node n i and n j to detect possible route failures, i.e. as soon as the distance between both nodes is higher than RR.

Evaluation
This section describes the methodology and metrics used to evaluate the quality level of transmitted videos via CABR compared with the existing beaconless OR protocols. We evaluated the impact of node mobility at different moving speeds and number of multimedia flows on the video quality level.

Simulation Description and Evaluation Metrics
We used an OMNeT++ framework [15] running on Microsoft Azure. The results are averaged over 33 simulation runs with different randomly generated seeds to provide a confidence interval of 95%. The simulations run for 200 seconds with the lognormal shadowing path loss model. We set the simulation parameters to allow wireless channel temporal variations, link asymmetry, and irregular radio ranges, as expected in a real FANET scenario.
We deployed 30 and 40 nodes with one destination located at (75, 0, 0), and some source nodes are moving and transmitting simultaneous video flows. Possible relay nodes are moving following the Gauss-Markov mobility model generated by means of the BonnMotion mobility trace generator tool, because it provides a mobility behaviour closest to a FANET [1]. We defined the minimum speed limit equal to 1 and the maximum ranging from 5 to 20 m/s. Nodes are equipped with IEEE 802.11 radio and transmission power of 12dBm, resulting in a nominal transmission range of 15 m. They rely on CSMA/CA MAC protocol without RTS/CTS messages and retransmissions, on a drop tail mechanism to drop packets in case of buffer overflow, and on a QoE-aware redundancy mechanism [11] to add redundant packets only to priority frames at the application layer.
We conducted simulations with five different beaconless OR protocols to analyse their impact to deliver videos with good quality level. First we consider BLR [6] as routing protocol. Afterwards, we consider connectivity to compute the DFD under BLR (BLR-E), which is computed based on the combination of geographic information and node mobility in a 3D space, such as introduced in Section 3.2. In this way, we can analyse the ability of connectivity to improve the routing decisions. Third, we consider XLinGO [11] as routing protocol, where XLinGO takes into account progress, buffer state, and link quality to compute the DFD with fixed degree of importance for each type of context information. Then, we included connectivity to compute the DFD under XLinGO (XLinGO-E). Finally, we use CABR as routing protocol, which considers multiple type of context information to compute the DFD and also adapts its forwarding decision based on context information at runtime, such as introduced in Section 3.
Source nodes transmitted the Hall, Container, UAV 1 , or UAV 2 video sequences, which have different video features. These videos are downloaded from the YUV video trace library and YouTube [16]. We encoded those videos with a H.264 codec at 300 kbps, 30 frames per second, GoP size of 18 frames, and common intermediate format (352 x 288). The decoder uses a Frame-Copy method for error concealment to replace each lost frame with the last received one to reduce frame loss and maintain the video quality.
In terms of video quality evaluation, Quality of Service (QoS) schemes alone are not enough to assess the quality level of multimedia applications, because they fail in capturing subjective aspects of video content related to human experience. In this context, QoE metrics overcome those limitations, and thus we rely on a well-known objective QoE metric, namely Structural Similarity (SSIM). SSIM ∈ [0,1] is based on a frame-by-frame assessment of three video components, i.e., luminance, contrast, and structural similarity. Higher SSIM value means better video quality. We used the MSU Video Quality Measurement Tool (VQMT) to measure the SSIM value for each transmitted video.

Simulation Results
In this section, we evaluate the reliability of CABR compared to XLinGO, XLinGO-E, BLR, and BLR-E, in a scenario composed of 30 and 40 mobile nodes moving at different speed limits, i.e. 5, 10, 15, and 20 m/s. In addition, we considered scenarios with 1, 2, and 3 source nodes transmitting simultaneous video flows. Figure 2 shows the quality level of videos transmitted via CABR, XLinGO, XLinGO-E, BLR, and BLR-E. In this way, we can analyse the impact of the moving speed and number of source nodes on the final video quality level.
By analysing results from Figure 2, we conclude that CABR delivered videos with a high quality level compared to XLinGO, XLinGO-E, BLR, and BLR-E regardless of the moving speed and number of simultaneous video transmissions. For instance, videos transmitted via BLR have poor quality level, since it only considers geographical information to compute the DFD. Due to the unreliability of wireless channels, the most distant node might suffer from a bad connection [10], increasing the packet loss ratio for BLR. BLR-E improves the BLR performance, because BLR-E considers connectivity computed based on 3D geographical information as the metric to compute the DFD, and thus it provides the selection of forwarding nodes with short-term variation in speeds and directions. However, videos transmitted via BLR-E have lower quality than videos transmitted via XLinGO and XLinGO-E, since BLR-E still selects forwarding nodes based on geographical information only, and XLinGO or XLinGO-E compute the DFD based on multiple types of context information. On the other hand, XLinGO-E provides video dissemination with better quality than XLinGO. This is because XLinGO-E includes connectivity to compute the DFD, which also highlight the importance of computing connectivity based on 3D information in order to select forwarding nodes with short variation in speeds and directions.
Quality level of videos transmitted via CABR are around 15% higher than transmissions via XLinGO and XLinGO-E, in case of different numbers of simultaneous video transmissions and moving speeds. This is because CABR includes position prediction to monitor the distance between a given node and its forwarding node to detect route failures, considers BN to find the degree of importance for each CABR metric and AHP to adjust them based on network or node conditions at runtime. In this way, CABR transmits video packets with a reduced frame loss rate, protecting priority frames in congestion and link error periods. For instance, it reduces the frame loss rate by 20% compared to XLinGO and XLinGO-E in case of two source nodes transmitting simultaneous videos and nodes moving at 5m/s. It reduces also in 10% the packet failed below sensitivity than XLinGO and XLinGO-E, which means that CABR reduced route failures.  The video quality level reduces when the node density decreases, regardless the routing protocols, by comparing results from Figure 2 to Figure 3. This is because the number of neighbors decreases, minimizing the likelihood to establish/reestablish a reliable persistent route between SN and DN . It is important to highlight that CABR delivers videos with SSIM higher than 0.8 independent of nodes speed, density, and number of simultaneous video transmission, which is not achieved by existing beaconless OR protocols.

Conclusions
This paper introduced CABR, a beaconless OR protocol that supports simultaneous video dissemination with QoE assurance over multimedia FANET scenarios. These videos can be delivered to multimedia platforms for further processing and analysis, in order to guide rescue operations, and allow appropriate action to be taken based on visual information. More specifically, CABR takes into account multiple type of context information to compute the DFD value, namely energy, buffer state, 3D geographical location, link quality, and UAV mobility information. It considers the degree of importance of each metric obtained empirically, and adapts its forwarding decision according to runtime context information.
Simulation results highlighted CABR's reliability, robustness, and QoE support in the presence of node mobility and simultaneous video transmissions compared to XLinGO, XLinGO-E, BLR, and BLR-E. This is achieved in scenarios composed of mobile nodes with different moving speeds, number of source nodes, and videos with different motion and complexity levels.