# Shortest Path Routing Protocol Based on the Vertical Angle for Underwater Acoustic Networks

Authors: Meiju Li; Xiujuan Du; Xin Liu; Chong Li
Journal: Journal of Sensors
 (2019)

---

## Abstract

Underwater Acoustic Networks (UANs) use acoustic communication. UANs are characterized by narrow bandwidth, long delay, limited energy, high bit error rate, and dynamic network topology. Therefore, UANs call for energy-efficient and latency-minimized routing protocol. In this paper, the shortest path routing protocol based on the vertical angle (SPRVA) is proposed. In SPRVA, the forwarding node determines the best next-hop according to main priority. When the main priorities of candidate nodes are the same, the alternative priority is used. The main priority is denoted by the residual energy and angle between propagation direction and depth direction, and the alternative priority is indicated by the link quality. SPRVA selects the node along the depth direction with more residual energy and better link quality as the best next-hop. In addition, a recovery algorithm is designed to avoid nodes in void areas as forwarding nodes. Simulation results show that SPRVA improves energy efficiency and decreases end-to-end communication delay.


---

## Body

## 1. Introduction

Recently, special attention has been paid to Underwater Acoustic Networks (UANs). UANs have wide applications in tsunami monitoring, disaster rescue, maritime military, underwater resource exploration, and so on [1]. Due to serious absorption of radio signal in water, the transmission range of radio signal is very limited, so underwater networks use acoustic communications. There are two kinds of nodes in UANs, sink nodes and sensor nodes. Most sensor nodes move with water current. However, sink nodes are stationary and deployed on water surface. They are responsible for communicating with both underwater sensor nodes and terrestrial data center and are equipped with both RF modem and acoustic modem [2].UANs use acoustic communication, and the acoustic environments of UANs are complex. Ships and plankton on surface interfere with the acoustic signal. Therefore, UANs are significantly different from any ground-based network in terms of the following aspects [3, 4]: (1) High Bit Error Rate (BER). Underwater acoustic communication channels are affected by many factors such as path loss, noise, multipath, and Doppler spread. All these factors cause high bit-error and delay variance. Thus, communication links in UANs are highly error-prone. (2) Long Propagation Delay. The propagation speed of acoustic signals in water is about 1500 m/sec, which is five orders of magnitude lower than terrestrial radio propagation speed 3∗108 m/sec. (3) Limited Energy. Transmitting acoustic signal consumes more energy than transmitting radio signal. However, sensor nodes are powered by batteries, and the batteries are difficult to be replaced and recharged underwater. (4) Dynamic Topology. Underwater sensor nodes move with the flow of water or other underwater activities. In addition, sensor nodes are more vulnerable in harsh underwater environments and have higher node-failure rate. (5) Void Area. Due to the high cost of underwater sensor nodes, sparse layout, limited energy, and dynamic topology, void area is prone to form in UANs. Consequently, many of the routing protocols used in WSNs are either inapplicable or inefficient in UANs. UANs call for energy-efficient and latency-minimized routing protocols, which support dynamic network topology and “void” zones [5].The main contributions of the paper are as follows:Firstly, the idea of multilevel priority is proposed. The best next-hop is selected according to the main priority and alternative priority. By comparing multiple priorities, the node which helps to improve network lifetime and decrease delay is selected as the best next-hop.Secondly, the angle between propagation direction and depth direction is used as the parameter of the main priority, which helps to select the shortest path. The angle is independent of the location information and is available by directional antennas.Thirdly, a recovery algorithm is designed to avoid nodes in void areas being selected as the best next-hop.The rest of the paper is organized as follows: In Section2, the related work concerning the field is introduced. In Section 3, the problems to be solved are analyzed. In Section 4, the SPRVA protocol is presented in detail. In Section 5, the performance of SPRVA is evaluated theoretically and experimentally. In Section 6, the paper is concluded.


## 2. Related Works

