International Journal of Distributed Sensor Networks

Volume 2012 (2012), Article ID 605494, 11 pages

doi:10.1155/2012/605494

Research Article

An Efficient Reliable Communication Scheme in Wireless Sensor Networks Using Linear Network Coding

Jin Wang,¹ Xiumin Wang,² Shukui Zhang,1,3 Yanqin Zhu,¹ and Juncheng Jia¹

¹School of Computer Science and Technology, Soochow University, Suzhou 215006, China

²School of Computer and Information, Hefei University of Technology, Hefei 230009, China

³State Key Laboratory for Novel Software Technology, Nanjing University, Nanjing 210093, China

Received 1 August 2012; Accepted 6 September 2012

Academic Editor: Yong Sun

Copyright © 2012 Jin Wang et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

We address the modeling and design of linear network coding (LNC) for reliable communication against multiple failures in wireless sensor networks (WSNs). To fulfill the objective, we design a deterministic LNC scheme RDLC based on the average number of path failures simultaneously happening in the network other than the maximum number of path failures. The scheme can significantly improve the network throughput comparing with the traditional approaches. In our study, we also investigate the potential of random linear code RRLC for providing reliable communication in WSNs and prove the low bound of the probability that the RRLC can provide the reliable communication. Finally, extensive simulation experiments have been conducted, and the results demonstrate the effectiveness of the proposed LNC schemes.

1. Introduction

In recent years, wireless sensor network (WSN) has attracted significant attention for future generations of wireless applications in industry, agriculture, and military [1–5]. Despite its salient potentials, there are still many challenges to be addressed. In this paper, we will investigate how to provide reliable data transmissions in WSNs, which is very challenging because not only the wireless medium is vulnerable to severe channel fading and interference but also the sensor node always faces to energy exhaustion and physical damage.

Clearly, how to provide reliable communication in WSNs can be studied from multiple layers, including the physical layer and the MAC layer [6–9]. In this work, we will focus on the network layer and transport layer. Particularly, we will study how to provide reliable communication in WSNs against loss of data packets.

To provide reliable communication against node or link failures, there are two kinds of traditional approaches [10]: the proactive recovery and the reactive recovery, which aim at recovering the data transmission when node or link failures happen. The proactive recovery approaches can recover data transmission immediately when a link or node failure occurs, because it reserves the bandwidth (in backup paths) between the source node and the destination node in advance and the data flow is simultaneously transmitted on both primary paths and backup paths. On the other hand, the proactive recovery approaches do not provide any immediate recovery in advance. When the failure occurs on the routing paths of the data flow, the affected flow will be retransmitted to the destination by using available bandwidth in the network. Therefore, although the proactive recovery approaches can recover data transmission immediately when the link or node failures happen, network resources (e.g., bandwidth on the backup paths) are wasted when no failure happens. For the proactive recovery approaches, although network resources are used efficiently (no network resource is reserved in advance), the procedure of transferring the data traffic from the failed paths to the new routing paths incurs a considerable delay to data communications.

Following its success in maximizing network throughput [11–15], linear network coding (LNC) has recently been shown to be a promising approach that can achieve reliable communication with much better efficiency, because it can be used to provide protection in a proactive manner with the bandwidth cost in a reactive manner [16–20]. LNC has been first introduced by Kamal [16, 19] to provide 100% protection against single link failures in optical network. Recently, the design of reliable communication based on LNC has attracted an increasing amount of attention in optical networks [16], wireless networks [18], and hybrid wireless-optical access networks [20], respectively. However, in these studies, the LNC scheme, which can generate large number of linear combinations of original data packets to provide reliable communication when link or node failures happen, is designed according to the maximum number of failures (, i.e., the worst case) happening simultaneously. In this case, with such LNC schemes, the destination can receive sufficient coded data packets and recover the original data packets, as long as the number of failures happening simultaneously is no more than . However, the number of failures happening simultaneously in WSNs varies at different times in practice. When the number of failures happening simultaneously in the network is less than , the network throughput decreases because the capacity of the WSN is wasted by the redundant coded data packets transmitted in the WSN.

Therefore, our key idea is to increase the number of original data packets transmitted and recovered in the transmission rounds with large number of failures happening simultaneously, by utilizing the redundant coded data packets transmitted in the transmission rounds with fewer failures happening simultaneously in the network to improve the network throughput.

