# Void Avoiding Opportunistic Routing Protocols for Underwater Wireless Sensor Networks: A Survey
## 3 Review on Opportunistic Routing Void Avoidance Protocols for UWSNs
The node then makes its own routing decision by removing void nodes (dead ends or local maxima) from its forwarding sets and chooses the overall best route to the destination as shown in Figure 6; this will help avoid the packet from falling into a void area in the network. In fact, implementing the VAPR protocol will prevent data packets from being stuck in a node because the protocol relies on the surface station and the beaconing message sent from it to the sensor nodes below as well as the stored information in the nodes. **GEDAR**  
In [45], the proposed protocol, geographic and opportunistic routing with depth adjustment-based topology control for communication recovery (GEDAR), utilizes the greedy forwarding technique by knowing the position information of each current forwarding node, its neighbors, and the known sink. GEDAR follows the sender-side OR category, where the forwarding set candidates are determined in each hop by the sender node. Initially, GEDAR uses a greedy, opportunistic forwarding mode to route the packets. Once a node has gathered some data and needs to transmit these data to a sink(s) node, it includes IDs of its forwarding set candidates in the data packet header and broadcasts the  
Figure 6: VAPR voids and trapped areas. packet to its neighbors. When a neighbor node receives the transmitted packet, it checks whether its ID is in the packet header or not. If it is not a forward candidate node, it just drops the packet. Otherwise, it calculates the holding time to decide when it can transmit the packet. This procedure will continue until the packet reaches the sink(s) on the water's surface. If the packet is trapped in a void node, the recovery mode is applied by GEDAR. In the recovery mode, when the packet gets stuck in a void node (node v in Figure 7), the protocol deals with the problem by taking advantage of a network topology control strategy where any node in a void area can move in a vertical direction (from \(D_{1}\) to \(D_{2}\)) to adjust its depth. Then it bypasses the void area to be able to communicate with other nodes trying to resume the greedy forwarding. Therefore, the void node first discontinues sending the gathered packets and starts calculating a new depth that will allow it to continue its OR greedy forwarding to deliver the data packet to the next hop. The recovery technique used by GEDAR helps by bypassing the void area, which as a result, improves the networks connectivity and increases the packet delivery ratio. On the other hand, in energy consumption terms, this Depth Adjustment technique implemented by GEDAR exhausts a very high amount of energy in physical movement to adjust the network topology, and this will make nodes exhaust their energy rapidly and reduce the network lifetime. **IVAR**  
An Inherently Void Avoidance Routing Protocol for Underwater Sensor Networks (IVAR) [46] is a receiver-based forwarding protocol, so the forwarding node does not  
Figure 7: Depth Adjustment. need to store its neighbor's information. In IVAR, a hop-by-hop forwarding set selection technique is used to forward the data packets from the sensed node to the sink. Each packet holder uses local information about hop distance and packet advancement to determine its own forwarding set, and the nodes in these forwarding sets are arranged and given a priority depending on two metrics: their hop count as a first metric and their depth as a second one, to forward the packets. IVAR uses beaconing messages sent from the destination to the source; this helps the sensor nodes get the reachable information of the sink(s) and relay nodes. Therefore, the void nodes (yellow and red nodes), as Figure 8 shows, will be excluded from the forwarding set of the sensor node, and the route with a lower hop count will be chosen. Choosing a route with a lower hop count manages the energy consumption and reduces the packet delivery time. Besides, using the node's depth assists in preventing packet duplication.