Recently, researchers designed several routing protocols to support UAN applications. The existing routing algorithms for UANs are divided into four categories as follows.(1) Routing Algorithms Depending on Location Information. The vector-based forwarding (VBF) protocol is a routing algorithm that depends on the location information [6]. In VBF, a vector pipeline between a source node and a destination node is constructed. The nodes in the pipeline are qualified to become forwarding nodes. The closer to the vector center, the more likely to forward the packets in pipeline. In order to save efficiency, the width of vector pipeline of dense networks is set to a lower value by the VBF algorithm; results in many nodes qualified to forward are excluded. To solve the problem above, hop-hop VBF (HH-VBF) was proposed in [7]. One vector pipe from a source node to a destination node is divided into multiple pipes according to the hop in HH-VBF. In depth-controlled routing (DCR) protocol [8], each node is equipped with a topology controller. The topology controller adjusts the depth of the node according to the location information in a timely manner. The link expiration time-aware Routing (LETA) protocol was proposed in [9]. In LETA, the priority of a candidate node is calculated on the basis of bias theory. The depth of the node, residual energy, and distance are used as parameters to calculate the forwarding probability. Du et al. proposed a level-based adaptive geo-routing (LB-AGR) protocol [10]. LB-AGR defines a comprehensive forwarding factor based on residual energy, density, and location, which is used to determine the best next-hop. Reference [11] put forward a directional flooding-based routing (DFR) protocol. In DFR, the source node broadcasts packets towards the sink node within the range of certain angle. The main drawback of routing algorithms based on the location information is that accurate positioning is still a hot spot of research in UANs.(2) Routing Algorithms Independent of Location Information. The global location information of node is unnecessary in routing algorithms independent of location information. In [12], depth-based routing (DBR) was proposed. A receiving node determines whether to forward the packet, respectively, according to the depths of the last-hop and itself. Only those receiving nodes with smaller depth are eligible to forward. To suppress redundant forwarding, a waiting time is set up for all eligible nodes. The smaller the depth, the shorter the waiting time. After hearing multiple copies of a packet from different neighbors, the receiving node will drop the packet instead of forwarding. DBR is a greedy routing algorithm, which does not consider the problems of void area and residual energy. In addition, the waiting time introduced in DBR leads to high delay. To solve these problems, scholars proposed some improved DBR routing protocols. In paper [13], an energy-efficient and depth-based routing (EEDBR) protocol was proposed. Based on the DBR algorithm, the depth information and the residual energy are considered to select the next-hop. The channel-aware routing protocol (CARP) algorithm was proposed in [14]. In CARP, a forwarding node determines the next-hop node by sending the “PING” signal and waiting for the “PONG” signal from neighbor nodes. To improve energy efficiency, Zhou et al. proposed an enhanced version of the channel-aware routing protocol (E-CARP) [15]. In E-CARP, due to the node mobility, the last hop node could still be selected as the next-hop node although it may not be the best next-hop. Reference [16] provided an adaptive mobility of courier nodes in threshold-optimized DBR (AMCTD) algorithm. AMCTD sets different depth thresholds for different nodes according to the network density to limit the number of forwarding nodes [16]. AMCTD algorithm is not suitable for data-sensitive applications. Improved-AMCTD (I-AMCTD) combined the soft depth threshold with hard thresholds in [17]. In addition to “hello” packet, underwater nodes send depth threshold information also which brings extra overhead. In [18], a localization-free interference and energy holes minimization (LF-IEHM) routing protocol was proposed. LF-IEHM solves the energy hole problem. However, the delay is not considered. A delay-sensitive routing protocol was proposed in [19]. Delay-sensitive depth-based routing (DSDBR), delay-sensitive energy efficient depth-based routing (DSEEDBR), and delay-sensitive adaptive mobility of courier nodes in threshold-optimized depth-based routing (DSAMCTD) were designed based on DBR, EEDBR, and AMCTD, respectively. For those protocols independent of the location information, some system performances are sacrificed to improve the remaining performances. In [20], we propose a routing protocol based on received signal strength (RRSS). RRSS can ensure that data packets are transmitted along the shortest path with least energy loss. However, because of harsh underwater communication environment, it is difficult to obtain the exact RSS for each transmission. Khasawnehet et al. proposed a reliable energy efficient pressure-based routing protocol (RE-PBR) [21]. In RE-PBR, the forwarder node is selected according to depth, link eminence, and enduring energy constraint. In [22], we proposed a routing algorithm based on simplified harmony search and coding (RSHSC). In RSHSC, the harmony search algorithm and coding are adopted, which improves the packets delivery rate and shortens end-to-end delay. However, the implementation of RSHSC algorithm is complex. In [23], a routing algorithm is proposed based on depth and distance. In [23], a node selects the next-hop according to the distance to sink node and the depth-difference between current node and candidate node. In [24], Muhammad Awais and Nadeem Javaid et al. proposed an Energy-Efficient Path-Based Void hole and Interference-Free Routing (EP-VIR-Three) protocol. In EP-VIR-Three, the forwarding node is selected according to the depth-difference between the current node and previous node. Meanwhile, the Bellman-Ford Shortest Path-Based Routing (BF-SPR-Three) protocol is proposed. In BF-SPR-Three, the routing loop problem is solved. In [25], Breadth First Search with Shortest Path First using 3-hop neighbors’ information (BFS-SPF-Three) was proposed. In BFS-SPF-Three, the node with the least energy consumption and shortest distance to the sea surface is selected as the forwarder node. In [26], the multilayered routing protocol (MRP) was proposed, in which the network reliability is considered. When the specified surface node is busy, the subaquatic node will take substitute. MRP protocol improves the network reliability.(3) Routing Algorithms Aided by Autonomous Underwater Vehicles (AUVs). Some scholars introduced AUVs into the UAN routing algorithms, such as the glider coordinated control system (GCCS) [27], AUV-aided underwater routing protocol (AURP) [28], AUV-aided energy-efficient routing protocol (AEERP) [29], and AUV-aided efficient data gathering (AEDG) [30]. In routing algorithms that are AUV-aided, the delay is not considered.(4) Routing Algorithms Based on the Cluster. The routing algorithms based on the cluster include LEACH-L [31], the Clustering Vector-Based Forwarding (CVBF) algorithm [32], and a popular clustering algorithm for time series data transformed by a multiresolution dimensionality reduction method called as I-Kmeans [33]. The drawback of those algorithms based on the cluster is that the energy balance is hard to be solved.In this paper, we propose a shortest path routing protocol based on the vertical angle (SPRVA), which exhibits short delay and high energy efficiency. SPRVA is based on DBR. In the network structure, many sink nodes are uniformly distributed on the surface. Because UANs use acoustic communication, the end-to-end delay is mainly composed of propagation delay. To reduce propagation delay, SPRVA first selects the next-hop node based on the angle between the propagation direction and the vertical direction. Smaller angle leads to shorter propagation distance, which results in less propagation loss. The main priority is calculated by combining the residual energy and the angle. Thus, SPRVA not only shortens the delay, but also reduces network energy consumption. When multiple candidate nodes exist at the same main priority, SPRVA alternatively sets node priority based on the link quality. In addition, to avoid selecting a node in void area, SPRVA includes a recovery algorithm.


## 3. Problem Analysis

Each proposed protocol can effectively solve some problems in certain situations. However, the protocols have their drawbacks. DBR has been improved from different angles in recent years, as discussed in Section2. This section presents an analysis about energy utilization and delay from the different perspective of the improved DBR protocols that were previously proposed.In DBR or improved protocol, each sensor node determines whether to forward a packet based on the depth information: the depth of its own, denoted bydc, and the depth of last hop, denoted by dp, independently and in a distributed manner [12–19]. Upon receiving a data packet, the node first retrieves the depth field of the packet, which is denoted by dp.The receiving node then compares its own depth, dc, with dp. If the receiving node is closer to water surface than the sender, it considers itself as a qualified candidate for forwarding the packet; otherwise, it simply drops the packet. However, if all the qualified nodes were to forward the packet, the result would be large collision and high energy consumption. Therefore, DBR uses a technique to suppress redundancy such that the node with the minimal depth forwards the packet after waiting the shortest time. Other candidate nodes will not forward a packet after they sense that the packet has been forwarded by another node closer to water surface [12]. To improve the performance of UANs, some researchers improve DBR. However, these problems are not still analyzed and solved as described below [25].


### 3.1. Redundant Forwarding

Some of redundant forwarding is not considered in the improved DBR protocols in [13–19]. As shown in Figure 1, node n0 is the sender, and n1, n2, and n3 are the neighbors of noden0. All three neighbors can receive packets from node n0. Nodes n1 and n2 are at a shallower depth than noden3, and n3 is outside the communication range of node n1. The hold times of nodes n2andn3are longer than the hold time of noden1. Node n3 cannot receive a packet forwarded by node n1. Therefore, even thoughn1has forwarded the packet, n3 still forwards it. The same situation as for noden3 may exist for neighbors of node n1, for example, for nodes n4 and n6. This condition leads to a vicious cycle that results not only in redundant energy consumption, but also in many data collisions. Necessary measures must be taken to prevent this decreasing in communication quality and increasing redundant energy consumption, especially for UANs with complex channel environments and limited energy. In fact, these improved DBR protocols are still a multicast routing [12].Figure 1
Topology 1.


### 3.2. Energy Utilization

As shown in Figure2, n0 is the sender and n1 and n2 are its neighbors. The depth difference between n0 and n1 is d01, and the distance between them is l01. The depth difference between n0 and n2 is d02, and the distance between them is l02. In Figure 2, the depth of node n1 is slightly greater than that of noden2. However, l02 is much longer than l01. According to DBR and improved DBR protocols, node n2 has the highest priority and would forward the packet, data packet, which increases the propagation loss [24, 25].Figure 2
Topology 2.


### 3.3. End-to-End Delay

As mentioned above, propagation delay constitutes the main portion of end-to-end delay in UANs. As shown in Figure2, node n2 rather than n1 will forward packets from node n0, leading to longer propagation distances and higher communication delay [13–18, 21, 23].Considering the case in which nodes are sparsely deployed, for example, there is only one candidate forwarding node, according to the suppression mechanism of improved DBR protocols, this sole candidate node is unable to forward the packet until the hold time expires, which causes unnecessarily long delay.


## 3.1. Redundant Forwarding

