5

Click here to load reader

[IEEE 2010 7th IEEE Consumer Communications and Networking Conference (CCNC) - Las Vegas, NV, USA (2010.01.9-2010.01.12)] 2010 7th IEEE Consumer Communications and Networking Conference

Embed Size (px)

Citation preview

Page 1: [IEEE 2010 7th IEEE Consumer Communications and Networking Conference (CCNC) - Las Vegas, NV, USA (2010.01.9-2010.01.12)] 2010 7th IEEE Consumer Communications and Networking Conference

Network Product CodingBilal Zafar

Graduate School on Mobile CommunicationsTU Ilmenau, GermanyE-mail: [email protected]

Slimane Ben Slimane and Muhammad Umar JavedRadio Communication Systems Lab

Royal Institute of Technology (KTH), Stockholm, [email protected], [email protected]

(The work was carried out while Bilal Zafar was with KTH Stockholm)

Abstract—Network coding is a useful tool to increase themulticast capacity of networks. The traditional approach tonetwork coding involving XOR operation has several limitationssuch as low robustness and can support only two users/packetsat a time,per relay, in the mixing process to achieve optimalerror performance. We propose the employment of productcoding at the relay station instead of xor and investigate sucha system where we use the relay to generate product codesby combining packets from different users.Our scheme usesrelays to transmit only the redundancy of the product codeinstead of the whole product code.We seek to employ productcoding can be able to support more than two users/packetsper relay per slot,while maintaining a good error performance.Our scheme can accomodate as many users per relay as thecostituent block code allows, thus reducing the number of relaysrequired in the network.Product codes also offer increasedrobustness and flexibility as well as several other advantages,such as proper structure for burst error correction without extrainterleaving. We compare the performance of such a scheme tothe conventional xor scheme and see that our scheme not onlyreduces the number of relays required but gives improved errorperformance as well as. Another encouraging result is that ourscheme starts to significantly outperform the conventional oneby introducing a gain at the relay.

Index Terms—Network coding, Product coding, Wirelessmulti-hop networks.

I. INTRODUCTION

To solve the problem of network multicast capacityand to attain maximum throughput in networks, a methodcalled network coding was developed in [1]. The underlyingprinciple of this method is to allow the mixing of data atthe relay stations and implement a decoding scheme at thereceiver which enables it to extract the data useful to it. Thetraditional approach to network coding, which involves XOR-ing, has several drawbacks. This scheme limits the number ofusers that can be combined at relays to two only for the caseof optimal error performance, because of the nature of theXOR operation. We will refer to the network coding schemeproposed in [1], involving XOR-ing of two user’s data, asthe ’conventional network coding’ throughout this paper.Conventional network coding can be used for increasingnetwork capacity as well as other benefits such as reductionin the required number of waveforms for transmission and toprovide a diversity gain while reducing the number of relaysrequired in a network with the same diversity order. Figure1 shows how conventional network coding can be used todecrease the number of relays required, in the case of uplinkconnection of two users to a base station over a rayleighfading wireless link (indicated by dotted line) using relays

which have an ideal connection (indicated by solid line) to theusers.Note that both schemes have the same diversity orderof 2. Since its conception, network coding has generated a

Fig. 1. No Network coding Fig.1(a) and Reduction in number of relays byusing network coding in Fig.1(b).

lot of interest and has led to new research and developmentenvisaging a revolution in the field of information flow. Therehave been a few modifications suggested over the years in theconventional scheme employing xor at the relay. We proposethe employment of product coding at the relay station insteadof xor and investigate such a system where we use the relayto generate extra redundancy using product coding.Since weare going to use product codes which are powerful errorcorrection codes, our scheme allow us to combine more thantwo users at a relay, it can infact be used to combine a largenumber of users thus significantly reducing the number ofrelays required.

Product coding can be used to form long and powerfulcodes using simple constituent codes. They were proposedby Elias in [2]. Concatenated codes were later developedfrom product codes in [3] [4] [5] [6] [7]. Turbo decoding ofproduct codes was first investigated in [8]. Iterative decodingof product coding was developed in [9].Product codes arepart of a class of codes that offers performance close to theShannon bound [10]. They are also extremely flexible interms of rate, performance and complexity.Product coding isalso ideally suited to wireless communications as wirelesscommunication channels suffer from multi-path fading andnoise leading to burst errors in the transmitted information. Ingeneral we have to use interleaving to correct burst errors, asinterleaving converts burst errors into random errors that canthen be corrected using channel codes. However, interleavingmethod is limited by the maximum delay the system canaccommodate. Product coding, though, has a proper structurefor burst error correction and thus does not require extra