Figure 1 gives an example to compare the network throughput that can be achieved by LNC scheme based on the maximum number of failures and the LNC scheme based on the average number of failures (denoted in Section 2.1). Specifically, in the WSN, there are 4 edge-disjoint paths between the source and the destination (sink) . Suppose that and . Without loss of generality, we assume that 2 path failures happen in time slot 1 and no failure happens in time slot 2. Different LNC schemes are shown in Figures 1(a) and 1(b), in which the notation “” on a link denotes the link is used to transmit a coded symbol at time slot 1. Moreover, for LNC schemes shown in both Figures 1(a) and 1(b), the coded data packets transmitted on the links belonging to the same path are same in given time slot.

(a)   The LNC scheme based on the maximum number of failures

(b) The LNC scheme based on the average number of failures

Figure 1: Reliable communication using LNC: an example.

Since the , in Figure 1(a), the LNC scheme designed based on can ensure that the destination can decode and recover even if path failures happen. However, no failure happens in time slot 2, which decreases the network throughput because the capacity of the WSN is wasted by the redundant coded data packets transmitted in time slot 2. On the other hand, in Figure 1(b), the LNC scheme was designed based on , in which part of original data packets sent previously is still encoded into the following time slots. In this case, the network throughput can be improved by utilizing the redundant coded data packets transmitted in time slot 2. Specifically, with different LNC schemes, the sink can recover 4 original data packets in 2 time slots (i.e., the achieved network throughput is ) in the case shown in Figure 1(a), while the sink can recover 6 original data packets in 2 time slots (i.e., the achieved network throughput is ) in the case shown in Figure 1(b). Obviously, the LNC scheme based on the average number of path failures can significantly improve the network throughput.

In this paper, we will design an efficient LNC scheme based on the average number of path failures, to provide reliable communication in WSNs. It must be noted that our study in this paper is different to our previous work in [21], where we have investigated the LNC design for providing protection in the wireless mesh networks. Specifically, as we can see from the rest of the paper, the main differences include the following.

Firstly, different LNC designs are given to provide reliable communication in this paper. The deterministic LNC scheme proposed in Section 3 achieves the network throughput ( denotes the number of edge-disjoint paths between the source and the destination and is the expected number of path failures per time slot), while the LNC scheme proposed in [21] does not ensure that the network throughput can achieve . Therefore, the deterministic LNC scheme proposed in this paper can achieve higher network throughput than our previous work in [21]. Moreover, in this paper, we also investigate the potential of standard random LNC to thwart path failures in WSNs and analyze the lower bound of the probability that a random LNC can provide reliable communication. On the other hand, the work in [21] only considered the deterministic LNC design.

Secondly, comparing with the work in [21], we not only give the theoretical design of deterministic LNC scheme and random LNC scheme but also conduct considerable simulations with four parameters to demonstrate the effectiveness of the proposed LNC schemes, from view of both network throughput and recovery delay. We also show the impact of the size of finite field on the performance of the proposed random LNC schemes, which is not investigated in [21].

The rest of the paper is organized as follows. Section 2 describes the system models and problem description. In Section 3, we design a deterministic LNC scheme to provide reliable communication in WSNs and give the theoretically analysis to show the achieved network throughput. The analysis of the usage of random LNC to realize reliable communication in WSNs is shown in Section 4. Simulation results are given in Section 5. Finally, we conclude the paper in Section 6.

2. Reliable Communication against Multiple Failures in WSNs Based on LNC

In this section, we will describe the problem studied in this paper. Specifically, we first introduce the network model. We then give the description of the reliable communication problem.

2.1. The Network Model

In this paper, we consider a multihop wireless sensor network as a directed acyclic graph , where is the set of sensor nodes and is the set of edges. We assume that each edge in has the same unit capacity. Note that the capacity of different edges can be different in practice. However, we can always convert an edge with a certain capacity (a nature number) data units to edges with unit capacity. Suppose that all data packets have the same unit size. There are one source , one destination and edge-disjoint paths between them. We assume that it will cost one time slot that the source sends coded packets through edge-disjoint paths and gets the feedback from the destination.

