Keywords

More and more discussions about underwater acoustic communication. The medium for underwater acoustic communication is sound waves [1,2,3], especially long-distance communications underwater is difficult. The noise, caused by fish, ships, and waves in the ocean, makes the sound field there extremely chaotic, blurring received signals [4]. Since the current underwater communication mostly adopts point-to-point communication, it is difficult to meet the need of communication on the sea and inside the sea. So there is an urgent need to develop a new underwater communication network. From underwater ad hoc network, this paper discusses and analyzes the influence of bandwidth allocation algorithm of linear programming on the performance of underwater acoustic communication.

1 Overview of Ad Hoc Based UWA Networks

The underwater acoustic communication network can be flexibly used in different seabed and sea surface scenarios, and is widely used in marine environment observation and so on. It can exchange information at multiple observation points in different space and position in water. Moreover, the underwater acoustic channel has a variety of transmission states, and the operating environment of the ocean is relatively bad. It has a high demand for the reliability of the communication algorithm and equipment, and the networking of underwater acoustic communication has become a hot research topic at present [5,6,7]. The idea of ad hoc network originated from ALOHA network in the United states. Ad hoc network has the following characteristics: dynamic topology, self-organizing structure, distributed network, multi-hop routing.

Underwater acoustic communication transmits information mainly through water, its sound transmission medium, instead of air. The communication environment under water is more complex than in the air, acoustic wave spreads in water is difficult, and it spreads far in the air, in order to increase the acoustic communication distance can increase the communication nodes by forwarding the information, the information can be transferred more far, this is the ad hoc network for communication under water. There are two kinds of networking modes in ad hoc networks: hierarchical distributed architecture and planar distributed architecture, which are shown in Figs. 1, 2, respectively. The different characteristics of the two structures are suitable for different occasions, and the underwater communication occasions are more suitable for second structure, because the nodes in the second structure are freely joined, and the network build faster.

Fig. 1.
figure 1

Layered distributed network structure

Fig. 2.
figure 2

Planar distributed network structure

Because underwater acoustic communication is different from electromagnetic wave communication, the routing protocol and bandwidth allocation algorithm of underwater acoustic ad hoc network are different from ad hoc network in air. This paper mainly analyzes the bandwidth allocation of underwater acoustic ad hoc network.

2 MAC Constraints in Underwater Acoustic Communication

When the node communication in the multi-hop ad hoc network is communicated [8], the problem of congestion control [9] should be considered. In another word, the constraint of MAC should be considered.

MAC constraints [10] include link constraints and time slot constraints. Link constraint means that the sum of the rates of data streams passing through a link can not exceed the bandwidth capacity of the link. The time constraint is the communication and reception data of all communication nodes in the network at the same time. Take Fig. 2 as an example to discuss MAC constraints.

For each node \( N_{i} (i = 1,2,3,4,5,6) \), two data streams \( f_{k} (k = 1,2) \) are transmitted to the terminal node 6 on the water surface node 1 and node 2 respectively, and two data streams are transmitted through the intermediate node respectively. The channel capacity of each link is \( C_{j} (j = 1,2,3,4,5) \).

Which nodes are passed through each node and are represented by matrix A. The row number of the matrix represents the node number. The column number represents the link number. A link passes through a node and is represented by 1. It does not go through 0. For example \( A_{ij} = 1 \) means a link \( l_{j} \) passes through a node \( N_{i} \), and if it does not pass, the value is equal to 0.

The actual use rate of node time slot is expressed in \( \varepsilon_{i} \in \left[ {0,1} \right] \), that is, node utility factor, and the utility factor of each node is expressed by \( G = (\varepsilon_{1} , \ldots \varepsilon_{i} ) \).

The link that the data flow passes is represented by matrix B. The line number of the matrix represents the link number. The column number represents the ordinal number of the data stream. If a data stream flows through a link, the value of the corresponding position of the matrix is the reciprocal of the capacity of the channel, otherwise the value is zero, for example,