978-1-4244-5176-0/10/$26.00 ©2010 IEEE

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2010 proceedings

Page 2: [IEEE 2010 7th IEEE Consumer Communications and Networking Conference (CCNC) - Las Vegas, NV, USA (2010.01.9-2010.01.12)] 2010 7th IEEE Consumer Communications and Networking Conference

interleaving.

Product codes can be simply represented as a set ofmatrices in which each row and each column are code wordsin different constituent codes. The concept behind productcodes is simple in which we construct long block codes byusing two or even more shorter codes. Consider two blockcodes C1 and C2 with rates R1 and R2 respectively, length nand m respectively, dimensions k1 and k2 respectively, andminimum hamming distance d1 and d2 respectively. Thus theparameter of C1 and C2 are [n, k1, d1] and [m, k2, d2]. Aproduct code P is obtained by

• By placing k1 × k2 bits in an array with k1 rows and k2

columns.• Coding the k2 rows by using code C1 forming a matrix

of k2 rows and n columns.• Coding the columns using code C2.The resulting code P, illustrated in figure 2 will have the

parameters [nm, k1 k2, d1 d2] with a rate of R1R2.

Fig. 2. Product code with parameters [nm, k1 k2, d1 d2]

The scope of this paper involves information flow throughcommunication networks, meaning that the source data goesthrough at least two hops (channels) before arriving at thedestination node, and the intermediate relays don’t just re-transmit the data, they mix the information from differentusers or channels or time intervals. The rest of the paperis organized as follows.In section II the proposed schemeinvolving the combination of network and product coding isexplained. In section III we discuss the system model usedfor our simulations. In section IV we present our simulationresults. Finally, section V concludes the paper.

A. Previous Work

Combination of network coding and product coding hasbeen proposed in the past in [11].The paper investigates thisconcept in order to improve error performance. However thework in [11] is fundamentally different from our research asthey use distributed product coding which involves productcoding at the start at one place and then breaking up the

Product coded packet into several packets,instead of ourscheme, in which we use product coding to combine packetsat all relays.We also focus on reducing the number of relaysrequired in addition to an improved error performance. Ourwork is also novel in the sense that we only use relays totransmit the redundancy of product codes and not the wholeproduct codes which results in increased throughput.

II. NETWORK CODING USING PRODUCT CODES

We propose the combination of product coding and networkcoding in order to combine the benefits of both schemes.We replace the XOR operation at relays in the conventionalnetwork coding with product coding i.e. we use productcodes for ’mixing’ the data from various users, which is theessence of network coding. In our scheme relays employproduct codes to combine the data from various users and toproduce extra redundancy.As a novelty,in order to increasethe throughput, we transmit only the redundancy of theproduct codes thus formed from the relays. Thus when allthe data from the users reaches the end destination, the datawill be combined with the redundancy from the relay. Thena product code will be formed which can then be decoded,in addition to the decoding of individual data from each user,to achieve a good error performance.

Consider the uplink case of multiple users connected toa base station through rayleigh fading wireless channels. Thenetwork also has relays which have an ideal channel to theusers. If there are N users in the network then the numberof relays required by conventional network coding to supportthese users with optimal performance is N/2, as shown inFigure 3. We see that each relay takes data from two usersthrough an ideal channel, XORs it and then transmits it tothe base station over a rayleigh fading channel. The users allemploy (n, k) block codes as channel codes.

In case of our scheme, shown in figure 4, we use

Fig. 3. Network coding for multiple users with XOR

product coding to combine the user’s data at the relay. Wesee that the data from N users, or N packets of any numberof users, each of which was coded using (n, k) block code, is

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2010 proceedings

Page 3: [IEEE 2010 7th IEEE Consumer Communications and Networking Conference (CCNC) - Las Vegas, NV, USA (2010.01.9-2010.01.12)] 2010 7th IEEE Consumer Communications and Networking Conference

