## 3 RRSS Protocol
### RRSS Scheme  
Here, a few of terms are explained as following. * **Void node:** The RSSB of a void node is stronger than that of its neighbors, but all the sink nodes are outside of its transmission range. * **RSS vector:** The straight line from an underwater node to a sink node is called a RSS vector. It reflects the routing path with the least attenuation and noise from the node to the sink node. Figure 2: Network structure. As in Figure 3, nodes N\({}_{2}\), N\({}_{3}\) and N\({}_{5}\) are the neighbors of node N\({}_{4}\). The RSSB received by node N\({}_{4}\) is stronger than nodes N\({}_{2}\), N\({}_{3}\) and N\({}_{5}\). So, node N\({}_{4}\) is a void node. The straight line from one sensor node to the sink node S is the RSS vector of data transmission; for example N\({}_{1}\)\(\rightarrow\) S, N\({}_{2}\)\(\rightarrow\) S and so on. In RRSS, we divide the underwater nodes into different levels according to the RSSB. The nodes in the same level, we consider to have the same RSSB. A sender selects the next-hop firstly according to the RSSB saved in the candidate routing table; the neighbor with the strongest RSSB has the highest priority. When the RSSB is the same, the node with stronger RSSH has higher priority. The node with less residual energy than the energy threshold does not send a hello packet, because these nodes are not qualified to be forwarding nodes. To avoid data packets being delivered into a void node, the sender selects the neighbor whose void field is 0 as the next-hop. As in Figure 4, the underwater sensor nodes are classified into three types according to RSSB: SSSN, ESSN and BSSN. The nodes with the same RSSB are called equal signal strength nodes (ESSN). BSSN represents the neighbor nodes with bigger RSSB than that of ESSN. SSSN denotes the neighbor nodes with smaller RSSB than that of ESSN. RRSS includes three phases. The first phase is initialization. In this phase, each sink node broadcasts beacon messages periodically at enough power, and each node in the area of interest can hear the beacon messages. After receiving the beacon messages, the sensor node records the RSSB and constructs a RSS vector to a sink node. Then, the node broadcasts hello packets periodically. In the second phase, each underwater node finds the candidate next-hops along the RSS vector. When a node receives a hello packet from a neighbor node, it checks the information of the residual energy and RSSB of the neighbor in the packet. If the residual energy and RSSB of the neighbor meet the given conditions, the neighbor becomes a candidate next-hop node. Figure 4: Topology 3. Figure 3: Topology 2. The third phase is finding the best next-hop. According to the information of candidate nodes, the priority of the candidates for next-hop is calculated. The sender selects the candidate nearest to the RSS vector as the best next-hop node. A detailed computation process of the priority is provided in Section 4.3. According to Equations (2)-(6), to get closer to the sink node, the neighbors with bigger RSSB than the sender are eligible to be the candidate forwarding nodes. However, the neighbor node with the biggest RSSB may not be the neighbor nearest to the RSS vector. From Figure 5, we can see node A is the nearest to the sink node S, but the node nearest to the vector \(\overrightarrow{\otimes}\) is node B in the neighbors of node O. So, in RRSS, the priorities of neighbor nodes are calculated combining RSSH and RSSB. **Lemma 1**. : _If candidate nodes are ESSNs, then the candidate with stronger RSSH has higher priority._  
Proof. : In Figure 6, nodes A, B, C, D are ESSNs. Node B is on the RSS vector. Nodes A, B and C are neighbors of node E. Node E is the sender. According to the RRSS mentioned before, nodes A, B and C are eligible candidate-forwarding nodes. Clearly, the path through node B leads to shorter delay and less noise. In order to determine the best next-hop, node E compares the RSSH from ESSNs, and the candidate with stronger RSSH has higher priority.