## 4 Working Mechanism of ESRVR
### Operation of Co-ESRVR  
The operation of Co-ESRVR follows the same steps as in ESRVR described above except that Co-ESRVR involves cooperative routing, in which source broadcast data are received by a relay node. Figure 6: Backward transmission mechanism to mitigate a void-hole. Node F knows that it has no two hop neighbors in the upward direction to route packets to the sea surface. Instead, it has only Node E as a neighbor that has a depth lower than F. However, choosing E for packets’ routing will cause the packets to be stuck at E, as E has no further neighbors towards the water surface. Therefore, Node F uses Node G as a higher depth node that has two hop neighbors to further route packets to Node K via the H-I-J path. This relay node then forwards the same data to the destination when the error in the data is beyond a certain threshold. The cooperative routing mechanism of Co-ESRVR is described in the lines to follow. A source broadcasts a data symbol \(x\), which is received by a relay node and a destination node. The destination node is the one that bears the minimum water pressure and is, therefore, closest to the sea surface. The relay node bears the second minimum water pressure after the destination node. These two nodes are specified by the source node by inserting their IDs in the data symbol, which are obtained in the neighbors' recognition phase described above. The source broadcast data symbol \(x\) is received by the destination as [5]:  
\[y_{d}=\sqrt{P_{s}}h_{sd}x+n_{sd} \tag{2}\]  
where \(P_{s}\), \(y_{d}\), \(h_{sd}\), and \(n_{sd}\) are the source transmit power, data symbol received at the destination, source-destination link gain, and source-destination link noise. The source broadcast data symbol \(x\) is received by the relay as [5]:  
\[y_{r}=\sqrt{P_{s}}h_{sr}x+n_{sr} \tag{3}\]  
where \(y_{r}\), \(h_{sr}\), and \(n_{sr}\) are the data symbol received at the relay, source-relay link gain, and source-relay link noise. By receiving the data symbol from the source, the relay and destination know about each other based on their IDs in the data symbol. The destination waits for a certain interval of time. If the destination receives a reply from the relay, the source and relay packets that the destination receives are combined. Otherwise, when the waiting time interval expires, the destination simply forwards the packets it receives from the source towards the sea surface and this process continues. The relay amplifies the signal, it receives from the source, and then sends it to the destination, which is modeled by [5]:  
\[y_{rd}=\sqrt{P_{r}}Ah_{rd}y_{r}+n_{rd} \tag{4}\]  
where \(P_{r}\) indicates the power with which relay transmits packets, \(y_{rd}\) is the signal that the destination receives from the relay, \(h_{rd}\) is the relay-destination link gain, \(n_{rd}\) is the noise accompanied by the link between relay and destination and \(A\) is the amplification factor, which is modeled as [5]:  
\[A=\sqrt{\frac{P_{r}}{P_{s}h_{sr}^{2}+\sigma^{2}}} \tag{5}\]  
where \(\sigma^{2}\) is the power of the noise accompanied by the link between source and relay. The destination combines the two signals: along the relayed path and the direct path, using the maximum-ratio-combining technique (MRC) for which the output \(y_{d}\) is written as [5] :  
\[y_{d}=y_{sd}+\frac{y_{sr}\times y_{rd}}{1+y_{sr}+y_{rd}} \tag{6}\]  
The destination finds the bit error probability \(P_{e}\) or bit error rate (BER) in the combined signal. The fading environment of underwater communication can be modeled by Rayleigh fading [18], for which the BER with binary phase shift keying (BPSK) modulation can be computed as [19]:  
\[P_{e}=1-\sqrt{\frac{snr}{2+snr}} \tag{7}\]  
where the SNR is the signal-to-noise ratio given by [19]:  
\[snr=\frac{P_{t}}{A(d,f)N} \tag{8}\]where \(P_{t}\) is the transmit power of the signal while \(A\) and \(N\) are the channel attenuation and power spectral density (PSD) of the noise described in the channel model.