received at relay, which combines them to produce a productcode as illustrated in figure 4. Each column is coded usinga (l, N) block code. Figure 5 shows how we can construct(n,k)∗(l, N) product codes. The novelty of our scheme isthat we only send the redundancy (indicated in figure 5)of the product code through the relay, instead of the wholeproduct code, to increase the throughput.Thus the redundancymatrix of the order (l − N) × n will be transmitted to thebase station over the Rayleigh channel. The Base station alsoreceives one copy of each user’s data. It can then combine allthe users’ data with the redundancy of the relay to form thewhole product code and then decode it using an (n, k) blockcode decoder on the rows and an block code decoder onthe columns. Note that by using our scheme with a (n,k)∗(l,N)code we are reducing the number of relays required in anetwork by (N/2)-1.

Fig. 4. Product coding for multiple users for the proposed scheme

Fig. 5. (n,k)∗(l, N) product code

III. SYSTEM MODEL

For this work, we will look at uplink case in case of fourusers connected to a base station. For our simulations ofthe XOR case we will use (15,11) Hamming codes as thechannel codes and for the product coding case we will use(15,11)∗(7,4) Hamming codes, meaning we can combine fourusers’ data or four packets from the users simultaneously atthe relay. Thus we are effectively reducing the number ofrelays required from two to one. Each user will encode its owndata into packets of n bits using (15, 11) block code, a copywill be sent to the relay over an ideal channel and the basestation over a Rayleigh fading channel. We will investigatethe uplink case for both cases using Hamming codes. At therelay, we will either use XOR coding or product coding.Incase of XOR coding we will have to employ two relays toaccomodate four users. We will however only require one relayfor our scheme in case of four users.The product code will beformed by employing an (7,4 ) block code on the columns.The redundancy matrix of the order 3 × 4 , indicated in fig6, will be transmitted to the base station over the Rayleighchannel.

The base station will use the four users’ data and the relay’sdata to form the whole product code and decode it as describedbelow.

Fig. 6. Product coding for the case of Hamming (15,11)∗(7,4) product code

A. Decoding

At the base station, for the XOR based network decoding,we use joint detection by using the truth table of table 1, andchoose the Si which minimizes the squared distance equation,using equation 1.

S = Si : min[|r1 −√

EsU1h1|2 + |r2 −√

EsU2h2|2+ |rR −

√EsRhr|2]. (1)

where ri is the recieved signal from ith source, Es is thesymbol energy, hi is the rayleigh fading coefficient of the ithlink (h is assumed to be known due to perfect channel stateinformation-CSI), U1, U2 and R values are taken from the

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2010 proceedings

Page 4: [IEEE 2010 7th IEEE Consumer Communications and Networking Conference (CCNC) - Las Vegas, NV, USA (2010.01.9-2010.01.12)] 2010 7th IEEE Consumer Communications and Networking Conference

truth table in table 1.

Once we have the full packets of the two users, weuse simple hamming (15,11) decoding on them to finallyget the source information. In a similar way we can use

U1 U2 RS1 0 0 0S2 0 1 1S3 1 0 1S4 1 1 0

TABLE ITRUTH TABLE OF XOR BASED NETWORK CODING

joint detection on the column of the product coded recievedmessage and then Hamming (15,11) decoding on the row.We now have to use the truth table of Hamming(7,4)code, meaning we have 16 different combinations since wehave four user bits and each combination has its 3 bits ofredundancy.

Hence we use the equation 2

S = Si : min[|r1 −√

EsU1h1|2 + |r2 −√

EsU2h2|2+ |r3−

√EsU3h3|2+ |r4−

√EsU4h4|2+ |rR1 −

√EsR1hr|2

+ |rR2 −√

EsR2hr|2 + |rR3 −√

EsR3hr|2]. (2)

IV. SIMULATION RESULTS

Our scheme presents many benefits through the employmentof long powerful block codes. We will focus on theimprovement in the BER and more specifically compare itto the conventional network coding and calculate the powermargin for same performance in order to calculate the gainof our scheme.

The simulations were carried out in Rayleigh fadingenvironment. Communication is also affected by AWGNnoise.Multi-User interference is neglected. Perfect CSI isassumed at the reciever. The modulation scheme used isBPSK.

Figure 7 shows the comparison of Xor based networkcoding, using Hamming (15,11) code, to our scheme for thetwo-user case while employing hamming (15,11)×(7,4) codefor product coding.It also shows the error performance of adirect link that doesnot employ relays at all.The second orderdiversity gain for the two network coding schemes employingrelays is clearly visible.As we can see from figure 7, weget a gain/Power margin of around 2 dbs while using ourscheme over the conventional network coding. The results areobtained for the case when we have an ideal channel fromthe user to the relay and thus avoid error propogation.

