- Research
- Open Access

# A Hybrid ARQ scheme combining erasure codes and selective retransmissions for reliable data transfer in underwater acoustic sensor networks

- K. S. Geethu
^{1}Email author and - A. V. Babu
^{1}

**2017**:32

https://doi.org/10.1186/s13638-017-0823-5

© The Author(s) 2017

**Received:**30 September 2016**Accepted:**3 February 2017**Published:**15 February 2017

## Abstract

In this paper, we investigate a hybrid automatic repeat request (ARQ) scheme for reliable data transfer in multi-hop underwater acoustic sensor networks (UASNs). The proposed scheme combines Reed-Solomon-based packet level erasure coding and selective retransmissions to achieve high reliability and energy efficiency. We also describe how to select the code rate (i.e., number of encoded packets) for a given message block consisting of *m* packets. The paper evaluates the performance of the proposed scheme by taking into account the underwater-specific characteristics such as distance dependent bandwidth, acoustic spreading effects, propagation loss, and fading effects. Simulation results demonstrate that the proposed scheme can significantly improve the network throughput and energy efficiency while reducing the end to end delay considerably.

## Keywords

- Hybrid ARQ
- Packet level erasure coding
- Reliable data transfer
- Selective retransmissions
- Underwater acoustic sensor networks

## 1 Introduction

Underwater acoustic sensor networks (UASNs) consist of a number of different types of sensor nodes that are interconnected to one or more underwater sinks by means of wireless acoustic links. Underwater sink nodes are responsible for collecting data from the sensor nodes and forwarding it to the surface sinks, which are equipped with radio frequency (RF) links to the on-shore base stations. UASNs are poised to enable a wide range of underwater-specific applications such as oceanographic data collection, pollution monitoring, disaster prevention, assisted navigation, marine surveillance, etc. [1]. However, research community faces several challenges in the design and development of UASNs. Some of the inherent issues are very high propagation delay as compared to RF transmission, high packet error rate and low available bandwidth that depends on propagation distance. Data transmission reliability is an essential requirement for some of the mission critical applications supported by UASN involving mobile submarines that cooperate to track moving objects. Further, energy efficiency is also a major concern in the design of UASNs, since underwater acoustic sensor nodes are typically powered by batteries, which are difficult to replace or recharge in aquatic environments. Thus, energy efficiency and reliability form two critical design constraints for UASNs [1–5].

Generally, forward error correction (FEC) and packet retransmission-based techniques are used to improve the data transfer reliability in terrestrial wireless sensor networks [6]. FEC techniques employ addition of redundant data to improve the data reliability. Bit level FEC improves the reliability at the physical layer by introducing redundancy at the bit level, and thus deals with the bit errors introduced by the channel. However, it is often not practical to select an FEC scheme that can correct all possible errors. Hence, efficient schemes must be implemented at the higher layers of the protocol stack to deal with uncorrectable errors at the physical layer that quite often leads to packet erasures and losses. Packet level redundancy based schemes such as erasure codes deal with packet erasures and losses by introducing inter packet redundancy [7, 8]. In the case of erasure codes, *m* packets from the source node are encoded to generate *m*+*k* encoded packets in such a way that any subset of *m* encoded packets are just sufficient to recover the original data at the receiver [9]. However, pure FEC based schemes can result in significant number of redundant packet transmissions, thereby affecting the energy efficiency [10]. Automatic repeat request (ARQ) and its deviants rely on retransmissions of corrupted or lost packets upon time outs or after receiving explicit requests from the receiver. Since underwater acoustic channels are characterized by high propagation delay and error rate, ARQ schemes suffer higher end-to-end delay and retransmission-based overheads [4].

Hybrid ARQ schemes, which combine FEC with hop-by-hop retransmission upon failure, are promising candidates for ensuring reliability in UASNs. In this paper, we propose and investigate erasure codes based hybrid ARQ scheme for reliable data transfer in UASNs [4]. The proposed scheme combines Reed-Solomon (RS) erasure codes based FEC with hop-by-hop selective retransmission scheme. Erasure codes form a class of packet level redundancy based FEC scheme that can be used to deal with packet erasures and losses in the network. In this case, *m* packets from a source are encoded to generate *m*+*k* encoded packets in such a way that any subset of *m* encoded packets are just enough to reconstruct the original data, thus allowing the receiver to recover from *k* packet losses in a group of (*m*+*k*) encoded packets [9]. If more than *k* packets are lost, the proposed scheme makes use of a hop-by-hop selective retransmission scheme for ensuring reliability. With the help of NACK packets, the receiver of each hop notifies the corresponding sender, the number of data packets missing at the receiver and therefore the sender can decide how many packets need to be retransmitted for successful decoding. We use systematic RS codes as erasure codes with simplified encoding and decoding procedures. The rest of this paper is organized as follows. In Section 2, we provide the literature survey. Section 3 gives an introduction on RS based erasure codes. Section 4 describes the proposed protocol. Section 5 describes the analytical models for evaluating the performance of the proposed scheme. The simulation results are described in Section 6. Finally, the paper is concluded in Section 7.

## 2 Related work

Recently, extensive research has been reported on the design of protocols for reliable and energy-efficient data transfer in UASNs. As mentioned before, traditional ARQ based schemes are not suitable for UASNs, since sender relies on acknowledgments to decide whether to retransmit the packet or not, leading to an increase in end-to-end delay [4]. Even though the improved versions of ARQ proposed in [11–14] and stop-and-wait protocols proposed in [15] provide comparatively shorter data delivery delay and lower power consumption, sender still waits for acknowledgments or till time out period before making a retransmission attempt. Several protocols have been proposed in the literature that relies on pure FEC based schemes for improving the reliability of UASNs [16–19]. Even though, pure FEC-based schemes can reduce the end-to-end delay, such schemes compromise on effective data rate for achieving reliability.

