 Research
 Open Access
 Published:
Joint networkchannel code optimization for wireless sensor networks
EURASIP Journal on Wireless Communications and Networking volume 2013, Article number: 267 (2013)
Abstract
Optimization of sensor network architecture in order to improve the overall system performance at the end processing station is an important challenge. A lot of architectures have been designed to optimize the bit error rate. Conventionally, this optimization is done by inserting relays between sensors and destination. These relays insert redundant information by mixing the incoming streams from sensor nodes, hence creating parity check information which is very useful to help decode the transmit information from sensors. The goal is to combine network and channel coding to match network on graph to code on graph, and this is called adaptive network coded cooperation (ANCC). Compared to the previous works in the field, we propose a new transmit protocol based on the use of beamforming technique which is very efficient in terms of throughput and is fully compatible with the physical network coding (PNC) principles. Furthermore, we propose a distributed coding scheme where the relay, the destination, and the sensors are all equipped with repeat accumulate (RA) channel code structures. The relay has a special RA structure to suit the need of the PNC multiple access channel.
1 Introduction
Different protocols and architectures have been designed to improve the performance of sensor networks. The use of network coding has appeared recently as a promising way to help find an answer to this problem [1–5]. In network coding, some intermediate nodes mix the messages they received and forward this obtained mixture to several destinations simultaneously [6–8]. When compared to time sharingbased schemes where destinations are served sequentially, network coding improves considerably the throughput efficiency [9]. Among the different network coding techniques for wireless sensor networks, one promising approach is the use of joint networkchannel coding (JNCC). The basic principle consists in the use of relays which decode incoming streams and combine them to obtain additional redundant information. The redundant information from the relays is combined at the destination node with the original information from the sensors to obtain an equivalent powerful block code such as a LDPC one. Hence, the goal of this kind of architecture is to couple networks on graphs with codes on graph. This was first proposed in [10] and further developed in [11, 12] with some optimization of the coding scheme at the relay place. The transmission protocol can be summarized in the following way. In a first time slot, each source node broadcasts its information to both relays and destination. In a second time slot, the relays then decode the received packets and combine them by XOR operation to obtain parity check bits which are transmitted to the destination. The second task clearly corresponds to the network coding step and contains some challenging aspects. The main ones are of course the choice of the source incoming messages in the XOR operations and the degree of each XOR operation (the number of incoming streams which are combined). Finally, at the destination node, a graph code such as lowdensity parity check (LDPC) or lowdensity generator matrix (LDGM) codes is built and decoded using belief propagation (BP) algorithm.
Compared to the existing literature and particularly to [12], we propose, in this paper, new attractive features to further improve the performance of suck kind of systems. The first point concerns the improvement of the broadcast transmit phase. In [12], the authors propose to use orthogonal channels to make the transmissions from sources to relays error free. This is quite penalizing in terms of bandwidth or throughput efficiency depending on the used multiple access technique (FDMA or TDMA). In this paper, supposing that the relay and the destination are equipped with K antennas, we propose a new transmission protocol which enables 2.K uplink and downlink transmissions to be accomplished within (K + 2) time slots. This outstanding performance is obtained because we found a way to handle the cochannel interference at the relay place. The idea behind this comes from the concept of interference alignment [13] and consists in making the two messages delivered to and from the same sensor fall in the same direction at the relay. We propose precoding and beamforming techniques [14–18] to ensure that the signals delivered to and from the same sensor can be paired together. Another merit of our proposed system is that we consider twoway message exchanges between the destination and the sensors. We consider explicitly the case where the destination node sends back information controls toward the sensor nodes and this is not studied in [12].
Furthermore, since our proposed scheme is fully compatible with the physical network coding (PNC) principles, we propose a distributed coding scheme where channel coding is applied at the destination and at the sensors level and network coding is applied at the relay to encode the incoming mixed streams from the destination and the sensors. We show that our proposed system enables to transmit simultaneously the K encoded messages from the sensors and the control encoded messages from the destination. Thanks to the precoding matrices, these messages are combined at the relay in such a way that we have K streams to be network encoded at the relay place. We suppose that the end nodes (destination and sensors) are all equipped with repeat accumulate (RA) codes, and we show how to design the channel decoder at the relay which channeldecodes the superimposed channelcoded packets to obtain the soft version of the arithmetic summation of the source packets and transforms the superimposed source packets to the network coded packets. These processing tasks at the relay have been detailed in [19, 20] and the authors have named them: channeldecodingnetworkcoding process (CNC). Similar construction rules can be found in [21, 22]. The decoder at the relay uses a special repeat accumulate (RA) code structure to accommodate the obtained particular incoming streams with precoding.
The rest of the paper is organized as follows. In the second part (Section 2), the system model and the new proposed transmit protocol are described. In the third part (Section 3), the network coding scheme is detailed and we put the emphasis on the design of the decoder at the relay. In the fourth part (Section 4), we present the results of the simulation. Finally, concluding remarks are given in Section 5.
The following notations are used: (.)^{T}, (.)^{H}, and $\mathbb{E}\left\{\left(.\right)\right\}$ denote transpose, conjugate transpose, and expectation of (.), respectively.
2 System model
We consider a real wireless sensor network with K sensors, each sensor is equipped with one transmit/receive antenna and with a channel encoder/decoder. In this paper, we will use RA code structure for the coding of incoming streams from the sensors. No direct link between sensor and destination exists. The relay is equipped with Q multiple antennas and with K networkchannel decoder/encoders. The destination node is equipped with N ≥ K multiple antennas too and contains K channel encoders/decoders. We will suppose classically that N ≥ Q ≥ K, i.e., the destination node has the best capability while some relays are more capable than the elementary sensors. The cooperation phases in such a system are decomposed into two main ones.