Figure 8 shows the comparison of Xor based networkcoding, using Hamming (15,11) code, to our scheme for thetwo-user case while employing hamming (15,11)×(7,4) codefor product coding.The relay is also given a gain of 15db

2 4 6 8 10 12 14 16 18 20

10−5

10−4

10−3

10−2

10−1

SNR

BE

R

XOR based network codingDirect Link without network codingProduct code based network coding

Fig. 7. BER:Proposed Scheme vs XOR based network coding

for both XOR and Product coding, in order to see whichscheme has smarter redundancy.Figure 9 gives an even moreencouraging result as we see that when the relay can amplifythe signal, which is not unusual, we get an even bettergain with the proposed scheme relative to the XOR basedscheme.With a relay gain of 15db, the gain from our schemeis almost doubled to 4 dbs compared to XOR case. Thus ourscheme possesses more ’intelligent’ redundancy and relaygain can be used to achieve any performance margin over theconventional network coding.

2 4 6 8 10 12 14 16

10−5

10−4

10−3

10−2

10−1

SNR (Eb/No) dbs

BE

R

XOR based network coding without relay gainProduct code based network coding without relay gainXOR based network coding+15db relay gainProduct code based network coding+15 db relay gain

Fig. 8. Effect of relay gain on BER:Proposed Scheme vs XOR based networkcoding

V. CONCLUSION

In this work we presented a new method to performnetwork coding in multi-user networks by employing productcoding at the relays.This enabled us to combine a largernumber of users at each relay thus significantly reducingthe number of relays required to accomodate the users in anetwork compared to the two users/relay optimal version ofconventional XOR based network coding.We also presented anovel approach in which the relay was only used to transmitthe redundancy of the product code instead of the wholeproduct code, thus increasing the throughput of the system.Inaddition to reduction in the number of relays, product codingalso provided us with better error performance and even

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2010 proceedings

Page 5: [IEEE 2010 7th IEEE Consumer Communications and Networking Conference (CCNC) - Las Vegas, NV, USA (2010.01.9-2010.01.12)] 2010 7th IEEE Consumer Communications and Networking Conference

more importantly, our scheme significantly outperforms theconventional XOR coding when we introduce a relay gain,since product codes possess ’smarter’ redundancy comparedto XOR.

It must be noted that the gain can be significantly increased byemploying more powerful codes, such as convolutional codes,as the basis of our product coding scheme and by employingbetter decoding techniques to the product codes,such as turbodecoding or iterative decoding.

REFERENCES

[1] R. Ahlswede, N. Cai, S. Li, and R. Yeung, “Network information flow,”IEEE Transactions on Information Theory- IT 4646, pp. 1204–1216.

[2] P. Elias, “Error-free coding,” IEEE Transactions on Information Theory,vol. 4, pp. 29–37, 1954.

[3] G. D. Forney. Jr and A. Vardy, “Generalized minimum distance de-coding,” IEEE Transactions on Information Theory, vol. 12, no. 6, pp.1992-2026, Nov 1996.

[4] G. D. Forney. Jr, “Concatenated codes,” The M.I.T. press, CambridgeMassachusetts, 1966.

[5] B. Zyablov and E. Blokh, “Linear concatenated codes,” Moscow,1973.[6] V. A. Zinoviev, “Generalized cascade codes,” Problemy Peredachi

Informatsii, vol. 12, no. 1, Jan. 1976.[7] B. Zyablov and V. A. Zinoviev, “Decoding of non-linear generalized

cascade codes,” Problemy Peredachi Informatsii, vol. 14, no. 2, 1978.[8] J. Hagenauer, E. Oer, and L. Papke, “Iterative decoding of binary block

and convolutional codes,” IEEE Transactions on Information Theory,vol. 42, no. 2, mar. 1966.

[9] R. M. Pyndiah, “Near-optimum decoding of product codes: Block turbocodes,” IEEE Transactions on Communications, vol. 46, no. 8, Aug.1998.

[10] C. E. Shannon, “A mathematical theory of communication,” Bell Syst.Tech., vol. 27, 1948.

[11] J. Zhang, K. B. Letaief, and P. Fan, “A distributed product codingapproach for robust network coding,” IEEE International Conferenceon Communications,Beijing 2008. ICC ’08. .

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2010 proceedings