Keywords

1 Introduction

With the deepening of ocean exploration and research, underwater wireless sensor networks (UWSNs) [1, 2] have attracted extensive attention, and they are mainly applied in ocean management, auxiliary navigation, disaster monitoring, military activities and other fields [3, 4]. In practice, due to the particularity of underwater environment, common underwater nodes usually use acoustic communication for data transmission. However, the acoustic communication network has such characteristics as narrow bandwidth, high bit error rate and low transmission rate [5,6,7]. Therefore, compared with the traditional terrestrial sensor network, the implementation of UWSNs will face more difficulties and challenges.

In addition, the battery capacity of underwater nodes is limited, and battery replacement is difficult and expensive. Therefore, extending the network lifespan [8] is one of the important contents of the research of UWSNs. In the current three- dimensional UWSNs, mobile AUV [9, 10] is mostly used to coordinate and operate with underwater nodes, surface base stations, and other equipment. AUV can change the depth its own depth in underwater, send various control information to underwater nodes, and forward the collected data to the surface base station, which effectively improve the transmission reliability of data packets.

To solve the above problems, some scholars have proposed the following routing protocols. Literature [11] proposes a vector-based forwarding protocol (VBF). When receiving a packet, the node will determine whether to forward the packet according to the distance of the forwarding vector and transmit the packet along the preset virtual “routing pipe”. However, in areas with a small number of network nodes, appropriate next-hop forwarding nodes may not exist in the virtual “routing pipe”, which leads to routing void problem, thus additional network delay increases, the service life of UWSNs reduces and energy consumption increases. Literature [12] proposes a depth-based routing protocol (DBR). DBR obtains the current depth of each node through the depth sensor. When forwarding data, it compares the depth of nodes for forwarding and uses the depth threshold to control excessively redundant forwarding. However, one packet may be repeatedly forwarded by multiple nodes, which may easily lead to packet conflict and increase network energy consumption. Literature [13] proposed void-aware pressure routing (VAPR) protocol. In VAPR, nodes use periodic beacons to establish a directed path to the surface and obtain the location information that can reach the sink node, then the nodes perceive the routing void by greed-forwarding packets. However, in order to avoid routing void, nodes need to periodically maintain and update the directed path to the surface, which leads to serious congestion of packets and rapid energy consumption. Literature [14] proposed a level-based adaptive geo-routing for UWSNs (LBAGR). Different routing decisions are adopted for different flows, and the optimal routes were determined according to the compound forwarding factors of the candidate nodes. Moreover, the upstream flows were unicast to reduce collision and energy consumption. However, the sender may send the last frame multiple times because it does not receive the acknowledgment (ACK) packet, resulting in an increase in the hierarchy of underwater nodes to infinity. In addition, after a long time of data packet transmission, sink node may fail to broadcast and receive data packets, resulting in state deadlock of sink node.

Aiming at the above shortcomings, this paper proposes an adaptive routing protocol based on AUV (ARPA) for UWSNs. ARPA mainly includes network layering and data transmission phase. In the phase of network layering, ARPA takes AUV as the sink node, compares the distance between the underwater sensor node and AUV with the distance threshold, and forms a dynamic layering structure centering on AUV. In the data transmission stage, the source node introduces the vertical mechanism according to the vertical distance and vector angle between candidate nodes and AUV to choose the best the next-hop node, when energy consumption of the selected candidate nodes is greater than the predetermined threshold, the node performs level mechanism, and selects a replacement node from the list of candidate child nodes to replace the forwarding function of the node. Simulation results show that ARPA not only ensures efficient and stable data transmission rate but also reduces network delay and prolongs network lifespan.

The remainder of the paper is organized as follows. Section 2 introduces the network model and energy consumption model of ARPA. Section 3 describes the design of ARPA. Section 4 evaluates the performance. Section 5 concludes the paper.

2 Network Model and Energy Consumption Model

2.1 Network Model

