Energy-Aware Scalable Reliable and Void-Hole Mitigation Routing for Sparsely Deployed Underwater Acoustic Networks

: In wireless underwater sensor networks (WUSNs), network protocols for information routing are usually designed when a signiﬁcant number of nodes are present in the network. Therefore, for sparse conditions, when a noticeable reduction in the number of nodes occurs, the performance of such protocols exhibits a degraded behavior pattern. To cope with routing issues when sparse conditions prevail, two routing algorithms for WUSNs are proposed in this paper. They are energy-aware scalable reliable and void-hole mitigation routing (ESRVR) and cooperative energy-aware scalable reliable and void-hole mitigation routing (Co-ESRVR). The ESRVR uses a number of strategies. Firstly, it uses two hop neighbors’ information to develop routing trajectories for information advancement, as one hop information cannot avoid a void-hole, a condition when a node is not able to ﬁnd neighbors towards the sea surface, and more than two hop information is difﬁcult to obtain when sparse conditions prevail. Secondly, when a void-hole still exists, the protocol uses a backward transmission mechanism to ﬁnd other routing paths to deliver packets to the end target. Thirdly, the time by which a packet is held by a node prior to transmission is short for the nodes with low energy, depth and high count of neighbors. This reduces packets loss and avoids congestion of the channel. It also helps the nodes with no or few neighbors to hold the packet for a signiﬁcant chunk of time until they ﬁnd suitable neighbors, due to sea tides and currents, for further packets’ advancement. The Co-ESRVR further adds reliability to information advancement by adding routing in a cooperative fashion to ESRVR, which involves packets advancement to destination along two paths: directly from source and via a relayed path. This provides multiple paths for data advancement to the sea surface, so that if one path is badly affected by the harsh sea characteristics, others may not be. Unlike the counterpart protocol, the proposed algorithms are not dependent on a node’s geographical location or the distance from the sea surface, which increases their scalability and reduces the computational complexity. Performance analysis displays superior behavior patterns of the proposed algorithms over the counterpart in terms of the compared characteristics.


