Whether and Where to Code in the Wireless Relay Channel
aa r X i v : . [ c s . N I] J un Whether and Where to Code in the Wireless PacketErasure Relay Channel
Xiaomeng Shi,
Student Member, IEEE , Muriel M´edard,
Fellow, IEEE , and Daniel E. Lucani,
Member, IEEE
Abstract —The throughput benefits of random linear networkcodes have been studied extensively for wirelined and wirelesserasure networks. It is often assumed that all nodes withina network perform coding operations. In energy-constrainedsystems, however, coding subgraphs should be chosen to controlthe number of coding nodes while maintaining throughput. Inthis paper, we explore the strategic use of network coding inthe wireless packet erasure relay channel according to boththroughput and energy metrics. In the relay channel, a singlesource communicates to a single sink through the aid of a half-duplex relay. The fluid flow model is used to describe the casewhere both the source and the relay are coding, and Markovchain models are proposed to describe packet evolution if onlythe source or only the relay is coding. In addition to transmissionenergy, we take into account coding and reception energies. Weshow that coding at the relay alone while operating in a ratelessfashion is neither throughput nor energy efficient. Given a set ofsystem parameters, our analysis determines the optimal amountof time the relay should participate in the transmission, andwhere coding should be performed.
Index Terms —Random linear network coding, wireless relaychannel, packet delivery energy
I. I
NTRODUCTION
Network coding, although initially introduced as a theoreti-cal tool in the field of network information theory [1], has beenmade practical by the use of random linear network codes(RLNC) [2], [3], and has been shown to offer throughput,delay, energy and other advantages over classical store-and-forward strategies. To minimize the amount of centralizedcontrol, RLNC is often performed at the source as well as allintermediate nodes within a transmission subgraph. Becausecoding operations and data reception by intermediate nodescan have non-trivial energy costs, resource constrained net-works, such as wireless body area networks (WBANs), couldpotentially benefit from strategies that allow a reduction inthe number of coding nodes, while maintaining the benefits ofnetwork coding. This paper studies the strategic use of networkcoding in a three-node wireless packet erasure relay channel,as illustrated by Figure 1(a), with an emphasis on whether
Manuscript received on August 15, 2011, and revised on March 18, 2012.Xiaomeng Shi ([email protected]) and Muriel M´edard ([email protected]) arewith the Research Laboratory of Electronics, Massachusetts Institute ofTechnology, MA, USA. Daniel E. Lucani ([email protected]) is with theInstituto de Telecomunicac¸ ˜oes, DEEC Faculdade de Engenharia, Universidadedo Porto, Portugal.The authors acknowledge the financial support of the Interconnect FocusCenter, one of the six research centers funded under the Focus Center ResearchProgram, a Semiconductor Research Corporation program. This work isalso supported by the NSERC Postgraduate Scholarship (PGS) issued bythe Natural Sciences and Engineering Research Council of Canada, and inpart by the Fundac¸˜ao para a Ciˆencia e a Tecnologia under project PEst-OE/EEI/LA0008/2011. p sr r p rd r a p sr (1-p sd ) a p sd p sr (1- a )p rd p sd s d s d a p sd (1-p sr ) (a) (b) Fig. 1. Single relay unicast network, with corresponding flow hypergraph. p sr represents the packet transmission success probabilities between s and d . and where to code when the relay operates in half-duplexmode. We propose Markov chain models to characterize thesystem performance in terms of throughput and packet deliveryenergy, thus providing a way to find the optimal fraction oftime for which the relay should participate in the transmission.We show, through numerical analysis, that coding at therelay alone while operating in a rateless fashion is neitherthroughput nor energy efficient, while coding at the sourcealone has performances close to the case where coding isperformed at both nodes. The decision to code is based onpacket erasure probabilities, transmission energy, as well asenergy spent on reception and coded packet generation.Although seemingly simple, the analysis of the three-nodenetwork can offer insights to more complicated systems withmore source or sink nodes. Two such examples are WBANand advanced LTE cellular networks [4]. In a WBAN, thetopology is almost always star-shaped: data are uploaded ina converge-cast sense to a central base station (BS) [5], [6].Depending on the relative location of a sensor on the humanbody, it may be useful in terms of energy efficiency to deploya relay around the shoulder, in direct line of sight with boththe front and back of the body. To the best of our knowledge,the throughput and energy tradeoffs in this case have not beenstudied before. On the other hand, in advanced LTE systems,data are transmitted in both directions, with an emphasis ondownload in a broadcast sense from a central BS to individualuser equipments. Currently relaying is being considered as animprovement tool, for example, for coverage of high data rates,and for temporary network deployment [4]. Here the relay is towirelessly connect to the radio-access network, and may eitherfunction as a smart repeater, or have control of its own cell. Forboth WBANs and advanced LTE systems, the introduction ofnetwork coding and the insertion of a relay may bring energyor throughput gains. As a starting point, we consider the three-node packet erasure relay channel, assuming physical layerdesigns are readily available on point-to-point links. Furtherextensions of this setup can involve additional source nodes, asin a WBAN, additional sink nodes, as in an LTE system, and additional relay nodes, a scenario applicable to both examples.In evaluating system performance, we parametrically modelthe total energy consumption, taking into account transmissionand reception energies as well as processing energy requiredto generate coded packets. The inclusion of energies fordata reception, idle listening, and protocol overheads allowsa more comprehensive understanding of the implications ofinserting a relay and using network coding. Our goal is tocharacterize the throughput and energy performances of thesystem when a relay is added to a point-to-point link and nodesare network coding capable. Our previous work studied theenergy advantages of network coding in half-duplex WBANswith a star-topology and showed that when reception energyis taken into account, total energy use could be reduced [7].The gains are expected to grow with the number of nodes.The remaining of the paper is organized as follows. Sec-tion II summarizes some of the previous work related tothe wireless relay channel and the application of networkcoding in such settings. Differently from previous worksthat focus on joint channel and network coding for optimalthroughput analysis, in this paper, we assume a physical layerdesign is available, and network coding is inserted into thenetwork layer, independently of the source and channel codesemployed. Section III details the assumptions made and thesystem modeled. Section IV then discusses three separatecases, depending on the coding locations. For each case, we tryto characterize the expected completion time and the expectedcompletion energy of transmitting a given number of packetsfrom the source to the destination. Through Markov chainanalysis, we provide a framework for evaluating bounds onthe system performance when coding is conducted at the relayonly, and for determining the system performance when codingis conducted at the source only. Section V then establishes thekey results through numerical evaluations, showing that, fora wide range of parameters, coding at the relay only is notthroughput or energy efficient. Section VI concludes the paperwith discussions on future work.II. R ELATED W ORK
A relay channel models the problem where two nodescommunicate through the help of one or more relays. Thissetup is common in multihop wireless networks such as sensornetworks, where transmission power is limited, or in decen-tralized ad hoc networks, where nodes can only communicatewith their immediate neighbors. Relays can overhear trans-missions to the destination, owing to the broadcast advantageof the wireless medium. Recently there has been a renewedinterest in the classical relay channel [8], [9], motivated bythe potential to achieve cooperative diversity, and thus bettercapacity bounds [10]–[13]. Schemes such as amplify-and-forward, decode-and-forward, and compress-and-forward havebeen proposed and studied extensively in terms of capac-ity, outage, energy efficiency, and optimal power allocationschemes [14], [15]. Much of the analysis has focused on thefundamental performance limits at the physical layer and onthe transmission of a single data packet. The introductionof network coding into the relay channel has also focused mostly on joint channel-network code design, with or withoutlimited processing complexity constraints [16]–[21]. In largernetworks, however, network coding typically resides in higherlayers of the protocol stack, independently of physical layerimplementations.In this paper, we assume network coding takes place atthe protocol layer, independently of source and channel codesemployed. Such an assumption on the separation of channeland network codes may not necessarily be capacity achieving,but allows the introduction of network coding into existingsystems.The use of RLNC in wireless erasure networks under packe-tized operations is first studied by Lun et al. [22], and extendedto a scheduling framework by Traskov et al. [23]. Otherschemes that employ network coding in a relay setup includesthe MORE protocol [24], which performs RLNC at the sourceonly to reduce the amount of coordination required by multiplerelay nodes, and the COPE protocol, which employs RLNC atthe relay only in a 2-way relay channel to improve reliability,taking advantage of opportunistic listening and coding [25].Fan et al. also proposed a network coding based cooperativemulticast scheme to show that significant throughput gains canbe achieved when network coding is performed at the relayonly [26]; one assumption in this work is that feedback isavailable from both the destination and the relay to the sourceafter each packet reception. In practical systems, feedback canbe costly in terms of both throughput and energy, dependingon the underlying hardware architecture [7].In this paper, we explore rateless transmissions, where theacknowledgement for successful reception is sent only once bythe destination when the transmission of all available data iscompleted. As described in the introduction, we also take intoaccount the energy spent on reception and packet processing inaddition to the energy required to transmit them. Furthermore,we assume that a sufficiently large field is used for networkcoding operations, such that transmissions of non-innovativepackets from the source can be neglected. In terms of energyuse, we make the simple assumption that coding energy staysconstant as field size increases, and show that, the decision tocode depends on the dominating energy term (transmission,reception, or code generation). The tradeoff between energybudget for the transmission of linearly dependent packets whenfield size is small and the energy budget for code generationwhen field size is large is discussed in [27].III. S
YSTEM M ODEL
We represent the data flow through the relay channel usinga hypergraph, as shown in Figure 1(a). A hypergraph is ageneralization of a graph: a broadcast link is represented by ahyperarc between a single start node and a set of end nodes,and a multiple access link is represented by a hyperarc betweena set of start nodes and a single end node [22]. A wirelessrelay channel consists of a source node s , a relay node r , anda sink node d . Source s has n packets of the same length totransmit to d . It broadcasts to both r and d , while the relay r assists the transmission by either forwarding the originalpacket, or computing linear combinations of received packetsbefore forwarding the ensuing mixtures. We assume transmissions occur in a rateless fashion, withminimal feedback: s and r take turns to transmit, until d acknowledges that it has received enough degrees of freedom(dof) to recover the original n data packets. Here we usedofs to represent linearly independent packets. Such ratelessoperations are often desirable in systems where feedback canbe costly in terms of energy or delay.Our model considers packetized operations, independentlyof the physical layer implementation of the system. As such,erroneous packets are dropped, and channel losses are mea-sured by a time-averaged erasure rate. This separation ofchannel and network coding follows from the assumption thatphysical layer designs are already available for the underlyingpoint-to-point link, with a relay being inserted for performanceimprovements. The transmission success rates are assumedto be p sr between s and r , p rd between r and d , and p sd between s and d . Nodes operate in half-duplex mode, wherea node cannot transmit and receive at the same time. To avoidinterferences and collisions in a contention based scheme,we consider a time-division framework, where s and r sharethe use of the wireless medium. A genie scheduler allocatesthe wireless medium to the source α fraction of the totaltime, ≤ α ≤ , and allocates the wireless medium tothe relay the remaining − α fraction of time. One possibleimplementation of such a genie-aided scheduler is to sharethe same randomness at s and r . Figure 1(b) illustrates themaximum flow on each possible link in this network model,computed directly from the transmission success rates and thetime-sharing constant α .In terms of memory, let both s and d contain n units, butassume r contains x units only, where ≤ x ≤ n . r usesits memory as a queue: arriving packets are stored; if r isalready full, newly arrived packets are discarded. If r doesnot perform coding, it sends to d a packet from its memorydirectly and drops this packet from the queue; if r performsRLNC before forwarding, it sends to d a linear combination ofstored packets, where each is weighted by a random numberchosen uniformly from a finite field F q . In this paper, F q isassumed to be sufficiently large, such that linear combinationsthus generated are linearly independent from each other withhigh probability. Reference [27] discusses the tradeoff betweenfield size and energy use in more details.To evaluate the amount of energy spent to deliver success-fully a packet from s to d , we define four different energyterms. E tr represents the transmission energy per packet,where transmission occurs at either s or r . E rx representsthe reception energy per packet at r . The relay therefore paysfor being on and listening to the broadcast from the source. E nc represents energy for generating a coded packet; it shouldbe a function of n , since the complexity of network codingoperations depends on field size and generation size, whichis the number of packets coded together. Nonetheless, in thispaper, E nc is assumed to be constant, representing a maximumallowable value. Lastly, E ack represents the amount of energyspent by s to listen to the final acknowledgement from d . Notethat all energy terms are defined relative to s or r . It is assumedthat the destination d represents a base station without poweror energy constraints. IV. N ETWORK CODING IN THE W IRELESS R ELAY C HANNEL
In this section, three different cases are examined: RLNCat both r and s , RLNC at r alone, and RLNC at s alone.For the first case, a fluid flow model is used to analyze theachievable rate, packet delivery energy, and the ratio of thesetwo metrics. For the latter cases, we propose Markov chainmodels to characterize the expected completion time and theexpected completion energy of transmitting n packets from s to d . We also offer a brief discussion on the use of systematiccodes, which will be studied in future works. A. Coding at Both the Source s and the Relay r When RLNC is performed at both s and r , we can usethe fluid flow model by Lun et al. [22], [28] to study therateless transmission of network coded packets through therelay channel. A packet is considered innovative when itcarries a new dof to a node. In the relay channel, s injectsinnovative packets into the hyperarc ( s, { r, d } ) in α fraction ofthe total transmission time, while r injects innovative packetsinto the arc ( r, d ) in − α fraction of the total transmissiontime. Packet transmissions form innovative flows in this setupbecause both s and r perform RLNC over a large number ofpackets. Each mixture is an additional dof relative to d . Theamount of innovative flow is limited by the packet erasureprobabilities. Assuming flow conservation at r , the maximumachievable rate R from s to d can be derived by solvingthe following mathematical programming problem analyticallyusing Fourier-Motzkin elimination [23]. min c ( R, α ) s.t. R ≤ α ( p sr + p sd − p sr p sd ) R ≤ αp sd + (1 − α ) p rd < α ≤ .
1) Packet-Level Capacity Bound: c ( R, α ) = 1 /R . Thiscase is equivalent to maximizing R , making the optimizationlinear. A closed-form solution can be found: • Case 1: p sd ≤ p rd , then R ∗ = p rd ( p sr + p sd − p sd p sr ) p rd + p sr (1 − p sd ) ,α ∗ = p rd p rd + p sr (1 − p sd ) . • Case 2: p sd > p rd , then the relay is not used, and R ∗ = p sd , α ∗ = 1 . (1)
2) Packet-Delivery Energy: c ( R, α ) = [ E tx + E nc + α (1 − I α =1 ) E rx ] /R . We define the packet delivery energy as theenergy consumed per successfully transmitted packet and stateit explicitly in terms of packet transmission, reception, andcoding energies. I α =1 represents an indicator function thatequals to 1 if α = 1 , and 0 otherwise. In other words, if α = 1 , the relay is not used thus should not consume anyenergy. Because the scheme considered is rateless in the limitof infinitely large payloads, no energy is spent on listening tothe acknowledgement at s . Also observe that if E rx = 0 , this problem reduces to case , and the optimal α ∗ which achievesthe highest throughput also leads to a minimal packet deliveryenergy. If E rx is non-zero, we can rewrite the optimization interms of α alone and solve numerically.
3) Packet-Delivery Energy per Throughput Rate: c ( R, α ) =[ E tx + E nc + α (1 − I α =1 ) E rx ]) /R . The ratio of the twometrics above is the expected packet delivery energy perthroughput rate, which evaluates changes in both energy andthroughput. B. RLNC at the Relay r Only
First assume that s is limited to sending the original packetsonly, while r performs RLNC over all packets it has receivedand stored in memory. Since transmission is rateless withminimal feedback, s is unaware of the knowledge at r or d ;such knowledge refers to specific dofs, representing a subspacespanned by received packets. We assume that when allowedto transmit, s chooses one packet uniformly at random fromthe n available uncoded packets.One remark here is that more exhaustive or frequent feed-backs would make retransmissions from s more likely tobe innovative. For example, if per-packet acknowledgementis available, s can selectively repeat those not successfullyreceived by r or d . On the other hand, if d can acknowledgethe exact number of dofs received, r can adjust the numberof coded packets it sends to maximize throughput to d whileminimizing its own energy use. We consider transmission withminimal feedback, assuming that the cost of feedback is high.We describe the states of the system by a three-tuple ( m, k, l ) : m is the number of unique dofs at d , k is the numberof dofs shared by d and r , and l is the number of dofs at r only. Since s does not code and r stores only uncodedpackets, m and l represent the numbers of distinct packetsat r and d respectively; e.g., if n = 3 , r has successfullyreceived packets and , while d has received packets and , then ( m, k, l ) = (1 , , . Once a packet at r has beenmixed into a coded packet, which in turn is received at d ,it becomes part of the shared dof between r and d ; e.g., if r has received packets and , while d has packet and amixture of packets and , then ( m, k, l ) = (1 , , , sincethe mixture represents a shared dof between r and d , while r contains one dof that is innovative to d . With such statedefinitions, any three-tuple satisfying m + k + l ≤ n is a validstate. Transmission initiates in state (0 , , , and terminatesin states { ( m ∗ , k ∗ , l ∗ ) | m ∗ + k ∗ = n } .For transmissions to be free of collisions, recall from thesystem model that we assume there is a genie-aided scheduler,such that s and r do not access the wireless medium at thesame time. In each time slot, s transmits with probability α ,while r transmits with probability − α . By randomizingthe transmitter at each time slot, the state transition processbecomes memoryless, and the numbers of dof at each node canbe tracked through a Markov chain. The memoryless propertyholds because the probability of the next transmitted packetbeing innovative relative to both or either of r and d canbe expressed in terms of α and the current state ( m, k, l ) ,independently of past state evolutions. With probability α , s
0, 0, 0 0, 0, 1 0, 0, 2
10 9 8
0, 1, 0 0, 1, 1
0, 2, 0
1, 0, 0 1, 0, 11, 1, 0
1, 1, 02, 0, 0S T
2, 0, 0S T Fig. 2. Markov chain model, with added terminating state S T . The number ofpackets to send at s is n = 2 . Any three-tuple ( m, k, l ) satisfying m + k + l ≤ n is a valid state. chooses one packet uniformly at random from its n uncodedpackets, and with probability ( n − m − k − l ) /n , this packet isinnovative to both r and d . Similarly, with probability − α , r computes a linear combination of the content of its memory,and sends the mixture to d . Here we assume r has enoughmemory to store all n distinct packets.An alternative to the genie-aided randomized transmissionsis a collision-free, deterministic schedule, where s and r taketurns to transmit for a fixed amount of time, determined by n , α , and the channel conditions. Without feedback, the averagesystem throughput should be the same as the randomized case.However, with this deterministic schedule, since packets areuncoded at s , counting the numbers of dof at r and d requiresknowledge of the exact packets present. Even with a small n ,it is hard to track the evolution of packets in the system.Figure 2 gives a sample Markov chain when n = 2 . We havedrawn the Markov chain as a tetrahedron, with the startingstate on top, and the terminating states on the left verticaledge. State transitions occur after the transmission of a singlepacket, either from s or from r . In the case where r has notreceived any packet successfully but is chosen to transmit, weassume the slot is wasted. At state ( m, k, l ) , the transitionprobabilities can be computed by considering all outcomes ofthe transmission, assuming independent packet losses.When m + k < n , s broadcasts with probability α , while r transmits with probability − α . Let the indicator function I l> be 1 when l = 0 , and otherwise, then P { m,k,l }→{ m +1 ,k,l } = n − m − k − ln p sd (1 − p sr ) α (2) P { m,k,l }→{ m,k +1 ,l } = n − m − k − ln p sd p sr α (3) P { m,k,l }→{ m,k,l +1 } = n − m − k − ln p sr (1 − p sd ) α (4) P { m,k,l }→{ m − ,k +1 ,l } = mn p sr α (5) P { m,k,l }→{ m,k +1 ,l − } = ln p sd α + I l> p rd (1 − α ) (6) P { m,k,l }→{ m,k,l } = (cid:20) mn (1 − p sr ) + ln (1 − p sd ) + kn + n − m − k − ln (1 − p sd )(1 − p sr ) (cid:21) α + (1 − I l> p rd )(1 − α ) (7)When s broadcasts, this transmission may succeed in anyof the three hyperarcs originating from s , as shown in Fig-ure 1(b). Depending on which packets r and d already have,a successful transmission may or may not lead to a transitionto a different state. For example, if the transmitted packet hasalready been received by both nodes, a state transition doesnot occur regardless of whether the transmission is successful.In particular, the following state transitions are possible.1) If d receives one more dof, while r does not, P { m,k,l }→{ m +1 ,k,l } = n − m − k − ln p sd (1 − p sr ) , this termis included in Eq. (2);2) if both d and r receive one more dof, P { m,k,l }→{ m,k +1 ,l } = n − m − k − ln p sd p sr , i.e., Eq. (3);3) if r receives one more dof, while d does not, P { m,k,l }→{ m,k,l +1 } = n − m − k − ln p sr (1 − p sd ) , i.e.,Eq. (4);4) if the broadcasted packet has been previously receivedby d , and is now received at r , P { m,k,l }→{ m − ,k +1 ,l } = mn p sr ; note that if m = 0 , this transition probability is0, i.e., Eq. (5);5) if the broadcasted packet has been received by r previously, and is now received at d , then P { m,k,l }→{ m,k +1 ,l − } = ln p sd ; if l = 0 , this transitionprobability is 0, i.e., Eq. (6);6) a self transition occurs if the dof being sent has pre-viously been received by d but not r , if it has pre-viously been received by r but not d , if it is alreadyshared, or if it has not been shared previously, yetit is not received successfully by r nor d during thistransmission; correspondingly, P { m,k,l }→{ m,k,l } is thesum of four terms: mn (1 − p sr ) , ln (1 − p sd ) , kn , and n − m − k − ln (1 − p sd )(1 − p sr ) , i.e., Eq. (7). r transmits coded packets with probability − α . Observethat, when r has received only a small number of packets, amixture it generates may not be innovative with respect to d ,because the dof could have been received by d itself already.For example, if n is equal to 3, and d has already receivedpackets 2 and 3, then a coded packet from r containing theweighted sum of packets 2 and 3 is not innovative even if it issuccessfully received at d , but a coded packet containing theweighted sum of packets 1 and 2 is innovative.Again, explicitly tracking the contents of coded packets is adifficult task. Instead, we assume that all packets transmittedfrom r to d are innovative. It is important to note that thecomputed expected completion time under this assumptionis a lower bound on the actual expected completion time,and the corresponding throughput is an upper bound on theactual system throughput. When discussing numerical resultsin Section V, we shall show that even this upper bound onthroughput is not efficient compared with schemes wherecoding is performed at s , or at both s and r . Also observethat if n = 1 , an uncoded packet is always transmitted; the innovative packet assumption is then always true, with thecomputed expected completion time being exact. With suchassumptions, the following state transitions can occur1) if r has no unique dof to share, l = 0 , P { m,k, }→{ m,k, } = 1 , i.e., Eq. (7);2) if r has a unique dof to share, l > , and d receivessuccessfully, P { m,k,l }→{ m,k +1 ,l − } = p rd , i.e., Eq. (6);3) if r has a unique dof to share, l > , but d does notreceive successfully, P { m,k,l }→{ m,k,l } = 1 − p rd , i.e.,Eq. (7).The transmission process terminates when m + k = n , and P { m,n − m, }→{ m,n − m, } = 1 . In this Markov chain, all statesare transient except the absorbing states. When n > , multiplerecurrent classes exist. Since there is a single starting state,there exists a unique steady state distribution. To simplifythe computation of the absorbing time, we append a virtualterminating state S T , such that P { m,n − m, }→{ S T } = 1 , and P { S T }→{ S T } = 1 . To compute explicitly the transition statematrix, we can index the states linearly starting from S T to (0 , , . Let S T be state 0 under this counting notation. InFigure 2, we give one possible set of linear indices, startingfrom the bottom to the top of the tetrahedron.Let T i be the expected first passage time to state 0, i.e., theexpected number of steps to reach state 0, starting in state i .Also let T be the system expected transmission completiontime. Hence T = T in this example. Since there are nocycles in this Markov chain and the expectation operation islinear, T i can be solved recursively using the equation T i = 11 − P ii X j = i P ij T j , T = 0 , i = 0 . Alternatively, if we express the expected first passage timesto state in vector form ¯ T = (cid:2) T T . . . T (cid:3) T , then ¯ T = + P \ ¯ T , where is the vector of ones, and P \ is thesubmatrix of P with the first row and first column removed.Solving this linear system of equations gives ¯ T = ( I − P \ ) − . (8)Since the original Markov chain does not contain cycles otherthan loops, the states have a topological order; P is a lower-triangular matrix. In addition, since self-transition probabilitiesare non-zero for all states except those next to S T , I − P \ isstrictly lower-triangular, thus invertible in the real field.To determine the expected amount of energy consumed by s and r , let E i be the expected energy to be computed, staringfrom state i , and E be the expected transmission completionenergy, i.e., E = E + E ack . Here E ack is included since asingle acknowledgement is sent by r at the end to signal theend of transmission. A similar argument holds as in the deriva-tion of Eq. (8), and a system of linear equation can be solved tofind ¯ E = (cid:2) E E . . . E (cid:3) T = ( I − P \ ) − ( E use ) =¯ T E use , where E use = E tx + α (1 − I α =1 ) E rx + (1 − α ) E nc .One last observation is that it is possible to constrain theamount of memory at r to less than n , and have r functionas an accumulator, such that whenever an innovative packetis received, it is multiplied by new random coefficients and added to each of the memory units. When given a transmissionopportunity, r uniformly randomly chooses one mixture fromits memory. The achievable rate region of the limited memorycase should be outer-bounded by the full memory case. Weshall show in Section V that even with full memory, codingat r alone is not efficient. C. RLNC at the Source Only
When RLNC is performed at s only, the analysis of thesystem performance is similar to the previous case, whereRLNC is performed at r only. First, every mixture sent by s is innovative with respect to r and d under the infinitefield size assumption. Let state ( m, k, l ) represent m uniquemixtures at d , k mixtures shared by r and d , and l uniquemixtures at r . Assume r acts as a queue with x finite unitsof memory, where ≤ x ≤ n . Here r is allowed to havefewer than n units of memory, since it does not need to storedistinct packets for explicit coding operations. r receives linearmixtures directly from s , functions as a queue, and drops anymixtures received after it is full. Any mixture transmitted from r is also dropped from the queue. A state ( m, k, l ) is valid aslong as m + k ≤ n and k + l ≤ x . Again, s transmits α fractionof the time. We assume that P { m,k,l }→{ m ′ ,k ′ ,l ′ } is non-zeroonly if both ( m, k, l ) and ( m ′ , k ′ , l ′ ) are valid states. Let theindicator function I f ( · ) be 1 if the logic function f ( · ) is true,and 0 otherwise. State transitions occur after the transmissionof a single packet, either from s or from r . The state transitionprobabilities are as follows, P { m,k,l }→{ m +1 ,k,l } = αp sd (1 − p sr ) + αp sd p sr I k + l = x (9) P { m,k,l }→{ m,k +1 ,l } = αp sd p sr I k + l
0, 0, 0 0, 0, 1 0, 0, 2
14 13 12
0, 1, 0 0, 1, 1
11 10
0, 2, 0
1, 0, 0 1, 0, 11, 1, 0
1, 0, 21, 1, 1
1, 1, 02, 0, 0S T
1, 1, 12, 0, 1 2, 0, 2 S T Fig. 3. Markov chain model, coding at the source s only, with addedterminating state S T . The number of packets to send at s is n = 2 ; theamount of memory at the relay r is x = 2 .
5) if r receives the transmitted mixture, but d does not, and k + l = x , the mixture is dropped, P { m,k,l }→{ m,k,l } = p sr (1 − p sd ) , i.e., Eq. (12);6) if neither r nor d receives the packet, P { m,k,l }→{ m,k,l } = (1 − p sr )(1 − p sd ) , i.e., Eq. (12). r transmits coded packets with probability − α , and thefollowing state transitions can occur.1) If r has no unique mixture to share, l = 0 , and k = 0 , P { m,k,l }→{ m,k,l } = 1 , i.e., Eq. (12);2) if r has no unique mixture to share, l = 0 , and k > , P { m,k,l }→{ m +1 ,k − ,l } = 1 , , i.e., Eq. (13); observe thatsince a packet is dropped from r ’s memory after beingsent, k decrements by 1 since the dof is no longer shared,while m increments by 1 since this dof becomes uniqueto d ;3) if r has a unique mixture to share, l > , and • a unique mixture is sent, d receives successfully, P { m,k,l }→{ m +1 ,k,l − } = ll + k p rd , i.e., Eq. (14); • a unique mixture is sent, transmission is unsuc-cessful, P { m,k,l }→{ m,k,l − } = ll + k (1 − p rd ) , i.e.,Eq. (15); • k > , a shared mixture is sent, d receivessuccessfully, P { m,k,l }→{ m +1 ,k − ,l } = kl + k p rd , i.e.,Eq. (13); • k > , a shared mixture is sent, transmission is un-successful, P { m,k,l }→{ m +1 ,k − ,l } = kl + k (1 − p rd ) ,i.e., Eq. (13).Transmission terminates when m + k = n , and P { m,n − m, }→{ m,n − m, } = 1 . Again, a virtual terminatingstate S T can be appended, such that P { m,n − m,l }→{ S T } = 1 ,and P { S T }→{ S T } = 1 . With this addition, the Markov chainhas one recurrent state only. Figure 3 gives a sample Markovchain when n = 2 . The states can be indexed linearly startingfrom S T as state 0, to (0 , , as the last state, whichcorresponds to state number 14 in this example.Our goal is to find the value of α that minimizes eitherthe expected completion time T = T , or the expected completion energy E = E . Unlike the coding at r onlycase, the Markov chain now contains cyclic paths in additionto loops. The expected first passage time starting from differentstates is ¯ T = ( I − P \ ) − . Here, the invertibility of I − P \ is guaranteed because P \ has entries less than on the maindiagonal, and I − P \ is a lower Hessenberg matrix with non-zero entries on the main diagonal [29]. Once the value of α that minimizes T is found, we can compute the associated E , where E = T E use + E ack . The only difference is thevalue of E use , since coding is now performed at the source s : E use = E tx + α (1 − I α =1 ) E rx + (1 − α ) E nc . D. Use of Systematic Codes
Systematic network codes are an attractive alternative tonon-systematic random linear network codes, since they of-ten reduce computation complexity and energy use, whilemaintaining the innovation of independent flows [30]. Witha systematic code at s only, s can first broadcast the uncodedpackets one by one in order, then compute random linearmixtures for all remaining packets transmitted from s . r per-forms the store-and-forward function always. In a sufficientlylarge finite field, since every packet sent by s is innovativewith respect to r and d , if we view each uncoded packetas an innovative mixture, the state evolution under this setupis the same as the case where full RLNC is performed at s only. If systematic coding is performed at s and RLNC isperformed at r , the system gives the same performance asthe case where RLNC is performed at both nodes. Anotherpossibility is to perform systematic coding at both s and r . s first broadcasts uncoded packets one by one in order. It thencomputes a random linear mixture of all n packets whenevera transmission opportunity becomes available. r acts as a size n queue. When the relay has the opportunity to transmit,it examines the next packet in the queue. If this packet isuncoded, r transmits the uncoded packet directly. If this packetis coded, r linearly combines all data it has in memory beforesending out the mixture to d . The system performance underthis setup should be upper-bounded by the full coding case,and lower-bounded by the coding at s only case. The analysisof this additional systematic phase is non-trivial, so we leaveits description and discussion to a later time.V. N UMERICAL R ESULTS
This section compares the performance of the three schemesdiscussed in Section IV under different channel conditions.We first consider the coding at r only and coding at s onlycases and examine the expected transmission completion timesper data packet. We then compare the three cases in termsof achievable throughput, computed as the inverse of averagecompletion time, and packet delivery energy. A. RLNC at the Relay r Only
Figure 4 plots the expected completion time per transmitteddata packet as a function of α for different values of n , when p sd = 0 . , p sr = 0 . , and p rd = 0 . . Recall that n representsthe number of data packets to be transmitted by the source to the destination. The optimal α ∗ value that achieves the lowest T ∗ /n is indicated by a large dot on each curve.In this figure, when α = 1 , r listens but does not transmit. If n = 1 , the expected number of transmissions per data packetis 2. This is the solution to the ARQ scheme when p sd = 0 . ,where each packet is retransmitted until successfully receivedat d . When n = 2 , the expected number of transmissions perdata packet is 3. Observe that, since r is unused and s doesnot code, s simply retransmits one of the two uncoded datapackets each round, until both are received at d . This scenariois similar to the coupon collector’s problem with 2 coupons,except packet erasures need to be taken into account. When 2coupons are to be collected, the expected number of trials untilsuccess is × (1 + ) = 3 . If divided by p sd and normalizedby the number of packets, this solution leads to the value of3, the value on the curve n = 2 , at α = 1 , in Figure 4.Another observation from this figure is that, as n increases,the expected completion time T /n increases as well. Thisincrease comes from transmissions by s . Since s randomlychooses one from n packets to transmit, a packet to betransmitted would have been received by r or d alreadywith non-zero probability. This effect is especially significanttowards the end of the transmission, when d has collectedmost of the dofs. In addition, the optimal α values, whichcorrespond to the horizontal coordinates of the large dots, firstdecrease in value as n goes from 1 to 5, then increase invalue as n increases to 20. This effect indicates that a tradeoffexists between the use of the relay and the amount of wastedretransmissions by the source.Although not explicitly shown here, we can plot and com-pare the expected completion time per data packet when thechannel between s and d varies. It can be observed that when p sd increases, s is used a larger fraction of the time, with α becoming 1 if p sd is larger than p rd , similar to the coding atboth nodes case discussed in Section IV-A.From the above numerical evaluations, we can conclude thatRLNC at the relay r only while operating in a rateless fashionis not an efficient transmission scheme in terms of throughput.Figure 4 shows that using ARQ without coding ( n = 1 , α =1 ) achieves the best expected completion time, or the bestthroughput. However, one issue with the n = 1 case is thateach data packet, when transmitted successfully, requires anacknowledgement from d , i.e., E/n = T E use + E ack . Suchfrequent feedbacks are not energy efficient. If n > , eventhough the effect of the E ack term is mitigated by amortizationover a larger n , the large increase in the value of T /n shownin Figure 4 indicates that coding at the relay only is the mostenergy efficient when n = 2 . In Section V-C, we shall comparethe energy use of this particular case with other schemes. B. RLNC at the Source s Only
Figure 5 plots the expected completion time per data packetas a function of α , when n and x vary. n is the number ofdata packets to be transmitted by s , and x is the amount ofmemory available at r to store received mixtures. Unlike thecoding at r case, here T /n decreases as n becomes larger,because each packet sent by s is innovative relative to r and α T / n n=1n=2n=5n=10n=20n=30 Fig. 4. Coding at the relay r only, expected completion time per packet T/n vs. α , as n changes in value; p sd = 0 . , p sr = 0 . , p rd = 0 . . Theoptimal T ∗ /n is labeled with a large dot on each curve. α T / n n=1; x=1n=2; x=2n=5; x=5n=10; x=10n=20; x=20n=10; x=1n=10; x=2n=10; x=3n=10; x=5n=10; x=10 Fig. 5. Coding at the source s only, expected completion time per packet T/n vs. α , as n and x changes in value; p sd = 0 . , p sr = 0 . , p rd = 0 . .The optimal T ∗ /n is labeled with a large dot on each curve. d , and as more packets are combined, the probability that amixture sent by r is innovative becomes larger. In addition toreducing T /n , another advantage of coding n packets togetherat s is that the cost for feedback can be amortized over a largenumber of data packets. Also observe from this figure that aslow as x = 3 units of memory suffices to achieve the expectedcompletion time of the full memory case (i.e., x = n ).Figure 6 plots the expected completion time per data packetas a function of α , for different p sd , p sr , and p rd . Comparisonamong curves (1), (4) and (5) show that r should be givenmore time to transmit when the tandem link from s to d through r is more reliable than the direct link between s and d . Comparison between (3) and (4), however, show that r should not be used if the channel between r and d seeslarge packet losses, even if the channel between s and r isrelatively reliable. This observation echoes the decision of notusing the relay in the full coding case, as given by Eq. (1),and discussed in Section IV-A. Moreover, comparison amongcurves (2), (3), and (4) show that the optimal value of α is afunction of channel conditions. a T / n (1) p sd =0.25, p sr =0.1, p rd =0.1(2) p sd =0.25, p sr =0.25, p rd =0.8(3) p sd =0.25, p sr =0.8, p rd =0.25(4) p sd =0.25, p sr =0.8, p rd =0.8(5) p sd =0.1, p sr =1, p rd =0.8 Fig. 6. Coding at the source s only, expected completion time per packet T/n vs. α , as p sr and p rd change; p sd = 0 . , n = 10 , x = n . C. Comparisons
Figure 7 compares the maximum achievable rates of threecases: coding at r only as discussed in Section IV-B, coding at s only as discussed in Section IV-C, and coding at both s and r as discussed in Section IV-A. Figure 8 plots the corresponding α ∗ values that achieve these rates. For the coding at r andcoding at s cases, the metric being plotted is the inverse ofthe optimal expected transmission completion time per datapacket ( T ∗ /n ). This inverse corresponds to the throughput R ∗ of the systems under discussion. For the case where codingis performed at both s and r , the achievable rate is computedusing Equations (1) and (2).When RLNC is performed at r only, as previous discussionshave suggested, it is more desirable to mix fewer numberof packets; since packets retransmitted from s are uncoded,a larger fraction of the repetitions are wasted. In Figure 7,the achievable rates are given for two different values of n .When n = 1 , coding is not performed, hence the transmissiondegenerates into a routing scheme: s and r retransmit asingle packet until an acknowledgement is received from d .Observe from Figure 8 that when the channel between s and d is poor (e.g. p sd = 0 . ), the route through r is preferred( α ∗ ∼ . ), otherwise r is not used ( α ∗ = 1 ). When n = 2 , r still performs network coding, but only as the sumof two packets. Recall the assumption that all mixed packetstransmitted by r are innovative relative to d ; the second curve(‘ r, n = 2 , x = 2 ’) in Figure 7 is therefore an upper boundon the actual system throughput, reconfirming that coding at r only is not throughput efficient.When RLNC is performed at s only, Figure 7 shows thatmore than of the rate attained by the coding at bothnodes scheme can be achieved. Here the achievable rates areplotted for only one set of channel realizations, with p sr = 0 . and p rd = 0 . . The exact amount of coding gain dependson the reliability of all three links in the relay channel. Alsoobserve that the performance gap decreases as the channelbetween s and d becomes more reliable. Moreover, Figure 8shows that, when coding at s only, transmissions from r are not required after p sd becomes reasonably good (e.g., sd R * = / ( T * / n ) n=1, x=1r, n=2, x=2s, n=10, x=10s, n=10, x=3rs, n= ¥ Fig. 7. Achievable throughput as a function of p sd , R ∗ = T ∗ /n ; p sr = 0 . , p rd = 0 . . sd α * n=1, x=1r, n=2, x=2s, n=10, x=10s, n=10, x=3rs, n= ¥ Fig. 8. Optimal α ∗ corresponding to throughput values in Figure 7; p sr =0 . , p rd = 0 . . p sd > . ). This is because transmissions from r followa randomized scheme, leading to redundant repetitions that donot contribute additional dof to d .In maximizing throughput, coding as much as possible whilefully using the relay r seems to be the optimal strategy,followed by coding at s alone. However, assuming that bothcoding and listening costs power, such approaches may payhigher costs in terms of energy. As discussed in Section IV,our analysis enables the derivation of total energy costs. Forexample, if E tx , E rx , E nc , E ack are identically 1, Figure 9plots the packet deliver energy corresponding to the optimal α ∗ in Figure 8, while Figure 10 plots this energy consumptionscaled by the maximum achievable rate. The different energyterms have been chosen assuming that coding and listeningconsumes energy on the same scale as transmission. Such as-sumptions are valid in systems where just having the circuitryturned on constitutes the most significant portion of energyuse. Other ranges of values are also possible, as we havediscussed in [7], depending on the underlying physical layerhardware implementations. sd E / n n=1, x=1r, n=2, x=2s, n=10, x=10s, n=10, x=3rs, n= ¥ Fig. 9. Packet delivery energy
E/n as a function of p sd , corresponding tothe optimal α ∗ in Figure 7; p sr = 0 . , p rd = 0 . , E tx = 1 , E rx = 1 , E nc = 1 , E ack = 1 . sd E / R n=1, x=1r, n=2, x=2s, n=10, x=10s, n=10, x=3rs, n= ¥ Fig. 10. Packet delivery energy per throughput rate E/ ( nR ) as a functionof p sd , corresponding to the optimal α ∗ in Figure 7; p sr = 0 . , p rd = 0 . , E tx = 1 , E rx = 1 , E nc = 1 , E ack = 1 . It is easy to see from these figures that when p sd is low,coding at both s and r is the most throughput and energyefficient, while coding at s alone provides a compromisebetween throughput and energy use; under better channelconditions, however, not coding ( n = 1 ) and not using therelay ( α = 1 ) require energy, while achieving equally goodthroughputs. At p sd = 1 , the energy cost for the successfuldelivery of one data packet is 2 when coding is conducted atboth s and r : one on transmission, and one on coding. Onthe other hand, the energy cost for coding at s only, assuming n = 10 , is . : one for transmission, one for coding, and / for listening to transmission termination acknowledgement.Moreover, the energy cost for coding at r only, assuming n = 2 , is : according the coupon collector’s problem, onaverage 3 units of energy are spent on transmitting the 2packets, and one unit of energy is spent on receiving theacknowledgement. Lastly with simple ARQ ( n = 1 ), two unitsof energy are spent on each successfully delivered packet.Under the same channel conditions and system parameters sd α * n=1, x=1r, n=2, x=2s, n=10, x=10s, n=10, x=3rs, n= ¥ Fig. 11. Optimal α ∗ corresponding to packet delivery energy values inFigure 12; p sr = 0 . , p rd = 0 . , E tx = 1 , E rx = 1 , E nc = 1 , E ack = 1 . sd E * / n n=1, x=1r, n=2, x=2s, n=10, x=10s, n=10, x=3rs, n= ¥ Fig. 12. Minimum packet packet delivery energy E ∗ /n as a function of p sd , p sr = 0 . , p rd = 0 . , E tx = 1 , E rx = 1 , E nc = 1 , E ack = 1 . as given in Figure 9, optimizing for energy use leads toa very different set of α values, plotted in Figure 11. Thecorresponding optimal packet delivery energies are shown inFigure 12. Observe that the decision to turn off the relay r entirely comes at smaller p sd values. This is because r consumes energy in listening to incoming packets from s aswell as sending outgoing packets to d . The energy cost of using r is the same as retransmitting twice from s . In addition, since r shares the use of the wireless medium with s , having r turnedon reduces the rate at which packets can be transmitted from s . With these two effects combined, r is used only at small p sd values. Another result of the energy tradeoff between s and r observable from these two figures is that even thoughthe optimal packet deliver energy curve is continuous, α ∗ seesa jump for each of the coding strategies.Similar energy and throughput curves can be evaluated whenenergy parameters E tx , E rx , E nc and E ack take on differentranges. In practical systems, depending on the underlyingcircuit implementation, one or more of these energy termscan dominate over the others, and the optimal transmission schedule could be very different from the ones shown above.Nonetheless, our analysis enables robust decision making todetermine when and where to code in a wireless packet erasurerelay channel. VI. C ONCLUSION
We propose Markov chain models to analyze the throughputand packet delivery energy performances of network codingstrategies in the wireless packet erasure relay channel. Theevolution of innovative packets are tracked when either orboth the source and the relay perform random linear networkcoding. We show through numerical evaluations that usinga random code at the relay alone is neither throughout norenergy efficient, while coding at the source alone can providea good tradeoff between throughput and energy use. Wealso show that only a very small amount of memory isrequired at the relay when coding is performed at the sourceonly. Although we do not attempt to categorize explicitlythe optimal network coding strategies in the relay channelunder different system parameters, we provide a frameworkfor deciding whether and where to code, taking into account ofthroughput maximization and energy depletion. Future workwill consider the use of systematic codes, which have beenmentioned in this paper but not studied in detail. A naturalextension of the three-node relay channel is a star-shapednetwork, where nodes can act as relays for their neighbors.A direct generalization of our given framework does not seemtractable, nonetheless it is clear from our short analysis thatthe problem of choosing an optimal coding subgraph is veryimportant when practical constraints, such as energy, are takeninto account. R
EFERENCES[1] R. Ahlswede, N. Cai, S. Li, and R. Yeung, “Network information flow,”
Information Theory, IEEE Transactions on , vol. 46, no. 4, pp. 1204–1216, 2000.[2] P. Chou, Y. Wu, and K. Jain, “Practical network coding,” in
Proceedingsof the Annual Allerton Conference on Communication Control andComputing , vol. 41, no. 1. The University; 1998, 2003, pp. 40–49.[3] T. Ho, M. M´edard, R. Koetter, D. Karger, M. Effros, J. Shi, andB. Leong, “A random linear network coding approach to multicast,”
Information Theory, IEEE Transactions on , vol. 52, no. 10, pp. 4413–4430, 2006.[4] “3GPP TR 36.814 V9.0.0, 3rd generation partnership project; technicalspecification group radio access network; evolved universal terrestrialradio access (e-utra); further advancements for e-utra physical leyraspects (release 9),” 2010.[5] B. Latre, B. Braem, I. Moerman, C. Blondia, and P. Demeester, “Asurvey on wireless body area networks,”
Wireless Networks , vol. 17,no. 1, pp. 1–18, 2011.[6] K. Kwak, M. Ameen, D. Kwak, C. Lee, and H. Lee, “A study onproposed ieee 802.15 wban mac protocols,” in
Commu and Info Tech,2009. ISCIT 2009. 9th International Symposium on . IEEE, 2009, pp.834–840.[7] X. Shi, M. M´edard, and D. Lucani, “When both transmitting andreceiving energies matter: an application of network coding in wirelessbody area networks,” in
NETWORKING 2011 Workshops . Springer,2011, pp. 119–128.[8] E. van der Meulen, “Transmission of information in a t-terminal discretememoryless channel,” Ph.D. dissertation, University of California, 1968.[9] T. Cover and A. Gamal, “Capacity theorems for the relay channel,”
Information Theory, IEEE Transactions on , vol. 25, no. 5, pp. 572–584,1979.[10] J. Laneman, D. Tse, and G. Wornell, “Cooperative diversity in wirelessnetworks: Efficient protocols and outage behavior,”
Information Theory,IEEE Transactions on , vol. 50, no. 12, pp. 3062–3080, 2004. [11] G. Kramer, M. Gastpar, and P. Gupta, “Cooperative strategies and capac-ity theorems for relay networks,” Information Theory, IEEE Transactionson , vol. 51, no. 9, pp. 3037–3063, 2005.[12] L. Lai, K. Liu, and H. El Gamal, “The three-node wireless network:Achievable rates and cooperation strategies,”
Information Theory, IEEETransactions on , vol. 52, no. 3, pp. 805–828, 2006.[13] A. Dana, R. Gowaikar, R. Palanki, B. Hassibi, and M. Effros, “Capacityof wireless erasure networks,”
Information Theory, IEEE Transactionson , vol. 52, no. 3, pp. 789–804, 2006.[14] Y. Yao, X. Cai, and G. Giannakis, “On energy efficiency and optimumresource allocation of relay transmissions in the low-power regime,”
Wireless Communications, IEEE Transactions on , vol. 4, no. 6, pp.2917–2927, 2005.[15] Y. Zhao, R. Adve, and T. Lim, “Improving amplify-and-forward relaynetworks: optimal power allocation versus selection,” in
InformationTheory, 2006 IEEE International Symposium on . IEEE, 2007, pp.1234–1238.[16] C. Hausl and J. Hagenauer, “Iterative network and channel decoding forthe two-way relay channel,” in
Communications, 2006. ICC’06. IEEEInternational Conference on , vol. 4. IEEE, 2006, pp. 1568–1573.[17] L. Xiao, T. Fuja, J. Kliewer, and D. Costello, “A network coding ap-proach to cooperative diversity,”
Information Theory, IEEE Transactionson , vol. 53, no. 10, pp. 3714–3722, 2007.[18] S. Zhang and S. Liew, “Channel coding and decoding in a relaysystem operated with physical-layer network coding,”
Selected Areas inCommunications, IEEE Journal on , vol. 27, no. 5, pp. 788–796, 2009.[19] S. Yang and R. Koetter, “Network coding over a noisy relay: a beliefpropagation approach,” in
Information Theory, 2007. ISIT 2007. IEEEInternational Symposium on . IEEE, 2007, pp. 801–804.[20] D. Tuninetti and C. Fragouli, “On the throughput improvement due tolimited complexity processing at relay nodes,” in
Information Theory,2005. ISIT 2005. Proceedings. International Symposium on . IEEE,2005, pp. 1081–1085.[21] ——, “Processing along the way: forwarding vs. coding,”
ISITA 2005 ,2004.[22] D. Lun, M. M´edard, R. Koetter, and M. Effros, “On coding for reliablecommunication over packet networks,”
Physical Communication , vol. 1,no. 1, pp. 3–20, 2008.[23] D. Traskov, “Network coding for the multiple access layer,” Ph.D.dissertation, Technische Universit¨at M¨unchen, 2010.[24] S. Chachulski, M. Jennings, S. Katti, and D. Katabi, “Trading structurefor randomness in wireless opportunistic routing,”
ACM SIGCOMMComputer Communication Review , vol. 37, no. 4, pp. 169–180, 2007.[25] S. Katti, H. Rahul, W. Hu, D. Katabi, M. M´edard, and J. Crowcroft,“XORs in the air: practical wireless network coding,” in
Proceedingsof the 2006 conference on Applications, technologies, architectures, andprotocols for computer communications . ACM, 2006, pp. 243–254.[26] P. Fan, C. Zhi, C. Wei, B. Letaief et al. , “Reliable relay assisted wirelessmulticast using network coding,”
Selected Areas in Communications,IEEE Journal on , vol. 27, no. 5, pp. 749–762, 2009.[27] G. Angelopoulos, M. M´edard, and A. Chandrakasan, “Energy-awarehardware implementation of network coding,” in
NETWORKING 2011Workshops . Springer, 2011, pp. 137–144.[28] D. Traskov, M. Heindlmaier, M. M´edard, R. Koetter, and D. Lun,“Scheduling for network coded multicast: A conflict graph formulation,”in
GLOBECOM Workshops, 2008 IEEE . IEEE, 2008, pp. 1–5.[29] R. Horn and C. Johnson,
Matrix analysis . Cambridge University Press,1990.[30] D. Lucani, M. M´edard, and M. Stojanovic, “Systematic network codingfor time-division duplexing,” in
Information Theory Proceedings (ISIT),2010 IEEE International Symposium on . IEEE, 2010, pp. 2403–2407.
Xiaomeng Shi is currently pursuing a Ph.D. degreein Electrical Engineering and Computer Science atthe Massachusetts Institute of Technology (MIT),Cambridge, USA. She received a B.Eng. degree inElectrical and Computer Engineering in 2005 fromthe University of Victoria, Victoria, BC, Canada, andan S.M. degree in Electrical Engineering in 2008from MIT. Her research interests include networkcoding, energy efficient protocol design in wirelessnetworks, and signal processing.
Muriel M´edard is a Professor of Electrical Engi-neering at MIT. She was previously an AssistantProfessor in the ECE Department at UIUC anda Staff Member at MIT Lincoln Laboratory. Shereceived B.S. degrees in EECS, in Mathematics, andin Humanities, as well as M.S. and Sc D. degreesin EE, all from MIT. She has served as an Asso-ciate Editor for the Optical Communications andNetworking Series of the IEEE Journal on SelectedAreas in Communications, the IEEE Transactionson Information Theory and the OSA Journal ofOptical Networking. She has served as a Guest Editor for the IEEE Journalof Lightwave Technology, the IEEE Transactions on Information Theory(twice), the IEEE Journal on Selected Areas in Communications and theIEEE Transactions on Information Forensic and Security. She serves as anassociate editor for the IEEE/OSA Journal of Lightwave Technology. Sheis a member of the Board of Governors of the IEEE Information TheorySociety and serves as the President. She has served as TPC co-chair ofISIT, WiOpt and CONEXT. She was awarded the 2009 IEEE CommunicationSociety and Information Theory Society Joint Paper Award , the 2009 IEEEWilliam R. Bennett Prize in the Field of Communications, and the 2002IEEE Leon K. Kirchmayer Prize Paper Award. She was co-winner of the2004 MIT Harold E. Edgerton Faculty Achievement Award. In 2007, she wasnamed a Gilbreth Lecturer by the National Academy of Engineering. ProfessorM´edard’s research interests are in the areas of network coding and reliablecommunications, particularly for optical and wireless networks.
Daniel E. Lucani is an Assistant Professor at theFaculty of Engineering of the University of Portoand a member of the Instituto de Telecomunicac¸ ˜oes(IT). He received his B.S. ( summa cum laudesumma cum laude