# Adaptive Beaconless Opportunistic Routing for Multimedia Distribution

Larissa Pimentel, Denis Rosário, Marcos Seruffo, Zhongliang Zhao, Torsten Braun

► To cite this version:

Larissa Pimentel, Denis Rosário, Marcos Seruffo, Zhongliang Zhao, Torsten Braun. Adaptive Beaconless Opportunistic Routing for Multimedia Distribution. 13th International Conference on Wired/Wireless Internet Communication (WWIC), May 2015, Malaga, Spain. pp.122-135, 10.1007/978-3-319-22572-2_9. hal-01728792

HAL Id: hal-01728792

https://inria.hal.science/hal-01728792

Submitted on 12 Mar 2018

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
Adaptive Beaconless Opportunistic Routing for
Multimedia Distribution

Larissa Pimentel¹, Denis Rosário¹, Marcos Seruffo¹, Zhongliang Zhao², and
Torsten Braun²

¹ Federal University of Pará, Belém – Brazil

²University of Bern, Bern – Switzerland

{larissamp,denis,seruffo}@ufpa.br,{zhao,braun}@iam.unibe.ch

**Abstract.** User experience on watching live videos must be satisfactory even under the influence of different 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, buffer state, as well as geographic information and node mobility in a 3D space. The proposed protocol takes into account Bayesian networks to define 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.

**Keywords:** AHP, FANETs, Beaconless OR, and QoE support.

# 1 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 commu-
nication 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 beacon-
less OR protocol (CABR) to deliver simultaneous video flows transmitted over
FANETs with QoE support. We take into account multiple types of context in-
formation 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 pre-
diction 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.
## 2 Related Work

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 short-term 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 context-aware 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 mech-
anism 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.

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

## 3.1 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*₁, ..., *v*ₙ} represent a finite set of nodes, and edges *E* = {*e*₁, ..., *e*ₙ} build a finite set of wireless links between neighbour UAVs (*v*ᵢ). We denote *N*(*v*ᵢ) ⊂ *V* as a subset of UAV neighbours within the radio range of a given node *v*ᵢ. Each UAV *v*ᵢ 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*ᵢ 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 ($\mathbb{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.

<figure><img src="image_2.png" /><figcaption>Fig. 1. CABR Network Scenario and Forwarding Decision</figcaption></figure>

## 3.2 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$.

$$DFD(v_i) = \min(DFD(v_i)) = DFD_{max} \times \left( \sum_{i=1}^{n} c_i \times \text{metric}_i \right) \quad (1)$$