Introduction
In wireless underwater sensor networks (WUSNs), reliability and void hole avoidance in packets' advancement have paramount significance. Reliability in packets' advancement ensures that packets are not corrupted by the undesirable channel characteristics, which in effect, eases the information extraction at the end target. Furthermore, it reduces the complexity in electronics of the transmitter and receiver, which would otherwise be required for unreliable data routing trajectories. Moreover, reliable information advancement to the sea surface saves the amount of power in a node's battery. That is, reliable information delivery reduces the probability of retransmission of the lost or corrupted packets along the channel. Therefore, the power used in retransmission of the packets is saved for the transmission of other packets. This, in effect, achieves efficient utilization of battery power, which has a limited extent in WUSNs [1].
A void-hole is a condition in which a node cannot find another node towards the ultimate destination for data advancement, is completely isolated from other nodes of the network, and cannot communicate with them [2]. This scenario interrupts data delivery to the end destination, and consequently, network performance is compromised. The presence of a void-hole is more severe when it exists close to the water surface. This is because it interrupts the process of information advancement from high depth nodes (nodes located at a higher depth than the void-hole). When a significant number of void-holes exists near the water surface, this results in complete collapse of the network, as higher depth nodes located under the void-holes are not able to transfer their packets to the sea surface. Network protocols that address reliability in information advancement and void-hole avoidance find applications in undersea disaster control [3], naval warfare [4], and sea monitoring [5]. They are also of significant importance in terrestrial networks [6].
In WUSNs, the existing protocols suffer from degraded performance in sparse conditions when the number of nodes reduces in the network, as these protocols are usually designed by considering a significant number of sensor nodes in the network. In particular, reliability, computational complexity and void-hole avoidance are some of the key challenges that arise during sparse network conditions. For instance, protocols that focus on reliability or void-hole mitigation exist in the literature [7][8][9]. However, these protocols intrinsically have either high computational complexity or are dependent on the geographical coordinates of nodes. Such demerits limit the performance and operation of these protocols. Computational complexity makes the operation of these protocols a challenging task and inherently inserts extra delay in information transfer from the sea bottom to surface. The dependency of nodes on the geographical information of nodes is also challenging, as the currents in the sea keep changing the positions of nodes. As a result, error probability in position estimation of nodes increases, which in turn, compromises the throughput of the network. Specifically, in [7], geographical information of nodes is required, and the surface sink has to send beacon signals periodically. Moreover, the fitness function for selecting nodes requires a number of parameters. All these requirements complicate the process of information routing. Similarly, the work in [8] requires distance and hop calculation of nodes using constant beacon signals from the water surface, which inserts extra delay into the communications and increases the computational time. Continuing in a similar fashion, the work in [9] requires construction of routing pipes based on the geographical information of nodes, which is computationally complex and such pipes are difficult to construct since nodes move with ocean tides. Moreover, these protocols are dependent on the condition when every node has enough neighbor nodes for information advancement to the water surface. The performance of these protocols is compromised when the network becomes sparse, i.e., when nodes are far apart from one another in the network or when the network has a significantly lesser number of nodes than the usually considered number of nodes in these protocols.
With the dependence on geographical coordinates of nodes, the complexity of nodes' deployment is also increases, which further challenges the scalability of the network. For instance, the authors in [10] propose a routing algorithm in which two strategies are used. The first strategy involves connection of disjoint paths towards the sink so that nodes that are isolated from the rest of the nodes are actively involved in the routing process. This balances the load of the nodes and increases reliability. The second strategy uses the mechanism to avoid, bypass, or backtrack a void-hole. This further adds reliability to information advancement. However, the route construction involves geographical information of nodes, which increases the computational complexity and, therefore, reduces the scalability of the network. Moreover, information is sent over a single link, which may not be reliable all the time in the harsh sea channel. Even if these protocols are not dependent on the geographical coordinates of nodes [11,12], advancing information over a single link in these algorithms threatens the reliability of information as the sea is a harsh medium. Packets are advanced in [11] with a unique holding time for every node in combination with increased transmission power of the node beyond which the void-hole exists. This provides reliability in reducing interference and avoiding the void-hole. However, increasing transmission power causes unbalanced energy consumption, which in effect, disturbs the stability period of the network. Moreover, for sparse network conditions, the holding time is not effective as nodes are not involved in frequent data advancement. In [12], the node facing a void-hole moves and adjusts its depth to avoid the void-hole. Then, it either selects a high energy relay node for information advancement to the end target or transfers directly to it. For sparse conditions, however, the mobility of the node for void-hole avoidance inserts extra propagation delay and causes position estimation error as depth information alone is not sufficient for void-hole avoidance. Moreover, high energy relay nodes close to the sea surface bear high data traffic and consume the battery power early. This further creates dead nodes close to the sea surface. As a result, this not only disturbs further information advancement to the sea surface, but also causes unbalanced energy consumption, which shortens the stability period of the network.
Two address the aforementioned challenges, this paper proposes two routing algorithms for sparsely deployed WUSNs. They are: void-hole mitigation routing (ESRVR) and cooperative void-hole mitigation routing (Co-ESRVR). The ESRVR scheme uses a number of strategies to avoid the void-hole. Firstly, it checks that a data sender node has neighbors available up to two hops towards the sea surface. This overcomes the problem of the void-hole that is formed owing to blindly forwarding data packets without checking for the existence of neighbor nodes for further data forwarding. Since nodes are sparsely deployed, making nodes' connectivity beyond the two hops is unlikely to occur. Also, a single hop cannot detect a void-hole if it exists just beyond that single hop. Therefore, only two hop routing paths are considered for data forwarding. Secondly, in the scenario when a void-hole exists towards the sea surface, the node having data uses the backward transmission mechanism to search for other paths that are connected with the water surface. In the backward transmission mechanism, the sender node selects other nodes that are at the same or a higher depth than the sender node, but have connected paths using neighbor nodes up to two hops. This strategy continues unless information packets reach towards the sea surface. In case a void-hole is unavoidable, the information is dropped after waiting for a predefined interval of time. Thirdly, the uniqueness of the time for which a node holds a packet ensures that nodes with low battery power hold packets for short time. In addition, nodes with no or a low count of neighbors hold the packets for a long time so that enough neighbors are available to them; due to the movement of nodes with sea tides and currents, to further forward packets. These strategies reduce the packet loss and, in effect, enhance reliability in packets' advancement to the sea surface. The Co-ESRVR algorithm adds cooperative routing to ESRVR so that the destination receives a number of copies of the packets. These packets are further processed by the destination. In cooperative routing, the source-relay-destination triplet participates more in data routing than the ordinary source-destination pair. This feature reduces the harsh effect of the channel on the packets due to space diversity, which is not addressed in the ordinary source-destination pair. Consequently, Co-ESRVR further enhances the reliability of ESRVR by transferring packets to the sea surface over multiple links rather than the single link of source-destination in ESRVR. Moreover, the proposed algorithms do not make use of the geographical information of sensor nodes, which reduces complexity in nodes' deployment and, therefore, the network scalability is improved.

Our Contribution
In essence, this work contributes in the following ways:

•
The ESRVR algorithm is proposed for sparsely deployed WUSNs, which provides reliability in packets' delivery by finding connected paths up to two hops. That is, a sender node selects a routing path that involves two relay nodes without any presence of a void-hole. If a void-hole exists, the backward transmission mechanism is used by the sender node. In this mechanism, a sender node finds other nodes towards the sea surface that are at the same or a higher depth than the sender node, but have path connectivity up to two hops. These two strategies overcome packets' loss and improve reliable advancement of information towards the sea surface. The two hop connectivity is chosen because one hop connectivity cannot identify the presence of a void-hole beyond the transmitter-receiver nodes pair. At the same time, more than two hop connectivity is difficult to establish in sparse conditions. • The uniqueness of the time for which a node holds a packet ensures that low power nodes do not hold packets for a long time to avoid packets loss. Furthermore, it ensures that nodes with a low count of neighbors or no neighbors at all hold the packet for a long time. This is because in sparse conditions, nodes do not have enough neighbors to forward packets further towards the sea surface. Therefore, nodes wait unless one or more suitable neighbors are available in their vicinity due to water currents and tides. These strategies contribute to reliable advancement of packets to the end target.

•
The ESRVR protocol routes information via only one link, which may not be always reliable since the sea channel is harsh. Therefore, the concept of cooperative routing is further combined with ESRVR, which leads to the development of the Co-ESRVR algorithm, which uses the source-delay-destination triplet; instead of only the source-destination pair as in ESRVR, so that packets are routed over multiple paths. Therefore, if some of the paths get corrupted by adverse channel characteristics, others may not be. Consequently, the probability of reliable advancement of packets to the end target is enhanced.

•
When adverse channel characteristics are coped with by the development of Co-ESRVR, the complexity in electronic circuitry required to process such signals reduces, which in effect, relaxes the requirement of highly sophisticated and expensive circuitry.

•
Unlike the approach existing in the literature, the construction of routing paths and the backward transmission mechanism are independent of the distance from the sea surface or the geographical coordinates of nodes, which reduces the computational complexity and increases network scalability. This is because nodes move with sea tides and currents and often change their positions. Therefore, determining the distance or geographical positions of nodes becomes cumbersome and computationally inefficient.

•
Based on the simulation analysis, the proposed algorithms are suitable for applications that involve reliability in data transfer such as military applications and disaster detection.

