Data Combination over Physical Layer Using Network Coding with PUM Turbo Codes

Author(s)
Hani Attar

Abstract

The Base Station (BS) or access point is the building block of wireless networks, so, we propose exploiting it together with the Network Coding (NC) principle. NC suffers from the complexity of the decoding processes,*i.e.*, complicated Jordan Gaussian Elimination (JGE) processes. So, this paper proposes a deterministic NC algorithm to reduce the number of sequential network decoding steps, and hence minimizing the complexity of JGE process resulting to better time delay and processing time. We propose an algorithm that combines higher number of the transmitted packets resulting to better data-rate but worse Bet Error Rate (BER). However, using such strong Forward error correction channel code, which is Partial Unit Memory Turbo Code (PUMTC) results to minimize the losses in the BER to a very acceptable lever, in fact, in Decode-and-Forward (DF) BS, the BER can be regarded as minimum. Simulation results, for both Amplify-and-Forward (AF) and DF BS schemes using PUMTC based on (8, 4, 3, 8) component codes, confirm that using PUMTC mitigates the problem of noise aggregation resulting from applying NC in the proposed schemes.

The Base Station (BS) or access point is the building block of wireless networks, so, we propose exploiting it together with the Network Coding (NC) principle. NC suffers from the complexity of the decoding processes,

1. Introduction

Most of the popular communication setups such as, IEEE 802.15 and IEEE 802.16, use broadcasting over classical relay channel, that allows communication in both directions simultaneously over a wireless radio channel, exploiting the broadcasting natural, such as data exchange, mobile phone (voice or video) conversation, file sharing, or 4G system applications.

Network coding (NC) [1] is a newly progressed technique over wireless network after being applied over wireline network for multicasting information as it is regarded as a noiseless transmission system. In wireless networks, NC allows nodes or Base Station (BS) to add different packets together in one combined packet, either by direct adding or XORing addition. In both cases, the combined packet is equal in the size to one packet size, which means that all the combined packets must have equal sizes. To be able to do so, nodes can apply specific combination algorithms over the input data instead of only dealing with them as single packets, such as combining two input packets after decoding and re-encoding the received packets. NC in wireless packet networks was investigated in full details in [2] [3] [4] [5] . In [2] a full-duplex channel model is investigated for two users, and one BS. In [5] , three senders and receivers for dynamic network were studied in good details, revealing that NC is such practical technique for dynamic applications as well as the static ones. In [6] , channel coding is applied to work with NC techniques over one-way communication with a single BS, which shows how important to use channel coding to mitigate the effect of combining several packets. In [7] , a group of users communicate with a common destination using NC is shown with acceptable results.

In [8] , data exchange scenario is investigated for fully connected network, via a polynomial-time algorithm with a proposed transmission strategy, unlike the work proposed in this paper where a deterministic XORing combination strategy using NC is proposed. In [9] , a Dynamic Source Routing (DSR) is proposed for multi-hops mobile Ad hoc networks, where DSR technique using NC is applied to reduce the number of transmissions.

In [10] , NC proved itself as an effective technique for even special application such as Wireless Sensor Network (WSN) over the block fading channel.

In [11] , NC has been applied over Long Term Evaluation Advanced (LTE-A) mobile network over three BSs with a different algorithm for each BS, resulting to such high Packet Error Probability (PEP) improvement compared to the same system, when NC technique is not implemented, i.e., (Benchmark scenario).

In [12] , the good saving in the transmitted packets and hence the saving in the data rate were investigated by the author over unlimited number of users over one BS.

Two-way wireless communication was shown in [13] [14] . In [13] , distributing Decode and Forward (DF) system was shown using Turbo Code as Forward Error Correction (TCFEC) channel coding, over two separate orthogonal channels, where: each user receives data directly from the user with higher error probability than the indirect orthogonal channel through the BS. The decoding processes are performed for each user at the reception side. In [14] , the advantage of using the convolution codes through the DF in the BS is combining NC with convolution codes via DF which are clearly shown with suffusion complexity and BER analysis.

In our previous work [15] [16] , practical schemes based on bit/packet together with the capacity for Amplify and Forward (AF) and DF schemes were determined for wireless full-duplex system based on NC with PUMTC. In [17] , the same work was introduced using pseudo-random and quasi-cyclic regular Low- Density Parity-Check (LDPC) codes over one BS.

In this paper, we build upon our work in [15] motivated by reducing the number of the sequential network decoding steps using Combined Packet/ symbol Network Coding (CPNC) per source per unit time providing the framework for data exchange for more than two receivers, with applying the PUMTC as the channel coding for FEC technique.

A generic framework for two practical schemes, AF and DF based on CPNC is proposed for data exchange scenario over multiple sources. Our proposed CPNC scheme is compared to the Multi-Source Network Coding (MSNC) based on NC of bits independently per unit time setups introduced in [15] , assuming Additive White Gaussian Noise (AWGN) channels. Taking into consideration that AF- based system is more appropriate for real-time applications since decoding at the BS is avoided, resulting to better time delay but worse BER. On the other hand, DF is not recommended for real-time application because of the time delay in the decoding and re-encoding, but it has such high BER performance. A practical system designs based on a rate 1/3 PUMTC with two (8, 4, 3, 8) PUM component codes, is provided.