Although the wireless medium is vulnerable and the sensor node always faces energy exhaustion and physical damage, LNC can be designed to tolerate the link or node failures and provide reliable communications in WSNs. Specifically, coded data packets are generated at the source node by linearly combining original data packets and transmitted through edge-disjoint paths in each time slot. Since there will be different number of edge-disjoint paths failing simultaneously in different transmission rounds, we denote as the probability that edge-disjoint paths are failed simultaneously, where . Therefore, is the expected number of path failures per time slot. Let .

Suppose that the data stream arrive rate is data packets per time slot; the data packets arrived are firstly buffered at the source , waiting for encoding and transmission towards the destination . We will design an LNC scheme to protect the data stream with arrive rate .

2.2. The LNC Scheme

In practical LNC schemes, the source node first divides the whole file into fix-size original packets. Then, the coded packets can be generated by encoding the original packets together. Moreover, each coded packet in the network corresponds to an encoding vector, which consists of the coding coefficients that it is produced with respect to the set of original packets. When the destination node received sufficient coded packets, it can decode and recover the original packets according to their encoding vectors.

Due to the limited computational capability of the sensor nodes in WSNs, we assume that the intermediate sensor nodes simply store and forward encoding packets. Such assumption is practical because coding operations require extra computation capability which imposes the processing overheads and may slow down the switching speed.

2.3. Problem Description

To improve the network throughput, we design the LNC schemes based on the expected number of path failures per time slot (). However, since the number of path failures may exceed in some time slots, which may cause that the destination cannot decode the received coded data packets, it is desirable to utilize the redundant coded data packets transmitted in the transmission rounds with fewer failures () to improve the network throughput.

Therefore, in this paper, we aim to design an LNC scheme providing reliable communication in WSNs to achieve network throughput , in which is the expected number of path failures per time slot. We will show in the rest of the paper that the original data packets can be recovered by the destination and the network throughput can be achieved, if only the average number of failures is no more than .

2.4. Notations

To facilitate further discussions, we summarize main notations to be used throughout the rest of the paper in Table 1. We also denote the dimensional matrix as follows:

where , for all .

Table 1

Symbol
Definition

Bold font
Vectors, matrixes

Normal font
A normal number

A finite field of size q, over which the LNC is defined

A set of vector composed by to row vectors of matrix B

A matrix composed by the to row and to column of matrix B

The row vector of matrix B

The matrix composed by the to row vectors of matrix B

The matrix formed by vectors in the set V as its rows

Rank (B)
The rank of a matrix B

The original data packet arrived at time slot i

N original data packets arrived at time slot i

The number of edge-disjoint paths between the source and the destination

A dimensional zero matrix

N
, in which is the expected number of path failures per time slot

Span (·)
Linear span of a set of row vectors of a matrix

Dim (·)
Dimension of a linear space

P(A)
The probability that condition A is satisfied

3. Reliable Communication Using Deterministic Linear Network Coding

In this section, we provide a deterministic LNC scheme to provide reliable communication (RDLC) for multiple failures in WSNs.

We assume that a buffer exists in the source to buffer the newly arrived data packets and parts of original data packets arrived previously. We also assume that the destination has a buffer to buffer the coded data packets which have not been decoded. At the end of each time slot, the destination sends an acknowledgment to the source in order to report the number of coded data packets received in this time slot. Then, according to the number of coded data packets received by the destination in the previously time slots, the source first removes some original data packets arrived perviously in its buffer and then generates new coded data packets by encoding the original data packets arrived previously and the newly arrived data packets together. After that, the source sends the new coded data packets to the destination. At the end of time slot , for  all , if the destination has totally received no less coded data packet, it can decode and recover the original data packets, clear its buffer and send an acknowledgment to notify the source that all the received coded data packets are decoded.

We denote the original packets arrived at time slot as . The details of RDLC scheme is shown in Algorithms 1 and 2.

At time slot t:

N original data packets are arrived and stored into its buffer;

if  t = 1 then

    Generate L coded packets: and send them to the destination through L edge-disjoint paths;

end  if

if  t > 1 then

    Receives ) from the destination;

    if    then

        Clear the buffer, set and get ready for a new transmission round;

    else

        Remove the earliest arrived data packets in the buffer;

        Generate L coded data packets:

        Send each coded packet with encoding vector

         through path i to the receiver, ;

    end  if