Related Work
The authors in [13] formulated three protocols. The first protocol simply introduced cooperation with the opportunistic pressure routing, in which the source-relay-destination triplet was used to avoid the channel impairments. The second protocol split long paths into small paths when a void-hole existed. The third scheme added cooperation again to the second scheme to counteract channel effects. However, these three schemes suffered from a number of drawbacks. Firstly, nodes were required to know the Euclidean distance information of one another, which is difficult to obtain; especially when the network is sparse, and it also inserts extra delay in the communications. This is because nodes are moved by ocean tides and currents, and it requires constant monitoring of the positions of the nodes. Secondly, constructing shorter paths in sparse networks is almost impossible, as nodes are far apart from one another, at a significant distance. Thirdly, with opportunistic routing, a certain set of nodes constantly participates in data handling. These nodes are near the water surface and are depleted of battery power quickly. This leads to the collapse of the network by halting communications near the water surface.
To avoid void-hole and reduce interference, two routing algorithms that incorporate three hop neighbors in data forwarding were presented in [7]. The first protocol works by allowing a source node to construct a path in which sensor nodes are available up to three hops. Then, the source selects a suitable neighbor based on a fitness function, which incorporates the source-neighbor mutual distance, the hop count of the suitable neighbor, and its distance from the sink. In the second algorithm, a suitable neighbor either acts as a unicast or multi-cast node to advance the data further over the most feasible path with respect to the delay. Multi-casting was proposed to overcome channel noise. However, these algorithms require the Euclidean position knowledge of nodes, which is challenging. Furthermore, nodes' operation depends on constant beaconing from the surface sink node, which adds extra delay to the communications. Further, the fitness function adds computational complexity in the algorithm due to the involvement of many parameters for suitable neighbor finding. Furthermore, in sparse networks, the three hop availability of nodes is challenging, and there is no mechanism of avoiding a void-hole when it exists even within the three hops.
The authors in [8] devised two protocols to avoid void-hole and achieve reliability in data transfer. Reliability was addressed by opting for low interference paths. The void-hole was avoided by using potential forwarding candidates with complete path connectivity, i.e., from source to sink. However, the computation of the criterion for the potential forwarding candidates was computationally inefficient, as it involved constant beacon messages from the sink node to compute the hop-count and distance from the sink, which also inserted extra delay. In addition, for sparse conditions, the connectivity from the source to sink becomes challenging.
The authors in [9] designed two routing schemes. The first scheme modified the virtual pipe, in which nodes transferred information towards the sea surface, in such a manner that every node could make its own pipe for packets' transfer rather than one main pipe for void avoidance. This modifies the usual approach of defining a main pipe for data transfer, which is not always feasible; especially if more nodes lie outside the pipe. The second scheme added cooperative routing to the first scheme to ensure reliability in packets' transfer. However, construction of a pipe in an adaptive manner makes use of geographical coordinates of the involved nodes, which is challenging in the sea environment as nodes are not stationary, but rather move due to tides and currents in the ocean.
The problem of reliable delivery and void avoidance was addressed in [14], in which four schemes were proposed. The first scheme adaptively adjusted the transmission range of nodes for void avoidance. The second scheme used clusters of nodes to avoid the long paths for data transmission. The third protocol used backward transmission to establish data paths at the minimal expense of energy. The fourth scheme combined backward transmission in combination with the selection of forwarder nodes with minimum neighbors so that collision could be avoided. However, in all the schemes, packets were routed over a single path, which compromised reliability. In addition, enhancing the transmission range of nodes in depth based routing (DBR) further leads to unbalanced energy consumption. This is because low depth nodes already have high data traffic in DBR, and nodes forward data in a greedy fashion, which enhances the redundant packets transmission and, therefore, contributes to more energy expenditure.
The authors in [15] proposed a stateless protocol that advanced packets to the sea surface in an opportunistic manner, i.e., a group of certain nodes, chosen under certain criterion, participated in information forwarding. When a void-hole existed, it was identified, and all the paths that led to such a hole were discarded for packets' advancements. This strategy saved energy consumption and improved the number of advanced packets to the end destination. However, identification of the paths with void hole inserted extra delay. In addition, for sparse network conditions, multiple paths may not be available, which in effect, challenges the theme of this protocol. Moreover, due to single link routing, the harshness of the sea channel may affect the reliable delivery of packets.
An opportunistic routing that incorporated void avoidance was proposed in [16], in which a group of specific nodes participated in data advancement. At each node, all the routable paths were identified so that no void was left in the network. The reliability was addressed by the cooperation of relay nodes with source and destination nodes. However, the construction of routing graphs at every node constantly needed beacon signals, which added delay in packets' transfer to the sea surface.
Geographic information of nodes was utilized to construct two routing mechanisms in [17]. The first utilized finding backward paths from a void-hole to transfer information to the sea surface. The second made use of forwarder nodes with the minimum count of neighbors so that collision did not occur in information transfer. However, the requirement of the geographic information of nodes increased the computational complexity of both schemes.
In [11], the authors devised a variable transmission range of every node in a situation when a node is neighborless. In this case, it increases its transmission range, up to a limit, so that neighbors could be found. Moreover, the uniqueness of the time for which packets are held by nodes avoids transmission of multiple packets at the same instant of time so as to reduce interference. Furthermore, the condition of the geographical localization of nodes was relaxed, which made the network flexible in terms of scalability. However, reliability was compromised because information was advanced by every node over a single link.
The proposed algorithms are unique in that the construction of the routing trajectories, cooperative routing, backward transmission mechanism, and two hop neighbors selection for void-hole avoidance did not involve the physical distance from the sea surface or the geographical coordinates of the nodes. This is because calculation of the hop length and mutual distances of nodes based on geographical coordinates or distance from the sea surface complicates the process of route determination as tides and current in the sea change nodes' positions. Moreover, the uniqueness of the time for which packets are held by nodes ensures that information packets intelligently reach the end target. That is, low power nodes hold the packets for a short time to avoid losing packets. Furthermore, nodes with no or a low count of neighbors wait for a predetermined interval of time to find suitable neighbors to forward packets.

Working Mechanism of ESRVR
The operation mechanism of ESRVR is comprised of the steps described below.

Network's Establishment
This involves underwater deployment of nodes in three-dimensional space. All three sides of the network have the same length, which make a cube network. Nodes span the entire network and are placed with irregular positions. Therefore, the nodes' density is not uniform throughout the network. A single sink node is hoisted at the network's top, as shown in Figure 1. Nodes communicate their data to the sink node, which further communicates them to the data center on the shore. Nodes have embedded batteries, which provide electrical energy for their operation. Every node has a single unique ID to differentiate it from the rest of the nodes. Every node has an embedded pressure sensor, which is used to measure the water pressure level. This measurement determines the water depth in which a node is deployed.

