Keywords

1 Introduction

With the wide application of wireless communication technology, the traditional local area network couldn’t satisfy people’s needs, so the Mobile Ad Hoc Networks (MANET) appeared and developed rapidly [15]. Recently, wide attention has focused on a transmission mode called data packet transmission to maximize the link utilization of a given wireless channel.

The advantages of network coding (NC) come however at the price of additional computational complexity, mainly due to the packet encoding and decoding process. Random linear network coding is a feasible encoding tool for network coding, especially for the non-coherent network, and its performance is important in theory and application. In [3], Guang et al. study the performance of random linear network coding for the well-known butterfly network by analyzing some failure probabilities. In multi-user cooperative networks, network coding in higher Galois Field has been proved with solid performance improvement over binary codes. Xiao et al. [4] proposed the use of diversity network codes (DNCs) over finite fields so as that the destination is able to rebuild the user information from a minimum possible set of the coded packets. The network encoder is on the top of channel encoder, and the network decoder is combined with channel decoder leveraging the tentative decisions from channel decoder.

This paper proposes a Sliding Window Network Coding in MANETs (SWNCM). We apply network coding over GF(2q) on symbols rather than on packets to fully exploit the advantages of network coding including sliding window, increase traffic and robustness. The performance of the SWNCM is studied using NS2 and experimentation to assess the encoding efficiency, the decoding complexity of SWNCM enabled mobile node. The SWNCM is shown to achieve significant performance gain.

The rest of the paper is organized as follows. Section 2 discusses the some related work. Section 3 describes models of sliding encoding window model in MANETs. Some simulating results are provided in Sect. 4. Finally, the paper concludes in Sect. 5.

2 Related Works

In [5], Chen et al. considered the transmission scenario of network coding in which the cluster head node sends encoded signals to sink node over a lossy and noisy wireless channels. The application of compressed sensing conception was explored to break the limitations and improve the performance of network coding when the mutual correlations of information are existent. Qin et al. [6] proposed an energy-saving scheme for wireless sensor networks based on network coding and duty-cycle (NCDES). The scheme determines the node’s status based on the ID information which embedded in data information. When combining network coding and duty-cycle in wireless sensor networks, it will reduce transmission coding coefficients and retransmissions. Jiang et al. [7] proposes an energy-efficient multicast routing approach to achieve the data forwarding in the multi-hop wireless network. Analysis of the multi-hop networks energy metric and energy efficiency metric. Then the corresponding models are given network coding is used to improve network throughput. Antonopoulos et al. [8] proposed a network coding-based cooperative ARQ (NCCARQ) scheme for wireless networks. Compared to simple cooperative ARQ protocols, the proposed solution improves up to 80 % the energy efficiency of the system without compromising the offered QoS in terms of throughput and delay.

Considering the feature of strong node mobility in mobile ad hoc networks, Wang et al. [9] proposed a hop-by-hop network coding algorithm based on ad hoc networks. In [10], Halloush et al. develop Multi-Generation Mixing (MGM), which is a generalized approach for generation based network coding. The proposed MGM framework allows the encoding among generations for the purpose of enhancing NC decodability. Guo et al. [11] questioned whether these requirements are enough when there are various intersecting nodes along a path, and they proposed a new coding-aware routing metric, Free-Ride-Oriented Routing Metric (FORM), able to exploit a larger number of coding opportunities, regardless of the number of flows and intersecting nodes. Kiss et al. [12] proposes a scalable approach for increasing transmission reliability in wireless sensor networks, based on a cooperative scheme that uses Reed–Solomon codes as network code.

Vazintari et al. [13] proposes an effective NC scheme intended for sparse DTNs comprising nodes of limited storage capacity. They aim at demonstrating the drastic overhead reduction accomplished when the application of NC reinforced by the optimal MMA proposed is combined with either the Epidemic or the PRoPHET protocol. In [14], Ploumidisa et al. explores the throughput and delay that can be achieved by various forwarding schemes, employing multiple paths and different degrees of redundancy, focusing on linear network coding. The analytical framework is generalized for an arbitrary number of paths and hops per path. In [15], Chen et al. explores a multipath transmission scheme employing network coding for providing better rate-delay trade-offs, being also adjustable according to QoS constraints. In [16], Zhang et al. investigate the impact of imperfect CSI on the performance of analog network coding (ANC) for a two-way relaying system based on opportunistic relay selection (ORS). An exact and generalized closed-form expression for system outage probability is presented in a Rayleigh flat-fading environment. Liu et al. [17] describes the model for the dynamic decode-and-forward (DDF) protocol and network coding (NC) (DDF-NC) cooperative communications system. Shen et al. [18] propose a novel routing protocol named Location-Aware Routing Protocol (LARP) for UWSNs, where the location information of nodes is used to help the transmission of the message.