To reduce the delay and to improve the reliability, hybrid ARQ schemes that exploit the advantages of both FEC and ARQ have been widely explored for UASNs [20–26]. In [20], the authors employ fountain code to enhance the reliability and efficiency of broadcasting in UASNs, while in [21], the authors use fountain codes for reliable data transport and storage. In [22], the authors propose fountain code-based adaptive multi-hop reliable data transfer (FOCAR), a hybrid ARQ scheme which integrates Fountain codes with hop-by-hop retransmission upon failure, for reliable data transfer in UASN. In [23], the authors propose a practical coding multi-hop reliable data transfer (PCMRDT) protocol for UASN that combines random linear coding and hop by hop selective repeat retransmission scheme to achieve high reliability. In [24], the authors provide experimental results for a hybrid ARQ scheme known as UW-HARQ, which combines random binary linear coding based FEC and ARQ. In [25], the authors propose segmented data-reliable transport (SDRT) protocol to achieve reliable data transfer in UASNs by employing Tornado code as the FEC scheme. In SDRT, after the transmission of an encoded block of data packets, the sender wait for an ACK and if it does not obtain an ACK from the receiver, it will send one more encoded packet to the receiver after the time out period. This procedure is continued until an ACK is received. However, in SDRT, during the retransmission phase, sender does not have the information about how many more packets are required for successful decoding at the destination node. Further, tornado code requires transmission of more redundant blocks for satisfying a specified reliability criterion, leading to higher end-to-end delay. In [26], the authors model the underwater channel as a Finite State Markov Chain (FSMC) and evaluate the performance of hybrid incremental redundancy ARQ protocols for a two node scenario. In [27], the authors consider reliable data collection in single hop UASN while the focus on our paper is on reliable data transfer in multihop UASN. In [28], the authors design a cooperative scheme for UASN combining Orthogonal Frequency Division Multiplexing (OFDM) with dynamic coded cooperation (DCC). Two OFDM-DCC examples are presented, one based on non-binary low density parity check (LDPC) codes applied across OFDM blocks, and other using inter block erasure correction codes. However, the work in [28], employs erasure codes with fixed rate while we employ rate adaptive erasure coding in which the number of encoded packets required over each hop depends on the perceived packet error rate (PER) over the hop. Further, the study in [28] is for a two-hop network while we consider a multihop network.

Erasure codes have been extensively applied as pure FEC codes for improving the data transmission reliability in terrestrial wireless sensor networks [7, 8, 29, 30]. From our detailed literature survey, it has been concluded that no prior work has appeared on combining RS erasure code based FEC with selective ARQ in a multihop UASN. The aim of this paper is to design a hybrid ARQ scheme that employs hop by hop erasure coding technique to achieve reliability over each hop in a UASN. In this case, each sender node along the multi-hop path adaptively computes the number of redundant packets required to meet a given successful decoding probability criterion over its immediate neighbor hop based on the perceived packet error rate (PER) over the hop. The FEC scheme is integrated with hop by hop ARQ in which the sender-receiver pair of each hop exchange ACK and NACK packets. While the ACK packet indicates successful block transmission, the NACK packet from the receiver indicates decoding failure and can be used by the sender to find the number of additional packets required for successful decoding. The NACK packets can also be used to extract the current PER information of the corresponding hop. In this way, the source node can make correct decision on the number of packets to be sent out during the retransmission phase to guarantee that the next hop node is able to recover the message block.

## 3 Reed-Solomon packet level erasure codes

Erasure codes can be categorized as optimal and near-optimal erasure codes [31]. RS codes [32] are classified as optimal erasure codes, in which any subset of *m* packets (from the transmitted set of *m*+*k* packets) are adequate to successfully decode the original data block of *m* packets at the receiver. With RS coding, the number of redundant packets (i.e., *k*) required to meet a given criterion on successful decoding probability at the receiver is directly related to the PER along the path from the transmitter to receiver. On the other hand, the near optimal erasure codes such as Tornado codes [33], introduce a slightly higher overhead such that *m*
^{′}=(1+*ε*)*m* packets are required to decode the data successfully at the receiver, where *ε*>0. Rateless erasure codes or fountain codes such as Luby Transform (LT) codes [34] and Raptor codes [35] can produce potentially very large number of encoded packets from a given set of message packets; however, they also require additional redundant packets for successful decoding. Accordingly, we do not consider near optimal and rateless erasure codes.

*m*+

*k*) equations with

*m*unknown variables. The decoding involves finding the

*m*unknown variables through solving any

*m*equations out of the (

*m*+

*k*) original equations. The generated code vector (C) after RS encoding can be represented as

*C*=

*VD*, where

*V*is the Vandermonde matrix and

*D*represents message data vector. An (

*m*+

*k*)×

*m*Vandermonde matrix is given in Eq. (1) with elements of the form \(v(i,j) = \phi _{i}^{j-1}\),

*ϕ*

_{ i }

*ε*

*GF*(

*q*

^{ r }).

*m*messages,

*d*

_{0},

*d*

_{1},…,

*d*

_{ m−1}, the code word polynomial

*C*(

*Φ*) can be written as,

*C*(

*Φ*) should be assessed at (

*m*+

*k*) different points :

*ϕ*

_{1},…,

*ϕ*

_{ m+k }; which is represented as

*c*

_{0},

*c*

_{1},…,

*c*

_{ m+k−1}in Eq. (3).