Neighbors' Recognition
In this second phase, a single node broadcasts a hello packet (HP), which comprises of the time stamp, depth, and ID of the node, as shown in Figure 2. The time stamp indicates the transmission time of the HP by the node broadcasting it. It also contains the maximum time after which the packet would be expired. This time stamp is computed by calculating the distance by which a farthest node is located away from the node that broadcasts the HP plus the delay due to the transmission and processing of the packets by the nodes. This delay is fixed for every node as a manufacturing characteristic, keeping in view the information stream with a certain number of data packets. Since the nodes are usually manufactured under the same conditions, nodes have almost identical delay in packets' processing and transmissions. To avoid computational complexity and unnecessary delay in routing, the acoustic speed is kept constant at 1500 m/s in the computation of the time stamp. The farthest node's distance makes it possible for the HP to reach all the neighbors of the broadcasting node.

Time stamp Boradcaster's ID
Boradcaster's depth At the completion of the exchange of hello packets among nodes, every node recognize its neighbors along with their corresponding depth values and IDs. Then, every node makes a routing table that contains the time stamp, depth values and IDs of its neighbors and broadcasts it. The time stamp again indicates the broadcasting time and determines the duration after which the routing table would expire. The time stamp for the routing table is made in such a manner that the table had enough time to reach the two hop neighbors of the node that broadcasts it. Every node goes through this process. As a result, nodes come to know about the depth values and IDs of their own, as well as of two hop neighbors.
The process of broadcasting of the routing table is shown in Figure 3, in which Nodes 1 and 5 are the broadcaster nodes. Node 1 has three neighbors: Nodes 2, 3, and 4. Node 5, on the other hand, has two neighbors: Nodes 6 and 7. Node 1 and Node 5 both obtain the depth and IDs information of their neighbors by exchanging hello packets with their corresponding neighbors. Then, both Node 1 and Node 5 create their routing tables, which contain the depth and IDs of their neighbors.  Figure 3. Nodes 1 and 6 create their routing tables and broadcast. Node 1's routing table is sent to its two hop neighbor, Node 7, via its neighbor Node 4. Node 6's routing table is sent to its two hop neighbor, Node 4, via its neighbor Node 7.
These routing tables are then broadcast. When the routing table broadcast by Node 1 is received by its neighbors, every neighbor stores the information in the routing table in its memory. Then, every neighbor further forwards the original routing table of Node 1 to its neighbors. For instance, Node 4, being a neighbor of Node 1, receives the routing table of Node 1. Then, Node 4 forwards the routing table of Node 1 to Node 6 (neighbor of Node 4). In this way, the routing table of Node 1 is sent to Node 6, a two hop neighbor of Node 1. In a similar fashion, the routing table of Node 5 is sent to Node 4, a two hop neighbor of Node 5, via Node 6. Every node undergoes this process. In essence, nodes are aware of the depth and IDs of the neighbors up to two hops. This information is later used in deciding the best nodes for routing the packets.

Data Transmission and Void-Hole Detection and Mitigation
This section describes in detail the process of data transmission and the strategy by which a void-hole is avoided.

Data Transmission
The ID of the sink node is known to every node. Therefore, information from a node to the in-range sink node is automatically transferred in the form of data packets. However, a source node having data packets ready for transmission and far away from surface sink first checks its list of neighbors to choose a suitable neighbor. The suitable neighbor is the one that must satisfy two conditions. Firstly, it bears the minimum water pressure, ensuring that it is nearest to the water surface. Secondly, it had at least one neighbor further in the second hop with a lower depth (closer to the water surface) so that it could forward the data further (this second hop neighbor was in addition to the original source node from which the suitable neighbor would get packets). In this way, the chain of data forwarding continues, and the packets reach the sink, and hence the water surface. If multiple forwarder nodes qualify for information forwarding, the freedom of choice exists in such a circumstance, and any node could be selected. However, if a suitable neighbor has no neighbor node at all further in the second hop for continuing data routing or when the original source was neighborless, such a condition indicates the presence of a void-hole. This is because the absence of a neighbor means that if a neighborless node is selected, the data routing process will halt. As a result, packets will not be destined to the water surface. The void-hole condition is avoided with the strategy explained in the next section.