Some of redundant forwarding is not considered in the improved DBR protocols in [13–19]. As shown in Figure 1, node n0 is the sender, and n1, n2, and n3 are the neighbors of noden0. All three neighbors can receive packets from node n0. Nodes n1 and n2 are at a shallower depth than noden3, and n3 is outside the communication range of node n1. The hold times of nodes n2andn3are longer than the hold time of noden1. Node n3 cannot receive a packet forwarded by node n1. Therefore, even thoughn1has forwarded the packet, n3 still forwards it. The same situation as for noden3 may exist for neighbors of node n1, for example, for nodes n4 and n6. This condition leads to a vicious cycle that results not only in redundant energy consumption, but also in many data collisions. Necessary measures must be taken to prevent this decreasing in communication quality and increasing redundant energy consumption, especially for UANs with complex channel environments and limited energy. In fact, these improved DBR protocols are still a multicast routing [12].Figure 1
Topology 1.


## 3.2. Energy Utilization

As shown in Figure2, n0 is the sender and n1 and n2 are its neighbors. The depth difference between n0 and n1 is d01, and the distance between them is l01. The depth difference between n0 and n2 is d02, and the distance between them is l02. In Figure 2, the depth of node n1 is slightly greater than that of noden2. However, l02 is much longer than l01. According to DBR and improved DBR protocols, node n2 has the highest priority and would forward the packet, data packet, which increases the propagation loss [24, 25].Figure 2
Topology 2.


## 3.3. End-to-End Delay

As mentioned above, propagation delay constitutes the main portion of end-to-end delay in UANs. As shown in Figure2, node n2 rather than n1 will forward packets from node n0, leading to longer propagation distances and higher communication delay [13–18, 21, 23].Considering the case in which nodes are sparsely deployed, for example, there is only one candidate forwarding node, according to the suppression mechanism of improved DBR protocols, this sole candidate node is unable to forward the packet until the hold time expires, which causes unnecessarily long delay.


## 4. SPRVA Protocol

This section presents detailed protocol design. The format of control package is provided. The main parameters related to the SPRVA protocol are analyzed.


### 4.1. Network Architecture

In SPRVA, the network is comprised of multiple sink nodes and underwater sensor nodes as shown in Figure3. The sink nodes are uniformly distributed on the surface. Each sink node is equipped with both an acoustic modem and an RF modem. Each sink node can communicate with the data center by RF modem and with underwater sensor nodes by acoustic modem. Each underwater sensor node is equipped with an acoustic modem. The sensor nodes are randomly distributed underwater, and each sensor node can collect and forward data. The data received by any sink node are considered to be delivered successfully. The SPRVA protocol focuses only on the transmission process from the underwater sensor nodes to the sink nodes; communication among the sink nodes is not considered.Figure 3
Network architecture.Each sensor node is equipped with a pressure sensor to acquire pressure information and calculate its depth. In addition, each node possesses a timer to evaluate the distance between itself and its neighbors.


### 4.2. Protocol Design

To solve the problems of DBR and improved DBR discussed in Section3, in this paper, a shortest path routing protocol based on the vertical angle (called SPRVA) is proposed. In SPRVA, a data packet is delivered to a sink node via multiple hops. Each node stores information concerning its depth, its link quality, and its residual energy. Each node broadcasts “hello” packets periodically and records the sending time. After receiving a hello packet from a neighbor, a node first decides whether it is qualified to reply to the hello packet. After receiving a reply packet, the sending node records the replier’s information in an alternative routing table. The sending node calculates and records the distances to its neighbors from its neighbors based on the round-trip times. In SPRVA, a node selects the next-hop node primarily according to the angle between the propagation direction and the vertical direction, as depicted in Figure 4, and the residual energy. The smaller the angle, the shorter the path.Figure 4
Topology 3.UANs are characterized by spatial and temporal variability, and the communication channel is complex. In addition to the main priority dependence on angle and residual energy, SPRVA adopts an alternative priority dependence on link quality to select the next-hop as well. When the main priorities of candidate nodes are equal, the forwarder selects the next-hop based on the link quality to the qualified nodes. SPRVA presets a threshold for energy and link quality, respectively. If the residual energy or link quality of a node is lower than the preset threshold, the node will not answer the hello packets of its neighbors.DBR and improved DBR are greedy routing protocols essentially. An isolated shallow node is likely to be selected as the next-hop node in greedy routing scheme. Underwater sensor nodes are distributed randomly as in Figure5. According to greedy routing scheme, node n1 will select node n4 as the next-hop. However, except for node n1, node n4 has no other neighbor connecting to a sink node. So node n4 fails to forward data packets further. From Figure 5, there is a transmission path from node n1 to the sink node as n1→n2→n3→s. Therefore, a recovery algorithm is provided in our SPRVA protocol.Figure 5
Void area.


### 4.3. Packet Format

In SPRVA, control packets are divided into two types, hello packets and reply packets. The format of control packets is shown in Table1.Table 1
The format of control packet.
Bit 2 8 8 16 Type Sender ID Receiver ID CRC  LoadType: Indicating the type of packets. A value is “0” denotes that the packet is a “hello” packet. A value is “1” denotes the packet is a “reply” packet.Sender ID: Indicating the node ID of the sender in a control packet.Receiver ID: Indicating the ID of receiving node in a control packet. When the packet is a hello packet, the value is filled with “FF”.CRC: Denoting the parity bits.Load: If the style of the packet is “0”, “Load” includes the depth of the sender. Otherwise, “Load” includes the depth and residual energy of the sender.


### 4.4. SPRVA Parameters