Although some network coding algorithms are proposed to improve network performance, most of these approaches do not consider mobile data packet streaming scenario. In our work, we target mobile multimedia streaming networking problem in wireless networks. By constructing the appropriate network coding structure, we can achieve the higher free viewpoint multimedia streaming.

3 Sliding Encoding Window Model

We now focus to the sliding window and the random network coding approaches. When using this approach, not all data packets need to be coded together in a generation, just the ones in the same window. This simplifies the solving of the Gaussian-elimination on the receiver side, but requires constant feedback between the nodes to determine which packets have been seen at the receiver and thus remove them from the sender’s linear combinations.

3.1 Network Model

The network model is a generalization of the insertion-only data packet model in which we seek to compute function f over only the most recent elements of the data packet.

The network model is represented as G = (V, E) where V represents the set of nodes in the network and E denotes the set of directed edges. Each link (i, j) \( \in \) E means that node i can transmit to node j. We assume links are symmetric that if (i, j) \( \in \) E; (j, i) \( \in \) E as well. Whether two links interfere with each other depends on the interference model adopted.

In the present paper, as both the probabilistic selection of the coding coefficients and the number of packets to be stored are independently decided at each MANET node, the proposed scheme, data packet flows from a single source node to a single destination node. This scheme, when data packet is need to transfer, the source node to encode data packet operation, the destination nodes are allowed to decode the received coded packets whereas intermediate nodes can only forward randomly created linear combinations of incoming packets. The destination nodes would have to wait until reception of all the packets of a generation. Figure 1 visualizes the network model in MANETs.

Fig. 1.
figure 1

Network Network model in MANETs.

The random linear network coding (RLNC) scheme [17] adopts a block transmission strategy which can approach the capacity with less feedback overhead. Because this RLNC scheme can provide near-capacity performance and it becomes more attractive in several industrial standards recently. In addition, it works over non-binary Galois Field and can seamlessly combine with network coding. The proposed scheme is illustrated in Fig. 2, in which we use network codes over finite fields, on top of channel coding, to encode relayed and local messages. The network coding scheme is time-invariant in each relay node. The information messages D1 and D2 of node 1 and node 2, respectively, are realized over GF(2q). Network coding is also in GF(2q). All transmission blocks are subject to independent fading.

Fig. 2.
figure 2

Two-node cooperative networks with proposed designed network codes over finite fields.

3.2 Sliding Encoding Window Construction

SWNCM adopts the encoding strategy similar to RLNC [3], but the block of packets to be encoded in each slot is sliding forward at a constant speed V. For each packet P to transmit, the source selects the blocks (x 0, x 1, …, x N−1) and coding coefficients (c 0, c 1, …, c N−1) to combine with in a sliding encoding window of size 1 ≤ W ≤ N, If the coefficient is chosen from F(2q), number of choices of coding vectors would be (2q−1). Obviously, the all zero vector has to be avoided. The size of the sliding window W = e − f + 1, for N elements, there are N − W + 1 possible sliding windows of size W. A sliding encoding window of size W is a sequence of blocks (x f , …, x e ) where 0 ≤ f, e ≤ N − 1 and f ≤ l and e – f + 1 = W. We define f i and e i the leading edge and the trailing edge of the i-th sliding encoding window. Figure 3 shows the encoding vector for sliding encoding windows.

Fig. 3.
figure 3

Encoding vector of CC-SWNC.

After overhearing the coded symbols from the source, the destination node attempts to decode the original packets through Gauss elimination approach. A typical example of the decoding process is shown in Fig. 4, in which the Gauss-Jordan Elimination can be performed progressively as the coded packet arrives and finally the original packets can be retrieved when the reduced matrix has full rank.

Fig. 4.
figure 4

Decoding vector of CC-SWNC.

In this paper, we use a linear network coding scheme. The linear network coding scheme is an encoding method such that coding vector c i  = (c i0, c i1, …, c iN1 ) is given, and input packet X = (x 0, x 1, …, x N−1) is converted into output packet P i by the following expression.

$$ P_{i} = \sum\limits_{j = 0}^{N - 1} {c_{ij} x_{j} } $$
(1)

Then, the elements c i of the encoding vector g are set to one with probability p = 0.5 for i \( \in \) [f, e], with probability p = 0 otherwise. The destination node can decode input packets because the coding vector c i  = (c i0, c i1,…, c iN1 ) and output packet data P = (P 0, P 1, …, P N−1) are obtained from the received packets, and an inverse matrix exists in G.

3.3 Network Coding Over Data Packet Streams