In the three-dimensional UWSNs model, various nodes in the network mainly include ordinary underwater nodes, AUV, surface nodes and monitoring center. The network model of ARPA is shown in Fig. 1. Each ordinary underwater node is randomly distributed in the underwater area. It obtains its depth information through the depth sensor and has a unique ID. It is mainly responsible for collecting underwater data and storing the monitoring data into its buffer zone. As a sink node, AUV is responsible for collecting and transmitting data information in the task area to form a dynamically self-organizing sensor network. The transmission of data information from the source node to AUV marks the success of data transmission, then AUV sends the data information along the fixed or dynamic transmission path to the surface node distributed in the specified range. Then the underwater routing is completed.

Fig. 1.
figure 1

Network model of ARPA

2.2 Energy Consumption Model

In UWSNs, the energy consumption of nodes mainly includes the consumption when sending data and receiving data. The energy consumption of data transmission depends on the length of the transmission path. The longer the transmission distance is, the energy consumption becomes the greater. The energy consumption of receiving data is constant regardless of the transmission distance. Therefore, in the process of data transmission, the energy consumption of sending data is used to measure the energy consumption of the entire network. In the attenuation model of underwater acoustic signal [15], let A(x) be the attenuation factor of power and transmission distance, x represents the transmission distance of transceiver node, then the attenuation factor is:

$$ A\left( x \right) = x^{k} \alpha^{x} $$
(1)
$$ \alpha = 10^{{\frac{\alpha (f)}{10}}} $$
(2)

The energy absorption coefficient is:

$$ \alpha \left( f \right) = \frac{{0.11f^{2} }}{{1 + f^{2} }} + \frac{{44f^{2} }}{{4100 + f^{2} }} + 2.75 \times 10^{ - 4} f^{2} + 0.003 $$
(3)

The energy used by the node to send L bit data is:

$$ \text{E} = T_{P} P_{0} A\left( x \right) = 10^{{\frac{\alpha f\left( x \right)}{10}}} P_{0} T_{P} x^{3} $$
(4)

Where, k is the spread spectrum factor with a value of 1.5, f is the signal frequency, \( P_{0} \) is the minimum power required for the node to receive data, and \( T_{P} \) is the transmission delay of the node to send data.

3 The Design of ARPA

3.1 Network Initialization

In ARPA, there are multiple AUVs to collect data information. AUV as a sink node, arrived at a specific location at a certain moment in the broadcast layer-build package, as shown in Fig. 2.

Fig. 2.
figure 2

Schematic diagram of dynamic layering structure centered on AUV

AUV will broadcast data collection information to each node, after the node receives signals, the distance x between it and AUV is calculated according to the signal strength (from formula 13), and compared with threshold distance D. If the distance x is less than the distance threshold D, the node defines itself as the first layer node of the AUV, and then the first layer node floods again to establish the entire layering network in turn.

3.2 Data Transmission

In UWSNs, with the increase of communication distance, packet forwarding frequency increases, network energy consumption increases and packet transmission rate decreases. Therefore, in order to improve packet transmission rate and save energy consumption, when the next-hop forwarding node is selected in this protocol, the source node introduces a vertical mechanism based on the vertical distance and vector angle between candidate nodes and AUV to determine the optimal next-hop node. When the energy consumption of the selected candidate node is greater than the predetermined threshold, the node executes the horizontal mechanism and selects the replacement node from the list of candidate child nodes to replace the forwarding function of the node.

Vertical Mechanism

AUV broadcasts the control package to the entire underwater node. After the underwater node receives this broadcast, the source node \( i \) looks for the next hop candidate node within the communication range R. As is shown in Fig. 3:

Fig. 3.
figure 3

Schematic diagram of vertical mechanism searches for candidate nodes