This section provides an analysis of the SPRVA parameters that affect system performance.(1) Depth. The pressure sensors on each node can obtain the node’s pressure, denoted by P. P is calculated by P=ρgd, where ρ and g are constant; the depth difference, Δd, can be calculated as in the following equation, where d1 is the depth of a sender and d2 is the depth of the sender’s neighbor.(1)Δd=d1-d2=P1-P2ρg(2) Energy Utilization. According to the channel loss model of UANs, the total channel loss consists of spreading loss and absorption loss as shown in (2) [34]. a(f) is calculated according to formula (3) [23].(2)Td=10log⁡d+10-3afd(3)10log⁡αf=0.11+f2f2+1+44+f24100+f2+2.75f2104+0.003f≥0.40.0020.11f1+f+0.011ff<0.4The total attenuation can also be expressed as follows [34]:(4)10log⁡Ad,f=k∗10log⁡d+l∗10log⁡αfHere,d is the propagation distance, a(f) is the absorption coefficient, and f is the communication frequency of the UAN system. Both f and k are constants; k is related to the spreading space and is 1, 1.5, or 2 when the space is cylindrical, practical, or spherical, respectively. From (2) and (3), the propagation loss and absorption loss increase as the distance increases.Definition. Energy utilization is the ratio of the energy consumption required to transmit that data packet a specific vertical distance to the energy consumption required to transmit that data packet the same vertical distance but along the direction to a neighbor node.The more remaining energy of candidate node, the higher priority of the node. As shown in Figure4, the delay is denoted by∆t, experienced from sending a hello packet to receiving the reply packet. The distance between the sender and the receiver is s. Then, s=Δtv0/2. Therefore, cos⁡θ=Δd/s. Combining (1), we can define the part of main priority of node n1 dependence on energy utilization, denoted by Pa, as shown in the following equation:(5)Pa=cos⁡θ=Δds=2P1-P2ρgΔtv0According to (2), we obtain the following equations:(6)Pu=10log10⁡du+10-3afdu(7)Ps=10log10⁡ds+10-3afdsWherePa is the ratio of the energy consumed by delivering a data packet upward the specified height along the vertical direction, denoted by Pu (the distance is denoted by du) to the energy consumed by delivering a data packet upward the same height along a practical direction, denoted by Ps (the distance is denoted by ds). From (5), ds=du/cos⁡θ. Therefore, the energy utilization can be calculated as shown in (8), and the value of PA is between 0 and 1. The larger the angle, the smaller the energy utilization. Thus, to save energy, SPRVA selects the node with the smallest angle as the next-hop.(8)PA=pups=10log10⁡du+10-3afdu10log10⁡du/cos⁡θ+10-3afdu/cos⁡θ(3) Residual Energy. Assuming that the initial energy of a node is E0, the energy consumption required to send a data packet is Ed, and the energy consumption required to send a hello or reply packet is Es. The energy consumption required to receive a packet is much lower than that required to send a packet; therefore, the energy consumption required to receive any packet is considered to be Er. In idle state, the energy consumption is EI per second. The residual energy, denoted by ER, is calculated as follows:(9)ER=E0-nd∗Ed-nsEs-nrEr-T∗EIHere,T represents the idle time; nd, ns, and nr represent the number of data packets transmitted, control packets transmitted, and packets received, respectively.In this paper, we classify the residual energy inton levels; the nodes with residual energies having the same level are considered as the nodes with equal residual energy.The part of main priority dependence on the residual energy is defined by(10)PE=ER/E0n(4) Link Quality. The factors that affect underwater link quality include turbulence, shipping, waves, and terminal noise. The power spectral density is calculated as follows [34]:(11)Nf=Ntf+Nsf+Nwf+Nthf(12)10log⁡Ntf=17-30log⁡f(13)10log⁡Nsf=40+20ε-0.5+26log⁡f-60log⁡f+0.03(14)10log⁡Nwf=50+7.5w+20log⁡f-40log⁡f+0.4(15)10log⁡Nthf=-15+20log⁡fwhereε is a shipping factor with a value that varies from 0 to 1, and W is the wind velocity, the value of which varies from 0 to 10 m/s. From (11)-(15), the noise increases as the carrier frequency, shipping, and wind velocity increase.The signal-to-noise ratio is denoted bySNR, where SNR=P/Ad,fN(f). Here, P is the transmission power of the narrowband signal. According to the Shannon theorem, the channel capacity, Cd,f, is calculated according to the following equation:(16)Cd,f=Blog2⁡1+SNRd,fFrom (11)-(16), the capacity of the channel decreases as the noise increases, denoted by Nf, which is consistent with the link quality. Therefore, Cd,f is used as both the link quality and as a reference for choosing the next-hop.(5) Main Priority. The main priority is calculated as in (17). Here, k1 and k2 are the weighting coefficients, respectively, and k1+k2=1. n represents the total number of remaining energy levels, and θ is shown in Figure 4 (topology 3).(17)P=k1PA+k2PE=k110log10⁡du+10-3afdu10log10⁡du/cos⁡θ+10-3afdu/cos⁡θ+k2ER/E0nFrom (17), the node with the bigger P has a higher priority. When θ is 0, the potential next-hop node is on the line from the sender to the vertical direction. There is maximum value P=1 when ER/E0=n and θ=0.


## 4.1. Network Architecture

In SPRVA, the network is comprised of multiple sink nodes and underwater sensor nodes as shown in Figure3. The sink nodes are uniformly distributed on the surface. Each sink node is equipped with both an acoustic modem and an RF modem. Each sink node can communicate with the data center by RF modem and with underwater sensor nodes by acoustic modem. Each underwater sensor node is equipped with an acoustic modem. The sensor nodes are randomly distributed underwater, and each sensor node can collect and forward data. The data received by any sink node are considered to be delivered successfully. The SPRVA protocol focuses only on the transmission process from the underwater sensor nodes to the sink nodes; communication among the sink nodes is not considered.Figure 3
Network architecture.Each sensor node is equipped with a pressure sensor to acquire pressure information and calculate its depth. In addition, each node possesses a timer to evaluate the distance between itself and its neighbors.


## 4.2. Protocol Design

To solve the problems of DBR and improved DBR discussed in Section3, in this paper, a shortest path routing protocol based on the vertical angle (called SPRVA) is proposed. In SPRVA, a data packet is delivered to a sink node via multiple hops. Each node stores information concerning its depth, its link quality, and its residual energy. Each node broadcasts “hello” packets periodically and records the sending time. After receiving a hello packet from a neighbor, a node first decides whether it is qualified to reply to the hello packet. After receiving a reply packet, the sending node records the replier’s information in an alternative routing table. The sending node calculates and records the distances to its neighbors from its neighbors based on the round-trip times. In SPRVA, a node selects the next-hop node primarily according to the angle between the propagation direction and the vertical direction, as depicted in Figure 4, and the residual energy. The smaller the angle, the shorter the path.Figure 4
Topology 3.UANs are characterized by spatial and temporal variability, and the communication channel is complex. In addition to the main priority dependence on angle and residual energy, SPRVA adopts an alternative priority dependence on link quality to select the next-hop as well. When the main priorities of candidate nodes are equal, the forwarder selects the next-hop based on the link quality to the qualified nodes. SPRVA presets a threshold for energy and link quality, respectively. If the residual energy or link quality of a node is lower than the preset threshold, the node will not answer the hello packets of its neighbors.DBR and improved DBR are greedy routing protocols essentially. An isolated shallow node is likely to be selected as the next-hop node in greedy routing scheme. Underwater sensor nodes are distributed randomly as in Figure5. According to greedy routing scheme, node n1 will select node n4 as the next-hop. However, except for node n1, node n4 has no other neighbor connecting to a sink node. So node n4 fails to forward data packets further. From Figure 5, there is a transmission path from node n1 to the sink node as n1→n2→n3→s. Therefore, a recovery algorithm is provided in our SPRVA protocol.Figure 5
Void area.


## 4.3. Packet Format

In SPRVA, control packets are divided into two types, hello packets and reply packets. The format of control packets is shown in Table1.Table 1
The format of control packet.
Bit 2 8 8 16 Type Sender ID Receiver ID CRC  LoadType: Indicating the type of packets. A value is “0” denotes that the packet is a “hello” packet. A value is “1” denotes the packet is a “reply” packet.Sender ID: Indicating the node ID of the sender in a control packet.Receiver ID: Indicating the ID of receiving node in a control packet. When the packet is a hello packet, the value is filled with “FF”.CRC: Denoting the parity bits.Load: If the style of the packet is “0”, “Load” includes the depth of the sender. Otherwise, “Load” includes the depth and residual energy of the sender.


## 4.4. SPRVA Parameters