end  if

Algorithm 1: Encoding at the source.

At time slot t:

Received coded data packet in time slot t;

If     then

    Extend each received encoding vector to its corresponding global encoding vector with length tN by adding zeros, i.e., ;

    Suppose that the matrix is composed by the global encoding vectors of the received TN coded packets as its rows and the matrix is composed by corresponding coded packets as its rows;

    Decode and recover the tN original data packets as follows:

    ;

    Clear the its buffer and send a to the source;

else

    Store the coded data packet to its buffer;

    Send a to the source;

end  if

Algorithm 2: Decoding at the destination.

Suppose that denotes the number of coded data packets received by the destination at the end of time slot ; we have , for all . Let

Next, we will prove that the destination can decode and recover the original data packets once it receives no less than coded data packets.

Lemma 1. When , the destination can decode and recover the original data packets.

Proof. When , the destination can receive coded data packets. The global encoding vector of each coded data packets is one row vector in the matrix . According to the matrix , any rows can construct a square dimensional Vandermonde matrix. Since , for all , the determinant of the dimensional Vandermonde matrix is not equal to 0. Hence, the destination receives coded data packets with linearly independent global encoding vectors. Therefore, the destination can decode and recover the original data packets.

Lemma 2. When , the destination can decode and recover the original data packets.

Proof. When , the destination receives no less than coded data packets. We suppose that it receives coded data packets in time slot 1. Without loss of generality, let these coded data packets be . Since the destination receives no less than coded data packets we can select coded data packets received by the destination in time slot 2. Without loss of generality, let these coded data packets be . Therefore, the matrix composed by global encoding vectors of the coded packets as its rows can be represented by

Next, we will prove that . If , then . We have because is a dimensional Vandermonde matrix. Otherwise, if , obviously, the block matrix in the left upper corner of the matrix is dimensional and has full rank. Therefore, each column vector in can be written as a linear combination of the column vectors in . Since the dimensional block matrix in the left lower corner of the matrix is zero matrix, the matrix can be transformed to be matrix by column transformation:

and .

We have

Since the block matrix is a dimensional Vandermonde matrix, is a dimensional Vandermonde matrix and , for all , we have and .

Therefore, we have , which indicates that , that is, when , the destination can decode and recover the original data packets if it receives no less than coded data packets.

Theorem 3. The destination can decode and recover the original data packets as long as it totally receives no less than coded data packets at the end of time slots.

Proof . According to Lemmas 1 and 2, the theorem holds when . When , it means that , for all and . When , that is, , without loss of generality, let these coded data packets be

The matrix composed by the global encoding vectors of these coded packets as its rows can be represented by

Similarly to the proof of Lemma 2, the block matrix in the left upper corner of the above matrix is dimensional and has full rank. Therefore, each column vector in can be written as a linear combination of the column vectors in . Since the dimensional block matrix in the left lower corner of the matrix is zero matrix, the elements in between to row and to will be transformed to zeros in matrix by column transformation. And then by using the full rank block matrix , the elements in between to row and to will be transformed to zeros in matrix by column transformation.

By step to step column transformation, the matrix can be finally transformed to be :

Obviously, . Since each matrix is a square Vandermonde matrix and , for all , we have , for all . Therefore, . Since the column transformation on a matrix does not change the rank of the matrix, the matrix has full rank, that is, the destination can decode and recover organical packets.

When , the destination can randomly select coded data packets. Together with the coded packets received from time slot 1 to time slot , the destination have coded packets. Similarly to the above proof, we can have the destination that can decode and recover original packets.

Corollary 4. If the average number of path failures is no more than , then the network throughput can be achieved.

Proof. When the average number of path failures is no more than , we have the average number of coded packets received by the destination in each time slot is . Therefore, there exists a time slot that the destination totally receives coded data packets at the end of time slots. Since , the destination totally receives coded data packets at the end of time slots. Therefore, according to Theorem 3, we have that the destination can decode and recover the original data packets, that is, the network throughput is achieved.

4. Reliable Communication Using Random Linear Network Coding