The first one is the broadcast phase where sensors and destination exchange their information with the help of the relay. We suppose that there is no direct available link between the sensors and the destination source.

The second one is the network coding phase at the relay. After decoding, the relay combines the incoming streams and retransmits them to the destination and sensor nodes. The way the relay operates the network coding tasks is described in the next section.
In this part, we put the emphasis on the transmit protocols. In [12], the authors assume that the sensors transmit their data in orthogonal channels (typically sequentially in the case of TDMA). This results in bad throughput efficiency. We propose a new transmit protocol which enables 2. K uplink and downlink transmissions to be accomplished within (K + 2) time slots (Figure 1).
2.1 Transmit protocols
During the first time slot, the destination node transmits the precoded version of the control messages to the individual intended sensors, Pm, where m = [m_{1}, m_{2} …, m_{ K }]^{T} and P is a N × K precoding matrix at the destination node. Since the transmission power at each antenna is equal to 1, the precoding matrix should satisfy: trace(PP^{H}) ≤ N. Simultaneously, each of the K sensors sends its own message s_{ i }i∈ {1, …, K} to the destination. At the end of the first time slot, the signal at the relay can be written as:
where H_{ DR } is the Q × N channel matrix between the destination node and the relay, H_{ jR } is the Q × 1 channel vector between the relay and the j th sensor and n_{ R } denotes the Q × 1 additive white Gaussian noise vector.
During the second time slot, the relay decodes the received signal to obtain soft information about the quantities: m_{ j } ⊕ s_{ j }, using a particular decoding algorithm. Denoting ${\widehat{u}}_{j}$ the estimated value for m_{ j } ⊕ s_{ j } at the end of the decoding process, ${\widehat{u}}_{j}$ is then encoded by a standard RA coder. Vectors $\widehat{\mathit{t}}={\left[{\widehat{\mathit{t}}}_{1},{\widehat{\mathit{t}}}_{2},\dots ,{\widehat{\mathit{t}}}_{K}\right]}^{T}$, which represent the encoded words corresponding to ${\widehat{u}}_{1},{\widehat{u}}_{2},\dots ,{\widehat{u}}_{K}$, are then broadcast, after being BPSK modulated, to the sensor nodes and to the destination node in different time slots. Denoting $\tilde{\mathit{t}}$ the modulated vector corresponding to $\tilde{\mathit{t}}$, the vectors $\tilde{\mathit{t}}$ are transmitted during the next K time slot to the sensors using precoders W^{(j)}. Supposing that we intend to transmit the j th element of vector $\tilde{\mathit{t}}$ to sensor j, we can use W^{(j)} defined by:
In other words, matrix W^{(j)} is built with the superposition of an all zero matrix of size K × K except for the j th term on the diagonal which is equal to 1 and an all zero matrix of size (QK) × K. Physically, this corresponds to the case where the components of $\tilde{\mathit{t}}$ are transmitted sequentially over the first K transmit antennas at the relay. We obtain the received signal at the j th sensor as:
where H_{ Rj } is the 1 × Q channel vector between the j th sensor and the relay. Supposing that the uplink and downlink channels are reciprocal, we have ${\mathit{H}}_{R\phantom{\rule{0.12em}{0ex}}j}={\mathit{H}}_{\mathit{jR}}^{H}$. Of course, during this phase, the destination does not take into account the received data.
After this phase, i.e., after the first (K + 2) time slots, vectors $\tilde{\mathit{t}}$ are transmitted to the destination source within the next time slot. To do this, we add QK zeros at the end of $\tilde{\mathit{t}}$ to obtain a new transmit vector of size Q × 1, named $\tilde{\mathit{t}}$. The relay uses a precoding vector F of size Q × Q and the destination source weights the received signal with a vector G of size Q × N. Physically, this means that the K data information are transmitted by selecting K antennas among a set of Q antennas. We obtain the received signal of size Q × 1 at the destination node as:
One possible choice for G and F consists in: $\mathit{F}\mathit{=}{\left({\mathit{H}}_{\mathit{RD}}^{H}{\mathit{H}}_{\mathit{RD}}\right)}^{1}$ and $\mathit{=}{\mathit{H}}_{\mathit{RD}}^{H}$. Once again, we suppose that: ${\mathit{H}}_{\mathit{RD}}={\mathit{H}}_{\mathit{DR}}^{H}$.
2.2 Precoding matrix design at the destination source for the first time slot
Apart from the already cited constraint power, we have to be sure that each sensor should not receive information for other sensor. The proposed design is based on the concept of interference alignment [23] and consists in grouping the messages from and to the same sensor, i.e., m_{ i } and s_{ i } together. This is facilitated by defining the precoding matrix P at the destination as follows:
where H_{ R } = [H_{1R}, H_{2R}, …, H_{ KR }] and α is a factor which ensures that the transmission power at the destination node is normalized. By using such a precoding matrix P, the relay can group the messages from and to the same user as follows:
where s = [s_{1}, …, s_{ K }]^{T}. In this case, similar to physical layer network coding (PNC) [4], the relay directly broadcasts the mixture of m and s. Concerning the total transmission power at the destination with the use of precoding matrix P, we have
Using the condition $\mathbb{E}\left[\mathrm{trace}\left(\mathit{P}{\mathit{P}}^{H}\right)\right]\le N$ and choosing $=N/\mathbb{E}\left[\mathrm{trace}\left({\left({\mathit{H}}_{\mathit{DR}}{\mathit{H}}_{\mathit{DR}}^{H}\right)}^{1}{\mathit{H}}_{R}{\mathit{H}}_{R}^{H}\right)\right]$, we ensure, provided that $\mathbb{E}\left[\mathrm{trace}\left({\left({\mathit{H}}_{\mathit{DR}}{\mathit{H}}_{\mathit{DR}}^{H}\right)}^{1}{\mathit{H}}_{R}{\mathit{H}}_{R}^{H}\right)\right]$ is bounded, that the transmission power at the base station is normalized. The proof that $\mathbb{E}\left[\mathrm{trace}\left({\left({\mathit{H}}_{\mathit{DR}}{\mathit{H}}_{\mathit{DR}}^{H}\right)}^{1}{\mathit{H}}_{R}{\mathit{H}}_{R}^{H}\right)\right]$ is bounded can be found in [15] or [24].
3 Network coding at the relay
The coding principle is directly related to the received signal at the relay (see Equation (5)), we have
We suppose now that the transmitted messages from the elementary sensors and from the destination are both encoded with a RA code structure [19, 20]. The structure of the RA code is drawn on Figure 2.
As mentioned in [19, 20], there are two classical solutions to address the problem of cooperative network coding at the relay (CNC). The first one consists in decoding m_{ i } and s_{ i } from y_{ R } separately. The relay can first decode m_{ i } while regarding the other message s_{ i } as interference, and can then decode s_{ i } after removing the decoded information m_{ i } from the decoded signal. Combining the soft outputs of the decoder P_{mi,si}(a, b) = Pr(m_{ i } = a, s_{ i } = b/y_{ R })P_{mi,si}(a, b) = Pr(m_{ i } = a, s_{ i } = b/y_{ R }), we can generate: m_{ i } ⊕ s_{ i }. The second solution consists in estimating ${P}_{{X}_{s,j}\oplus {X}_{D,j}}\left(a\right)=\mathrm{Pr}\left({X}_{s,j}\oplus {X}_{D,j}=a/{\mathit{y}}_{R}\right)$ from the received vector y_{ R } with for example the method in [25]. By decoding the estimate of X_{s,j} ⊕ X_{D,j} i.e.: ${P}_{{X}_{s,j}\oplus {X}_{D,j}}$ with a soft input decoder, the relay can obtain: m_{ i } ⊕ s_{ i }.
3.1 The proposed decoding scheme
It is possible to design a decoding scheme with higher performances compared to the two abovementioned solutions. The new proposed solution named Arithmeticsum Channel decoding Network Coding process (ACNC) has two advantages: (1) the relay directly decodes the received packet y_{ R } to make full use of dependency among channel code symbols and (2) it does not decode explicitly m_{ i } and s_{ i } but only aims at obtaining the probability mass function of m_{ i } + s_{ i } which can be easily transformed to: m_{ i } ⊕ s_{ i }. We can find similar ideas in [21, 22]. Similar to [19, 20], we then look at an equivalent decoding structure at the relay place. Adapting the idea of Arithmeticsum Channel decoding Network Coding process ACNC design, we have, for each row j of y_{ R }, the decoder at relay which can be regarded as processing the superposition of the two simultaneously received signals from the destination $\sqrt{\alpha}{m}_{j}$ and the sensor s_{ j } to generate the superposition of the two inputs of the encoders at the sensor j and at the destination. In these conditions, the decoder at the relay for row j could conceptually be viewed as the decoder of a virtual encoder whose input S_{ R, j } and output X_{ R, j }are given by:
The virtual coding scheme for ACNC at the relay is depicted on Figure 2. The virtual encoder has the same structure as the classical RA encoder except that the binary summation is now replaced by a general function f. This function f needs to satisfy:
when: s_{R,j}[l] = m_{ j }[l] + s_{ j }[l]
where x_{D,j}[k] is the k th coded bit of message m_{ j } from the destination, x_{s,j}[k] is the k th coded bit of message from the sensor j, u_{R,j}[k] is the k th interleaved symbol of node relay and s_{R,j}[l] = u_{R,j}[k] is the l th information bit of node relay, and the index l is determined by the interleaver. In our case, the interleavers at destination, relay, and sensor are the same. Based on Figure 2, the relations between x_{D,j}[k], x_{s,j}[k] and m_{ j }[l], s_{ j }[l] can be respectively expressed as:
Then, combining Equations (8) and (9), we can obtain the expression of the function f as:
The possible values of x_{R,j}[k] are, $0,{\gamma}_{1}=1,{\gamma}_{2}=\sqrt{\alpha},{\gamma}_{3}=1+\sqrt{\alpha}$, and ${\gamma}_{4}=1\phantom{\rule{0.5em}{0ex}}\mathrm{or}\phantom{\rule{0.5em}{0ex}}\sqrt{\alpha}={\gamma}_{1}\phantom{\rule{0.5em}{0ex}}\mathrm{or}\phantom{\rule{0.5em}{0ex}}{\gamma}_{2}$. In fact, we have the following rules:
For encoding, the Tanner graph is read from left to right. For decoding, the Tanner graph is read backward from right to left. The wellknown principle is to exchange a posteriori probabilities between information and check nodes until the probabilities converge after several iterations and we could decode: m_{ j }[l] + s_{ j }[l].
3.2 Tanner graph and decoding algorithm
The RA code structure can be described with the wellknown Tanner graph, which is the basis to use the belief propagation algorithm [26]. The tanner graph of the virtual encoder at the relay is drawn on Figure 3.
For the decoding algorithm, we have the four following configurations of message updating steps (see Figure 4). The decoding algorithm proceeds as follows. We suppose, for example, that we use a MIMO ZFbased equalizer, this entails the multiplication of the received signal y_{ R } by the invert or the pseudoinvert matrix of H_{ R }. Hence, after the ZF equalization step at the relay, assuming a BPSK modulation scheme, the k th received symbol at the j th row of the received vector at the relay is written as:
Another solution may consist in employing a list sphere decoder [27] to weight the coded symbol before entering the belief propagation decoding module. This affords to obtain better performances than using ZF equalization since it is well known that LSD, which approximates the ML solution, exhibits better performances compared to ZF equalization.
Concerning the decoding algorithm using BP, it proceeds as follows. Let P[h,t] denote the message passed between a check node and a variable node (information node or code node), the message is associated with the edge from node h to node t; one of h or t is a variable node and the other is a check node. As in [19, 20], we denote P_{ k } as the message from the k th evidence node to the k th code node. Hence, we have the following notations:
P[h, t] = (p_{0}, p_{1}, p_{2}) is a vector, in which p_{ i } is the probability that the corresponding variable node (h or t) takes on the value i. In fact, we have
The messages for the variable nodes are initialized to (1/4, 1/2, 1/4).
Similarly, ${P}_{k}^{\text{'}}=\left({p}_{0}^{\text{'}},{p}_{1}^{\text{'}},{p}_{2}^{\text{'}},{p}_{3}^{\text{'}}\right)$ is a vector, in which ${p}_{i}^{\prime}$ is the probability that the k th coded symbol is i given the k th received symbol. We have here:
Initialization step: all the messages with the edges in Figure 4 are taken equal to (1/4, 1/4, 1/4, 1/4) except for the messages incident to the evidence nodes. These messages contain information on the received signal and the message from the evidence node k is computed from the received signal y_{R,j}[k] as follows:
λ is a normalizing factor given by:
3.3 Message update rules
(a) The first update rule concerns the update equations for Output Messages going out of a Variable Node. This corresponds to the cases of Figure 5 a,c.
Figure 5a case: when the probability vectors of the two input messages, ${P}^{\text{'}}=\left({p}_{0}^{\text{'}},{p}_{1}^{\text{'}},{p}_{2}^{\text{'}},{p}_{3}^{\text{'}}\right)$and ${Q}^{\text{'}}=\left({q}_{0}^{\text{'}},{q}_{1}^{\text{'}},{q}_{2}^{\text{'}},{q}_{3}^{\text{'}}\right)$ (associated with the edge from y to x and from c' to x) arrive at a code node of degree 3 (except the lowest code node), the probability that the code symbol is 0 is obtained as follows:
where $\gamma =\frac{\mathrm{Pr}\left(P\right).\mathrm{Pr}\left(Q\right)}{\mathrm{Pr}\left(P,Q\right)}$; we assumed in Equation (17) that the two input messages are independent, given the value of the variable node, i.e., Pr(P, Qx) = Pr(Px), and we suppose that Pr(x = 0) = 1/4. In a similar way, we would obtain$\mathrm{Pr}\left(x=1\leftP,Q\right.\right)=4\gamma {p}_{1}^{\text{'}}{q}_{1}^{\text{'}}$$\mathrm{Pr}\left(x={d}_{m,j}\leftP,Q\right.\right)=4\gamma {p}_{2}^{\text{'}}{q}_{2}^{\text{'}}$ , and $\mathrm{Pr}\left(x=1+{d}_{m,j}\leftP,Q\right.\right)=4\gamma {p}_{3}^{\text{'}}{q}_{3}^{\text{'}}$.
Hence, the output message at the variable node is
With $\gamma =\frac{1}{4\left({p}_{0}^{\text{'}}{q}_{0}^{\text{'}}+{p}_{1}^{\text{'}}{q}_{1}^{\text{'}}+{p}_{2}^{\text{'}}{q}_{2}^{\text{'}}+{p}_{3}^{\text{'}}{q}_{3}^{\text{'}}\right)}$Remark:

(1) The update equations for the scenario of Figure 5 c are similar except that the variable node is an information node rather than a code node, and the associated probabilities are related to the source symbol rather than the code symbol.

(2) If we consider the messages in loglikelihood (LLR) form, i.e., ${p}_{k}^{\text{'}}=\left(0,log\left({p}_{1}^{\text{'}}/{p}_{0}^{\text{'}}\right),log\left({p}_{2}^{\text{'}}/{p}_{0}^{\text{'}}\right),log\left({p}_{3}^{\text{'}}/{p}_{0}^{\text{'}}\right)\right)$, we find that Equation (17) is equivalent to the summation of all the incoming LLRs.

(3) For the lowest code node in Figure 4, the output message is always the same at the input message from the last evidence node, which remains constant throughout the iterations.

(b)
The second update rule concerns the update equations for Output Messages going out of a Check Node. This corresponds to the cases of Figure 5 b,d.
Figure 5b case: If we consider a check node below the topmost check node, the probability that the information node symbol is 0 given the two input messages ${P}^{\text{'}}=\left({p}_{0}^{\text{'}},{p}_{1}^{\text{'}},{p}_{2}^{\text{'}},{p}_{3}^{\text{'}}\right)$ and ${Q}^{\text{'}}=\left({q}_{0}^{\text{'}},{q}_{1}^{\text{'}},{q}_{2}^{\text{'}},{q}_{3}^{\text{'}}\right)$ (associated with the edge from x to c and the edge from x' to c, respectively) is equal to:
We eventually obtain
In the same way, we get
Figure 5d case: in this case, we have two messages coming from ${c}_{R,j}^{\text{'}}$ and ${c}_{R,j}^{\text{'}\text{'}}$ corresponding to x_{R,j}[k  1] and x_{R,j}[k] in Equations (10) and (11), and we deduce the different probabilities: P[h, t] = (p_{0}, p_{1}, p_{2}).
And, similarly, we obtain
4 Simulation results
We reuse Equations (5) and (11), we have
We are interested in evaluating the achievable data rate or ergodic capacity at the destination node. As we have supposed that there is no direct link between sensor nodes and destination nodes the upper bound for the achievable data rate at the destination node can be approximated by [28]:
Where the factor 0.5 denotes the half multiplexing loss due to relaying compared with a relayfree scenario. ρ_{ SR } denotes the signaltonoise power ratio for the link between sensors and relay and ρ_{ RD } denotes the signal to noise power ratio for the link between relay and destination. In the following, supposing that the relay is located at the same distances from the sensor network and the destination, we will assume that: ρ_{ SR } = ρ_{ RD } = ρ
We consider a sensor network with respectively four, six, eight, and ten sensors, and we deal with the case of a BPSK modulation at both sensor and destination nodes. We set the repeat factor q to 3 and the interleave pattern is randomly selected for each packet. This entails a coding rate of 1/3. The simulated channel models are quasi static block fading channels, i.e., the channel parameters stay fixed for the duration of a transmitted block but vary from block to block. No power optimization is done, i.e., that means that transmit power at the destination source and at the sensor nodes is normalized to one. We compare the performances of two decoding schemes using a ZF equalizer or a sphere detector before BP decoding. We consider two size blocks for the RA encoder scheme: 2,000 and 6,000 bits. The performance results of the proposed network scheme are illustrated on Figures 6, 7, 8, and 9. The conclusions are nearly the same for each picture. Working with the highest block size, i.e., 6,000 bits together with a SISO (Soft In Soft Out) Sphere Decoder [27] enables to work close to the theoretical capacity of formula (27). For example, for a tensensor network, we are able to work within less than 1 dB from the achievable data rate at a Frame Error Rate (FER) of 10^{2} (see Figure 9). The use of receiver architecture equipped a ZF equalizer yields to a degradation approximately equal to 0.6 0.7 dB, thus enabling to work within 1.7 dB from the ergodic capacity. The degradation is clearly more important when we use a small size RA block code. With a block size of 2,000 bits, the performances of a SDbased receiver are nearly 2 dB far away from the ergodic capacity at FER = 10^{2} (see Figure 8). Concerning the receiver with a ZF equalizer, we are nearly 2.5 dB from the ergodic capacity (once again for the case FER = 10^{2}).
All of these results constitute an outstanding performance since we are able, in all the cases, to work close to the theoretical ergodic capacity of the system.
5 Conclusion
In this paper, we have proposed a physical network codingbased system to improve the throughput efficiency of a wireless sensor network. Thanks to powerful beamforming techniques, supposing that the relay and the destination are equipped with K antennas, we built a new transmission protocol which enables 2.K uplink and downlink transmissions to be accomplished within (K + 2) time slots. This outstanding performance is obtained because we found a way to handle the cochannel interference despite the poor capacities of elementary wireless sensors which have only one antenna.
Furthermore, since our proposed scheme is fully compatible with the physical network coding (PNC) principles, we propose a distributed coding scheme where channel coding is applied at the destination and at the sensors level and network coding is applied at the relay to encode the incoming mixed streams from the destination and the sensors. We show that our proposed system enables to transmit simultaneously the K encoded messages from the sensors and the control encoded messages from the destination. Simulation results demonstrate that our proposed distributed coding scheme enables to work close to the theoretical ergodic capacity of the system. Typically, considering different kinds of receiver architectures, we are always within less than 2 dB from the ergodic capacity of the equivalent system.
Authors' information
NA received the engineering degree from the Ecole Nationale Supérieure d'Ingénieurs de Limoges in September 2010. He is now a PhD student at the University of Limoges since October 2010. His research activities concern the cooperative communication in mobile ad hoc networks, especially for physical and MAC layer. He is also a temporary teacher at the University of Limoges; he participated in many international conferences.
VM received the BSc and MSc degrees from Sharif University of Technology, Tehran, Iran, respectively, in 1988 and 1991 and PhD degree from the University of Limoges, France in 1998. He has been working at the department of electronic and telecommunication of ENSIL/University of Limoges as an assistant professor since 2000 and as an associate professor since 2007. He received in 2008 and 2012 from the French ministry of research and higher education the award of scientific excellence. His main interest in research is the telecommunication systems including MIMO systems, coding, network coding, cooperative communications, sensor network, and smart grid. Since 1998, he has been scientific manager for more than ten research projects in the field of ICT (information and Communications Technology). He is the (co)author of more than 100 publications in scientific journals and conferences and served as TPC members in several international conferences.
JPC received the engineering degree from the Ecole Nationale Supérieure des Télécommunications de Bretagne in 1990. He also received the Aggregation degree in Physics in 1993 and the HDR degree in 2002 from the University of Limoges. He became a IEEE senior member in 2007. He is now a full professor in signal processing at the Ecole Nationale d'Ingénieurs de Limoges (ENSIL) since 2006. His research activities concern signal processing algorithms for digital communications including cooperative networks, network coding, spacetime coding, and joint optimization of physical and MAC layers of future communication systems. He is getting involved in several French and European research programs.
References
 1.
Katti S, Rahul H, Hu W, Katabi D, Medard M, Crowcroft J: Xors in the air: practical wireless network coding. In Proc ACM SIGCOMM. Pisa; 2006:243254.
 2.
Ding Z, Leung KK, Goeckel DL, Towsley D: On the study of network coding with diversity. IEEE Trans. Wireless Commun. 2009, 8: 12471259.
 3.
Louie RHY, Li Y, Vucetic B: Practical physical layer network coding for twoway relay channels: performance analysis and comparison. IEEE Trans. Wireless Commun. 2010, 9: 764777.
 4.
Popowski P, Yomo H Proc. IEEE Int. Conf on Comm. (ICC). In Physical network coding in twoway wireless relay channels. Glasgow; 2007:707711.
 5.
Fragouli C, Widmer J, Boudec JYL: A network coding approach to energy efficient broadcasting: from theory to practice, in Proc IEEE Conf Comput. Commun. (Infocom). Barcelona; 2006.
 6.
Chen Y, Kishore S, Li J: Wireless diversity through network coding. In Proc. IEEE Wireless Commun. Netw. Conf. (WCNC). Las Vegas, NV; 2006:16811686.
 7.
Asterjadhi A, Fasolo E, Rossi M, Widmer J, Zorzi M: Toward network codingbased protocols for data broadcasting in wireless ad hoc networks. IEEE Trans. Wireless Commun. 2010, 9: 662672.
 8.
Ding Z, Ratnarajah T, Leung KK: On the study of network coded at transmission protocol for wireless multiple access channels. IEEE Trans. Wireless Commun. 2009, 8: 118123.
 9.
Meng Y, Jing L, Blum RS Proc. IEEE Int. Conf on Comm. (ICC). In User cooperation through network coding. Glasgow; 2007:40644069.
 10.
Bao X, Li J Proc of Allerton Conference on Communication, Control and Computing. In Matching codeongraph with networkongraph: adaptive network coding for wireless relay channels. Urbana Champaign, IL; 2005.
 11.
Bao X, Li J: Adaptive network coded cooperation (ANCC) for wireless relay networks: matching codeongraph with networkongraph. IEEE Trans. Wireless Commun. 2008, 7: 574583.
 12.
Kun P, Yonghui L, Vucetic B Proc. 6th Int. Syp. On Turbo Codes and Iterative Inf. Proc. (ISTC). In Joint networkchannel code design for real wireless relay networks. Brest; 2010:429433.
 13.
Cadambe VR, Jafar SA: Interference alignment and the degrees of freedom for the k user interference channel. IEEE Trans. Inform. Theory. 2008, 54: 34253441.
 14.
Li J, Chen W: Joint power allocation and precoding for network codingbased cooperative multicast systems. IEEE Sig. Proc. Letters. 2008, 15: 817820.
 15.
Zhiguo D, Krikidis I, Thompson J, Leung KK: Physical layer network coding and precoding for the twoway relay channel in cellular systems. IEEE Trans. Sig. Proc. 2011, 59: 696712.
 16.
HavaryNassab V, Shahbazpanahi S, Grami A, Luo ZQ: Distributed beamforming for relay networks based on secondorder statistics of the channel state information. IEEE Trans. Sig. Proc. 2008, 56: 43064316.
 17.
Nguyen DHN Proc. IEEE Int. Conf on Comm. (ICC). In Distributed beamforming in relayassisted multiuser communications. Dresde; 2009.
 18.
Sun F, De Carvalho E, Popovski E, Thai CDT: Coordinated direct and relay transmission with linear nonregenerative relay beamforming. IEEE Sig. Proc. Letters. 2012, 19: 680683.
 19.
Zhang S, Liew SC: Joint design of physicallayer network coding and channel coding. doi:arXiv:0807.4770
 20.
Zhang S, Liew SC: Channel coding and decoding in a relay system operated with physicallayer network coding. IEEE JSAC 2009, 27: 788796.
 21.
Lang Y, Wübben D, Kammeyer KD International ITG Workshop on Smart Antennas (WSA 2010). In An improved physical layer network coding scheme for twoway relay systems. Bremen; 2010:107114.
 22.
Wübben D, Lang Y IEEE Globecom. In Generalized sumproduct algorithm for joint channel decoding and physicallayer network coding in twoway relay systems. Miami, FL; 2010.
 23.
Gomadam K, Cadambe VR, Jafar SA Proc IEEE Global Telecommunications Conference Globecom. In Approaching the capacity of wireless networks through distributed interference alignment. New Orleans, LO; 2008.
 24.
Horn RA, Johnson CR: Matrix analysis. New York: Cambridge University Press; 1985.
 25.
Zhang S, Liew SC, Lu L Proc IEEE Global Telecommunications Conference Globecom. In Physical layer network coding schemes over finite an infinite fields. New Orleans, LO; 2008.
 26.
Kschischang FR, Frey BJ, Loeliger HA: Factor graphs and the sumproduct algorithm. IEEE Trans. Inform. Theory. 2001, 47: 498519. 10.1109/18.910572
 27.
Kora AD, Saemi A, Cances JP, Meghdadi V: New list sphere decoding (LSD) and iterative synchronization algorithms for MIMOOFDM detection with LDPCFEC. IEEE Trans VehTechnol. 2008, 57: 35103524.
 28.
Fan Y, Thompson J: MIMO configurations for relay channels: theory and practice. IEEE Trans. Wireless Commun. 2007, 6: 17741786.
Author information
Additional information
Competing interests
The authors declare that they have no competing interests.
Authors’ original submitted files for images
Below are the links to the authors’ original submitted files for images.
Rights and permissions
About this article
Received
Accepted
Published
DOI
Keywords
 Wireless sensor networks
 Physical network coding (PNC)
 Precoding
 Repeat accumulate (RA) code structure