$\text{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(\text{metric}_i) \in [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(\text{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 $\sum_{i=1}^{n} 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, $DFD_{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(\text{linkQuality}) = \frac{1}{1 + e^{-c(LQE-LQE_{Max}/2)}} \quad (2)$$
$$f(bufferState) = \frac{1}{1 + e^{-c(Q_{length} - Q_{max}/2)}} \quad (3)$$

$$f(energy) = \frac{1}{1 + e^{-c(RE - RE_{max}/2)}} \quad (4)$$

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 LIVE [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.

$$f(connectivity) = \alpha \times LIVE_{i,j} + \beta \times DirI_{i,DN} + \gamma \times progress_{v_i,DN} \quad (5)$$

We compute distances and directions between a given pair of nodes $v_i$ and $v_j$ based on Eq. 6, where LIVE$_{i,j}$ estimates the link duration in the Radio Range (RR) of each other based on speed and direction variations, and $\theta_i$, $\phi_i$, $\theta_j$, $\phi_j$ means mobility directions. High LIVE$_{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.

$$\begin{align*}
dist(x, y, z) &= (x_i - x_j, y_i - y_j, z_i - z_j) \\
dir(x, y, z) &= ((s_i \sin \theta_i \cos \phi_i - s_j \sin \theta_j \cos \phi_j), \\
&\quad (s_i \sin \theta_i \sin \phi_i - s_j \sin \theta_j \sin \phi_j), (s_i \cos \phi_i - s_j \cos \phi_j)) \\
a &= dir_x^2 + dir_y^2 + dir_z^2 \\
b &= 2dis_xdir_x + 2dis_ydir_y + 2dis_zdir_z \\
c &= dist_x^2 + dist_y^2 + dist_z^2 - RR^2 \\
LIVE_{i,j} &= \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}
\end{align*} \quad (6)$$

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 $\theta_1$ as the angle between the positive x-axis and the speed components of a given node $v_i$. On the other hand, $\theta_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, angleTh 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.

$$\begin{align}
\theta_1 &= \arctan(s_{iy}s_{ix}) \frac{180}{\pi} \notag \\
\theta_2 &= \arctan(x_{DN} - x_i, y_{DN} - y_i) \frac{180}{\pi} \notag \\
\text{DirI}_{i,DN} &= \left| \frac{\theta_1 - \theta_2}{\text{angleTh}} \right| \tag{7}
\end{align}$$
We attempt to reduce the number of hops by considering the progress from a given node $v_i$ towards the $DN$ ($progress_{v_i, 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_{v_i, DN}$ according to Eq. 8.

$$ progress_{v_i, DN} = \frac{1}{1 + e^{(-c(P(v_i, DN) - RR))}} \quad (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><caption>**Table 1.** Pairwise Context Importance</caption><thead><tr><th>c<sub>i,j</sub></th><th>Importance Degree</th></tr></thead><tbody><tr><td>3</td><td><i>i</i> is much more important than <i>j</i></td></tr><tr><td>2</td><td><i>i</i> is more important than <i>j</i></td></tr><tr><td>1</td><td><i>i</i> is as important as <i>j</i></td></tr><tr><td>1/2</td><td><i>i</i> is less important than <i>j</i></td></tr><tr><td>1/3</td><td><i>i</i> is much less important than <i>j</i></td></tr></tbody></table>
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.

$$ C_{i,j} = \begin{pmatrix} c_1 & c_2 & c_3 & c_4 \\ c_1 & c_{1,1} & c_{1,2} & c_{1,3} & c_{1,4} \\ c_2 & c_{2,1} & c_{2,2} & c_{2,3} & c_{2,4} \\ c_3 & c_{3,1} & c_{3,2} & c_{3,3} & c_{3,4} \\ c_4 & c_{4,1} & c_{4,2} & c_{4,3} & c_{4,4} \end{pmatrix} \quad (9) $$

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.

<table><caption>**Table 2.** Threshold definition of the Context Information</caption><thead><tr><th>Context</th><th>Ranges</th></tr></thead><tbody><tr><td>f.linkQuality) - LQE</td><td>(0, LQE<sub>bad</sub>), (LQE<sub>bad</sub>, LQE<sub>good</sub>), (LQE<sub>good</sub>, LQE<sub>max</sub>)</td></tr><tr><td>f.connectivity) - C</td><td>(∞, C<sub>bad</sub>), (C<sub>bad</sub>, C<sub>good</sub>), (C<sub>good</sub>, C ≈ 0)</td></tr><tr><td>f.energy) - E</td><td>(E ≈ 0, E<sub>min</sub>), (E<sub>min</sub>, E<sub>good</sub>), (E<sub>good</sub>, E<sub>max</sub>)</td></tr><tr><td>f(bufferState) - BS</td><td>(BS ≈<sub>full</sub>, BS<sub>min</sub>), (BS<sub>min</sub>, BS<sub>good</sub>), (BS<sub>good</sub>, BS ≈<sub>empty</sub>)</td></tr></tbody></table>

To illustrate the method described above, let us assume a given node $v_i$ with context values in the following ranges: $LQE \in (LQE_{good}, LQE_{max})$, $C \in (\infty, C_{bad})$, $E \in (E_{good}, E_{max})$, and $BS \in (BS_{min}, BS_{good})$. Based on the pairwise context information, the comparison matrix can be represented as:

$$ C_{4,4} = \begin{pmatrix} M & LQ & BS & E \\ M & 1 & 3 & 2 \\ LQ & 1/3 & 1 & 1/2 \\ BS & 1/2 & 2 & 1 \\ E & 1/3 & 1 & 1/2 \end{pmatrix} \quad (10) $$

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]$.
## 3.3 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, \theta_i$, and $\phi_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 $\Delta 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., $\Delta t = t_c - t_l$. In addition, $\theta_i$ and $\phi_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.

$$ 
\begin{aligned}
x_{pred} &= x'_{j} + \Delta t(v_{j} \sin\theta_{j} \times \cos\phi_{j}) \\
y_{pred} &= y'_{j} + \Delta t(v_{j} \sin\theta_{j} \times \sin\phi_{j}) \\
z_{pred} &= z'_{j} + \Delta t(v_{j} \cos\theta_{j})
\end{aligned} 
\qquad (11) $$

# 4 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.

## 4.1 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₁, or UAV₂ 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 \in [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.

## 4.2 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 forward-ing 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 con-ditions 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.

<figure><img src="image_3.png" /><figcaption>Fig. 2. Video Quality Level for a Scenario Composed of 40 Mobile Nodes</figcaption></figure>
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.

<figure><img src="image_4.png" /><figcaption>Fig. 3. Video Quality Level for a Scenario Composed of 30 Mobile Nodes</figcaption></figure>

## 5 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.

## ACKNOWLEDGMENTS

This work is supported by CAPES, CNPQ, and FAPESPA.
References

1. I. Bekmezci, O. K. Sahingoz, and Ş. Temel, "Flying Ad-hoc Networks (FANETs): a Survey," *Ad Hoc Networks*, vol. 11, no. 3, pp. 1254-1270, 2013.

2. O. Dobrijevic, A. Kassler, L. Skorin-Kapov, and M. Matijasevic, "Q-POINT: QoE-Driven Path Optimization Model for Multimedia Services," in *Proceedings of the Wired/Wireless Internet Communications (WWIC)*. LNCC, 2014, pp. 134-147.

3. O. K. Sahingoz, "Mobile Networking with UAVs: Opportunities and Challenges," in *Proceedings of the International Conference on Unmanned Aircraft Systems (ICUAS'13)*. IEEE, 2013, pp. 933-941.

4. S. Ehsan and B. Hamdaoui, "A Survey on Energy-Efficient Routing Techniques with QoS Assurances for Wireless Multimedia Sensor Networks," *IEEE Communications Surveys Tutorials*, vol. 14, no. 2, pp. 265-278, 2012.

5. C.-J. Hsu, H.-I. Liu, and W. Seah, "Survey Paper: Opportunistic routing - A Review and the Challenges Ahead," *Computer Network*, vol. 55, no. 15, pp. 3592-3603, oct. 2011.

6. M. Heissenbüttel, T. Braun, T. Bernoulli, and M. Wälchli, "BLR: Beacon-less Routing Algorithm for Mobile Ad hoc Networks," *Computer communications*, vol. 27, no. 11, pp. 1076-1086, 2004.

7. T. Saaty, *Fundamentals of Decision Making and Priority Theory With the Analytic Hierarchy Process*, ser. AHP series. RWS Publications, 2000.

8. Y. Li, M. St-Hilaire, and T. Kunz, "Improving Routing in Networks of UAVs via Scoped Flooding and Mobility Prediction," in *Proceedings of the IFIP Wireless Days (WD'12)*. IEEE, 2012, pp. 1-6.

9. R. Costa, D. Rosário, E. Cerqueira, and A. Santos, "Enhanced Connectivity for Robust Multimedia Transmission in UAV Networks," in *Proceedings of the IFIP Wireless Days conference (WD'14)*. Rio de Janeiro, Brazil: IEEE, Nov. 2014.

10. N. Baccour, A. Koubâ, H. Youssef, and M. Alves, "Reliable Link Quality Estimation in Low-power Wireless Networks and its Impact on Tree-routing," *Ad Hoc Networks*, vol. 27, no. 0, pp. 1-25, 2014.

11. D. Rosário, Z. Zhao, A. Santos, T. Braun, and E. Cerqueira, "A beaconless Opportunistic Routing based on a Cross-layer Approach for Efficient Video Dissemination in Mobile Multimedia IoT Applications," *Computer communications*, vol. 45, no. 1, pp. 21-31, 2014.

12. Z. Zhao, T. Braun, D. Rosário, and E. Cerqueira, "CAOR: Context-aware Adaptive Opportunistic Routing in Mobile Ad-hoc Networks," in *Proceedings of the 7th IFIP Wireless and Mobile Networking Conference (WMNC'14)*. IEEE, 2014, pp. 1-8.

13. S. Lohier, A. Rachedi, and Y. Ghamri-Doudane, "A Cost Function for QoS-Aware Routing in Multi-tier Wireless Multimedia Sensor Networks," in *Proceedings of the 12th IFIP/IEEE International Conference on Management of Multimedia and Mobile Networks and Services (MMNS'09)*. Venice, Italy: IEEE, 2009, pp. 81-93.

14. M. Hanini, A. Haqiq, and A. Berqia, "Multicriteria Queuing Model to Improve Intra-User Multi-Flow QoS in Wireless Cellular Networks," *Multidisciplinary Perspectives on Telecommunications, Wireless Systems, and Mobile Computing*, 2014.

15. D. Rosário, Z. Zhao, C. Silva, E. Cerqueira, and T. Braun, "An OMNeT++ Framework to Evaluate Video Transmission in Mobile Wireless Multimedia Sensor Networks," in *International Workshop on OMNeT++*. ICST, Mar. 2013, pp. 277-284.

16. "Videos used for Simulations," 2015, plus.google.com/117765468529449487870/videos.