N1, N2, N3, and N4 are neighbor nodes on the first floor of \( i \). Firstly, the vertical distance \( H_{i} \) between \( i \) and AUV node D is established. \( H_{i} \) can be obtained by the depth sensor. The vertical distance between N2 and D is \( H_{2 } \). Since \( H_{2 } > H_{i } \), N2 does not meet the requirements of being a candidate node, so the candidate nodes that meet the requirements are N1, N3 and N4. Therefore, in order to reduce the filtering range in regions with more candidate nodes, the vector angle \( \theta_{i} \) is established in \( i \) and AUV, which represents the angle formed by the two vectors. Among them, \( \mathop \to \limits_{sD} \) represents the horizontal vector of AUV, and \( \mathop \to \limits_{iD} \) represents the vector of \( i \) and AUV, \( \theta_{i} \, \in \,[0,\,2{\pi ]} \).

$$ \theta_{i} = { \arccos }\frac{{\left| {\mathop \to \limits_{iD} } \right|^{2} + \left| {\mathop \to \limits_{sD} } \right|^{2} - \mathop \to \limits_{iD} \cdot\mathop \to \limits_{sD} }}{{2\left| {\mathop \to \limits_{iD} } \right|\left| {\mathop \to \limits_{sD} } \right|}} $$
(5)

\( \theta_{4} \) as the vector angle between node N4 and AUV, due to \( \theta_{4} > \theta_{i} \), So N4 is not eligible. The candidate next hop nodes that meet the requirements are N1 and N3.

The forwarding probability of candidate nodes is:

$$ P = \alpha_{1} P_{H} + \alpha_{2} P_{\theta } = \alpha_{1} \left( {1 - \frac{{H_{N} }}{{H_{i} }}} \right) + \alpha_{2} \left( {1 - \frac{{\theta_{N} }}{{\theta_{i} }}} \right) $$
(6)

Where, \( P_{H} \), \( P_{\theta } \) are respectively the forwarding probability of candidate nodes considering the vertical distance and the vector angle. \( \alpha_{1} \), \( \alpha_{2} \) are called coefficient factors, \( \alpha_{1} \alpha_{2} \in \left[ {0,1} \right] \), \( \alpha_{1} + \alpha_{2} = 1 \). \( H_{N} \) is the vertical distance of the candidate node, and \( H_{i} \) is the vertical distance of the current node. When \( \alpha_{1} \) = 1, the node only considers the vertical distance. Otherwise, it also considers the vector angle. The higher the forwarding probability of the candidate node is, the easier it becomes the ideal next hop. And if both candidates \( P_{H} \) and \( P_{\theta } \) satisfy the conditions, add them to the candidate list of \( i \), and compare their residual energy, the candidate node with larger residual energy of the node serves as the best next hop.

figure a

Horizontal Mechanism

When the energy consumption of the selected candidate node is greater than the predetermined threshold, the node performs the horizontal replacement mechanism and selects the replacement node from the list of candidate child nodes to replace the forwarding function of the node. Where, the predetermined threshold:

$$ \text{T} = \frac{E}{X \cdot L} $$
(7)
$$ L = \left\lceil {x/R} \right\rceil $$
(8)

E is the residual energy of the node, X is the predefined positive number, L is the ideal minimum level for the node to send packets to AUV, R is the communication distance of the node, and x is the distance between the node and its nearest node. In order to reduce the impact of node replacement on other parts of the network, the protocol should consider selecting the node with the highest probability of data transmission as the replacement node.

The average SNR with distance d [15] is:

$$ \uptau\left( \text{d} \right) = \frac{{E_{b} /A\left( {d,f} \right)}}{{N_{0} }} = \frac{{E_{b} }}{{N_{0} d^{k} a\left( f \right)^{d} }} $$
(9)

Where, Eb and N0 are constants, respectively representing the average energy consumption per unit bit and the noise power density.

Rayleigh fading modeling is adopted, and the probability distribution of SNR is as follows:

$$ P_{d } \left( X \right) = \int_{0}^{\infty } {\frac{1}{{\uptau\left( \text{d} \right)}}e^{{ - \frac{X}{{\uptau\left( \text{d} \right)}}}} } $$
(10)

The probability of bit error \( P_{e } \left( d \right) \) can be calculated as:

$$ P_{e } \left( d \right) = \int_{0}^{\infty } {P_{e } \left( X \right)P_{d } \left( X \right)\text{dX}} $$
(11)

This protocol adopts BPSK modulation mode, and the bit error rate of any pair of nodes with distance d is:

$$ P_{e } \left( d \right) = \frac{1}{2}\left( {1 - \sqrt {\frac{{\uptau\left( \text{d} \right)}}{{1 +\uptau\left( \text{d} \right)}}} } \right) $$
(12)

Therefore, the probability \( p\left( {d,m} \right) \) of packet transmission of m bit transmitted by any pair of nodes with distance d is:

$$ \text{p}\left( {\text{d},\text{m}} \right) = \left( {1 - P_{e } \left( d \right)} \right)^{m} $$
(13)

In conclusion, if the probability of packet delivery of the node in the list of candidate child nodes is higher, the node will be horizontal replacement nodes of the current node.

The source node selects the next hop and sends the packet according to the horizontal-vertical mechanism. At this time, the forwarding node turns into a new source node and continues to look for the optimal path to select the best next hop node until AUV is found within the broadcast range of the source node and the packet is successfully transmitted to AUV. The overall flow chart of ARPA is shown in Fig. 4.

Fig. 4.
figure 4

Overall flow chart of ARPA

4 Performance Evaluations

In this paper, we use NS-3 as the simulator of a routing protocol to verify the performance of ARPA, and the performance parameters such as average end-to-end delay, packet transmission rate, and average energy consumption is compared and analyzed with VBF and LB-AGR. Experimental parameter selection is shown in Table 1:

Table 1. Experimental parameters list

4.1 Average End-to-End Delay

Figure 5 shows the change curve of the end-to-end average time delay of the three routing protocols in UWSNs with the increase of the number of nodes. Compared with VBF and LB-AGR, ARPA significantly reduces the average end-to-end delay.

Fig. 5.
figure 5

Average end-to-end delay

The reason is that when the nodes in UWSNs change dynamically, the trajectory motion controllability of AUV makes the end-to-end delay fluctuation of ARPA smaller than the other two protocols. In addition, the vertical distance from node to AUV may be taken into consideration during data transmission to determine the next-hop forwarding node, which greatly improves the packet transmission rate and reduces the network delay.

4.2 Packet Transmission Rate

As shown in Fig. 6, packet transmission rates of the three protocols vary with the number of nodes, among which ARPA is the best and LB-AGR has a higher packet transmission rate than VBF. This is because the ARPA adopted based on vertical distance, the Angle of the vector, residual energy and packet transmission rate factors, namely the vertical - horizontal mechanism to determine the optimal under a forwarding nodes, making increased when the number of network nodes, node density is more and more big, the ARPA is easier to determine the next hop node, network connectivity, data transmission rate is also improved.

Fig. 6.
figure 6

Packet transmission rate

4.3 Average Energy Consumption

As shown in Fig. 7, when the number of nodes participating in the network increases, the total energy consumption increases. The average energy consumption of the network in this paper is lower than the other two protocols. Compared with VBF and LB-AGR, the average energy consumption of ARPA is reduced by 26.7% and 11.3% respectively. This is because the nodes in ARPA transmit data directly to AUV along the direction of the hierarchy ladder, avoiding the increase of transmission number when the data packet is transmitted along the node path with unsatisfied conditions, thus achieving better energy saving effect. And the inactive nodes are dormant to save energy.

Fig. 7.
figure 7

Average energy consumption

5 Conclusion

Aiming at the dynamic characteristics of 3D UWSNs, an adaptive routing protocol (ARPA) based on AUV is proposed in this paper. In ARPA, the data in the network are transmitted to AUV along the hierarchical ladder direction through the dynamic layering structure formed with AUV as the sink node, and the next-hop forwarding node that meets the conditions is selected based on the horizontal and vertical hierarchical mechanism. Simulation results show that the protocol achieves efficient data packet transmission between a source node and AUV, saves energy consumption and prolongs network lifespan.