# Void Avoiding Opportunistic Routing Protocols for Underwater Wireless Sensor Networks: A Survey
## 3 Review on Opportunistic Routing Void Avoidance Protocols for UWSNs
Concave void handling or recovery mode: The void becomes concave when a packet gets trapped in a node without any neighbors with lower pressure levels, which means that its NT entry is empty. In order to reroute the packet along a different path to the destination, VHGOR manages the concave void by rerouting it down the recovery path, which runs from downward to upward. The previous sender chooses the subsequent NCD node from its NT to continue sending the same packet after receiving the packet from the concave empty node. Figure 9 demonstrates the forwarding packet route and recovery mode that VHGOR has adopted. Node n\({}_{1}\) chooses node n\({}_{2}\) to be the next forwarding node, since node n\({}_{2}\) has the highest Expected Packet Progress (EPP) value in its neighbor table (direction number 1 in the figure). In the same manner, node n\({}_{2}\) chooses node n\({}_{3}\) as the next forwarding node and transmits the packet to it (direction number 2 in the figure). However, since node n\({}_{3}\) is a void node and has no nodes to forward to, node n\({}_{3}\) returns the message back to node n\({}_{2}\) (direction number 3 in the figure). The next node in Node n\({}_{2}\)'s neighbor table is subsequently chosen as the next forwarder (direction number 4 in the figure). Since D is inside the transmission range of node n\({}_{10}\), node n\({}_{10}\) finally delivers the packet to D. In order to create the best forwarder from FCS, VHGOR takes into account residual energy, which helps cut down on energy consumption. VHGOR considers the residual energy in forming the optimal forwarder from the forwarding candidate set (FCS), which assists in reducing the energy consumption. Besides, employing opportunistic forwarding works in improving the delivery ratio at the same time introduces end-to-end delay to some extent [48]. **WDFAD-DBR**  
In [49], another pressure-based routing protocol was described in detail, namely the weighting depth and forwarding area division DBR routing protocol (WDFAD-DBR). To increase the reliability of the packet transmission and decrease the probability of the occurrence of a void area, WDFAD-DBR uses the weighting depth difference of two-hop nodes to construct its routing decision. As presented in Figure 10, node \(S\) is a source node, and the two forwarding candidate nodes with lesser depth are A and B. In the greedy protocol DBR, node A has a lesser depth than node B, giving A the priority to transmit first. Node B will suppress its transmission and drop the packet when it hears it from node A. However, a void area occurs since there are no nodes in node A's transmission area (S2) with less depth than node A to carry forward the packet. In contrast, WDFAD-DBR selects node B to forward the packet because it considers both depth differences, current depth difference (node B depth--source depth), and the difference depth of the expected next hop (node E depth--node B depth). In WDFAD-DBR, the void nodes can remove themselves from the data packet routing to increase the opportunity for the other candidates in the forwarding set to forward the packet. In addition, to control the number of forwarding nodes, WDFAD-DBR divides the forwarding area into a constant primary forwarding area (the Reuleaux triangle) and two auxiliary forwarding areas, which might be extended or shrunk depending on node density and the quality of the channel. In terms of energy consumption, on one one hand, to help reduce the energy expenditure due to the duplicated packet transmission, the auxiliary forwarding area is divided into a number of smaller sub-areas, which helps save some energy. On the other hand, the periodic neighbor requests and the corresponding ACKs in a reply to each control packet exhaust the energy of the nodes and waste network resources. In order to bypass the void area, WDFAD-DBR successfully detects the void nodes and excludes them from the forwarding procedure. However, the protocol fails to detect the trapped nodes in advance.