The rest of the paper is organized as in the following order: Section II explains why applying CPNC system tents to reduce the sequential network decoding steps used in MSNC [15] . In Section III, processing steps (decoding) at the receiver direction is illustrated, followed by Section IV, which explains the proposed scenario though a four nodes example. In Section V, we present our BER results for CPNC based on L combined Packet/symbol together with a comparison with the MSNC based on NC for both AF and DF. And finally, Section VI concludes the paper.

2. CPNC Multi-Source Based on Combined Packet/Symbol

Let us assume that one BS is used to connect N users for exchanging data propose; where the user i generates a binary sequences message ${m}_{t}^{i}$ at the time t, which is uniformly distributed, and then encodes it to send Coded Message Packet (CMP) ${X}_{t}^{i}$ over uplink (UL) wireless orthogonal channels to the BS, where $i=1,2,\cdots ,N$ . Finally, the BS broadcasts the CMPs as ${Y}_{t}^{i}$ over the Dow Link orthogonal channels (DL), to the N users, taking into consideration that all N users can not overhear other signals.

Accordingly, the received CMPs by the BS are given in Equation (1):

${Y}_{t}^{i}={X}_{t}^{i}+{Z}_{UL}$ (1)

where $i=1,2,\cdots ,N$ , ${Z}_{UL}$ is the UL i.i.d. Gaussian noise of unit power.

The BS must broadcast a minimum of N − 1 consecutively combined CMPs to ensure full connectivity for the N users [15] .

So, when L packets are combined in one packet, the BS must broadcast a minimum of N − 1 consecutively combined packets, with $N\left(L-1\right)$ separate broadcasted packets to ensure full connectivity for the N users as shown in Figure 1.

Figure 1. Illustrate the broadcasted N-1 combined packets with L-1 separate packets by the BS for CPNC.

In the following, we describe both proposed AF and DF for CPNC systems.

CPNC Proposed AF_{p} System: The BS combines L packet/symbol from the received CMPs
${Y}_{t}^{i}$ to obtain
${Y}_{\left(t1,t2,\cdots tL\right)}^{i}$ , before applying the consecutive sums, and then amplifies these messages before broadcasting as
${\stackrel{\xaf}{Y}}_{AFp\left(t1,t1\cdots tL\right)}^{\left(i,i+1\right)}$ , which received by N users as
${\stackrel{^}{Y}}_{AFp\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)}$ .

So, the combined packet of L packets for user i ${Y}_{\left(t1,t2,\cdots tL\right)}^{i}$ is given in Equation (2) as:

${Y}_{\left(t1,t2,\cdots tL\right)}^{i}={Y}_{t1}^{i}+{Y}_{t2}^{i}+\cdots {Y}_{tL}^{i}$ (2)

where $i=1,2,\cdots ,N$ .

Thereafter, the BS performs the consecutive summation on the N combined packets before broadcasting the N − 1 ${\stackrel{\xaf}{Y}}_{AFp\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)}$ , and then the same for the packet of the combined L + 1 till 2L packets, and then 2L + l till 3L packets, and so on.

Accordingly, the BS’ broadcasted packet for use i and user i + 1 is given in equation (3)

${\stackrel{\xaf}{Y}}_{AFp\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)}={A}_{AFp}\left({Y}_{\left(t1,t2,\cdots tL\right)}^{i}+{Y}_{\left(t1,t2,\cdots tL\right)}^{\left(i+1\right)}\right)$ (3)

where $i=1,2,\cdots N-1$ .

Equations (2) and (3) are applied to find the next broadcasted packet for the combined packets L + 1 till 2L ${\stackrel{\xaf}{Y}}_{AFp\left(tL+1,tL+2\cdots t2L\right)}^{\left(i,i+1\right)}$ , and the same for ${\stackrel{\xaf}{Y}}_{AFp\left(t2L+1,t2L+2\cdots t3L\right)}^{\left(i,i+1\right)}$ , and so on.

The received MPs by the N users for the combined packets ${\stackrel{^}{Y}}_{AFp\left(t1,t1\cdots tL\right)}^{\left(i,i+1\right)}$ are given in Equation (4)

${\stackrel{^}{Y}}_{AFp\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)}={\stackrel{\xaf}{Y}}_{AFp\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)}+{Z}_{D{L}_{\left(i,i+1\right)}}$ (4)

where
$i=1,2,\cdots N-1$ , Z_{DL} is the DL i.i.d. Gaussian noise of unit power, and
${A}_{AFp}\ge 1$ is the amplification factor.

CPNC Proposed DF (DF_{p}) NC System: The BS decodes every received CMP
${Y}_{t}^{i}$ separately, re-encodes, modulates to
${\stackrel{^}{X}}_{t}^{i}$ , combines the L packets, consecutively sums, to
${Y}_{DFp\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)}$ and amplifies before broadcasting
${\stackrel{\xaf}{Y}}_{DFp\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)}$ , which received by the N users as
${\stackrel{^}{Y}}_{DFp\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)}$ according to Equations (5) and (6):