At the receiver, decoding involves finding the data vector *D* such that *VD*=*R*, where *R* represents the received code vector. If we can collect any of the *m* code words at the receiver, then the corresponding *m* rows of the Vandermonde matrix can be used to obtain the original data vector *D*. To reduce the encoding and decoding complexity, we make use of some of the modifications suggested in [36] as described below.

### 3.1 Extension field operations

Extension fields or *GF*(*q*
^{
r
}) are finite fields with *p*=*q*
^{
r
} elements, with *q* prime and *r*>1. By keeping *q*=2, the operations in extension fields can be made more simple by transforming the addition and subtraction into bit-by-bit modulo 2 operations.

### 3.2 RS code in systematic form

*m*code words is enough for successful data recovery. If all the received codewords directly correspond to the original message, the message can be recovered without any computation. Further, if most of the received code words contain original messages, the decoding matrix will become closer to an identity matrix, making decoding very fast.

### 3.3 Multiple independent code words in a single packet

As described in [36], we adopt certain modifications for the way in which encoded packets are created for transmission. Here, each encoded packet contains multiple independent code words instead of a single long code word. If one full data packet is designed to carry one long code word, each code word length has to be selected to be very large (so as to match the size of the packet). This will increase the implementation complexity as far as RS encoding and decoding procedures are considered, since long code word generation requires operations on larger fields that demands very large memory space and time. At the same time, we cannot use small message packets and small code words since this would lead to very small payload size within a packet. This may not suit the application requirements and may affect the network performance considerably. By putting multiple independent code words into a packet, we can fully utilize payload space of a packet without having problems associated with generation of larger code word lengths.

To elaborate further, imagine dividing one big data into B small pieces of data chunks as shown in Fig. 3. Then each data chunk is again divided into *m* messages, and encoded into *m*+*k* code words. As shown in Fig. 3, a given encoding unit consists of *m* messages getting encoded into *m*+*k* code words. This is done by multiplying the (*m*+*k*)×*m* systematic Vandermonde matrix with (*m*×1) message vector. The *m*+*k* code words thus generated correspond to multiplication of (*m*+*k*) rows of the Vandermonde matrix with the message vector and let these code words be assigned code word ID that corresponds to the *m*+*k* rows of the Vandermonde matrix. Since the RS encoding employs arithmetic in the extension field *GF*(2^{
r
}) as given by (4), we need *r* bits to represent the code word ID. Once the encoding process is over, we have total of *B*(*m*+*k*) code words to send. A packet is formed by packing the code words with same code word ID into a single packet, i.e., *i*th code words from each independent data chunk are packed together to form the *i*th encoded packet. The encoded packets should carry the code word ID and we need to reserve *r* bits in the packet header for this. From the code word IDs of the received packets, the corresponding rows of the Vandermonde matrix can be regenerated at the receiver and decoding can be performed.

### 3.4 Look up table construction

Look up tables are used in our work to avoid repeated multiplication and division operations. Addition is XOR of two numbers while for multiplication and division operations, exponent and log values are computed and stored as tables [36]. Here, encoding and decoding process do not involve complex operations.

## 4 Protocol description

In this section, we present the details of proposed erasure codes based hybrid ARQ scheme for UASNs. We consider a multihop path of UASN in which each sensor node is equipped with only one half duplex acoustic modem. We assume the network to be stable with very low mobility. When a sensor node has data to report, it transfers the data towards the sink node through multihop acoustic links.

### 4.1 Protocol overview

*m*. To achieve the required level of reliability over hop

*i*, node

*N*

_{ i−1}adaptively decides the number of redundant packets to be transmitted (i.e., code rate) to its immediate successor node

*N*

_{ i }based on the knowledge of PER along hop

*i*and the successful decoding probability criterion. When node

*N*

_{ i−1}receives packets from its predecessor node, it decodes and arranges the packets into blocks of size

*m*and apply RS based erasure coding to generate

*m*

_{ i }number of encoded packets; sends the coded packets to node

*N*

_{ i }and switches to receiving status. Recall that, when erasure coding is performed on a block of

*m*packets, any subset of

*m*encoded packets are just enough to reconstruct the original data at the receiver, i.e., if node

*N*

_{ i }gets any of the

*m*encoded packets, it can correctly decode the original

*m*data packets, after which it sends an ACK packet to node

*N*

_{ i−1}. Otherwise, node

*N*

_{ i }will send an NACK packet to node

*N*

_{ i−1}that contains information regarding the number of packets received correctly. The NACK packets are further utilized to inform the sender how many and which data packets (i.e., ID of the missing packets) are missing at the receiver. The sender node

*N*

_{ i−1}will then retransmit the required number of additional encoded packets with specified IDs to the receiver node

*N*

_{ i }. This procedure continues till node

*N*

_{ i−1}receives an ACK from

*N*

_{ i }. The number of retransmissions across each hop can be reduced by ensuring that transmission of each block of data packets can be successfully decoded with high probability. Let

*δ*be the unsuccessful decoding probability at node

*N*

_{ i }and let

*p*

_{ e,i }be the PER corresponding to hop

*i*. While choosing

*m*

_{ i }, we need to ensure the following:

*N*

_{0}and an intermediate node

*N*

_{ i }. First of all, the source node

*N*

_{0}groups

*m*data packets into one block and encodes them into

*m*

_{1}packets using systematic erasure coding. Here, we assume that the source node

*N*

_{0}has already acquired the initial PER information corresponding to its link to Node

*N*

_{1}(i.e., hop 1). To acquire the initial PER over hop 1, we assume that node

*N*

_{0}send HELLO packets while node

*N*

