## 4 QoS-Aware Multimetric Routing Protocol for Video-Streaming Services over MANETs
### QoS-Aware Multimetric Dynamic Source Routing  
Basically, MMDSR uses DSR to search all the available paths from source to destination. Over those available paths, MMDSR sends monitoring _probe message_ (PM) packets. Afterwards, _a probe message reply_ (PMR) packet generated at destination is sent back to the source. The PMR packet gathers the collected information about the quality of all the available paths from source to destination. Figure 2 shows PM and PMR packets which are periodically interchanged between source and destination. Those paths are then filtered to check if they fulfill the user's QoS requirements (_customer request_) according to the required video quality, see Equation (1). We consider the following QoS parameters: minimum expected bandwidth (\(BW_{min}\)), maximum percentage of packet losses (\(L_{max}\)), maximum packet delay (\(D_{max}\)) and maximum delay jitter (\(J_{max}\)). \[customer_{request}\equiv\{BW_{min},L_{max},D_{max},J_{max}\} \tag{1}\]  
The paths that fulfill the user's requirements are then arranged according to a QoS multimetric score assigned to each one of the paths using the feedback QoS information carried in the PMR packets received at the source node. \[QoS\_multimetric\_score_{k}^{i}\equiv\{BW,L,D,J,H,RM,MM\}_{k}^{i} \tag{2}\]  
where \(i\) is the algorithm iteration and \(k\) means each one of the available paths. The QoS metrics used to compute the multimetric score associated to each path \(k\), are: end-to-end available bandwidth (\(BW_{k}^{i}\)), percentage of packet losses (\(L_{k}^{i}\)), average end-to-end packet delay (\(D_{k}^{i}\)), average packet delay (\(J_{k}^{i}\)), hop-count distance (\(H_{k}^{i}\)), reliability metric (\(RM_{k}^{i}\)) calculated from the signal-to-noise ratio (SNR) of the links involved in each path \(k\), and  
Figure 1: Structure of a group of pictures (GoP) formed by IPB video frames. mobility metric (\(MM_{k}^{i}\)) calculated from the relative mobility of the neighboring nodes within each path \(k\). The set of available paths from source to destination is updated periodically (iteration \(i\) by iteration) because of the dynamic topology of MANETs, whose nodes move producing frequent link breakages. Finally, the source node selects the best path (i.e., the one with the highest score) over which the video frames will be transmitted. Dynamic Self-Configuration of the Video-Streaming Framework  
In this section we summarize the basics of the self-configuration operation, which is fully detailed in [4]. Due to the inherently dynamic network topology of MANETs, suitable routing protocols should be dynamically self-configured. In this sense, MMDSR periodically monitors the current state of the MANET. Upon detection of network changes, the routing protocol modifies the refreshing period \(T_{routing}\) to update the set of available paths from source to destination. To do so, we use a tuning function (expressed below in Equation (4)) to dynamically adjust the refreshing period depending on a parameter called \(NState\). \(NState\) gathers information about the global network state at each iteration \(i\), as follows:  
\[ \begin{split} NState^{i}=&\ w_{RM}.\overline{RM}^{i} +w_{MM}.\overline{MM^{i}}+w_{BW}.\overline{BW^{i}}+w_{L}.\overline{L^{i}}\\ &+w_{D}.\overline{D^{i}}+w_{J}.\overline{J^{i}}+w_{H}.\overline{ H^{i}}\end{split}  \tag{3}\]  
In the previous equation, the upper bars mean the average for each QoS parameter calculated for each available path \(k\). The weights \(w_{i}\) have suitable values that sum one. In this work we have set them equally to 1/7, although other values could be chosen to highlight a metric over the others in the computation of the network state. When a source receives a new PMR packet with feedback information from the network (algorithm iteration \(i\)), it updates the \(NState^{i}\) with Equation (3).