# Retransmission Avoidance for Reliable Data Delivery in Underwater WSNs
## 2 Related Work
### Depth Based Routing Using Single Path  
[PERSON] et al. proposed depth based routing (DBR) for UWSNs in [6]. DBR forwards the data packet greedily to the lowest depth node in transmission range using local information of one hop. Every sensor node updates its own depth in each data packet while forwarding. Therefore, the higher depth nodes discard it upon reception which helps to avoid redundant data packets. In order to reduce duplication, every node maintains queue which stores information of the forwarded data packets. The sensor nodes require more memory to maintain queues. DBR also uses data packet holding mechanism. Lowest depth node in the transmission range holds data packet for shortest time. DBR performs well in terms of packet delivery ratio (PDR) and delay in dense regions, however, sparse regions affect them because of void holes in the network. In [7], [PERSON] et al. proposed weighting depth and forwarding area division depth based routing (WDFAD-DBR) protocol for underwater acoustic sensor networks (UASNs). The authors use weighting sum of depth difference of current and next expected hop technique to improve reliability and reduces probability of void hole occurrence. WDFAD-DBR saves energy by dividing forwarding area to suppress redundant data packets and neighbor node prediction mechanism which reduces the chance of packet drop. Authors performed theoretical analysis on routing performance in case of channel contention. WDFAD-DBR increases reliability and achieves energy efficiency. However, sparse region affects PDR and processing time at each hop due to the selection of forward increases delay. The authors proposed a reliable and energy-efficient routing (R-ER\(P^{2}\)R) protocol for UWSNs in [8]. This protocol balances energy consumption and decreases delay by utilizing physical distance at the time of a data packet transmission. Every sensor node calculates expected transmission count for each of its neighbor to find the link quality for reliable transmission of the data packets. A lowest depth neighbor in the range with high residual energy and good link quality is selected as forwarder. R-ER\(P^{2}\)R forwards only one copy of a data packet to increase network lifetime. However, if a data packet reaches void region, sensor node drops it which results in retransmissions. In [9], [PERSON] et al. proposed void-aware pressure routing (VAPR) for UWSNs. VAPR works in enhanced beaconing and opportunistic directional data forwarding phases. All the sensor nodes forward data packets to the sink on the basis of pressure routing which uses depth information. The mobile sinks propagate their reachability information and the sensor nodes update their distance to sink from this control message. Afterwards, the sensor nodes beacon their information which helps the neighbors to update direction of forwarding and hop counts to sink. Hop count information in the beacon messages helps the sensor nodes to avoid void regions. VAPR performs better in dense regions. However, sparse regions affect its performance in terms of delay and PDR. Improving both energy and time efficiency of depth-based routing (D-DBR) for UWSNs is proposed by [PERSON] in [10]. This protocol uses time of arrival (ToA) ranging technique to measure distance between sensor nodes. Every sensor node makes decision of forwarding the received data packet based upon distance, depth and transmission range information. In order to direct data packets towards the sink, every sensor node calculates the angle between the sink and all the neighbors of the current forwarder which helps to select potential forwarder. D-DBR reduces delay and increases PDR of the network by directing packets into right direction at the cost of energy. [PERSON] et al. [11] proposed geographic multipath routing based on geospatial division in duty-cycled UWSNs. Two schemes named; geographic forwarding based on geospatial division (GFGD) and greedy GFGD (GGFGD) are proposed in this research work.