\( B_{jk} = \frac{1}{{C_{j} }} \) indicates that the data flow \( f_{k} (k = 1,2) \) passes through the link \( l_{j} \), and if it is zero, it is not passed through the link.

The transmission rate of the data flow \( f_{k} \) is expressed in \( X = (x_{1} , \ldots x_{k} ) \).On the time slot constraint equation for MAC is \( ABX^{{\prime }} \le 1 - G^{{\prime }} \).

Take the network of Fig. 2 as an example,

$$ A = \left[ {\begin{array}{*{20}c} 1 & 0 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 & 0 \\ 1 & 0 & 1 & 0 & 0 \\ 0 & 1 & 0 & 1 & 0 \\ 0 & 0 & 1 & 1 & 1 \\ 0 & 0 & 0 & 0 & 1 \\ \end{array} } \right],B = \left[ {\begin{array}{*{20}c} {\frac{1}{{C_{1} }}} & 0 \\ 0 & {\frac{1}{{C_{2} }}} \\ {\frac{1}{{C_{3} }}} & 0 \\ 0 & {\frac{1}{{C_{4} }}} \\ {\frac{1}{{C_{5} }}} & {\frac{1}{{C_{5} }}} \\ \end{array} } \right] $$
(2)
$$ X^{{\prime }} = (x_{1} ,x_{2} )^{{\prime }} ,1 - G^{{\prime }} = \left( {1 - \varepsilon_{1} ,1 - \varepsilon_{2} , \ldots 1 - \varepsilon_{6} } \right){}^{{\prime }},ABX^{{\prime }} \le 1 - G^{{\prime }} $$

The time slot constraint is equivalent Eq. (3)

$$ \left[ {\begin{array}{*{20}c} {\frac{{x_{1} }}{{C_{1} }}} \\ {\frac{{x_{2} }}{{C_{2} }}} \\ {\frac{{x_{1} }}{{C_{1} }} + \frac{{x_{1} }}{{C_{3} }}} \\ {\frac{{x_{2} }}{{C_{2} }} + \frac{{x_{2} }}{{C_{4} }}} \\ {\frac{{x_{1} }}{{C_{3} }} + \frac{{x_{1} }}{{C_{5} }} + \frac{{x_{2} }}{{C_{4} }} + \frac{{x_{2} }}{{C_{5} }}} \\ {\frac{{x_{1} }}{{C_{5} }} + \frac{{x_{2} }}{{C_{5} }}} \\ \end{array} } \right] \le \left[ {\begin{array}{*{20}c} {1 - \varepsilon_{1} } \\ {1 - \varepsilon_{2} } \\ {1 - \varepsilon_{3} } \\ {1 - \varepsilon_{4} } \\ {1 - \varepsilon_{5} } \\ {1 - \varepsilon_{6} } \\ \end{array} } \right] $$
(3)

The link constraint on MAC is that the sum of the rate of each data flow of a link should not excess the bandwidth capacity of the link. The expression is as follows:

$$ \sum\limits_{k} {x_{k} } \le C_{j} $$
(4)

Take Fig. 2 as an example, the link constraint on MAC is:

$$ \left\{ {\begin{array}{*{20}c} {x_{1} \le C_{1} } \\ {x_{1} \le C_{3} } \\ {x_{2} \le C_{2} } \\ {x_{2} \le C_{4} } \\ {x_{1} + x_{2} \le C_{5} } \\ \end{array} } \right. $$
(5)

3 Linear Programming Bandwidth Allocation Algorithm Based UWA Networks

The algorithm finds the minimum elements of all rate vectors in the feasibility set of bandwidth allocation at every step, and maximizes the minimum element by using the optimization theory of linear programming [11]. The minimum element is fixed, and the next step is to find the second smallest element of the maximum minimum fair rate vector in the feasibility set. In turn, each element \( x(x_{1} ,x_{2} , \ldots x_{i} , \ldots x_{j} , \ldots x_{n} ) \) in the bandwidth allocation vector \( x_{i} \) is determined. The set of feasibility here refers to a set of MAC constraints that are satisfied by the velocity of each data. The flow chart of the algorithm is as Fig. 3. In this algorithm, each vector is maximized as far as possible. That is the maximum bandwidth allocated to each data stream is guaranteed. Not only this algorithm guarantee the maximum throughput, but also the performance index can improve connectivity.

Fig. 3.
figure 3

Flow graph of linear programming algorithm

4 Performance Analysis

The application of ad hoc communication network mode based on MAC constraint and linear programming bandwidth allocation algorithm to underwater acoustic communication will improve the performance index of underwater acoustic communication, signal-to-noise ratio, the bit error rate, and reduce the outage probability of signal transmission.

  1. (1)

    Signal-to-noise ratio

Signal-to-noise ratio (SNR) is a very important performance index in communication system. In the shallow sea multipath channel, the signal-to-noise ratio estimation algorithm is used to estimate the signal-to-noise ratio [12], which is very close to the actual signal-to-noise ratio. It is assumed that the received signal is A, and the signal-to-noise ratio is as follows:

$$ SNR = \frac{{h_{yy} (kT_{S} )}}{{J_{0} (2\pi f_{m} k)\cos (2\pi f_{c} kT_{s} ) - h_{yy} (kT_{s} )}},k = 1,2,3 \cdots $$
(6)
$$ h_{yy} (kT_{S} ) = \frac{{e^{2} J_{0} (2\pi f_{m} k)\cos (2\pi f_{c} kT_{s} )}}{{e^{2} + e_{n}^{2} }},k = 1,2,3 \cdots , $$
(7)

The \( e^{2} \) represents the signal power, and the \( e_{n}^{2} \) represents the noise power. \( J_{0} (x) \) represents the first class zero order Bessel’s function, and \( f_{m} \) represents the normalized Doppler shift.

If the signal frequency is 5 kHz, the simulation of average SNR between direct communication and ad hoc communication is for Fig. 4, the signal-to-noise ratio is increased when the communication nodes is increased, with the increase of the communication distance, the signal-to-noise is increased more obvious. Figure 5 is the simulation curve about SNR of different distances at the 5 km distances. The more intermediate nodes, the more SNR is increased.

Fig. 4.
figure 4

SNR of different distances

Fig. 5.
figure 5

SNR of different nodes

  1. (2)

    error rate

The error probability in underwater acoustic communication has a great influence on the quality of communication, and it can be used to measure the reliability of the system. The error rate of underwater acoustic channel is related to the propagation characteristics of the channel. Using ad hoc network, it can improve the channel propagation characteristics between two communication nodes, and also play a role in improving the bit error rate.

If the coherent FSK is used in the shallow sea channel, the bit error rate is

$$ p_{e} = \frac{1}{2}\left[ {1 - \frac{1}{{\sqrt {1 + \frac{4}{W}} }}} \right] $$

If PSK is used, the bit error rate is \( p_{e} = \frac{1}{2}\left[ {1 - \frac{1}{{\sqrt {1 + \frac{2}{W}} }}} \right] \), the \( W = e^{2} /e_{n}^{2} \), FSK simulation is used here, as shown in Fig. 6, it can be seen that adding intermediate nodes can effectively reduce the bit error rate and improve the communication effect.

Fig. 6.
figure 6

Bit error rate curve

5 Conclusion

This paper studies the ad hoc network which is applied in underwater acoustic communication, and to obtain each link bandwidth allocation idea of linear programming. According to the transceiver node for increased average SNR, and transceiver node direct communication SNR comparison can be seen from the simulation increase intermediate nodes, improve the signal-to-noise ratio, and reduces the error rate, improve the quality of communication.