In the previous section, we have discussed how to construct linear network code at the source node in a deterministic manner to provide the reliable communication. In practice, random linear coding has been widely used in the literature [15, 22], because of the simplicity of the coding scheme. With random linear coding, random linear combinations of the packets can be forwarded by a node, which the node received previously, to outgoing edges. It has been proved in pervious work that such a simple approach can obtain valid linear codes for multicast with probability , where is the number of edges with associated randomized coefficients, is the size of the finite field, and is the number of destination nodes.

In this section, we investigate the behavior of the random linear coding, when it is applied to the reliable communication problem we discuss in this paper. The usage of such linear code is similar to the one we discussed in Section 3. The coding operations are only done at the source node and destination node. The major difference is that, instead of computing the coding matrix at the source node, the elements of dimensional coding matrix for time slot are randomly chosen from the finite field according to the number of coded packets received by the destination in each time slot. We referred to such random linear coding scheme as reliable random linear coding RRLC. Since the destination does not need to send an acknowledgment to notify the source that the number of coded packets received in each time slot, the communication overhead of RRLC, is smaller than the RDLC. We also show that the RRLC can ensure that the destination can recover the original packets when it receives coded packets with high probability.

Specifically, the coded data packets sent during time slot can be represented by

Suppose that the number of coded packets received within time slot by the destination node is , without loss of generality, let these coded data packets be

Suppose the dimensional matrix is

Therefore, the total coded packets received by the destination node during time slots can be represented by

From above theoretical analysis, the destination can decode and recover the set of original packets , if and only if .

Next, we will give the lower bound of the probability that the destination can decode and recover the original packets once it totally receives no less than coded packets after time slot .

We set and , for all function . We first prove a lemma.

Lemma 5. If , for all , the probability that the dimensional matrix has full rank is

Proof. Obviously, the matrix has full rank, if and only if

We first give the theoretical analysis on the first row vectors in the matrix . Suppose that the first , rows of are selected and , for all , that is, , for the th row vector of the matrix , the total number different vectors can be selected from the finite filed is , because that have the first elements randomly selected in finite filed and other elements are 0. Let be the number of vectors which can be selected as the th row vector of the matrix such that . The total number of vectors in is . Therefore, if , we have .

Similarly, we then give the probability that the matrix has full rank.

Suppose that the first rows of are selected and , for all , that is, , for the th row vector of the matrix , the total number different vectors can be selected from the finite filed which is , because for all have the first elements randomly selected in finite filed and other elements are 0. Let be the number of vectors which can be selected as the th row vector of the matrix such that . The total number of vectors in is . Therefore, if , we have .

Let be the number of matrix that can be constructed in the finite field which satisfies the condition shown in (14). We have

The total number of different matrix with dimension is , because there are elements randomly selected in finite filed and other elements are 0 in matrix .

Therefore, the probability that the matrix has full rank is

Theorem 6. If the total number of coded packets received by destination during the first time slots is no less than , that is, and for all , , the lower bound of the probability that can decode and recover the set of original packets is

Proof. The destination node can decode and recover the set of original packets , if and only if . Since and for all , , we have . Obviously, if the first row vectors are linearly independent, , we have . Therefore, the probability that is lower bounded by the probability that . According to matrix , the number of row vectors in it belonging to time slot is . Therefore, from the Lemma 5, the probability that is

Since the probability that is lower bounded by the probability that , the probability that is large than

5. Performance Evaluation

In this section, we conduct simulations to compare the scheme that without considering reliable communication (denoted as Unreliable Communication Scheme) the linear coding schemes are designed for recovering from maximum number of edge failures and the proposed linear coding schemes.

In the transmission scheme without network protection, the source sent totally original packets along the paths between the source node and the destination node in each time slot, until the destination node receive all the original packets. Since each path may fail in each time slot, the destination may wait for some time slots to receive all the original packets.

In the linear coding schemes designed for recovering from maximum number of edge failures, the scheme codes original packets in each time slot and makes sure that the destination can decode all of them even if the maximum number of edge failures happens in one time slot (i.e., the worst case). However, such a scheme will waste lots of throughput of the network, because the number of edge failures probably is less than the maximum number of edge failures. We denote such schemes as LCW scheme.