Void-Hole Presence and Detection
A void-hole is the absence of a node in the direction of sea surface to advance information. The presence of a void-hole is sketched in Figure 4, in which two sensor nodes, X and Y, are shown. Every node transmission range is shown by the circle, in the center of which that node is present. That is, the circle with a solid circumference shown by the solid line is the transmission range of Node X, while the dashed circumference represents the transmission range of the circle Y. Node Y is the neighbor of Node X. Therefore, the latter forwards information to the former. However, Node Y does not possess any neighbor node further towards the water surface for data forwarding. Therefore, the information that X sends to Y cannot be forwarded towards the water surface beyond Y. This means a void-hole is present beyond Y. Figure 5 again sketches the scenario when a void-hole is present. A node's transmission range is represented by the bigger circle around it with the node being in the center of the circle. Node C is the source node that has packets ready to transfer. Node C has three neighbors: B, D, and E. However, Node C knows that Node B bears lower water pressure than Nodes D and E. Furthermore, Node C knows that Node B has further a second hop neighbor in the form of Node A. Nodes D and E are not the more suitable neighbors for Node C than Node B because the water pressure on these nodes is higher than Node C, which makes B closer to the water surface (lower depth). Therefore, Node B becomes the suitable neighbor for Node C. As a result, Node C forwards data to Node B, as shown by the tick mark. However, Node B knows that Node A has no neighbor in the second hop that has lower water pressure (depth) than Node A. That is, a void-hole exists beyond Node A. Therefore, Node B avoids forwarding data to Node A, as shown by the cross sign. X Y Figure 4. The presence of a void-hole. Node X advances data to Y. However, Y cannot advance data towards the water surface as it has no neighbor in that direction. It shows that a void-hole exists beyond Y.  Figure 5. Node C finds Node B a more suitable neighbor for data routing than D and E due to lower water pressure on B and a second hop Node A as the neighbor of B. Tick signs confirm data forwarding from C to B. For B, A is not a suitable neighbor for routing due to it not having any neighbor with lower water pressure (depth) than A, which confirms a void-hole beyond A. The cross sign indicates avoidance of data routing from B to A.
To avoid complexity in Figure 5, the transmission range of Nodes D and E is not shown. Moreover, neighbors' information is obtained by nodes in the neighbors' recognition phase discussed above.

Void-Hole Mitigation
The backward transmission is used to mitigate the effect of a void-hole. In this scenario, when a source node knows that it has no two hop neighbors that are at a lower depth than the source node itself, it confirms the presence of a void-hole, and packets are not routed towards the water surface. In other words, the source node does not find any connectivity towards the water surface with two hop neighbors that are closer to the water surface than the source node. This prevents the transfer of packets from the source node to the sea surface. In such a scenario, the source node looks for other neighbor nodes; that are at the same or a higher depth than the source node but have neighbors up to two hops, so that data could be routed to such neighbors, which is called backward transmission. This process is carried out until packets reach the sea surface or are discarded when routing paths are not established within some specified time, as described in the lines to follow.
The process of backward transmission is explained in Figure 6. The circle having a particular node at its center represents the transmission range of that node. Node F is the source node, while Nodes E, G, H, I, J, and K are the relay nodes. Node F has Node E as a single one hop neighbor, which has a lower depth than Node F, i.e., Node E is closer to the sea surface than Node F. However, Node F knows that Node E has no neighbor that has a lower depth than Node E. In other words, Node F knows that Node E is just its one hop neighbor, and there is no two hop neighbor of Node F that has a lower depth (closer to the water surface) than Node F. That means a void hole exists for Node F beyond Node E. Therefore, Node F cannot establish a two hop connection with the water surface via Node E. That is, Node F cannot route packets in the upward direction due to the absence of a two hop connection in that direction. As a result, Node F does not forward data to Node E. However, Node F has another neighbor, Node G, which has a higher depth than Node F, but has two hop neighbors (Nodes H and I). Therefore, F forwards packets to G, although G is at a higher depth than F. This process of backward transmission continues unless packets are transferred to Node K and from there to the water surface. The knowledge of two hop neighbors is obtained by every node in the neighbors' recognition phase discussed above. In addition, for the sake of simplicity of description, only sensor nodes from E to K are shown, and their other neighbors are not shown. This process continues unless packets reach the sea surface or drop when the channel is not free after a predefined and specified interval of time.  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.