${\stackrel{\xaf}{Y}}_{DFp\left(t1,t12\cdots tL\right)}^{\left(i,i+1\right)}={A}_{DFp}\left({\stackrel{\u2322}{X}}_{\left(t1,t2,\cdots tL\right)}^{i}\oplus {\stackrel{\u2322}{X}}_{\left(t1,t2,\cdots tL\right)}^{i+1}\right)$ (5)

${\stackrel{^}{Y}}_{DFp\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)}={\stackrel{\xaf}{Y}}_{DFp\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)}+{Z}_{D{L}_{\left(i,i+1\right)}}$ (6)

where ${A}_{DFp}\ge 1$ is the amplification factor.

Finally, for both AF_{P} and DF_{P}, L − 1 separate packets
$\left({\stackrel{\xaf}{Y}}_{t1}^{i},{\stackrel{\xaf}{Y}}_{t2}^{i},\cdots {\stackrel{\xaf}{Y}}_{t\left(L-1\right)}^{i}\right)$ are broadcasted with the combined packet/symbol shown in Equations (3) and (5) to be used in the sequential network decoding steps for AF_{P} and DF_{P} respectively.

Figure 1 shows that in CPNC, the number of the sequential network decoding steps has been decreased by L − 1 per user, which is
$N\left(L-1\right)$ in total, as these packets are being broadcasted directly as Amplify-and-Forward Benchmark (AF_{b}) or Decode-and-forward Benchmark (DF_{b}) that need no any sequential network decoding steps to retrieve. So, we can say that using CPNC gives us the ability to combine AF_{P} system with AF_{b} and DF_{P} systems with DF_{b}, which results to improve the BER significantly, in fact, it even outperforms AF_{P} and DF_{P} for Two- Source NC as shown in the results.

3. Network Decoding

Each of the N users “hears” the N − 1 received combined packets
${\stackrel{^}{Y}}_{\left(t1,t1\cdots tL\right)}^{\left(i,i+1\right)}$ broadcasted by the BS in the AF_{p} and DF_{p} CPNC systems as given by Equations (4) and (6), respectively. In addition, each user receives the
$N\left(L-1\right)$ separate broadcasted packets
${\stackrel{\xaf}{Y}}_{t1}^{i},{\stackrel{\xaf}{Y}}_{t2}^{i},{\cdots}_{t\left(L-1\right)}^{i}$ as shown in Figure 1. Each user i for
$i=1,2,\cdots ,N$ wishes to retrieve estimate
${{X}^{\prime}}_{\left(1,2,\cdots ,L\right)}^{j}$ , where
$j=1,2,\cdots ,N$ and j ≠ i, and taking into consideration that
${{X}^{\prime}}_{1}^{i},{{X}^{\prime}}_{2}^{i},\cdots {{X}^{\prime}}_{\left(L-1\right)}^{i}$ packets are retrieved directly by decoding the received
${\stackrel{^}{Y}}_{1}^{i},{\stackrel{^}{Y}}_{2}^{i},\cdots {\stackrel{^}{Y}}_{\left(L-1\right)}^{i}$ as AF_{b} or DF_{b}, so, they need not any retrieving processes, i.e. each user needs to retrieve
${{X}^{\prime}}_{L}^{i},{{X}^{\prime}}_{2L}^{i},{{X}^{\prime}}_{3L}^{i},\cdots $ packets from the received
${\stackrel{^}{Y}}_{\left(t1,t2\cdots tL\right)}^{\left(i,i+1\right)},{\stackrel{^}{Y}}_{\left(t\left(L+1\right),t\left(L+2\right),\cdots t2L\right)}^{\left(i,i+1\right)},{\stackrel{^}{Y}}_{\left(t\left(2L+1\right),t\left(2L+2\right),\cdots t3L\right)}^{\left(i,i+1\right)}\cdots $ , according to Equations (4) and (6) for AF_{P} and DF_{P} respectively, with the help of
${\stackrel{^}{Y}}_{1}^{i},{\stackrel{^}{Y}}_{2}^{i},\cdots {\stackrel{^}{Y}}_{\left(L-1\right)}^{i}$ .

The retrieval process uses the fact that ${X}_{t}^{i},{X}_{t2}^{i},\cdots ,{X}_{tL}^{i}$ and the amplification factor are known by user i and reverse engineers the network encoding process by “subtracting” the known message packet from the received noisy L combined packet/symbol. This can be expressed as:

${{\stackrel{^}{X}}^{\prime}}_{L}^{j}={\stackrel{^}{Y}}_{\left(1,2,\cdots L\right)}^{i,i+1}-{A}_{p}\left(\left({X}_{1}^{i}+{X}_{2}^{i}+\cdots {X}_{L}^{i}\right)+\left({\stackrel{^}{Y}}_{1}^{i+1}+{\stackrel{^}{Y}}_{2}^{i+1}+\cdots {\stackrel{^}{Y}}_{\left(L-1\right)}^{i+1}\right)\right)$ (7)