Therefore, in our coding scheme, we code the packets sent in the pervious time slots with the new packets together which can fully utilize the available paths in the network to achieve higher throughput. To achieve this goal, in the proposed linear coding scheme, the destination receives coded packets instead original packets in each time slot which may not be decoded immediately. Therefore, the destination may wait for some time slots to receive enough coded packets to decode and recover all the original packets sent by the source node in the past time slots. However, we will show in this section that we can decrease a bit of throughput to achieve a much low decoding delay.

The objectives of the simulation conducted in this work are as follows.

(i)To compare the throughput achieved when using different schemes under different parameter settings. The throughput is referred to as the total number of original packets recovered (or reviewed) in the past time slots divided to the total number of time slots. (ii)To compare the recovery delay using different schemes under different parameter settings. The delay will cause by different schemes to receive (or decode and recover) all the original packets sent by the source node in the past time slots.

5.1. Simulation Setup

We have four parameters in our simulations.

(i)The number of paths between the source node and the destination node, , which varies from 10 to 20.(ii)The maximum number of paths between the source node and the destination node which can simultaneously fail, , in which varies from 0.2 to 0.7.(iii)The number of original packets coded (or sent) in each time slots, , which varies from 2 to .(iv)The size of finite field, , in which varies from 1 to 7.

In a network , we suppose that there are edge-disjoint paths between the source node and the destination node . In each time slot, there may be , edges failure and the packets transmitted on these paths cannot be received by the destination node . In the simulation, we randomly select in and then select paths in the paths which will fail in the following one time slot.

For each combination of parameters , , and , we generate instances. For each instance, we evaluate the performance of the data transmission using unreliable communication scheme, the linear coding schemes designed for recovering from maximum number of edge failures, and the proposed linear coding schemes.

5.2. Simulation Results

We compare the network throughput and the recovery delay of the proposed RDLC and RRLC schemes with LLW scheme and the unreliable communication scheme.

Firstly, in Figure 2, we set , , , and vary in the range of .

(a)  Throughput

(b) Transmission delay

Figure 2: , , , .

In Figure 2(a), the throughput of all the four schemes increases with the increase of the number of edge-disjoint paths between the source node and the destination node. The reason is that the more the number of edge-disjoint paths exist between the source node and the destination node the more packets can be transmitted successfully to the destination. The throughput of the LLW scheme is higher than the unreliable communication scheme, because the LLW scheme exploits the LNC to ensure that all the original packets sent in one time slot can be recovered by the destination node which limit the number of original packets transmitted in each time slot. On the other hand, the unreliable communication scheme will transmit the same set of original packets many times to make sure the destination node can successfully receive all of them. The throughput of the proposed RDLC and RRLC schemes are much higher (more than compared with LLW and more than compared with the unreliable communication scheme when grows sufficiently large), because the proposed schemes fully utilize the unfailed paths to transmit coded packets. Since the number of original packets transmitted in each time slot is the same in the proposed RDLC and RRLC schemes, the two schemes has the same throughput.

In Figure 2(b), the recovery delay of the unreliable communication scheme is higher than the other three schemes. The unreliable communication scheme will transmit the same set of original packets many times to make sure the destination node can successfully receive all of them. The recovery delay of the LLW scheme is always one time slot because a limited number of original packets are transmitted in each time slot to make sure the destination can decode and recover them in one time slot. The recovery delay of the proposed RDLC and RRLC schemes are between the unreliable communication scheme and the LLW scheme. Therefore, we can observe that the proposed RDLC and RRLC schemes can achieve highest throughput and moderate recovery delay. The figure also shows that the recovery delay of the RRLC scheme is higher than the recovery delay of the RDLC scheme. The reason is that according to the theoretical analysis a destination may not be decode and recover the original packets when using the RRLC scheme, even if it totally received more than coded packets during the past time slots. Therefore, when using the RRLC scheme, the destination will wait more time slots to achieve the same throughput as the RDLC scheme.

Secondly, in Figure 3, we set , , , and vary in the range of .

(a) Throughput

(b) Transmission delay

Figure 3: , , , .