Holding Time
In the scenario when a source node is completely neighborless and has data packets or when a sensor node just receives packets from other nodes, the packets are held for a unique time known as holding time, which is computed as: where D, P c P i , and N b represent the depth in meters, current to initial power ratio of the battery, and number of packets in the buffer of the node that holds the packet, respectively. The acoustic speed in water is v in meters per second. The above relation shows that nodes with a low depth hold the packets for a short time, which avoids congestion of packets with such nodes because these nodes are close to the water surface (low depth) and, therefore, enhances reliable information advancement to the sea surface. Similarly, a node for which the ratio P c P i is smaller has low power left in the battery. Therefore, such a node holds the packet for a short time interval so that it may further transfer the packet before it completely drains its battery. The ratio P c P i is initially unity when the current power and the initial power both are the same and nodes have not yet started operation. As time passes and nodes start their operation, the current power left in the battery decreases from the original initial amount in the battery, and therefore, the ratio P c P i decreases and becomes zero when no power is left in the battery of the nodes.

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. 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]: 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]: 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 = √ P r Ah rd y sr + n rd (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]: where σ 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] : 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]: where the SNR is the signal-to-noise ratio given by [19]: 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. The destination accepts the packets only when the BER is below a certain threshold. Reception of packets by a relay from source is followed by the forwarding of the packets to the destination by the former. The decision of which nodes to select as relay and destination is carried out by the source by measuring their physical distance from itself using a control packet. The expiry time of the control packet is designed in such a manner that even the farthest nodes could communicate with the source node within the transmission range of the latter.

Channel Model
The characteristics of underwater channel are harsh and challenge the routing of information. The characteristics of this channel are described below.

Ambient Noise
The PSD N of underwater ambient noise in dB is computed as [5]: where the first, second, third, and fourth terms specify the power spectral densities (PSDs) of the noise due to shipping, wind, turbulence, and temperature (thermal), respectively. These PSDs are empirically computed as: where the acoustic frequency f is measured in kHz, w is the speed in m/s with which wind blows at sea surface, and s measures shipping in water and its value is bounded in the interval [0,1].

Channel Loss
An acoustic frequency f in kHz separated by a distance d in km from source experiences the attenuation A(d, f ) in water, which is computed in dB re µ Pa as [5]: where the first term represents the spreading loss, while the absorption loss is represented by the second term. The shape of spreading loss is determined by the spreading factor k, i.e., k = 1 for cylindrical spreading and k = 2 for spherical spreading. The absorption co-efficient α( f ) in dB/km is empirically computed by the relationship [5]:

Sound Speed
Due to the high absorption of radio waves in water, WUSNs involve the use of acoustic waves. The magnitude of velocity v of an acoustic wave in m/s in sea water is empirically computed as [5]: where D, S, and T are the depth in meters, sea saline content measured in ppt (parts per thousand), and water temperature in 0 • C, respectively. The above equation cab be used in the propagation delay calculation during simulation.