_{1}computes the bit error rate (BER) over hop 1 based on the received SNR information and by using an appropriate channel model for underwater acoustic link as reported in [37]. Node

*N*

_{1}transfers the BER value through a HELLO response packet and

*N*

_{0}computes the PER for a data packet of size

*Y*bits as

*PER*=1−(1−

*BER*)

^{ Y }. Even though this approach is valid for independent bit error case, it provides a means to get an approximate estimate of the initial PER so that encoding ratio can be fixed appropriately. The protocol assumes that all the nodes (except the sink node) collect the initial PER over the hops to their immediate successor nodes in a similar way. Upon receiving a packet in a block of transmitted data, node

*N*

_{1}performs cyclic redundancy check (CRC) and if the CRC fails, the packet is considered as erroneous. Therefore,

*N*

_{1}is capable of counting how many packets are received correctly in a given block of data packets. If node

*N*

_{1}fails to receive

*m*data packets correctly, it sends back NACK to the source node

*N*

_{0}by embedding information regarding the number of packets correctly received in the last transmission of the block of encoded packets. Upon receiving the NACK, the source node can calculate PER as the ratio between the number of packets correctly received to the total number of encoded packets sent out in the last transmission. The NACK packets are further utilized to inform the source how many and which data packets are missing at the destination (i.e., ID of the missing packets) and therefore the source node can make correct decision on which encoded packets are to be retransmitted so that the receiver node

*N*

_{1}is able to complete the decoding procedure. This procedure continues until an ACK packet is received at the source node

*N*

_{0}, indicating successful reception of all the

*m*data packets at node

*N*

_{1}. This procedure is implemented at every intermediate node along the multihop path so that the entire message gets delivered reliably at the sink node.

*i*, we use the following equation to update the PER [38]:

where \(\bar {p}_{e,i}(n)\) and \(\hat {p}_{e,i}(n)\), respectively, are the estimated and inferred PER (i.e., sample PER) in the *n*th measurement time. The coefficient *θ*
*ε*(0,1) is a constant that can be used to smoothen the PER estimate and through which we can control how quickly the influence of older transmissions decreases. It has been observed that a higher *θ* could be used for highly variable underwater acoustic channels, as it removes the effect of older transmissions faster. We have chosen *θ*=0.9 for the performance evaluation.

The above procedure provides a means to estimate the PER accurately and to calculate the number of redundant packets for the next transmission. If the PER varies highly dynamically, an estimation error may creep in. In this case, the receiver of the hop may fail to get sufficient number of packets to start the decoding process, triggering transmission of NACK packet from the receiver and selective retransmissions from the sender side. At the same time, the ACK/NACK packets may also be lost in the network. After the transmission of a block of encoded packets over a given hop, the sending node wait for a time duration equal to the round trip time (RTT) of that hop plus the transmission delay of ACK/NACK packets for receiving either an ACK or NACK. If the sender fails to get either an ACK or NACK from the receiving node within the time out, it will retransmit the entire block of data. It is assumed that the sending node of every hop knows the distance to its receiver by using some appropriate range based technique. Updating the PER information with the help of NACK packets can reduce the total number of retransmissions in the network and hence the proposed scheme is more adaptable to the dynamic characteristics of the underwater acoustic channel. Since any subset of *m* packets is just enough to reconstruct the original message, node *N*
_{
i−1} can retransmit a subset of the original packets which have not yet received at the destination. As mentioned in Section 3, since systematic codes are used, when we have more received code words containing original messages as such, the decoding complexity would be reduced considerably.

## 5 Analysis

*N*

_{0}) to the sink (

*N*

_{ L }), which consist of

*L*+1 nodes and

*L*hops as shown in Fig. 4. Consider hop

*i*, connecting nodes

*N*

_{ i−1}and

*N*

_{ i }. Given a message block consisting of

*m*packets, sender

*N*

_{ i−1}will transmit

*m*

_{ i }encoded packets to node

*N*

_{ i }and will enter the receive mode. Node

*N*

_{ i }will try to decode the data and will enter the send mode and transmit either ACK or NACK depending on whether the decoding is successful or not.

### 5.1 Delay analysis

*i*of the

*L*- hop path from source to destination. The total delay experienced over hop

*i*includes the encoding/decoding delays, transmission delay, propagation delay, and the modem transition delay. Assuming the number of transmission attempts till success to be geometrically distributed, the average number of transmissions required for the successful transmission of a message block is equal to \(\frac {1}{1-\delta }\), where

*δ*is the unsuccessful decoding probability over hop

*i*. So, total delay incurred for the transmission of one message block over hop

*i*is given by

*T*

_{ i }is the sum of propagation time and transition time of the acoustic modem between the sending and receiving status (considering the encoding and decoding delay to be negligible compared to the propagation delay and the modem transition delays). Further, \(\frac {Y}{\alpha B(l_{i})} m_{i}\) is the average transmission delay, where

*Y*represents the packet size,

*α*is the bandwidth efficiency of the modulation and

*B*(

*l*

_{ i }) is the bandwidth available for a link of distance

*l*

_{ i }. From [39], we have

where *b* is a constant expressed in *dB* relative to 1 *kHz* and *β* is an exponent expressed in dB per km.

*T*

_{ i }is given by,

*T*

_{ prop }is the propagation delay, which includes the round trip time for one transmission (includes the propagation delay for a block as well as for the ACK/NACK packet);

*T*

_{ transition }is the modem transition delay (for a single transmission, the modem needs to change the state two times). Thus, the total delay associated with the successful transmission of a block of

*m*data packets over the

*L*hop path is given as,

### 5.2 Energy consumption analysis

*m*data packets over the network under the proposed hybrid ARQ scheme. Consider hop

