With the development of wireless networks and increasingly interest of people in underwater resources and environment, UWSNs are being paid more and more attention. Because of the characteristics of underwater channel and acoustic signal, the protocols used in the terrestrial networks cannot be directly used in UWSNs. In this paper, a reliable and energy-efficient routing protocol based on SHS and coding, called RSHSC, is proposed. Firstly, regular nodes are assigned to cluster heads according to simplified harmony search algorithm. Secondly, partial network encoding is introduced and the next two-hop information is considered when data packets are transmitted to sink nodes from the source node. Only the best next-hop forwards data packets. All data packets from neighbor nodes are used for decoding. Thirdly, two schemes of updating routing are designed and compared. Lastly, extensive simulations prove RSHSC is effective in improving reliability and decreasing energy consumption.
In recent years, UWSNs (underwater wireless sensor networks) attracted more and more attentions because of the wide application such as marine source exploration and pollution monitor [
Like most wireless networks, the performances of delay, energy consumption, reliability, and throughput and bandwidth utilization are important in UWSNs [
The contributions of this paper are showed as follows:
The regular nodes are assigned to the cluster heads based on simplified harmony search algorithm (SHS). Two schemes are designed Partial network coding is introduced when routing data from source cluster head to the sink node. Meanwhile, the data from all neighbor nodes are used for decoding, which makes full use of the broadcast characteristics of UWSNs Two schemes are compared for maintaining routing timely: when the speed of water flow is constant, scheme 1 is adopted; otherwise, the scheme 2 is used Through simulations, the best SHS and routing maintaining algorithm are determined and the performance of RSHSC is evaluated
Researchers have designed some routing protocols for UWSNs in recent years. In 2008, Yan et al. proposed DBR routing algorithm [
Protocols characteristics.
Protocol name | Characteristics | Advantage | Disadvantage |
---|---|---|---|
DBR | Select next-hop only based on depth | Independent location information, decrease part of redundant forwarding | Long delay, high energy consumption |
EEDBR | Residual energy is considered | Prolong network life | Long delay, redundant forwarding |
DBR-NC | Coding is introduced | Reliable | Long delay, energy is not considered |
WDFAD-DBR | Next two-hop information is considered. Adaptively adjust the forwarding area according to node dense | Avoid selecting the node in the void area as the next-hop | Long delay in sparse network delivery ratio is low |
iAMCTD | Courier node is used | Courier node decreases delay, optimized threshold decreases redundant forwarding | Energy unbalance |
LMPC | Establish binary tree | Reliable, high delivery ratio | High energy consumption, void node is not considered |
FLMPC | Establish binary tree from the sensor nodes which reside near the layer | Copies in the cross node increase the delivery ratio, decrease the retransmission | Routing update is not considered, multiple routing wastes energy |
GPNC | Network coding is used based on geographic location information | Reliable, decrease energy consumption, shorten delay | Void node is not considered, energy unbalance |
CoUWSN | Uses multiple input multiple output | Save transmit power, increase data rate, extend the communication range | Consume more energy, long delay |
DEADs | Cooperative routing is joined with sink mobility | High throughput, prolong network life | Waste energy, energy unbalance |
AEDG | Use shortest path tree to assign nodes to gate way | Network lifetime prolongation, throughput maximization | Long delay |
Hubcode | Use hubs as relay and encode multiple messages address to the same destination | Reducing the forwarding overheads, increasing the delivery ratio | Energy balance long delay |
BLOAD | Addressing energy hole, mixed routing scheme (including directly and multiple hop communication) is used | Balance energy, avoid energy hole | The node with longer distance to sink dies quickly |
TSBNC | Theory of network coding is introduced into time-slot based routing algorithm | Decrease energy consumption and collisions | Energy unbalance, long delay |
NCRP | Network coding and cross-layer design are used | High delivery ratio, save energy | Void node is not considered, energy unbalance |
QDAR | Q-learning algorithm is introduced | Extending network lifetime and short delay | In the mobile network, energy consumption is high. Link quality is not considered |
LB-AGR | Nodes are divided into different levels, upstream and downstream are considered when selecting the best-next-hop | Comprehensive factors are considered | The void node is not considered, greedy routing |
In this sector, network model, energy and propagation model are analyzed.
The network model is showed in Figure Regular nodes: the nodes have ordinary amount of initial energy, which can communicate with advanced nodes and sink nodes Advanced nodes: the nodes have more initial energy than regular nodes. Advanced nodes can communicate with each other, regular nodes and sink nodes. The advanced node is also called as the cluster head (CH). The advanced nodes with almost depth are divided into the same levels
Network model.
In the network, each sink node is equipped with both acoustic modem and RF modem, which are responsible for communicating with underwater nodes (regular nodes and advanced nodes) and data centers, respectively. Each underwater node is equipped with an acoustic modem, which is responsible for communicating with each other and sink nodes. All nodes mobile with water flow. Each node can get the location information of itself.
To design a routing algorithm with high bandwidth utilization, energy efficient and reliable for UWSNs, we must learn about the channel model. In UWSNs, channel is affected by absorption loss and spreading loss. The attenuation
Here,
There are great many types of noise under water. The main noise include turbulence (
Here,
Therefore, the signal to noise (SNR) is showed as (
According to Shannon theory, channel capacity is calculated as (
The implementation of RSHSC consists of four steps: initialization, cluster construction, intercluster routing, and routing maintaining. In initialization phase, sink nodes broadcast beacon signal with the location information of themselves to underwater nodes. Cluster heads broadcast hello packets. Regular nodes broadcast information packets. The details of initialization phase are showed in Section
Sink nodes broadcast beacon signal including location and ID of themselves. After receiving beacon signal, each cluster head calculates and saves the distance between itself and sink nodes. Then, the cluster head broadcasts hello packet, whose format is showed in Table
Format of hello packet.
ID | Seq number | ID1 | ID2 | ID3 | Reserve | RE_ENERGY | Address |
Format of information packet.
ID | ID1 | Distance1 | ID2 | Distance 2 |
In this phase, on one hand, regular nodes and cluster heads get information from each other; on the other hand, cluster heads get the information of neighbor cluster heads.
In the process of cluster constructing, the harmony search algorithm is introduced.
HS is a heuristic global search algorithm. The I instruments (
The procedure of HS is as follows:
The algorithm generates The algorithm generates local perturbations to the new solution with probability Iterate iteratively until the expected number of iterations is As above, by introducing HR and
According to the characteristics of UWSNs, the average number of regular nodes managed by each cluster head is small, and it is difficult to get the global information of the whole networks. Therefore, the simplified HS algorithm is proposed for UWSNs.
Taking regular nodes as research objects, the assignment is determined by regular nodes. We simplify the HS (HSA) as follows:
The objective function is
Here, Because any regular node is assigned to only the cluster head in its communication range, we use the local selection of regular nodes being assigned to the cluster head to replace the global assignment. So the According to the information of cluster heads recorded in the regular nodes, the HM is adjusted at probability Taking cluster heads as research objects, the assignment is determined by cluster heads. We simplify the HS (HSB) as follows:
The objective function is the same as HSA Similar to HSA, According to the information of regular nodes recorded in the cluster heads, the HM is adjusted at probability
Regular node assignment.
How are data packets transmitted from a source node to the sink node? In this section, the procedure is analyzed.
According to the initialization procedure, each CH saves the information of neighbor CHs as showed in Table
Neighbors’ information table of cluster head.
ID | Address | Residual energy | Address of next-hop | Next-hop residual energy | Priority |
Advanced distance.
As above, the node with bigger advanced distance to sink and more residual energy is selected as the best next-hop. Therefore, the selected next-hop may have far distance to the previous hop, which leads to the big probability of failing to deliver. To enhance the reliability of the network, in our algorithm, coding is introduced.
In most of conventional routing algorithms, the forwarder is responsible for relaying data without any processing. However, in UWSNs, like other wireless communications, broadcast is adopted. Meanwhile, the bandwidth is limited and delay is long. In order to make full use of the characteristics of broadcast and limited bandwidth, network coding is an efficient measure. The basic procedure of network coding is showed in Figure
Coding theory.
Without coding
Coding
The data packet
In the network without coding as Figure
Furthermore, we compare the partial network coding with the full network coding. In Figure
Full network coding and partial network coding.
Full network coding
Partial network coding
Node A encode data packets
To decode the encoded packets into original data packets, node B needs all data packets. So, the delay to transmit these three data packets is 3T (T is one slot time). In Figure
In our algorithm, partial network coding is adopted. Each relay receives the encoded packets and decodes them. Then the next-hop of relay continues to encode the original data packets until the sink node receives the packets. If the sink node is in the communication range of the relay, the decoded packets are directly forwarded to the sink node.
As showed in Figure
Encoding algorithm flow chart.
The procedure of encoding algorithm is showed in Figure
The detailed routing procedure is showed in Figure
Routing algorithm flow chart.
Because of the topology is mobile as the time goes by, routing needs to be updated timely. Here, there are two schemes to update route.
In our protocol, data is transmitted block by block [
The scheme 1 is simple to realize, and period broadcasting control packets is avoided. Extra control packets are decreased compared with the previous routing update algorithms, which decreases the collisions and energy consumption. Meanwhile, only the next-hop with lower delivery ratio is updated, and other nodes are not affected.
However, the back and forth time of the control packets is too long because of the long propagation delay in UWSNs. The unstable stage results in the failing to deliver data packets. Therefore, the scheme 2 of updating routing is proposed.
We know, in our algorithm, the location information of nodes can be gotten. The updating algorithm can be designed according to the location information. As Figure
Expected time.
Comparing with the horizontal movement, the motion of vertical direction has a small range and can be ignored. The neighbors with shorter distance to the sink node are set as uniform distribution. The expected distance,
To get the information of recovered data packets in next-hop, an ACK packet is necessary from the next-hop. To decrease the number of ACK packets, an ACK packet is sent for a block. The bigger the block, the less ACK to transmit constant data packets. However, because of the harsh environment under water, the bigger the block, the less probability of a successful delivery, which leads to too many re-transmission of original data packets. We know, the more original packets being transmission, the more energy consumption.
For the size of block is
Therefore, we should select moderate block size to balance the delivery ratio and energy consumption.
From the basic theory of coding, we know the number of sending encoded packets should be more than original packets to decode them into initial packets. In fact, the more linearly independent encoded packets are sent, the easier they are to decode. However, too many packets being transmitted wastes energy and results in collision. The effective transmission is defined as (
We assume the total number of original packets is
In addition, the ACK packets are sent, and the number of ACK packets is relative with the size of block. So, the number of ACK packets
During initial phase and routing updating phase, the control packets are sent. The number of control packets is increased as the number of nodes. We assume the value is constant
In our algorithm, for simplicity, the energy consumption of receiving packets is ignored, the energy consumption of sending a data packets and a control packet is set as
Because the cost of arranging the UWSNs is too high, simulations are adopted to evaluate the performance of the designed protocol. NS3 is a popular simulator to simulate UWSNs. NS3 offers some characteristics that other simulators have not, such as underpinning to discrete-event-driven networks, simulation of high-fidelity UWSNs channels, complete protocol stack, and mobile 3D networks. Firstly, the schemes of constructing cluster and updating routing are evaluated. Secondly, the influence of the node density and the number ratio of regular nodes to cluster heads on the performance of the system is tested. Lastly, we compare RSHSC with NCRP and VBF. NCRP uses network coding to greedily forward data packets to the sink. VBF constructs a vector pipe from the source node to the sink node. Only the nodes in the pipe forward data.
In our simulations, the nodes are deployed in a 3D area with 3000 m
The data rate is 10 kbps. The center frequency is 12 KHZ. The bandwidth is 10 KHZ. Packet error rate model is ns3: UanPhyPerNoCode. Mode type is FSK. Signal noise model is ns3 :: Uan Phy Calc Sinr Default. Acoustic propagation speed is 1500 m/s. UAN Propagation model is ns3 :: Uan Prop Model Thorp. Energy model is acoustic modem energy model. MAC model is CWMAC. The mobility model is random walk 2D mobility model (speed: 2 ∼ 4 m/s, directions are chosen randomly). The payload of DATA is 64 bytes, and the number of data packets in each block is 60. Deployment region is 3D region of 3 × 3 × 2 km3. Node number is 20–75. The initial energy of advanced nodes is set as 100 J, and regular nodes is set as 25 J.
In our design, the ways of constructing clusters include SHSA and SHSB. Maintaining routing includes scheme 1 and scheme 2. Here, the number ratio of regular nodes to advanced node is 2 : 1. To evaluate the performance of each scheme, four cases are studied as Table
From Figure
Affection of different schemes.
The delivery ratio
The network life ratio
Four cases.
Case number | Constructing cluster | Maintaining routing |
---|---|---|
Case 1 | SHSA | Scheme 1 |
Case 2 | SHSB | Scheme 1 |
Case 3 | SHSA | Scheme 2 |
Case 4 | SHSB | Scheme 2 |
In Figure
Affection of RRTA.
NCRP is a cross-layer routing protocol based on network coding (NCRP) for UWSNs, which utilizes network coding and cross-layer design to greedily forward data packets to sink nodes efficiently [
From Figure
Comparation of performance.
Delivery ratio
Energy consumption per packet
End-to-end delay
In this paper, RSHSC, an energy effective and reliable routing protocol based on harmony search algorithm and coding, is proposed for UWSNs. The process of RSHSC can be mainly divided into four parts: initialization, constructing clusters, intercluster routing and routing maintenance. In the initialization phase, the control packets are sent and nodes got the information of each other. In the process of constructing routing, each regular node is assigned to a cluster head according to simplified harmony search algorithm. The energy balance between cluster heads and the energy between ordinary nodes are taken into account when assigning. During the process of constructing routing, data packets are encoded. The best next-hop is responsible for forwarding data packets. The data packets from other neighbors is used to decode. The utilization of data packets from other neighbors increases the channel utilization. Meanwhile, the next two-hop is considered when selecting the best next-hop, which avoids the void node being selected as the next-hop. Two schemes are compared in the phase of maintaining routing. We get that scheme 1 is effective to save energy via theoretical analysis. Lastly, extensive simulations are conducted based NS-3. The results show that RSHSC is more effective than VBF and NCRP in decreasing energy consumption and increasing delivery ratio. In the future work, we will explore the implement of RSHSC and the better topology for improving the performance of UWSNs.
The data used to support the findings of this study are available from the corresponding author upon request. We agree that readers are free to use any data in the article.
The authors declare that they have no conflicts of interest.
Meiju Li designed the experiments; Meiju Li and Chunyan Peng analyzed the data; Xiujuan Du contributed analysis tools; and Meiju Li and Xiujuan Du wrote the paper.
This work is supported by the National Natural Science Foundation of China (61751111), Qinghai Office of Science and Technology (2018-SF-143), Key Lab of IoT of Qinghai (2017-ZJ-Y21), Hebei Engineering Technology Research Center for IOT Data Acquisition and Processing, CERNET Innovation Project (NGII20160307).
The supplementary material provides the arranged data of NS-3 simulation results in Section