This section provides an analysis of the SPRVA parameters that affect system performance.(1) Depth. The pressure sensors on each node can obtain the node’s pressure, denoted by P. P is calculated by P=ρgd, where ρ and g are constant; the depth difference, Δd, can be calculated as in the following equation, where d1 is the depth of a sender and d2 is the depth of the sender’s neighbor.(1)Δd=d1-d2=P1-P2ρg(2) Energy Utilization. According to the channel loss model of UANs, the total channel loss consists of spreading loss and absorption loss as shown in (2) [34]. a(f) is calculated according to formula (3) [23].(2)Td=10log⁡d+10-3afd(3)10log⁡αf=0.11+f2f2+1+44+f24100+f2+2.75f2104+0.003f≥0.40.0020.11f1+f+0.011ff<0.4The total attenuation can also be expressed as follows [34]:(4)10log⁡Ad,f=k∗10log⁡d+l∗10log⁡αfHere,d is the propagation distance, a(f) is the absorption coefficient, and f is the communication frequency of the UAN system. Both f and k are constants; k is related to the spreading space and is 1, 1.5, or 2 when the space is cylindrical, practical, or spherical, respectively. From (2) and (3), the propagation loss and absorption loss increase as the distance increases.Definition. Energy utilization is the ratio of the energy consumption required to transmit that data packet a specific vertical distance to the energy consumption required to transmit that data packet the same vertical distance but along the direction to a neighbor node.The more remaining energy of candidate node, the higher priority of the node. As shown in Figure4, the delay is denoted by∆t, experienced from sending a hello packet to receiving the reply packet. The distance between the sender and the receiver is s. Then, s=Δtv0/2. Therefore, cos⁡θ=Δd/s. Combining (1), we can define the part of main priority of node n1 dependence on energy utilization, denoted by Pa, as shown in the following equation:(5)Pa=cos⁡θ=Δds=2P1-P2ρgΔtv0According to (2), we obtain the following equations:(6)Pu=10log10⁡du+10-3afdu(7)Ps=10log10⁡ds+10-3afdsWherePa is the ratio of the energy consumed by delivering a data packet upward the specified height along the vertical direction, denoted by Pu (the distance is denoted by du) to the energy consumed by delivering a data packet upward the same height along a practical direction, denoted by Ps (the distance is denoted by ds). From (5), ds=du/cos⁡θ. Therefore, the energy utilization can be calculated as shown in (8), and the value of PA is between 0 and 1. The larger the angle, the smaller the energy utilization. Thus, to save energy, SPRVA selects the node with the smallest angle as the next-hop.(8)PA=pups=10log10⁡du+10-3afdu10log10⁡du/cos⁡θ+10-3afdu/cos⁡θ(3) Residual Energy. Assuming that the initial energy of a node is E0, the energy consumption required to send a data packet is Ed, and the energy consumption required to send a hello or reply packet is Es. The energy consumption required to receive a packet is much lower than that required to send a packet; therefore, the energy consumption required to receive any packet is considered to be Er. In idle state, the energy consumption is EI per second. The residual energy, denoted by ER, is calculated as follows:(9)ER=E0-nd∗Ed-nsEs-nrEr-T∗EIHere,T represents the idle time; nd, ns, and nr represent the number of data packets transmitted, control packets transmitted, and packets received, respectively.In this paper, we classify the residual energy inton levels; the nodes with residual energies having the same level are considered as the nodes with equal residual energy.The part of main priority dependence on the residual energy is defined by(10)PE=ER/E0n(4) Link Quality. The factors that affect underwater link quality include turbulence, shipping, waves, and terminal noise. The power spectral density is calculated as follows [34]:(11)Nf=Ntf+Nsf+Nwf+Nthf(12)10log⁡Ntf=17-30log⁡f(13)10log⁡Nsf=40+20ε-0.5+26log⁡f-60log⁡f+0.03(14)10log⁡Nwf=50+7.5w+20log⁡f-40log⁡f+0.4(15)10log⁡Nthf=-15+20log⁡fwhereε is a shipping factor with a value that varies from 0 to 1, and W is the wind velocity, the value of which varies from 0 to 10 m/s. From (11)-(15), the noise increases as the carrier frequency, shipping, and wind velocity increase.The signal-to-noise ratio is denoted bySNR, where SNR=P/Ad,fN(f). Here, P is the transmission power of the narrowband signal. According to the Shannon theorem, the channel capacity, Cd,f, is calculated according to the following equation:(16)Cd,f=Blog2⁡1+SNRd,fFrom (11)-(16), the capacity of the channel decreases as the noise increases, denoted by Nf, which is consistent with the link quality. Therefore, Cd,f is used as both the link quality and as a reference for choosing the next-hop.(5) Main Priority. The main priority is calculated as in (17). Here, k1 and k2 are the weighting coefficients, respectively, and k1+k2=1. n represents the total number of remaining energy levels, and θ is shown in Figure 4 (topology 3).(17)P=k1PA+k2PE=k110log10⁡du+10-3afdu10log10⁡du/cos⁡θ+10-3afdu/cos⁡θ+k2ER/E0nFrom (17), the node with the bigger P has a higher priority. When θ is 0, the potential next-hop node is on the line from the sender to the vertical direction. There is maximum value P=1 when ER/E0=n and θ=0.


## 5. Protocol Procedure

In this section, the protocol procedure is presented in detail. The routing procedure includes initialization and the creation of an alternative routing table. In addition, the detailed implementation of the recovery algorithm is provided.


### 5.1. Initialization

In the initialization phase, each node broadcasts hello packets periodically. When a node receives a hello packet, it first checks whether the packet is from a deeper node. If not, the receiving node simply drops the packet; otherwise, it checks its state information, including residual energy and link quality. If both the residual energy and link quality exceed an established the preset threshold, the node answers the hello packet with a formatted reply packet.


### 5.2. Creating Alternative Routing Table

When a node receives a reply packet from its neighbor, the node considers the neighbor to be eligible for a candidate next-hop and it extracts the depth, residual energy, and link quality information in the reply packet. Meanwhile, each sensor node maintains an alternative routing table. According to the round-trip time∆t, the depth difference∆d, and the residual energy, the node calculates the priority of the neighbor as a next-hop using (17). The neighbor with the highest priority will normally be the best next-hop. However, sometimes, a topology as in Figure 6 exists, where the main priorities of node n1, n2, and n3 are equal. In Figure 6, n0 is the sending node and n1, n2, and n3 are its neighbors with small depths than that of node n0. According to (17), these nodes having the same priorities are eligible for being the best next-hop. Therefore, in addition to the main priorities, SPRVA introduces alternative priorities. In SPRVA, link quality is used to calculate the alternative priority. When the main priorities of neighbors are the same, the sender selects the neighbor with the best link quality as the best next-hop.Figure 6
Topology 4.The format of the potential next-hop node table is shown as follows.Next-hop ID is the node ID of the potential next-hop node.Main priority is the main priority of the potential next-hop node. It is calculated according to the residual energy and the angle between the vertical direction and the propagation direction.Expire is the timeout time of the valid potential next-hop. Its maximum value is the period of broadcasting hello packets.Link quality is the link quality from the potential next-hop node to the current node. It is calculated according to (16).