Network coding has been shown to dramatically improve network performance; however, implementing it can be a challenge. In order to develop practical coding techniques, random linear network coding (RLNC) [3] has been used by a large number of coding schemes because of its simplicity and effectiveness in most network scenarios. Each node selects coefficients over the Galois field randomly and independently. Therefore computational complexity of this scheme is significantly lower than its centralized counterpart. The coefficients are uniformly distributed, the probability of being able to randomly find an admissible network code is a function of the field size, the number of receivers, and also of the number of links involved in the graph G. Assume that we want to send a file consisting of data packets p i , i \( \in \) P, where P is the set of data packet indexes. Within these data packet streams, RLNC can be used to add redundancy by treating each p i as a vector in some finite field F(2q). Random coefficients α ij \( \in \) F(2q) are chosen, and linear combinations of the form \( c_{i} = \sum\nolimits_{j \in P} {\alpha_{ij} } p_{j} \) are generated. These coded packets are then inserted at strategic locations to help overcome packet losses in loss networks.

Management of the coding windows for these data packets network coding schemes generally fall within the following sliding window based scheme. In sliding window scheme, data packets are dynamically included or excluded from linear combinations based on various performance requirements.

In addition, the code window is greater, its decoding complexity and communication overhead is greater, also. Algorithm describes the policy for the sliding-window coding scheme shown in Fig. 3.

4 Simulation Experiments

In this section, simulation results are presented and discussed concerning the performance of the enhanced by the innovative SWNCM scheme proposed. We use the NS-2 simulator [19] to evaluate the Cooperative Communication with Sliding Window Network Coding in wireless networks (SWNCM).

4.1 Simulation Scenario

We evaluate SWNCM in a data packet streaming scenario where one source distributes a data packet sequence to multiple cooperating receiver nodes.

MANET nodes follow the Random Waypoint (RWP) Mobility Model. To study how the proposed scheme is affected by the nodes mobility, the node speed ranges have been in [0, 20] m/s speed. Nodes are randomly and uniformly located over a 1000 m × 1000 m area, with a node transmission range of 250 m [20]. The network sparseness may be quantified by the mean node degree, i.e. the average number of neighbors in the network, ρ = π·d·r 2, where d and r are the node density and the transmission range, respectively. The results of the simulation are positive with respect to performance.

We analyze the performance of SWNCM from the point of view of the encoding efficiency. The encoding efficiency of SWNCM depends on the generation size N and on the sliding encoding window size W (W = 100). The SWNCM algorithm was compared with NCCARQ algorithm [8] and PRoPHET [13] in MANETs environment. The corresponding simulation parameters are summarized in Table 1.

Table 1. Simulation parameters

4.2 Simulation Results

The results shown in Fig. 5, the packet throughput of SWNCM is always higher than that of NCCARQ and PRoPHET that with the network size increasing. Therefore we can conclude that, with sliding window network coding in wireless links, SWNCM can complete data packet transmission faster and perform better than NCCARQ and PRoPHET in MANETs. SWNCM is effective in improving the network throughput.

Fig. 5.
figure 5

Network throughput vs. Network size.

Figure 6 show that, the encoding overhead of SWNCM is smaller than that of NCCARQ and PRoPHET, which means that SWNCM can transmit data packet faster than NCCARQ and PRoPHET. SWNCM reduces the encoding overhead the better. Figure 5 shows the encoding overhead of SWNCM, NCCARQ and PRoPHET, which use the sliding window network coding that minimize the encoding overhead.

Fig. 6.
figure 6

Network throughput vs. Network size.

In Fig. 7, we test the SWNCM performance in decoding delay. It can be seen from Fig. 7 that, using sliding window network coding, decoding delay is reduced. We can also observe that the sliding window network coding more gracefully than other algorithm when network size increases. It demonstrates that SWNCM scheme is more suitable as the variation of the network size increases.

Fig. 7.
figure 7

Decoding delay with different network size.

The results shown in Fig. 8 reveal that, the packet transmission rate of SWNCM is always higher than that of NCCARQ and PRoPHET. The main reason is that the data packets by the NCCARQ and PRoPHET has lower packet transmission rate than SWNCM has, so the NCCARQ and PRoPHET take more time to transmit the same amount of data than SWNCM algorithm does. The Fig. 8 shows that SWNCM enable to increase by a factor of network size load by sliding window network coding.

Fig. 8.
figure 8

Packet transmission rate with different network size.

5 Conclusion

This paper discusses network coding problem, which may deal with the sliding window network coding model for researching in MANETs. It presents a Sliding Window Network Coding in MANETs (SWNCM). We propose an efficient approach to construct sliding window and network coding coefficients in a pseudo-random manner on each node. We provide a thorough description of sliding window and network coding in MANETs (SWNCM), a novel class of network codes. The performance of the SWNCM is studied using NS2 and experimentation to assess the network throughput, encoding overhead, decoding delay, packet transmission rate of SWNCM enabled mobile node. The SWNCM is shown to achieve significant performance gain.