Simulation Setting
The simulation setting was accomplished using MATLAB. The obtained data were averaged over 50 runs, as the behavior patterns of all the schemes ceased to fluctuate approximately after 50 runs. Both proposed schemes were compared with the RIAR scheme designed in [8], as it also addresses the problem of the void-hole by considering the path from the source to the sink. However, unlike the RIAR scheme, the proposed schemes did not consider the number of hop and distance calculation while constructing routing paths. Moreover, sending data over multiple links towards the destination with the uniqueness of the time for which packets are held by a node differentiates the proposed algorithms from the RIAR framework. The parameters involved in the simulations are described in Table 1. The network and communications parameters considered for simulations were almost the same as considered in [4]. The considered network model is a cube the length of a single side of its face is 500 m. Within the network, the deployment of 50 nodes is made in a random manner. This number of nodes is significantly smaller than the usual approach of deploying 225 nodes, so as to ensure that sparse network conditions prevailed. Nodes mutually communicated using acoustic waves to avoid the high attenuation of these waves in water. The sink communicated with sensor nodes using acoustic links and with the data center on the shore using radio links. The amount of power consumed by a single node in data advancement, reception, and idle modes was 2 W, 0.8 W and 10 mW, respectively. A single data packet's size was 50 bytes, while a hello packet's size was 5 bytes. A node could transfer data with a maximum rate of 10 kilobytes per second and possessed a transmission radius of 200 m equally in all directions. For fair evaluation of the performance metrics, the random walk mobility model considered in the RIAR algorithm was also taken into account in the proposed algorithms. In this model, every node randomly chose a direction and moved in that direction with a variable speed of 1 m/s to 5 m/s. Figure 7 depicts the comparative plot of total energy consumed by each scheme. The backward transmission mechanism to avoid the presence of a hole in ESRVR and Co-ESRVR made them more energy consuming than RIAR. That is, when a void hole existed, these protocols searched for other neighbor nodes to provide connected paths for packets' transfer rather than dropping them. This, in turn, involved more nodes to transfer packets to the water surface. The involvement of more nodes to avoid the loss of information caused energy consumption. As a result, these protocols cost more energy than RIAR, which lacked the backward transmission mechanism. Moreover, initially up to several rounds, all the schemes consumed almost the same amount of energy. This was due to the reason that more nodes were available for data forwarding, and the optimal paths were chosen in all the protocols to transfer information packets. After that, nodes started to die, and the protocols operated according to their designed strategies, which affected the number of involved nodes in information forwarding. As a result, the difference in energy consumption became significant. At the end of the lifetime of the network, all the nodes in all the schemes fully utilized their energy so the total energy consumed by all the schemes remained the same, which was 3500 J. Co-ESRVR utilized more energy than ESRVR due to the use of the cooperation of the relay-destination pair with the source node. Such a pair provided multiple copies of the same data to the destination in unfavorable conditions. This pair used extra energy and was not present in ESRVR. Consequently, the energy cost of Co-ESRVR was higher than ESRVR. Figure 8 depicts that the rate with which nodes became dead in a particular scheme correspondingly followed the pattern with which that scheme consumed energy. In other words, the way energy was consumed by the protocols decided the rate at which nodes died. Therefore, nodes died in all three schemes in correspondence with their energy consumption behavior. Thus, Co-ESRVR, ESRVR, and RIAR had dead nodes patterns owing to their correspondingly higher to lower energy consumption behavior. Initially, for the first 50 rounds, nodes died slowly in all the protocols, as most nodes had enough battery power. After that, advancing of data packets consumed more battery power of the nodes. Consequently, nodes started to die at high rate in subsequent rounds. At the end of the lifetime of the network for a particular scheme, all the nodes died, which characterized the total exhaustion of the available energy with all the nodes.  Figure 9 exhibits the comparative delivery ratio (DR) behavior of the schemes. It equaled the packets that reached the sea surface divided by the total packets generated. The involvement of the backward transmission mechanism and the unique packet holding time in ESRVR and Co-ESRVR added to reducing packets' loss and enhancing the delivery of packets to the water surface. Such mechanisms were not present in RIAR. As a result, these protocols had better DR than RIAR. The use of the relay-destination pair with the source node for cooperative routing in Co-ESRVR helped the source node to transfer data to the water surface reliably, especially in unfavorable conditions. This further added to packets' transfer to the sea surface, which made the DR of Co-ESRVR higher than that of ESRVR. The DR of every node was initially higher as more nodes were present in the network for packets' transfer. As time passed, nodes died in the network, which interrupted packets' transfer. As a result, the DR of every scheme exhibited a correspondingly decreasing behavior. The DR of Co-ESRVR was the highest initially because it involved cooperative routing, and all the nodes were available for data routing. The chances of packets loss were minimized with cooperative routing, as packets were sent to the destination directly and via a relayed path. However, as the rounds proceeded, nodes started dying and less nodes were available for involvement in cooperative routing. As a result, the DR of Co-ESRVR dropped, especially in the first 200 rounds.
The behavior of total end-to-end delay is exhibited in Figure 10. The RIAR algorithm bore the longest delay due to a number of reasons. Firstly, the surface sink constantly transmitted messages to the sensor nodes in the network so that they could compute the number of hops and the distance from the sink. This consumed a significant amount of time. Secondly, end-to-end paths had to be computed from a source node to the sea surface, which also took time. These two factors were not present in ESRVR and Co-ESRVR. Consequently, these protocols had shorter delay than the RIAR algorithm. The inclusion of relay nodes to source-destination pairs in ESRVR, to make Co-ESRVR, increased the number of paths over which packets were advanced to the destination. As a result, the delay of Co-ESRVR became longer than that of ESRVR. Initially, up to several rounds, the delay of all the schemes was almost the same. This was due to the reason that at the start of the network's operation, more nodes were available, so all the schemes operated in the optimal way. As the network operated, nodes died, and new routing paths had to be established. Such routing paths were not optimal, and the designed strategies of the algorithms worked to route information. Therefore, every algorithm operated with its own design, which differentiated the chosen paths of routing. Consequently, the behavior with respect to delay of these schemes became remarkable.

Conclusions and Future Work
Two routing algorithms, namely energy-aware scalable reliable and void-hole mitigation routing (ESRVR) and cooperative energy-aware scalable reliable and void-hole mitigation routing (Co-ESRVR), were proposed for sparsely deployed wireless underwater sensor networks. The simulation backed results revealed that the strategies of selecting two hop neighbors, the backward transmission mechanism, holding time, and forwarding data in a cooperative fashion in the proposed algorithms enhanced the delivery of information packets to the end destination and reduced delay at the cost of high energy consumption. The chosen counterpart algorithm lacked these performance parameters. In the future, an intelligent mechanism will be used to shorten the path of the backward transmission mechanism so that the corresponding expense of energy and delay is optimized. In addition, the concept of autonomous underwater vehicles can be used to collect information from nodes that are completely isolated in sparse conditions.