where j = i + 1.

Accordingly, the next retrieved packet is giving bellow:

${{\stackrel{^}{X}}^{\prime}}_{L}^{j+1}={\stackrel{^}{Y}}_{\left(1,2,\cdots L\right)}^{i+1,i+2}-{A}_{p}\left(\left({\stackrel{^}{Y}}_{1}^{i+1}+{\stackrel{^}{Y}}_{2}^{i+1}+\cdots {{X}^{\prime}}_{L}^{i+1}\right)+\left({\stackrel{^}{Y}}_{1}^{i+2}+{\stackrel{^}{Y}}_{2}^{i+2}+\cdots {\stackrel{^}{Y}}_{\left(L-1\right)}^{i+2}\right)\right)$ (8)

Taking into consideration that ${{X}^{\prime}}_{L}^{i+1}$ is retrieved in the previous step, and then used to find ${\stackrel{^}{Y}}_{\left(t1,t2,\cdots tL\right)}^{i}$ in the second part in Equation (7).

For the AF_{p} CPNC system, this boils down to:

$\begin{array}{l}{\stackrel{^}{{X}^{\prime}}}_{L}^{j}={A}_{AFp}\left({X}_{\left(1,2,\cdots ,L\right)}^{i+1}+{Z}_{U{L}_{1}}^{i+1}+{Z}_{U{L}_{2}}^{i+1}+\cdots {Z}_{U{L}_{L}}^{i+1}+{X}_{\left(1,2,\cdots ,L\right)}^{i}+{Z}_{U{L}_{1}}^{i}+{Z}_{U{L}_{2}}^{i}+\cdots {Z}_{U{L}_{L}}^{i}\right)\end{array}$ $+{Z}_{DL\left(1,2,\cdots ,L\right)}^{i,i+1}-{A}_{AFp}(\left({X}_{1}^{i}+{X}_{2}^{i}+\cdots {X}_{L}^{i}\right)+\left({X}_{1}^{i+1}+{X}_{2}^{i+1}+\cdots {X}_{L-1}^{i+1}\right)$ $+\left({Z}_{U{L}_{1}}^{i+1}+{Z}_{U{L}_{2}}^{i+1}+\cdots {Z}_{U{L}_{L-1}}^{i+1}\right)\text{+}\left({Z}_{D{L}_{1}}^{i+1}+{Z}_{D{L}_{2}}^{i+1}+\cdots +{Z}_{D{L}_{L-1}}^{i+1}\right))$ (9)

And with assuming the same AWGN this gives:

${\stackrel{^}{{X}^{\prime}}}_{L}^{j}={A}_{AFp}\left({X}_{L}^{i+1}+{Z}_{UL}^{i+1}+{Z}_{DL}^{i+1}\right)+{Z}_{DL}^{i,i+1}$ (10)

where j = i + 1 and the retrieved message includes both UL and DL noises.

In the case of the DF_{p} CPNC system, the retrieval process is far less noisy as shown below:

$\begin{array}{l}{{X}^{\prime}}_{L}^{j}={A}_{DFp}\left(\left({\stackrel{^}{X}}_{1}^{i+1}\oplus {\stackrel{^}{X}}_{2}^{i+1}\oplus \cdots {\stackrel{^}{X}}_{L}^{i+1}\right)\oplus \left({\stackrel{^}{X}}_{1}^{i}\oplus {\stackrel{^}{X}}_{2}^{i}\oplus \cdots {\stackrel{^}{X}}_{L}^{i}\right)\right)+{Z}_{D{L}_{\left(1,2,\cdots ,L\right)}}^{i,i+1}\\ \text{}-{A}_{ADp}(\left({X}_{1}^{i}\oplus {X}_{2}^{i}\oplus \cdots {X}_{L}^{i}\right)+\left({\stackrel{^}{X}}_{1}^{i+1}\oplus {\stackrel{^}{X}}_{2}^{i+1}\oplus \cdots {\stackrel{^}{X}}_{L-1}^{i+1}\right)\end{array}$ $\text{+}\left({Z}_{D{L}_{1}}^{i+1}+{Z}_{D{L}_{2}}^{i+1}+\cdots +{Z}_{D{L}_{L-1}}^{i+1}\right))$ (11)

And with assuming the same AWGN this gives:

${{X}^{\prime}}_{L}^{j}={A}_{DFp}\left({\stackrel{^}{X}}_{L}^{i+1}+{Z}_{DL}^{i+1}\right)+{Z}_{DL}^{i,i+1}$ (12)

where j = i + 1.

Figure 2 illustrates the serial sequential network decoding steps needed to retrieve the unknown N − 1 ${{X}^{\prime}}_{L}^{i}$ received message packets at any user.

So, we need to retrieve the ${{X}^{\prime}}_{L}^{i}$ instead of the entire L packets, which means, that the number of the sequential network decoding steps decreased by $N\left(L-1\right)$ folders for the N users. These steps are split with left and right branches, as in MSNC transmission per time unit, but in CPNC, we seek to retrieve just ${{X}^{\prime}}_{L}^{i}$ and then use it to retrieve the next L combined packet/symbol packet as shown in Equation (7).