In Figure 3(a), the throughput of all the four schemes decreases with the increase of , because the number of edge-disjoint paths between the source node and the destination node is fixed but the number of failure paths increases. We can observe that the throughput of LLW scheme will be lower than the unreliable communication scheme when grows sufficiently large. The reason is that when grows sufficiently large, the throughput of of LLW scheme will decrease to zero, while the unreliable communication scheme can exploit unfailed paths to transmit packets. The throughput of the proposed RDLC and RRLC schemes are much higher (more than compared with the unreliable communication scheme when grows sufficiently large).

In Figure 3(b), the recovery delay of the proposed RDLC, RRLC schemes, and the unreliable communication scheme increase with the increase of . Moreover, The recovery delay of the unreliable communication scheme is higher than the other three schemes. The recovery delay of the LLW scheme is always one time slot because a number of original packets transmitted in each time slot decreases when the increase to make sure the destination can decode and recover them in one time slot.

Thirdly, in Figure 4, we set , , , , .

(a) Throughput

(b) Transmission delay

Figure 4: , , , , .

In Figure 4(a), the throughput of the proposed RDLC, RRLC schemes increases with the increase of , because the throughput of the proposed RDLC, RRLC schemes can achieve only if is no more than the total number of paths minus the average number of path failures each time slot. In our simulation, the condition is that . Therefore, in Figure 4(a), the throughput of the proposed RDLC, RRLC schemes can achieve . Obviously, does not have impact on the throughput of the unreliable communication scheme and the LCW scheme. We can see in Figure 4(a) that the throughput of the proposed RDLC, RRLC schemes outperforms the other two schemes when is sufficiently large.

Figure 4(b) shows that the values of also do not have impact on the recovery delay of the unreliable communication scheme and the LCW scheme. On the other hand, the recovery delays of the proposed RDLC, RRLC schemes increase with the increase of achievable throughput. However, by selecting a suitable value of , a transmission can achieve a higher throughput with a lower delay compared with the unreliable communication scheme and the LCW scheme.

Finally, in Figure 5, we set , , , .

(a) Throughput

(b) Transmission delay

Figure 5: , , , .

In Figure 5(a), the throughput of the proposed RDLC, RRLC schemes, the unreliable communication scheme, and the LCW scheme do not change because the throughput of them does not related with the size of the finite field. However, as we showed in Section 4, the size of the finite field has impact on the decoding probability that the destination to recovery the original packets when using the RRLC scheme. Therefore, the increase of the size of the finite field will increase the decoding probability and reduce the recovery delay. The trends of the recovery delay of the RRLC scheme shown in Figure 5(a) are consistent with our theoretical analysis. The recovery delay of the other three schemes does not related with the size of the finite field.

6. Conclusion

In this paper, we have explored the power of LNC to provide reliable communication for multiple failures in WSNs. The key idea is to design the LNC scheme based on average number of path failures, in which part of original data packets sent previously is still encoded into the following time slots, in order to improve the network throughput by utilizing the redundant coded data packets transmitted in the transmission rounds with fewer failures happening simultaneously in the WSN. Specifically, we first give the design of deterministic LNC scheme based on the average number of path failures, by which the network throughput is significantly improved comparing with the traditional approaches designed based on the maximum number of path failures. We also have investigated the behavior of the random LNC, when it is applied to the reliable communication problem studied in this paper. We have given the performance evaluation, which demonstrates the effectiveness of the proposed LNC schemes.

Acknowledgments

This work is supported in part by the National Natural Science Foundation of China under Grants no. 61202378, 61070169, 61070170, and 61201212, the Fundamental Research Funds for the Central Universities under Grant no. 2012HGBZ0640, the Natural Science Foundation of Jiangsu Province under Grant no. BK2011376, the Specialized Research Foundation for the Doctoral Program of Higher Education of China no. 20103201110018, and the Application Foundation Research of Suzhou of China no. SYG201118, SYG201238, and SYG201239.

References

I. F. Akyildiz and X. Wang, “A survey on wireless mesh networks,” IEEE Communications Magazine, vol. 43, no. 9, pp. S23–S30, 2005.