*i*along the

*L*hop path, connecting source and destination nodes

*N*

_{ i−1}and

*N*

_{ i }, respectively. The various energy consumption components are (i) energy consumed for the data packet transmission and reception, (ii) energy consumed for ACK/NACK reception and transmission; and the total energy consumed is given by,

*E*

_{ tx,i }and

*E*

_{ rx,i }, respectively, are the total energy consumption associated with the transmission and reception of the data block; \(E_{tx,i}^{A}\) and \(E_{rx,i}^{A}\), respectively, are the total energy consumption associated with the transmission and reception of the ACK/NACK packets. Now,

*E*

_{ tx,i }can be calculated as follows:

*m*

_{ i }is the average number of encoded packets required for successful delivery of the block of

*m*packets along the hop

*i*,

*P*

_{ tx,i }is the minimum transmit power required along hop

*i*and \(T_{tx,i}^{D}\) is the transmission time for a data packet, which is given as \(T_{tx,i}^{D}=\frac {Y}{\alpha B(l_{i})}\). The receive energy consumption for an encoded data packet having

*Y*bits, \(E_{rx,i}^{D}\), is about one-fifth of the transmit energy (\(E_{tx,i}^{D}\)), considering specifications of commercial hydrophones [40], and is given by

*i*.

*e*.,

*m*for successful decoding, the receiver will discard remaining packets in the same block. So, the total receive energy consumption over the hop

*i*is given by

*i*. Here, we assume that ACK/NACK packets are always delivered with very high reliability. The energy consumption due to ACK/NACK reception, \(E_{rx,i}^{A}\) can be given as,

*L*hop system is given by,

#### 5.2.1 Calculation of the minimum transmit power

In this section, we describe an analytical model to compute the minimum transmit power required to satisfy a given target packet success transmission probability along hop *i* (*p*
_{
s,i
}). We consider the *L* hop path from source to sink as shown in Fig. 4 and assume that the path has been formed after the route recovery phase. Instantaneous level of received power fluctuates as a result of small-scale fading effects due to multipath propagation in underwater environments. In shallow water, multipath occurs due to signal reflections from the surface, bottom and any objects in the water. In deep water, the multi path phenomenon occurs due to ray bending, i.e., the tendency of acoustic waves to travel along the axis of lowest sound speed. Even though, there is no general consensus on an appropriate statistical model for received signal amplitude in underwater acoustic channels, the small-scale fading effects are often modeled as Rayleigh or Rician fading [41–43] while some studies suggest K-distribution [44] or Weibull distribution [45]. In [46], Urick proposes Rician model to describe the amplitude fluctuations in ocean environment. In [47], Bjerrum -Niese et al. propose a turbulent shallow water channel model that follows Rician distribution. In this paper, we consider both Rayleigh and Rician fading models for the analysis of minimum transmit power. The analysis can be easily extended to other fading models as well.

*γ*

_{ b,i }is the average SNR per bit. With BPSK over Rician fading channel, the average BER is given by [49],

*k*is the Rician factor and

*erfc*is the complementary error function. The probability of successful transmission of a packet of size

^{′}

*Y*

^{′}bits over hop

*i*is given by

*BER*

_{ i }is the bit error rate over hop

*i*. For Rayleigh fading, an approximate equation for the minimum SNR per bit \(\gamma _{b,i_{min}}\) required to satisfy a specified target for the probability of successful transmission per packet over hop

*i*(i.e.,

*p*

_{ s,i }) can be determined by combining (18) and (20) as follows:

*SL*

_{ i }is the source level that determines the transmit power over hop

*i*;

*TL*

_{ i }denotes the transmission loss corresponding to hop

*i*;

*NL*(

*f*) is the noise level;

*DI*is the directivity index (all quantities assumed to be in

*dB*). We consider omni directional hydrophone so that

*DI*is zero. Now transmission loss (

*TL*

_{ i }) over a distance

^{′}

*li*′ (in meters) for underwater channel is given by [51]

*a*(

*f*) is the absorption coefficient corresponding to a transmitting frequency

*f*kHz;

*χ*is the spreading coefficient (has value 1 and 2 for shallow and deep water scenarios, respectively); and

*A*is the transmission anomaly [52]. Several empirical formulas exist for the absorption coefficient in literature; here, we adopt the Thorp’s formula for simplicity and is given by [50–53]:

*μ*Pa per Hz) of the four noise components are,

*N*

_{ t }(

*f*),

*N*

_{ s }(

*f*),

*N*

_{ w }(

*f*) and

*N*

_{ th }(

*f*) respectively denote the PSD’s of turbulence noise, shipping noise, waves noise and thermal noise with

*f*in kHz. The total noise PSD is the sum of different spectral densities as above. Different frequency ranges influence different Noise components. The overall PSD of the ambient noise level can be approximated as [39],

where \(I_{ref}=\frac {q^{2}}{2\rho c}\). Here, *q* is the effective sound pressure, *ρ* the density of seawater, and *c* is the propagation velocity of the sound wave in sea water. Assuming *c*=1500 m/s, *ρ*=1000*kg*/*m*
^{3}, and *q*=1*μ*
*Pa*
*rms*, we have *I*
_{
ref
}=0.67×10^{−18}
*W*/*m*
^{2} [54].

*P*

_{ tx,i }(watt) required to achieve sound intensity

*I*

_{ tx,i }at

*l*

_{ i }meters from the source in the direction of the receiver is expressed as [51]

*P*

_{ tx,i }is given by [51]:

