# An Aquatic Mobile Sensing USV Swarm with a Link Quality-Based Delay Tolerant Network
## 4 Link Quality-Based Forwarding Strategies
### Link Quality Estimation  
The LQE is a core point for the proposed forwarding algorithms, since it defines the path for the transmission of each packet. This work introduces the Passive Multihop Link Quality Estimator  
Figure 5: USV architecture.  
\begin{table}
\begin{tabular}{c c c} \hline \hline
**Name** & **Measured Parameters** & **Interface** \\ \hline GPS-MTK3339 [35] & Latitude and Longitude & UART \\ \hline IMU SEN0140 [36] & Velocity, Orientation, Gravitational forces, and Pressure & I2C \\ \hline Conductivity Kit K1.0 [37] & Electrical Conductivity & I2C \\ \hline pH-SEN0161 [38] & pH level & Analog \\ \hline Turbidity-SEN0189 [39] & Levels of turbidity (light is used to detect suspended particles in water by measuring the light transmittance and scattering rate) & Analog \\ Ultrasonic-SEN0208 [40] & Distance (both depth and obstacles) & Digital \\ \hline Depth/Pressure-BAR30 [41] & Depth and pressure & I2C \\ \hline Liquid Level-SEN0205 [42] & Whether the probe is submerged or not & Digital \\ \hline Temperature-DS18B20 [43] & Water temperature & 1-wire \\ \hline \hline \end{tabular}
\end{table}
Table 3: Sensors description.  
(PAmuLQE) where each node is able to evaluate all the network links in the swarm--having the mobile gateway as destination--to find the least delay path to the gateway (being a LoRa gateway or a Wi-Fi gateway). To that end, all nodes spread their adjacency graph with the classifications through the neighbors' announcements, making this process a passive monitoring.  
This evaluation process classifies a mobile node according to the following information: (i) the estimated Signal Strength Indicator (SSI) between two nodes; and (ii) the bit rate computed with the observed delay on each received packet. With this information, a weighted factor is added in the adjacency graph, computed as follows  
\[Weight=100-Link\_Quality\times 100, \tag{1}\]  
where \(Link\_Quality\) is given by  
\[Link\_Quality=(1-\beta)\times SSI\_est\_norm+\beta\times\frac{\sum_{i=0}^{N \textit{packets}-1}BitRate\_norm(i)\cdot Age\_factor(i)}{\sum_{i=0}^{N \textit{packets}-1}Age\_factor(i)}, \tag{2}\]  
where the \(SSI\_est\_norm\) is the estimated normalized value of SSI (estimation of RSSI given the distance between two USVs). By estimating the RSSI, instead of using hardware and Wi-Fi packets to measure it, we are saving resources (processing time and energy), turning this into a passive link quality estimator. \(BitRate\_norm\) represents the normalized bit rate, which in turn is computed by  
\[BitRate=\frac{\textit{pkt\_size}}{\textit{pkt\_delay}}. \tag{3}\]  
\(\beta\), expressed between 0 and 1, represents a confidence level on each estimation and is given by  
\[\beta=\frac{\sum_{i=0}^{N\textit{packets}-1}Age\_factor(i)}{N\textit{packets}}, \tag{4}\]  
where \(Age\_factor\) is given by  
\[Age\_factor(i)=1-\frac{\textit{min}[(time\_now-time\_received(i)),MAX\_AGE]}{ MAX\_AGE}, \tag{5}\]  
where \(time\_received(i)\) is the time that the packet \(i\) was received by the node. The older a packet is, the lower the age factor is, lowering the importance of that packet to the mean. \(MAX\_AGE\) is the maximum age allowed to a packet to be kept in the DTN storage.