### 5.3. Recovery Algorithm

In Figure7, node B may be selected as the best next-hop by node A, and nodes C and D are also candidate next-hops of node A. However, node B has no way to find a next-hop according to the greedy routing of SPRVA. Consequently, node B starts the SPRVA recovery algorithm. After receiving a data packet, node B sets the flag field in the data packet to ‘1’, which indicates that the packet should be routed by the recovery algorithm, and then sends it back to node A. Node A then deletes the item entry for node B in its routing table and sends the packet. Because node B has received the packet, it drops the packet. When node B receives the packet with flag “1” from node A, it just drops the packet. When node C or D receives the packet, it resets the flag field in the packet to ‘0’, indicating that the packet will be routed using the greedy routing of SPRVA again.Figure 7
Recovery algorithm flow chart.


## 5.1. Initialization

In the initialization phase, each node broadcasts hello packets periodically. When a node receives a hello packet, it first checks whether the packet is from a deeper node. If not, the receiving node simply drops the packet; otherwise, it checks its state information, including residual energy and link quality. If both the residual energy and link quality exceed an established the preset threshold, the node answers the hello packet with a formatted reply packet.


## 5.2. Creating Alternative Routing Table

When a node receives a reply packet from its neighbor, the node considers the neighbor to be eligible for a candidate next-hop and it extracts the depth, residual energy, and link quality information in the reply packet. Meanwhile, each sensor node maintains an alternative routing table. According to the round-trip time∆t, the depth difference∆d, and the residual energy, the node calculates the priority of the neighbor as a next-hop using (17). The neighbor with the highest priority will normally be the best next-hop. However, sometimes, a topology as in Figure 6 exists, where the main priorities of node n1, n2, and n3 are equal. In Figure 6, n0 is the sending node and n1, n2, and n3 are its neighbors with small depths than that of node n0. According to (17), these nodes having the same priorities are eligible for being the best next-hop. Therefore, in addition to the main priorities, SPRVA introduces alternative priorities. In SPRVA, link quality is used to calculate the alternative priority. When the main priorities of neighbors are the same, the sender selects the neighbor with the best link quality as the best next-hop.Figure 6
Topology 4.The format of the potential next-hop node table is shown as follows.Next-hop ID is the node ID of the potential next-hop node.Main priority is the main priority of the potential next-hop node. It is calculated according to the residual energy and the angle between the vertical direction and the propagation direction.Expire is the timeout time of the valid potential next-hop. Its maximum value is the period of broadcasting hello packets.Link quality is the link quality from the potential next-hop node to the current node. It is calculated according to (16).


## 5.3. Recovery Algorithm

In Figure7, node B may be selected as the best next-hop by node A, and nodes C and D are also candidate next-hops of node A. However, node B has no way to find a next-hop according to the greedy routing of SPRVA. Consequently, node B starts the SPRVA recovery algorithm. After receiving a data packet, node B sets the flag field in the data packet to ‘1’, which indicates that the packet should be routed by the recovery algorithm, and then sends it back to node A. Node A then deletes the item entry for node B in its routing table and sends the packet. Because node B has received the packet, it drops the packet. When node B receives the packet with flag “1” from node A, it just drops the packet. When node C or D receives the packet, it resets the flag field in the packet to ‘0’, indicating that the packet will be routed using the greedy routing of SPRVA again.Figure 7
Recovery algorithm flow chart.


## 6. Performance Evaluation

In this section, the performance of the SPRVA protocol is analyzed theoretically and experimentally.


### 6.1. Theory Analysis

The SPRVA has high energy efficiency and short propagation delay. In this section, the performance of this routing algorithm will be analyzed. We assume that the hop-count of routing path in SPRVA is the same with RE-PBR routing algorithm. The hop-count of the path is denoted byN. The vertical angle is θi in SPRVA and φi in another protocol at the ith hop. According to the previous analysis, we can get θi≤φi.(1) Energy Consumption. The depth difference of data packets from the sender to the next-hop is di at the ith hop. From (2), we can obtain the energy consumption of transmitting a data packet from a source node to a sink node using different routing algorithms as shown in(18)EPd=∑i=1i=Nk10log10⁡dicos⁡θi+10-3af(19)Ep′d=∑i=1i=Nk10log10⁡dicos⁡φi+10-3afTherefore, the ratio of energy-saving is shown as follows:(20)Esd=∑i=1i=Nk10log10⁡di/cos⁡φi+10-3af-∑i=1i=Nk10log10⁡di/cos⁡θi+10-3af∑i=1i=Nk10log10⁡di/cos⁡φi+10-3af(2) Delay Analysis. The propagation delays of a data packet from the ith hop to the sink node using SPRVA, denoted by TP(d), using RE-PBR, denoted by Tp′(d), are shown as formulas (21) and (22). Here, θi is the angle formed by the vertical direction and the best next-hop selected according to SPRVA. φi is the angle formed by the vertical direction and the best next-hop selected according to other protocols.(21)TPd=∑i=1i=Ndicos⁡θiv0(22)Tp′d=∑i=1i=Ndicos⁡φiv0Combining formulas (21) and (22), we can obtain the shorting ratio of propagation delay as follows:(23)Tsd=∑i=1i=Ndi/cos⁡φiv0-∑i=1i=Ndi/cos⁡θiv0∑i=1i=Ndi/cos⁡φiv0


### 6.2. Simulation Settings