where *H* is the depth of the water in meters. Given a requirement for probability of successful transmission of a packet per link, the minimum SNR per bit required can be determined from Eqs. (21) and (22) for Rayleigh and Rician fading, respectively. Combining Eqs. (21) and (22) with Eq. (31), we can find the minimum *SL*
_{
i
} required to satisfy the given constraint on *p*
_{
s,i
} for both deep and shallow waters. The minimum transmit power *P*
_{
tx,i
} required to satisfy the given constraint on *p*
_{
s,i
} over hop *i* can be determined using Eqs. (33) and (34) for deep and shallow water scenarios, respectively, by combining them with (32).

## 6 Results and discussion

*δ*) to be 0.05 which means that, for transmission of each block of data, we try to ensure that the decoding success probability is almost 95%. We fix the size of HELLO/ACK/NACK packet to be 6 bytes each. The simulation duration has been fixed as 1000 seconds and the results are depicted by finding the average of 30 simulation runs. Other simulation parameters are given in the Table 1.

System parameters for analysis and simulations

Parameter | Value |
---|---|

Sound speed profile (SSP) | Coppens equation [58] |

Depth of shallow water | less than 100m |

Temperature (shallow) | 22 °C |

Salinity (shallow) | 35 parts per thousand |

Depth of deep water | Between 500 and 1000 m |

Temperature (deep) | 15–12 °C |

Salinity (deep) | 35 parts per thousand |

Constant b in Eq. (8) | 14 dB |

Constant | 0.5 dB/km |

Operating frequency range | 10 to 15 kHz |

Bandwidth efficiency ( | 1 bps/Hz |

Attenuation model | |

Spreading coefficient | 1 for shallow and 2 for deep water |

Multipath fading type | Rayleigh or Rician |

*m*+

*k*) coded packets to be successfully received at the receiver to recover the original messages (i.e.,

*m*packets) which leads to more retransmissions. The proposed hybrid ARQ scheme employs dynamic computation of the code rate based on the perceived error rate across each link such that original data can be recovered with less number of retransmissions. Figure 6 gives the total number of packets sent as a function of average packet erasure probability. As the erasure rate increases, the number of packets needed for successful data delivery increases for all the schemes considered. However, in the proposed scheme, the total number of packets to be sent in the network is less as compared to all other three schemes. This is because, the proposed scheme computes the coding ratio adaptively and hence the average number of transmissions required per data block is significantly lower.

*m*+

*k*) encoded packets are needed at the receiver for successful recovery of the

*m*message packets. In an error prone channel, this leads to larger number of retransmissions and higher end to end delay. With increase in erasure rate, the delay increases further due to increase of retransmissions. The proposed scheme tries to minimize the number of retransmissions by following an adaptive approach for computing the total number of encoded packets required per message block. Accordingly the end-to-end delay gets reduced significantly. Figure 14 shows the variation of the end to end delay against the hop distance. As the hop distance increases, the total available bandwidth for transmission in underwater acoustic channel decreases making the transmission time higher, leading to higher end to end delay. However, the end to end delay has been observed to be less for the proposed scheme.

## 7 Conclusions

In this paper, we have proposed a hybrid ARQ scheme that combines the Reed-Solomon-based erasure coding and selective retransmissions, for reliable data transfer in underwater acoustic sensor networks (UASNs). We have also described a method to compute the number of encoded packets required for each message block. The proposed scheme was implemented using Aquasim simulator and the simulation results have demonstrated that it performs significantly better than other existing schemes for reliable data transfer, in terms of metrics such as throughput, energy consumption and average delay.

## Declarations

### Competing interests

The authors declare that they have no competing interests.

**Open Access** This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

## Authors’ Affiliations

## References