At the receiver ${D}^{k}$ , where $k=1,2,\cdots ,N$ , there are two directions to retrieve the (N − 1) ${{X}^{\prime}}_{L}^{i}$ , starting with the known CMP ${{X}^{\prime}}_{1}^{i},{{X}^{\prime}}_{2}^{i},\cdots {{X}^{\prime}}_{L}^{i}$ and then determining the estimated received messages from the right branch (estimated CMs from users labeled with indices greater than k), and the estimated received messages from the left branch. So, Equation (7) is applied starting from ${X}_{1}^{k},{X}_{2}^{k},\cdots {X}_{L}^{k}$ and then stepping right and left until ${{X}^{\prime}}_{L}^{N}$ and ${{X}^{\prime}}_{L}^{1}$ is esti-

Figure 2. Network decoding processes for CPNC.

mated respectively. Note that estimating ${{X}^{\prime}}_{L}^{i}$ for the left branch can be carried out in parallel as right branch estimations.

The above sequential network decoding steps at user k can be summarized by Equations (13) and (14), for the right and left branches respectively.

$\text{}{\stackrel{^}{{X}^{\prime}}}_{L}^{k+i}={\stackrel{^}{Y}}_{\left(1,2,\cdots L\right)}^{\left(k+i-1,k+i\right)}-{A}_{p}(\left({\stackrel{^}{Y}}_{1}^{k+i-1}+{\stackrel{^}{Y}}_{2}^{k+i-1}+\cdots {{\stackrel{^}{X}}^{\prime}}_{L}^{k+i-1}\right)$ $+\left({\stackrel{^}{Y}}_{1}^{k+i}+{\stackrel{^}{Y}}_{2}^{k+i}+\cdots {\stackrel{^}{Y}}_{\left(L-1\right)}^{k+i}\right))$ (13)

where
${{X}^{\prime}}_{L}^{k+i}$ is the right i^{th} requested estimated received CMP for the L combined packet/symbol Packet for user i, and
$i=1,2,\cdots ,\left(N-k\right)$ .

${{X}^{\prime}}_{L}^{k-i}={\stackrel{^}{Y}}_{\left(1,2,\cdots L\right)}^{\left(k-i+1,k-i\right)}-{A}_{p}(\left({\stackrel{^}{Y}}_{1}^{k-i+1}+{\stackrel{^}{Y}}_{2}^{k-i+1}+\cdots {{\stackrel{^}{X}}^{\prime}}_{L}^{k-i+1}\right)$ $+\left({\stackrel{^}{Y}}_{1}^{k-i}+{\stackrel{^}{Y}}_{2}^{k-i}+\cdots {\stackrel{^}{Y}}_{\left(L-1\right)}^{k-i}\right))$ (14)

where
${{X}^{\prime}}_{L}^{k-i}$ is the left i^{th} requested estimated received CMP from the left side for the L combined packet/symbol Packet for user i, and
$i=1,2,\cdots ,\left(k-1\right)$ .

As in MSNC based on NC of bits independently per unit time setups, it is possible to reduce the number of the sequential network decoding steps by additionally transmitting CMPs C_{T} as shown by Equations (15) and (16) for the k^{th}^{ }user for the CPNC AF_{p} system, and Equations (17) and (18) for DF_{p}, where Equations (15) and (17) are used to reduce the number of sequential network decoding steps needed in (13) and Equations (16) and (18) are used to reduce the number of sequential network decoding steps in (13) to retrieve the estimated CMPs at the left receiving side starting from
${{X}^{\prime}}_{L}^{k-1}$ to
${{X}^{\prime}}_{L}^{1}$ . So, for AF_{p} system:

${C}_{TL}^{\left(k+i+1\right)}={A}_{AFp}\left({Y}_{L}^{k}+{Y}_{L}^{k+i+1}\right)$ (15)

where $i=1,2,\cdots ,\left(N-k-1\right)$ , and

${C}_{TL}^{\left(k-i-1\right)}={A}_{AFp}\left({Y}_{L}^{K}+{Y}_{L}^{k-i-1}\right)$ (16)

where $i=1,2,\cdots ,\left(N-k-2\right)$ .

And for DF_{p} system:

${C}_{TL}^{\left(k+i+1\right)}={A}_{DFp}\left({\stackrel{^}{X}}_{L}^{k}\oplus {\stackrel{^}{X}}_{L}^{k+i+1}\right)$ (17)

where $i=1,2,\cdots ,\left(N-k-1\right)$ , and

${C}_{TL}^{\left(k-i-1\right)}={A}_{DFp}\left({\stackrel{^}{X}}_{L}^{k}\oplus {\stackrel{^}{X}}_{L}^{k-i-1}\right)$ (18)

where $i=1,2,\cdots ,\left(N-k-2\right)$ .