In this section, extensive simulations are conducted. We analyze the performance of SPRVA and compare it with those of the DBR, VBF, HHVBF, and RE-PBR protocols.The simulation tool is NS3 which is a discrete event simulator. The simulation area is a 3D area of 1500 m∗1500 m∗1000 m. The CW-MAC protocol is used. CW-MAC is based on a slotted contention window scheme. The detailed parameters are shown in Table 2.Table 2
Parameter settings.
Parameter name Value Packet Error Rate Model Ns3::UanPhyPerNoCode Signal Noise Model Ns3::UanPhyCalcSinrDefault UAN Propagation Model Ns3::UanPropModel Thorp MAC Model CWMAC Mobility Model Random Walk2Dmobilitymodel (speed 1~5 m/s) Energy Model Acousticmodemenergymodel (TX:50W,RX/Idle:158Mw, Sleep:5.8mW) Data Rate 10 kbps Center Frequency 22 kHz Bandwidth 10 kHz Mode Type FSK Sink Node Position (1500 m, 1500 m, 0 m) Source Node Position (0 m, 0 m, 1000 m) Hello packet length 7 Byte Reply packet length 6 Byte Date length 150 Byte TX power 2 W RX power 20 mW Idle power 10 mWWe used the following parameters to evaluate the performance of SPRVA.Packet delivery rate is the ratio of the number of data packets received successfully by the sink nodes to the number of data packets transmitted by source nodes. A data packet received by many sink nodes is counted only once when calculating the packet delivery ratio.Average end-to-end delay represents the average time required to transmit a packet from a source node to a sink node.Total energy consumption indicates the total energy used which includes the transmitting, receiving and idling energy consumption of all nodes in the UANs.Energy consumption is total energy consumption divided by the product of system-generated packets and packet delivery rates.(1) The Effect of Varying the Number of Hello Packet, the Velocity of Water Flow, and the Number of Sink Nodes. Figure 8 shows the impact of changes in flow rate and number of hello packets on delivery rates. From Figure 8, we can see the delivery ratio gradually decreases with the velocity of water flow. The delivery ratio increases with the number of hello packets per second when the number is lower than 0.4 packets/s. When the number is increased from 0.4 to 0.6 packets/s, the delivery ratio is at a stable stage. However, when the number exceeds 0.6 packets/s, the delivery ratio decreases. The reasons are that the number of hello packets is too small, and the information of neighbor nodes cannot be updated in time. Meanwhile, too many hello packets result in collisions. In the following study, we set the velocity of water flow to 3 m/s and the number of hello packets to 0.5 packets/s.Figure 8
Impacts of changes in flow rate and number of hello packets on delivery rates.Figure9 shows the delivery rates, average end-to-end delays, and energy consumption of the systems with 1 and 3 sink nodes. From Figure 9(a), the delivery rate increases with the increasing number of nodes in the systems with a sink node and three sink nodes. This result is because when the number of nodes is too small, the void area is big, and some data packets cannot be delivered to sink nodes hop by hop. However, the delivery rate of the system with one sink node is nearly 90% when the number of nodes is 50, which is lower than that for the system with three sink nodes. This result may occur when a packet that may be delivered to the underwater node near the water surface further being delivered to one of three sink nodes in the system with three sink nodes but cannot be further delivered to the only sink node in the system with one sink node. Figures 9(b) and 9(c) show the system with one sink node consumes more energy and has a longer end-to-end delay than does the system with three sink nodes. This result occurs because when there is only one sink node in the network; after a data packet has been delivered to an underwater node close to the water’s surface along a vertical direction, the packet may require multiple hops at a similar depth to deliver the data packet to the only sink node. In contrast, when there are multiple sink nodes, an underwater node close to the water’s surface does not require transmission to multiple forwarding nodes at similar depths because at least one sink node will exist within the communication range of underwater nodes close to the water’s surface.Figure 9
The effect of varying the number of sink nodes on performance.
(a)
Delivery rate (b)
End-to-end delay (c)
Energy consumption(2) The Effect of the Recovery Algorithm on the System Performance. Figure 10 indicates the effects of the recovery algorithm on the delivery rate, end-to-end delay, and energy consumption. From Figure 10(a), we can see that the packet delivery rate of the system with the recovery algorithm is clearly higher than for the system without recovery algorithm when the nodes are sparse. This result occurs because there are more void nodes when the nodes are sparse, and data packets cannot be delivered to sink nodes in the system without the recovery algorithm. As the node density increases, the recovery algorithm has less impact on the delivery ratio because of the decreasing void area. Figures 10(b) and 10(c) show that the energy consumption and end-to-end delay of the system are slightly higher when the recovery algorithm is activated. This result occurs because executing the recovery algorithm prolongs the transmission path. Moreover, the recovery algorithm requires selecting another neighbor node, which costs additional time.Figure 10
The performance of the recovery algorithm.
(a)
Effect of recovery algorithm on delivery rate (b)
Effect of recovery algorithm on energy consumption (c)
Effect of recovery algorithm on end-to-end delay(  3) Comparison of Routing Protocols. Figure 11 shows performance comparisons of DBR, VBF, EEDBR, RE-PBR, and SPRVA. Figure 11(a) indicates that SPRVA uses less energy than DBR, VBF, EEDBR, and RE-PBR. The reasons are primarily as follows.Figure 11
Performance comparisons.
(a)
Energy consumption per packet (b)
End-to-end delay (c)
Delivery ratio(1) SPRVA adopts unicast routing. In contrast, DBR, EEDBR, and VBF adopt multicast routing, which leads to redundant forwarding and extra energy consumption. RE-PBR is a unicast routing. However, the times of retransitions in other protocols exceed those for SPRVA.(2) Using SPRVA, the transmission distance is shorter than when using DBR, VBF, HHVBF, and SPRVA. A longer transmission path consumes more energy.Figure11(b) shows that the end-to-end delays of SPRVA are shorter than those of DBR, VBF, EEDBR, and RE-PBR. This result occurs because, in SPRVA, data packets travel the shorter path to the sink nodes, which results in shorter propagation delays. Meanwhile, the retransitions of packets for other protocols need a long time when the packets are delivered to the nodes in the void area, whereas a recovery algorithm is introduced in SPRVA.Figure11(c) indicates that the data packet delivery rates of SPRVA are higher than those of DBR, VBF, EEDBR, and RE-PBR. Because the packets are delivered to nodes in the void area, they will fail to be delivered to sink nodes in other protocols. However, when the packets are delivered to the nodes in the void area, the recovery algorithm is called, which causes the packets to still be delivered to sink nodes along other paths.


## 6.1. Theory Analysis

The SPRVA has high energy efficiency and short propagation delay. In this section, the performance of this routing algorithm will be analyzed. We assume that the hop-count of routing path in SPRVA is the same with RE-PBR routing algorithm. The hop-count of the path is denoted byN. The vertical angle is θi in SPRVA and φi in another protocol at the ith hop. According to the previous analysis, we can get θi≤φi.(1) Energy Consumption. The depth difference of data packets from the sender to the next-hop is di at the ith hop. From (2), we can obtain the energy consumption of transmitting a data packet from a source node to a sink node using different routing algorithms as shown in(18)EPd=∑i=1i=Nk10log10⁡dicos⁡θi+10-3af(19)Ep′d=∑i=1i=Nk10log10⁡dicos⁡φi+10-3afTherefore, the ratio of energy-saving is shown as follows:(20)Esd=∑i=1i=Nk10log10⁡di/cos⁡φi+10-3af-∑i=1i=Nk10log10⁡di/cos⁡θi+10-3af∑i=1i=Nk10log10⁡di/cos⁡φi+10-3af(2) Delay Analysis. The propagation delays of a data packet from the ith hop to the sink node using SPRVA, denoted by TP(d), using RE-PBR, denoted by Tp′(d), are shown as formulas (21) and (22). Here, θi is the angle formed by the vertical direction and the best next-hop selected according to SPRVA. φi is the angle formed by the vertical direction and the best next-hop selected according to other protocols.(21)TPd=∑i=1i=Ndicos⁡θiv0(22)Tp′d=∑i=1i=Ndicos⁡φiv0Combining formulas (21) and (22), we can obtain the shorting ratio of propagation delay as follows:(23)Tsd=∑i=1i=Ndi/cos⁡φiv0-∑i=1i=Ndi/cos⁡θiv0∑i=1i=Ndi/cos⁡φiv0


## 6.2. Simulation Settings