- J Heidemann, M Stojanovic, M Zorzi, Underwater sensor networks: applications, advances and challenges. Phil. Trans. R. Soc. A.
**370:**, 158–175 (2012).View ArticleGoogle Scholar - J Heidemann, W Ye, J Wills, A Syed, Y Li, in
*Wireless Communications and Networking Conference*, 1. Research challenges and applications for underwater sensor networking (IEEELas Vegas, 2006), pp. 228–235. WCNC 2006 IEEE.Google Scholar - J Partan, J Kurose, BN Levine, A survey of practical issues in underwater networks. ACM SIGMOBILE Mobile Comput. Commun. Rev.
**11**(4), 23–33 (2007).View ArticleGoogle Scholar - IF Akyildiz, D Pompili, T Melodia, Underwater acoustic sensor networks: research challenges. Ad hoc Netw.
**3**(3), 257–279 (2005).View ArticleGoogle Scholar - D Pompili, IF Akyildiz, Overview of networking protocols for underwater wireless communications. Commun. Mag. IEEE.
**47**(1), 97–102 (2009).View ArticleGoogle Scholar - IF Akyildiz, CV Mehmet,
*Wireless sensor networks*, vol. 4 (Wiley, New Jersey, 2010).View ArticleGoogle Scholar - H Wen, et al, in
*2007 IEEE International Conference on Mobile Adhoc and Sensor Systems*. Retransmission or redundancy: transmission reliability in wireless sensor networks (IEEEPisa, 2007).Google Scholar - M Mutschlechner, et al, in
*Wireless On-demand Network Systems and Services (WONS), 2014 11th Annual Conference on*. Using erasure codes to overcome reliability issues in energy-constrained sensor networks (IEEEObergurgl, 2014).Google Scholar - L Rizzo, Effective erasure codes for reliable computer communication protocols. ACM SIGCOMM Comput. Commun. Rev.
**27**(2), 24–36 (1997).View ArticleGoogle Scholar - MC Vuran, IF Akyildiz, Error control in wireless sensor networks: a cross layer analysis. IEEE/ACM Trans. Netw.
**17**(4), 1186–1199 (2009).View ArticleGoogle Scholar - JW Lee, JY Cheon, HS Cho, in
*OCEANS 2010 IEEE-Sydney*. A cooperative ARQ scheme in underwater acoustic sensor networks (IEEESydney, 2010), pp. 1–5.Google Scholar - H Zhuang, HP Tan, A Valera, Z Bai, in
*OCEANS 2010 IEEE-Sydney*. Opportunistic ARQ with bidirectional overhearing for reliable multihop underwater networking (IEEESydney, 2010), pp. 1–6.Google Scholar - JW Lee, JP Kim, JH Lee, YS Jang, KC Dho, K Son, HS Cho, in
*OCEANS 2008-MTS/IEEE Kobe Techno-Ocean*. An improved ARQ scheme in underwater acoustic sensor networks (IEEEQuebec City, 2008), pp. 1–5.Google Scholar - M Gao, WS Soh, M Tao, in
*Communications, 2009. ICC’09. IEEE International Conference on*. A transmission scheme for continuous ARQ protocols over underwater acoustic channels (IEEEDresden, 2009), pp. 1–5.Google Scholar - M Stojanovic, in Oceans 2005-Europe, 1. Optimization of a data link protocol for an underwater acoustic channel (Brest, 2005), pp. 68–73.Google Scholar
- Z Guo, B Wang, P Xie, W Zeng, JH Cui, Efficient error recovery with network coding in underwater sensor networks. Ad Hoc Netw.
**7**(4), 791–802 (2009).View ArticleGoogle Scholar - S Cai, Z Gao, D Yang, N Yao, A network coding based protocol for reliable data transfer in underwater acoustic sensor. Ad Hoc Netw.
**11**(5), 1603–1609 (2013).View ArticleGoogle Scholar - B Liu, F Garcin, F Ren, C Lin, in
*Sensor, Mesh and Ad Hoc Communications and Networks, 2008. SECON’08. 5th Annual IEEE Communications Society Conference on*. A study of forward error correction schemes for reliable transport in underwater sensor networks (IEEECalifornia, 2008), pp. 197–205.View ArticleGoogle Scholar - B Liu, H Chen, X Lei, F Ren, K Sezaki, Internode distance-based redundancy reliable transport in underwater sensor networks. EURASIP J. Wireless Commun. Netw.
**2010**(1), 1–16 (2010).Google Scholar - P Casari, M Rossi, M Zorzi, in
*Proceedings of the third ACM international workshop on Underwater Networks*. Fountain codes and their application to broadcasting in underwater networks: performance modeling and relevant tradeoffs (ACMCalifornia, 2008), pp. 11–18.Google Scholar - R Cao, L Yang, in
*Proceedings of the Fifth ACM International Workshop on UnderWater Networks*. Reliable transport and storage protocol with fountain codes for underwater acoustic sensor networks (ACMMassachusetts, 2010), p. 14.Google Scholar - Z Zhou, H Mo, Y Zhu, Z Peng, J Huang, JH Cui, in
*Communications (ICC), 2012 IEEE International Conference on*. Fountain code based adaptive multi-hop reliable data transfer for underwater acoustic networks (IEEEOttawa, 2012), pp. 6396–6400.View ArticleGoogle Scholar - H Mo, Z Zhou, M Zuba, Z Peng, JH Cui, Y Shu, in
*Global Communications Conference (GLOBECOM), 2012 IEEE*. Practical coding-based multi-hop reliable data transfer for underwater acoustic networks (IEEECalifornia, 2012), pp. 5751–5756.Google Scholar - H Mo, AC Mingir, H Alhumyani, Y Albayram, JH Cui, in
*Oceans, 2012*. Uw-harq: An underwater hybrid arq scheme: Design, implementation and initial test (IEEEHampton Roads, 2012), pp. 1–5.Google Scholar - P Xie, Z Zhou, Z Peng, JH Cui, Z Shi, SDRT: a reliable data transport protocol for underwater sensor networks. Ad Hoc Netw.
**8**(7), 708–722 (2010).View ArticleGoogle Scholar - B Tomasi, P Casari, L Badia, M Zorzi, Cross-layer analysis via Markov models of incremental redundancy hybrid ARQ over underwater acoustic channels. Ad Hoc Netw.
**34:**, 62–74 (2015).View ArticleGoogle Scholar - Y Zhang, Y Chen, S Zhou, X Xu, X Shen, H Wang, Dynamic node cooperation in an underwater data collection network. IEEE Sensors J.
**16**(11), 4127–4136 (2016).View ArticleGoogle Scholar - Y Chen, Z Wang, L Wan, H Zhou, S Zhou, X Xu, OFDM-modulated dynamic coded cooperation in underwater acoustic channels. IEEE J. Ocean. Eng.
**40**(1), 159–168 (2015).View ArticleGoogle Scholar - S Dulman, T Nieberg, J Wu, P Havinga,
*Trade-off between traffic overhead and reliability in multipath routing for wireless sensor networks*, vol. 3 (IEEE, Louisiana, 2003).View ArticleGoogle Scholar - S Kim, R Fonseca, D Culler, in
*2004 First Annual IEEE Communications Society Conference on*. Reliable transfer on wireless sensor networks. In Sensor and Ad Hoc Communications and Networks, 2004. IEEE SECON 2004 (IEEESanta Clara, 2004), pp. 449–459.Google Scholar - MG Luby, M Mitzenmacher, MA Shokrollahi, DA Spielman, Efficient erasure correcting codes. Inf. Theory IEEE Trans.
**47**(2), 569–584 (2001).MathSciNetView ArticleMATHGoogle Scholar - IS Reed, G Solomon, Polynomial codes over certain finite fields. J. Soc. Ind. Appl. Math.
**8**(2), 300–304 (1960).MathSciNetView ArticleMATHGoogle Scholar - M Luby, in
*Randomization and Approximation Techniques in Computer Science*. Tornado codes: practical erasure codes based on random irregular graphs (SpringerBerlin Heidelberg, 1998), pp. 171–171.View ArticleGoogle Scholar - M Luby, in
*Proceedings of the 43rd Symposium on Foundations of Computer Science, (FOCS ’02)*. LT Codes (IEEE Computer SocietyWashington, 2002), pp. 271–280.Google Scholar - A Shokrollahi, Raptor codes. Inf. Theory IEEE Trans.
**52**(6), 2551–2567 (2006).MathSciNetView ArticleMATHGoogle Scholar - S Kim, Efficient erasure code for wireless sensor networks (2004). http://www.cs.berkeley.edu. Accessed 10 July 2015.
- H Wang, S Wang, E Zhang, J Zou, A network coding based hybrid ARQ protocol for underwater acoustic sensor networks. Sensors. 16(9) (2016).Google Scholar
- S Basagni, C Petrioli, R Petroccia, D Spaccini, CARP: A Channel-aware routing protocol for underwater acoustic wireless networks. Ad Hoc Netw.
**34:**, 92–104 (2015).View ArticleGoogle Scholar - M Stojanovic, On the relationship between capacity and distance in an underwater acoustic communication channel. ACM SIGMOBILE Mobile Comput. Commun. Rev.
**11**(4), 34–43 (2007).View ArticleGoogle Scholar - Underwater acoustic modem. LinkQuest Inc., http://www.link-quest.com/. Accessed 4 Dec 2013.
- M Chitre, A high-frequency warm shallow water acoustic communications channel model and measurements. J. Acoust. Soc. Am.
**122**(5), 2580–2586 (2007).View ArticleGoogle Scholar - A Radosevic, JG Proakis, S Milica, in
*OCEANS 2009-EUROPE*. Statistical characterization and capacity of shallow water acoustic channels (IEEEBiloxi, 2009), pp. 1–8.View ArticleGoogle Scholar - X Geng, A Zielinski, in
*OCEANS’95. MTS/IEEE. Challenges of Our Changing Global Environment. Conference Proceedings*, 2. An eigenpath underwater acoustic communication channel model (IEEESan Diego, 1995), pp. 1189–1196.View ArticleGoogle Scholar - W-B Yang, in
*OCEANS 2006*. Characterization and modeling of underwater acoustic communications channels for frequency-shift-keying signals (IEEESingapore, 2006), pp. 1–6.Google Scholar - H Kulhandjian, M Tommaso, in
*Proceedings of the International Conference on Underwater Networks and Systems*. Modeling underwater acoustic channels in short-range shallow water environments (ACMRome, 2014), p. 26.Google Scholar - RJ Urick, Models for the amplitude fluctuations of narrow band signals and noise in the sea. J. Acoust. Soc. Am.
**62**(4), 878–887 (1977).View ArticleGoogle Scholar - C Bjerrum-Niese, R Lutzen, Stochastic simulation of acoustic communication in turbulent shallow water. IEEE J. Ocean. Eng.
**25**(4), 523–532 (2000).View ArticleGoogle Scholar - TS Rappaport,
*Wireless communications: principles and practice*, vol. 2 (Prentice Hall PTR, New Jersey, 1996).MATHGoogle Scholar - W Lindsey, Error probabilities for Rician fading multichannel reception of binary and n-ary signals. IEEE Trans. Inf. Theory.
**10**(4), 339–350 (1964).View ArticleGoogle Scholar - RJ Urick,
*Principles of underwater sound for engineers*(Tata McGraw-Hill Education, Unites States, 1967).Google Scholar - MC Domingo, R Prior, Energy analysis of routing protocols for underwater wireless sensor networks. Comput. Commun.
**31**(6), 1227–1238 (2008).View ArticleGoogle Scholar - WH Thorp, Analytic description of the low frequency attenuation coefficient. J. Acoust. Soc. Am.
**42**(1), 270–270 (1967).View ArticleGoogle Scholar - Y Xiao,
*Underwater acoustic sensor networks*(CRC Press, Florida, 2010).View ArticleGoogle Scholar - F Dunn, WM Hartmann, DM Campbell, NH Fletcher,
*Springer handbook of acoustics*. (T Rossing, ed.) (Springer, New York, 2015).Google Scholar - P Xie, Z Zhou, Z Peng, H Yan, T Hu, JH Cui, S Zhou, in
*OCEANS 2009, MTS/IEEE Biloxi-Marine Technology for Our Future: Global and Local Challenges*. Aqua-Sim: an NS-2 based simulator for underwater sensor networks (IEEEBiloxi, 2009), pp. 1–7.Google Scholar - MR Jafri, N Javaid, N Amjad, M Akbar, ZA Khan, U Qasim, in
*Advanced Information Networking and Applications Workshops (WAINA), 2014 28th International Conference on*. Impact of acoustic propagation models on depth-based routing techniques in underwater wireless sensor networks (IEEEVictoria, 2014), pp. 479–485.Google Scholar - M Stojanovic, J Preisig, Underwater acoustic communication channels: propagation models and statistical characterization. IEEE Commun. Mag.
**47**(1), 84–89 (2009).View ArticleGoogle Scholar - AB Coppens, Simple equations for the speed of sound in Neptunian waters. J. Acoust. Soc. Am.
**69**(3), 862–863 (1981).View ArticleGoogle Scholar