M. L. Sichitiu, “Wireless mesh networks: opportunities and challenges,” in Proceedings of the 6th World Wireless Congress (WWC '05), pp. 318–323, Palo Alto, Calif, USA, May 2005.

L. M. L. Oliveira, A. F. De Sousa, and J. J. P. C. Rodrigues, “Routing and mobility approaches in IPv6 over LoWPAN mesh networks,” International Journal of Communication Systems, vol. 24, no. 11, pp. 1445–1466, 2011.

I. Bekmezci and F. Alagz, “Energy efficient, delay sensitive, fault tolerant wireless sensor network for military monitoring,” International Journal of Distributed Sensor Networks, vol. 5, no. 6, pp. 729–747, 2009.

N. Jain and D. P. Agrawal, “Current trends in wireless sensor network design,” International Journal of Distributed Sensor Networks, vol. 1, no. 1, pp. 101–122, 2005.

W. Ye, J. Heidemann, and D. Estrin, “A flexible and reliable radio communication stack on motes,” Tech. Rep., USC Information Sciences Institute, 2002.

A. Woo and D. E. Culler, “A transmission control scheme for media access in sensor networks,” in Proceedings of the 7th Annual International Conference on Mobile Computing and Networking (MobiCom '01), pp. 221–235, New York, NY, USA, July 2001.

W. Ye, J. Heidemann, and D. Estrin, “Medium access control with coordinated adaptive sleeping for wireless sensor networks,” IEEE/ACM Transactions on Networking, vol. 12, no. 3, pp. 493–506, 2004.

B. Kusy, C. Richter, W. Hu et al., “Radio diversity for reliable communication in WSNs,” in Proceedings of the 10th ACM/IEEE International Conference on Information Processing in Sensor Networks (IPSN '11), pp. 270–281, April 2011.

S. Chalasani and V. Rajaravivarma, “Survivability in optical networks,” in proceedings of the 35th Southeastern Ymposium on System Theory, pp. 6–10, 2003.

R. Ahlswede, N. Cai, S. Y. R. Li, and R. W. Yeung, “Network information flow,” IEEE Transactions on Information Theory, vol. 46, no. 4, pp. 1204–1216, 2000.

R. Koetter and M. Médard, “An algebraic approach to network coding,” IEEE/ACM Transactions on Networking, vol. 11, no. 5, pp. 782–795, 2003.

S. Y. R. Li, R. W. Yeung, and N. Cai, “Linear network coding,” IEEE Transactions on Information Theory, vol. 49, no. 2, pp. 371–381, 2003.

Z. Li, B. Li, and L. C. Lau, “On achieving maximum multicast throughput in undirected networks,” IEEE Transactions on Information Theory, vol. 52, no. 6, pp. 2467–2485, 2006.

T. Ho, R. Koetter, M. Médard, D. R. Karger, and M. Effros, “The benefits of coding over routing in a randomized setting,” in Proceedings of the IEEE International Symposium on Information Theory (ISIT '03), p. 442, July 2003.

A. E. Kamal, “1+N protection in mesh networks using network coding over p-Cycles,” in Proceedings of the IEEE Global Telecommunications Conference (GLOBECOM '06), pp. 1–6, December 2006.

S. A. Aly, A. E. Kamal, and O. M. Al-Kofahi, “Network protection codes: providing self-healing in autonomic networks using network coding,” Computer Networks, vol. 56, no. 1, pp. 99–111, 2012.

O. M. Al-Kofahi and A. Kamal, “Network coding-based protection of many-to-one wireless flows,” IEEE Journal on Selected Areas in Communications, vol. 27, no. 5, pp. 797–813, 2009.

A. E. Kamal, “A generalized strategy for 1+N protection,” in Proceedings of the IEEE International Conference on Communications (ICC '08), pp. 5155–5159, May 2008.

S. Dai, J. Wang, X. Zhang, and S. Li, “Network coding-based 1+N protection scheme in hybrid wireless-optical broadband access networks,” in Proceedings of the 6th International ICST Conference on Communications and Networking in China (CHINACOM '11), pp. 1013–1020, 2011.

S. Dai, X. Zhang, J. Wang, and J. Wang, “An efficient coding scheme designed for n+k protection in wireless mesh networks,” IEEE Communications Letters, vol. 16, no. 8, pp. 1266–1269, 2012.

L. Lima, M. Médard, and J. Barros, “Random linear network coding: a free cipher?” in proceedings of the IEEE International Symposium on Information Theory (ISIT '07), pp. 546–550, June 2007.