In this section, extensive simulations are conducted. We analyze the performance of SPRVA and compare it with those of the DBR, VBF, HHVBF, and RE-PBR protocols.The simulation tool is NS3 which is a discrete event simulator. The simulation area is a 3D area of 1500 m∗1500 m∗1000 m. The CW-MAC protocol is used. CW-MAC is based on a slotted contention window scheme. The detailed parameters are shown in Table 2.Table 2
Parameter settings.
Parameter name Value Packet Error Rate Model Ns3::UanPhyPerNoCode Signal Noise Model Ns3::UanPhyCalcSinrDefault UAN Propagation Model Ns3::UanPropModel Thorp MAC Model CWMAC Mobility Model Random Walk2Dmobilitymodel (speed 1~5 m/s) Energy Model Acousticmodemenergymodel (TX:50W,RX/Idle:158Mw, Sleep:5.8mW) Data Rate 10 kbps Center Frequency 22 kHz Bandwidth 10 kHz Mode Type FSK Sink Node Position (1500 m, 1500 m, 0 m) Source Node Position (0 m, 0 m, 1000 m) Hello packet length 7 Byte Reply packet length 6 Byte Date length 150 Byte TX power 2 W RX power 20 mW Idle power 10 mWWe used the following parameters to evaluate the performance of SPRVA.Packet delivery rate is the ratio of the number of data packets received successfully by the sink nodes to the number of data packets transmitted by source nodes. A data packet received by many sink nodes is counted only once when calculating the packet delivery ratio.Average end-to-end delay represents the average time required to transmit a packet from a source node to a sink node.Total energy consumption indicates the total energy used which includes the transmitting, receiving and idling energy consumption of all nodes in the UANs.Energy consumption is total energy consumption divided by the product of system-generated packets and packet delivery rates.(1) The Effect of Varying the Number of Hello Packet, the Velocity of Water Flow, and the Number of Sink Nodes. Figure 8 shows the impact of changes in flow rate and number of hello packets on delivery rates. From Figure 8, we can see the delivery ratio gradually decreases with the velocity of water flow. The delivery ratio increases with the number of hello packets per second when the number is lower than 0.4 packets/s. When the number is increased from 0.4 to 0.6 packets/s, the delivery ratio is at a stable stage. However, when the number exceeds 0.6 packets/s, the delivery ratio decreases. The reasons are that the number of hello packets is too small, and the information of neighbor nodes cannot be updated in time. Meanwhile, too many hello packets result in collisions. In the following study, we set the velocity of water flow to 3 m/s and the number of hello packets to 0.5 packets/s.Figure 8
Impacts of changes in flow rate and number of hello packets on delivery rates.Figure9 shows the delivery rates, average end-to-end delays, and energy consumption of the systems with 1 and 3 sink nodes. From Figure 9(a), the delivery rate increases with the increasing number of nodes in the systems with a sink node and three sink nodes. This result is because when the number of nodes is too small, the void area is big, and some data packets cannot be delivered to sink nodes hop by hop. However, the delivery rate of the system with one sink node is nearly 90% when the number of nodes is 50, which is lower than that for the system with three sink nodes. This result may occur when a packet that may be delivered to the underwater node near the water surface further being delivered to one of three sink nodes in the system with three sink nodes but cannot be further delivered to the only sink node in the system with one sink node. Figures 9(b) and 9(c) show the system with one sink node consumes more energy and has a longer end-to-end delay than does the system with three sink nodes. This result occurs because when there is only one sink node in the network; after a data packet has been delivered to an underwater node close to the water’s surface along a vertical direction, the packet may require multiple hops at a similar depth to deliver the data packet to the only sink node. In contrast, when there are multiple sink nodes, an underwater node close to the water’s surface does not require transmission to multiple forwarding nodes at similar depths because at least one sink node will exist within the communication range of underwater nodes close to the water’s surface.Figure 9
The effect of varying the number of sink nodes on performance.
(a)
Delivery rate (b)
End-to-end delay (c)
Energy consumption(2) The Effect of the Recovery Algorithm on the System Performance. Figure 10 indicates the effects of the recovery algorithm on the delivery rate, end-to-end delay, and energy consumption. From Figure 10(a), we can see that the packet delivery rate of the system with the recovery algorithm is clearly higher than for the system without recovery algorithm when the nodes are sparse. This result occurs because there are more void nodes when the nodes are sparse, and data packets cannot be delivered to sink nodes in the system without the recovery algorithm. As the node density increases, the recovery algorithm has less impact on the delivery ratio because of the decreasing void area. Figures 10(b) and 10(c) show that the energy consumption and end-to-end delay of the system are slightly higher when the recovery algorithm is activated. This result occurs because executing the recovery algorithm prolongs the transmission path. Moreover, the recovery algorithm requires selecting another neighbor node, which costs additional time.Figure 10
The performance of the recovery algorithm.
(a)
Effect of recovery algorithm on delivery rate (b)
Effect of recovery algorithm on energy consumption (c)
Effect of recovery algorithm on end-to-end delay(  3) Comparison of Routing Protocols. Figure 11 shows performance comparisons of DBR, VBF, EEDBR, RE-PBR, and SPRVA. Figure 11(a) indicates that SPRVA uses less energy than DBR, VBF, EEDBR, and RE-PBR. The reasons are primarily as follows.Figure 11
Performance comparisons.
(a)
Energy consumption per packet (b)
End-to-end delay (c)
Delivery ratio(1) SPRVA adopts unicast routing. In contrast, DBR, EEDBR, and VBF adopt multicast routing, which leads to redundant forwarding and extra energy consumption. RE-PBR is a unicast routing. However, the times of retransitions in other protocols exceed those for SPRVA.(2) Using SPRVA, the transmission distance is shorter than when using DBR, VBF, HHVBF, and SPRVA. A longer transmission path consumes more energy.Figure11(b) shows that the end-to-end delays of SPRVA are shorter than those of DBR, VBF, EEDBR, and RE-PBR. This result occurs because, in SPRVA, data packets travel the shorter path to the sink nodes, which results in shorter propagation delays. Meanwhile, the retransitions of packets for other protocols need a long time when the packets are delivered to the nodes in the void area, whereas a recovery algorithm is introduced in SPRVA.Figure11(c) indicates that the data packet delivery rates of SPRVA are higher than those of DBR, VBF, EEDBR, and RE-PBR. Because the packets are delivered to nodes in the void area, they will fail to be delivered to sink nodes in other protocols. However, when the packets are delivered to the nodes in the void area, the recovery algorithm is called, which causes the packets to still be delivered to sink nodes along other paths.


## 7. Conclusions

In this paper, SPRVA routing protocol based on multilevel priority is proposed. In SPRVA, a forwarding node determines the best next-hop according to the main priorities of candidate nodes. The main priorities are relevant to the vertical angle and residual energy of candidate nodes, which can help to select the shortest path and balance the energy consumption of the whole network. When the main priorities of candidate nodes are the same, the alternative priorities are used. The alternative priorities are relevant to the link qualities, which can help to select the path with best link quality. In addition, to address the problem of void area, a recovery algorithm is designed.Extensive simulations are conducted to evaluate the performance of SPRVA. Simulation results show that SPRVA protocol decreases significantly energy consumption and end-to-end delay on the premise of ensuring delivery rate. The energy consumption of SPRVA decreases by 40% compared with RE-PBR algorithm and 70% compared with DBR algorithm. The end-to-end delay of SPRVA decreases by 30% compared with RE-PBR algorithm and 97% compared with DBR algorithm.



---

*Source: 9145675-2019-07-04.xml*