Equations (15), (16), (17) and (18) show that, the number of possible additional transmitted CMPs is reduced by L − 1 folders as the total number of sequential network decoding steps reduced by L − 1 at first place. Accordingly, CPNC reduces the number of sequential network decoding steps and possible additional transmitted CMPs by the same rate (L − 1). In addition, it allows N(L − 1) direct transmission using AF_{b} and DF_{b}, which significantly improves the BER as shown in the results.

4. Case Study: CPNC with Four Sources

In the following we describe the concept of CPNC by means of an example where N = 4, and L = 3.

Let us assume four users/nodes D^{1}, D^{2}, D^{3}, and D^{4}, exchange data, through a BS. Every user requests information from all other three users. We also assume no user can overhear any other users. Thus all communication is performed via a BS, which broadcasts its information to all users.

Three DL transmitted combined CMPs are needed to connect four users via CPNC, together with N(L − 1) separate transmitted CMPs (4 × 2 = 8), the total transmitted CMPs is equal to eleven (8 separate transmitted CMPs + 3 combined packet/symbol), while twelve (LN = 4 × 3 = 12) DL transmitted CMPs are needed in broadcast mode without NC. In other words, CPNC reduces the number of DL transmissions by one. In general, the savings in DL transmissions will be 1/LN, which is the same as in MSNC based on NC of bits independently per unit time setups when L = 1, (no combined packets case).

Figure 3 illustrates the minimum N − 1 required transmitted CMPs, which give the lowest DL data rate together with the required separate transmitted CMPs.

Figure 3 shows that we need L(N − 1) separate transmitted CMPs from the BS, together with N-1 transmitted combined CMPs, that makes the data rate equal to $\left(L\left(N-1\right)+\left(N-1\right)/LN\right)=1/LN$ , which is the same for MSNC based on NC of bits independently per unit time setup when L = 1, and no separate N(L − 1) transmitted packets.

Moreover, we notice that all ${\stackrel{\xaf}{Y}}_{1}^{1}$ , ${\stackrel{\xaf}{Y}}_{2}^{1}$ , ${\stackrel{\xaf}{Y}}_{1}^{2}$ , ${\stackrel{\xaf}{Y}}_{2}^{2}$ , ${\stackrel{\xaf}{Y}}_{1}^{3}$ , ${\stackrel{\xaf}{Y}}_{2}^{3}$ , ${\stackrel{\xaf}{Y}}_{1}^{4}$ , and ${\stackrel{\xaf}{Y}}_{2}^{4}$ are transmitted and retrieved directly by receiver sides, which means that NC is applied for just the L combined packet/symbol part.

Figure 3. Illustrates CPNC for N = 4 and L = 3 broadcasted packets by the BS for both AF_{p} and DF_{p} setups.

So, in the receiving sides, all what is needed to be retrieved are
${{X}^{\prime}}_{3}^{1},{{X}^{\prime}}_{6}^{1},{{X}^{\prime}}_{9}^{1}\cdots $ ,
${{X}^{\prime}}_{3}^{2},{{X}^{\prime}}_{6}^{2},{{X}^{\prime}}_{9}^{2}\cdots $ ,
${{X}^{\prime}}_{3}^{3},{{X}^{\prime}}_{6}^{3},{{X}^{\prime}}_{9}^{3}\cdots $ and
${{X}^{\prime}}_{3}^{4},{{X}^{\prime}}_{6}^{4},{{X}^{\prime}}_{9}^{4}\cdots $ for users 1, 2, 3, and 4. So, instead of 9 sequential network decoding steps in MSNC, we need just 3 CPNC (taking into consideration that
${{X}^{\prime}}_{3}^{k},{{X}^{\prime}}_{6}^{k},{{X}^{\prime}}_{9}^{k}\cdots $ and known at the receiver D^{k}.

We explain the BER and data rate trade-off by an example shows how we retrieve
${\stackrel{^}{m}}_{3}^{4}$ at D^{1} and
${\stackrel{^}{m}}_{3}^{1}$ at D^{4}. In the default case, both
${{X}^{\prime}}_{3}^{2}$ and
${{X}^{\prime}}_{3}^{3}$ must be retrieved first in order to retrieve
${{X}^{\prime}}_{3}^{4}$ at D^{1} and
${{X}^{\prime}}_{3}^{1}$ at D^{4}. This results in error aggregating and higher BER for both of
${\stackrel{^}{m}}_{3}^{4}$ and
${\stackrel{^}{m}}_{3}^{1}$ at D^{1} and D^{4} respectively. In order to improve BER for
${\stackrel{^}{m}}_{3}^{4}$ at D^{1} and
${\stackrel{^}{m}}_{3}^{1}$ at D^{4}, an additional transmitted CMP is needed according to Equations (12) and (14) for AF_{p} or (13) and (15) for DF_{p} e.g.,
${C}_{T3}^{\left(1,4\right)}={A}_{AFp}\left({Y}_{3}^{1}+{Y}_{3}^{4}\right)$ for AF_{p} or
${C}_{T3}^{\left(1,4\right)}={A}_{DFp}\left({\stackrel{^}{X}}_{3}^{1}\oplus {\stackrel{^}{X}}_{3}^{4}\right)$ for DF_{p}. Accordingly, we retrieve
${\stackrel{^}{m}}_{3}^{1}$ at D^{4} and
${\stackrel{^}{m}}_{3}^{4}$ in only one step:
${\stackrel{^}{{X}^{\prime}}}_{3}^{4}={\stackrel{^}{Y}}_{\left(1,2,3\right)}^{1,4}-{A}_{p}\left(\left({X}_{1}^{1}+{X}_{2}^{1}+{X}_{3}^{1}\right)+\left({\stackrel{^}{Y}}_{1}^{4}+{\stackrel{^}{Y}}_{2}^{4}+{\stackrel{^}{Y}}_{3}^{4}\right)\right)$ at D^{1}, and at D^{4}.
${\stackrel{^}{{X}^{\prime}}}_{3}^{1}={\stackrel{^}{Y}}_{\left(1,2,3\right)}^{1,4}-{A}_{p}\left(\left({X}_{1}^{4}+{X}_{2}^{4}+{X}_{3}^{4}\right)+\left({\stackrel{^}{Y}}_{1}^{1}+{\stackrel{^}{Y}}_{2}^{1}+{\stackrel{^}{Y}}_{3}^{1}\right)\right)$

In our previous work [15] , simulations results showed the improvement in BER performance for D^{1} and D^{4} when sending additional transmitted CMs at the cost of increased bandwidth.

5. Simulation Results

Transmission is simulated over AWGN channel, using binary phase shift keying (BPSK) modulation. For rate 1/3 PUMTCs based on (8, 4, 3, 8) PUM component codes, a pseudo-random interleaver of size 1000 bits is used. These PUM code designs and turbo code set-ups are described in [15] [16] . The BER performance curves are obtained by simulating transmission of at least 10^{8} bits and at least 100 frame errors are guaranteed to be collected for statistical significance, amplification factor Ap = 4 and for 4 decoding iterations for all results.

Figure 4 and Figure 5 show the relative BER performance for N = 50 sources for MSNC and CPNC in AF systems.

In Figure 4, we can see that Two-Source NC outperforms N = 50 system by 1 dB of 10^{−5} MSNC [11] , but when applied CPNC for the N = 50, the BER im-

Figure 4. CPNC and MSNC AF system based on (8, 4, 3, 8)-PUM turbo codes for N = 50. Figure demonstrates the effect of increasing the number of combined packets L.

Figure 5. MSNC and CPNC for AF system based on (8, 4, 3, 8)-PUM turbo codes for N = 50 with 49 additional TRANSMITTED CMs, and N = 50 with L = 49, compared to N = 2 and AF_{b} system.

proved significantly, in fact, it even outperforms Two-Source NC by 2 dB when L = 49, and that is justified by the fewer sequential network decoding steps needed to retrieve the all LN packets.

Moreover, there are N(L − 1) packets have been transmitted directly as AF_{b}, this direct transmission justifies the other part of the results observed in this fig, so, when L increased from 9 to 49, there is around 1 dB gain at BER of 10^{−5}.

Finally, we can notice clearly in Figure 4 as well, that the more we increase L, the nearer the performance improves towards to AF_{b} as direct transmission needs no sequential network decoding steps.

Figure 5 shows that increasing the number of the combined packets (L) has much better BER results than increasing the number of the additional transmitted CMPs, as sending 49 extra CMs in MSNC (which means doubling the data rate) improves the BER by 0.6 dB [15] , while in CPNC, when L = 49, the BER performance improves significantly with no extra data rate, we can claim that when L = 49, in CPNC there is around 2 dB improvement at almost the same data rate, which is 1/LN less than pure broadcasting, while the performance is just 0.6 dB with double data rate in MSNC based on NC of bits independently per unit time setups.

The exact observations can be seen with DF system in Figure 6, considering that DF is much less noisy than AF as shown in Equations (10) and (12).

So, as DF is much less noisy system, increasing L from 9 to 49 improved the BER by 0.2 dB of 10^{−5}, moreover, Figure 6 shows again that CPNC outperforms MSNC for Two-Source, and the total improvement in the BER when L = 49 is around 0.5 dB compared with N = 50 with no additional transmitted CMPs.

Finally, it is again approved that the more we increase L, the nearer the performance improves towards DF_{b}.

The reason why increasing L is better in term of BER than increasing the number of combined packets is, because the L packets are combined before the transmission, which means with error free, which means that there is no any

Figure 6. MSNC and CPNC DF system based on (8, 4, 3, 8)-PUMTC for N50. Fig demonstrates the effect of increasing the number of combined packets L.

accumulative error, while when increasing the combined packets, there is error accumulative as a result from the UL channel, though this error is minimum as a result from using the channel coding (PUMTC).

6. Conclusion

In this paper, we propose a network coding scheme based on high-performance turbo codes for a network where many sources try to communicate with one another via a relay or base station. Our proposed CPNC technique reduces the number of DL transmission from LN transmitted CMPs to LN-1. In addition, our simulation results show that the more combined packet/symbol we use, the better the performance is obtained till the performance almost matches the classical Benchmark AF_{b} or DF_{b} as NC is not applied. The future work will be directed toward using Finite State Markov Chain Rayleigh Fading Channel to represent the channels between the users, which makes the results more practical as proved in [18] .

Acknowledgements

The author of this paper would like to thank Philadelphia University for their support mainly by providing a suitable atmosphere for research and covering the financial cost of the publication.

Cite this paper

Attar, H. (2017) Data Combination over Physical Layer Using Network Coding with PUM Turbo Codes.*Journal of Computer and Communications*, **5**, 32-44. doi: 10.4236/jcc.2017.56002.

Attar, H. (2017) Data Combination over Physical Layer Using Network Coding with PUM Turbo Codes.

References

[1] Ahlswede, R., Cai, N., Li, S.-Y.R. and Yeung, W. (2000) Network Information Flow. IEEE Transactions on Information Theory, 46, 1204-1216.

https://doi.org/10.1109/18.850663

[2] Wu, Y., Chou, P.A. and Kung, S.-Y. (2005) Information Exchange in Wireless Networks with Network Coding and Physical-Layer Broadcast. Proceedings of CISS, Baltimore, March 2005.

[3] Fragouli, C., Le Boudec, J.-Y. and Widmer, J. (2006) Network Coding: An Instant Primer. ACM SIGCOMM Computer Communication Review, 36, 63-68.

https://doi.org/10.1145/1111322.1111337

[4] Sagduyu, Y.E. and Ephremides, A. (2005) Joint Scheduling and Wireless Network Coding. Proceedings of NetCod-2005, Riva del Garda, April 2005.

[5] Sundararajan, J.K., Shah, D. and Medard, M. (2008) Online Network Coding for Optimal Throughput and Delay—The Three-Receiver Case. International Symposium on Information Theory and Its Applications, Auckland, 7-10 December 2008, 1-6.

[6] Hausl, C., Schreckenbach, F., Oikonomidis, I. and Bauch, G. (2004) Iterative Network and Channel Decoding on a Tanner Graph. Proceedings of Annual Allerton Conference on Communication, Control, and Computing, Monticello, October 2004.

[7] Bao, X. and Li, J. (2006) A Unified Channel-Network Coding Treatment for User Cooperation in Wireless Ad-Hoc Networks. 2006 IEEE International Symposium on Information Theory, Seattle, 9-14 July 2006, 202-206.

[8] Courtade, T.A. and Wesel, R.D. (2014) Coded Cooperative Data Exchange in Multihop Networks. IEEE Transactions on Information Theory, 60, 1136-1158.

[9] Manoranjitham, T. and Nagaraja, V. (2015) Performance Enhancement Using Network Coding in Dynamic Source Routing. Procedia Computer Science, 57, 898-906.

[10] El-Hihi, M., Attar, H., Solyman, A.A.A. and Stankovic, L. (2016) Network Coding Cooperation Performance Analysis in Wireless Network over a Lossy Channel, M Users and a Destination Scenario. Communications and Network, 8, 257-280.

[11] Attar, H., Stankovic, L., Alhihi, M. and Ameen, A. (2014) Deterministic Network Coding over Long Term Evaluation Advance Communication System. 2014 4th International Conference on Digital Information and Communication Technology and It’s Applications (DICTAP), Bangkok, 6-8 May 2014, 56-61.

https://doi.org/10.1109/DICTAP.2014.6821657

[12] Attar, H. (2016) Physical Layer Deterministic Network Coding Using PUM Turbo Codes over AWGN Channel, N Nodes through a Base Station Scenario. Communications and Network, 8, 241-256.

https://doi.org/10.4236/cn.2016.84022

[13] Hausl, C. and Hagenauer, J. (2006) Iterative Network and Channel Decoding for the Two-Way Relay Channel. IEEE International Conference on Communications, Istanbul, 11-15 June 2006, 1568-1573.

https://doi.org/10.1109/icc.2006.255034

[14] Popovski, P. and Yomo, H. (2006) The Ant-Packets Can Increase the Achievable Throughput of a Wireless Multi-Hop Network. Proceedings of IEEE ICC’06, Istanbul, June 2006.

[15] Attar, H., Stankovic, L. and Stankovic, V. (2012) Cooperative Network-Coding System for Wireless Sensor Networks. IET Communications, 6, 344-352.

[16] Attar, H., Stankovic, L. and Stankovic, V. (2009) Physical-Layer Network Coding Based on PUM Turbo Codes. 3rd Mosharaka International Conference on Communications, Signals and Coding, Amman, 19-21 November 2009.

[17] Stankovic, V., Stankovic, L., Moinian, A. and Cheng, S. (2007) Wireless Full-Duplex Communications Based on Network Coding. Proceedings of the 45th Annual Allerton Conference on Communications, Control and Computing, Monticello, September 2007.

[18] Alhihi, M. (2017) Network Coding for Wireless Sensor Network Cluster over Rayleigh Fading Channel: Finite State Markov Chain. International Journal of Communications, Network and System Sciences, 10, 1-11.