Toward Network Coding-Based Protocols for Data ... - dei.unipd

12
662 IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 9, NO. 2, FEBRUARY 2010 Toward Network Coding-Based Protocols for Data Broadcasting in Wireless Ad Hoc Networks Alfred Asterjadhi, Student Member, IEEE, Elena Fasolo, Michele Rossi, Member, IEEE, Joerg Widmer, Member, IEEE, and Michele Zorzi, Fellow, IEEE Abstract—In this paper we consider practical dissemination algorithms exploiting network coding for data broadcasting in ad hoc wireless networks. For an efcient design, we analyze issues related to the use of network coding in realistic network scenarios. In detail, we quantify the impact of random access schemes, as used by IEEE 802.11, on the performance of network coding. In such scenarios, deadlock situations may occur where the delivery process stops and some of the nodes never gather the required packets. To tackle this problem, we propose a proactive mechanism (called proactive network coding) which adapts its transmission schedule according to the decoding status of neighboring nodes. This scheme can detect when nodes need additional packets in order to decode and acts accordingly. We nally investigate the behavior of network coding schemes in multi-rate environments, where we propose a distributed heuristic approach for the selection of data rates. Index Terms—Wireless ad hoc networks, network coding, data dissemination, protocol design. I. I NTRODUCTION N ETWORK coding is a recently introduced paradigm to efciently disseminate data in wireless networks, where data ows coming from multiple sources are combined to increase throughput, reduce delay, and enhance robustness. In contrast to the traditional store and forward approach [1], it implements a store, code, and forward technique, where each node stores incoming packets in its own buffer and trans- mits their combinations, where combining is performed over some nite Galois eld. This technique allows for increased throughput efciency as well as scalability and robustness [2]. These benets arise in the case of multicasting [3], [4] as well as for other network congurations, such as multiple unicast communications [5], [6]. Moreover, they are not restricted to error-free communication networks, but can also be obtained in ad hoc networks [7]–[9], peer-to-peer systems [10], and optical networks. Important theoretical results are known, see, e.g., [3], [11]–[14], and research is now moving towards the exploitation of network coding in practical communication protocols. To this end, the work in [3] is of considerable importance as it demonstrates that random linear network coding (RLNC) is able to reach network capacity in practical Manuscript received August 8, 2008; revised June 13, 2009, November 24 and 27, 2009; accepted November 27, 2009. The associate editor coordinating the review of this paper and approving it for publication was S. Hanly. A. Asterjadhi (corresponding author), M. Rossi, and M. Zorzi are with the Department of Information Engineering, DEI, University of Padova, via Gradenigo 6/B – 35131, Padova, Italy (e-mail: [email protected]). E. Fasolo is with IKS s.r.l., Corso Stati Uniti 14 bis – 35127, Padova, Italy. J. Widmer is with DOCOMO Euro-Labs, Landsberger Strasse 312 – 80687, Munich, Germany. Digital Object Identier 10.1109/TWC.2010.02.081057 settings. This is very important as linear random coding is lightweight and inherently localized and, as such, can be exploited by communication protocols at low overhead. In this paper, we consider the random network coding schemes of [9] for all-to-all data transmission. According to these algorithms, whenever an innovative packet is received at a given node, it generates with probability (the forwarding factor) a new packet through RLNC and broadcasts it over the channel. For the medium access control (MAC) we consider several variants of carrier sense multiple access (CSMA). We focus on the interaction between MAC and network coding over different wireless network congurations in order to capture the effects of each protocol component and quantify the performance degradation due to packet collisions and random transmission schedules. Subsequently, based on our performance evaluation we design a proactive dissemination mechanism and we show that it outperforms the reactive schemes in [9]. The main contributions of this paper are: We study the performance of random network coding in selected topologies (circular, grid, and random networks). In particular, we assess the impact of 1) packet collisions and 2) the random mixing of ows as dictated by random access at the MAC layer. We identify deadlock situations where the delivery pro- cess prematurely stops due to the lack of further inno- vative packets and, as a result, some of the nodes never fully decode. We propose a lightweight and decentralized combination and transmission technique, called proactive network coding, to mitigate the deadlock problem in multi-hop networks. We evaluate the impact of the forwarding factor as well as the selection of the transmission rate in multi-rate ad hoc networks. Related work on communication protocols for wireless networks can be found in [5], [6], [8], [9], [15]–[17]. [15] was the rst contribution to present a practical and distributed solution exploiting RLNC. The authors focused on how the coding matrix as well as the information related to the random combination of packets in some nite Galois eld can be shared by different nodes at low overhead. This is a crucial aspect for network coding algorithms to work in multi- hop radio networks. The scheme of [16] jointly considers packet combinations with ARQ strategies for wireless sensor networks; the transmission paradigm as well as the node constraints are however different from those in wireless ad hoc networks, which is the focus of this paper. COPE [5] applies network coding to unicast ows in wireless networks. 1536-1276/10$25.00 c 2010 IEEE Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

Transcript of Toward Network Coding-Based Protocols for Data ... - dei.unipd

662 IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 9, NO. 2, FEBRUARY 2010

Toward Network Coding-Based Protocols forData Broadcasting in Wireless Ad Hoc Networks

Alfred Asterjadhi, Student Member, IEEE, Elena Fasolo, Michele Rossi, Member, IEEE,Joerg Widmer, Member, IEEE, and Michele Zorzi, Fellow, IEEE

Abstract—In this paper we consider practical disseminationalgorithms exploiting network coding for data broadcasting inad hoc wireless networks. For an efcient design, we analyzeissues related to the use of network coding in realistic networkscenarios. In detail, we quantify the impact of random accessschemes, as used by IEEE 802.11, on the performance of networkcoding. In such scenarios, deadlock situations may occur wherethe delivery process stops and some of the nodes never gatherthe required packets. To tackle this problem, we propose aproactive mechanism (called proactive network coding) whichadapts its transmission schedule according to the decoding statusof neighboring nodes. This scheme can detect when nodes needadditional packets in order to decode and acts accordingly.We nally investigate the behavior of network coding schemesin multi-rate environments, where we propose a distributedheuristic approach for the selection of data rates.

Index Terms—Wireless ad hoc networks, network coding, datadissemination, protocol design.

I. INTRODUCTION

NETWORK coding is a recently introduced paradigm toefciently disseminate data in wireless networks, where

data ows coming from multiple sources are combined toincrease throughput, reduce delay, and enhance robustness.In contrast to the traditional store and forward approach [1],it implements a store, code, and forward technique, whereeach node stores incoming packets in its own buffer and trans-mits their combinations, where combining is performed oversome nite Galois eld. This technique allows for increasedthroughput efciency as well as scalability and robustness [2].These benets arise in the case of multicasting [3], [4] as wellas for other network congurations, such as multiple unicastcommunications [5], [6]. Moreover, they are not restricted toerror-free communication networks, but can also be obtainedin ad hoc networks [7]–[9], peer-to-peer systems [10], andoptical networks. Important theoretical results are known, see,e.g., [3], [11]–[14], and research is now moving towards theexploitation of network coding in practical communicationprotocols. To this end, the work in [3] is of considerableimportance as it demonstrates that random linear networkcoding (RLNC) is able to reach network capacity in practical

Manuscript received August 8, 2008; revised June 13, 2009, November 24and 27, 2009; accepted November 27, 2009. The associate editor coordinatingthe review of this paper and approving it for publication was S. Hanly.

A. Asterjadhi (corresponding author), M. Rossi, and M. Zorzi are withthe Department of Information Engineering, DEI, University of Padova, viaGradenigo 6/B – 35131, Padova, Italy (e-mail: [email protected]).

E. Fasolo is with IKS s.r.l., Corso Stati Uniti 14 bis – 35127, Padova, Italy.J. Widmer is with DOCOMO Euro-Labs, Landsberger Strasse 312 – 80687,

Munich, Germany.Digital Object Identier 10.1109/TWC.2010.02.081057

settings. This is very important as linear random coding islightweight and inherently localized and, as such, can beexploited by communication protocols at low overhead.

In this paper, we consider the random network codingschemes of [9] for all-to-all data transmission. According tothese algorithms, whenever an innovative packet is received ata given node, it generates with probability ! (the forwardingfactor) a new packet through RLNC and broadcasts it over thechannel. For the medium access control (MAC) we considerseveral variants of carrier sense multiple access (CSMA). Wefocus on the interaction between MAC and network codingover different wireless network congurations in order tocapture the effects of each protocol component and quantifythe performance degradation due to packet collisions andrandom transmission schedules. Subsequently, based on ourperformance evaluation we design a proactive disseminationmechanism and we show that it outperforms the reactiveschemes in [9]. The main contributions of this paper are:

! We study the performance of random network coding inselected topologies (circular, grid, and random networks).In particular, we assess the impact of 1) packet collisionsand 2) the random mixing of ows as dictated by randomaccess at the MAC layer.

! We identify deadlock situations where the delivery pro-cess prematurely stops due to the lack of further inno-vative packets and, as a result, some of the nodes neverfully decode.

! We propose a lightweight and decentralized combinationand transmission technique, called proactive networkcoding, to mitigate the deadlock problem in multi-hopnetworks.

! We evaluate the impact of the forwarding factor ! as wellas the selection of the transmission rate in multi-rate adhoc networks.

Related work on communication protocols for wirelessnetworks can be found in [5], [6], [8], [9], [15]–[17]. [15]was the rst contribution to present a practical and distributedsolution exploiting RLNC. The authors focused on how thecoding matrix as well as the information related to the randomcombination of packets in some nite Galois eld "# !$"can be shared by different nodes at low overhead. This is acrucial aspect for network coding algorithms to work in multi-hop radio networks. The scheme of [16] jointly considerspacket combinations with ARQ strategies for wireless sensornetworks; the transmission paradigm as well as the nodeconstraints are however different from those in wireless adhoc networks, which is the focus of this paper. COPE [5]applies network coding to unicast ows in wireless networks.

1536-1276/10$25.00 c! 2010 IEEE

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

ASTERJADHI et al.: TOWARD NETWORK CODING-BASED PROTOCOLS FOR DATA BROADCASTING IN WIRELESS AD HOC NETWORKS 663

The authors of the paper experimentally show that signicantgains, in terms of maximum throughput, are possible evenin the case of unicast transmissions and even when networkcoding is implemented through simple XORing of packetswithin a single-hop neighborhood (rather than forwardingencoded packets over multiple hops). [6] presents BFLY, alocalized network coding protocol which recognizes butterystructures in the network to exploit the coding opportunitiesthey represent. This protocol builds on COPE and also encodespackets through XOR operations, but it additionally allowsthe transmission of encoded packets over multiple hops. Thework in [5], [6] present practical communication schemes,where [5] quanties the achievable gains from coding whenan actual MAC layer is used. Our focus is different in terms ofnetwork scenario, as we consider an all-to-all communicationparadigm and encode packets in "# !$" with $ # $%&,considering more general coding rules. In [8], the authorsinvestigate the interaction between MAC and network cod-ing in wireless multi-hop networks, and propose distributedand opportunistic scheduling rules for the combination ofpackets in the presence of time-varying fading links. Theyalso look at the impact of MAC schedules. However, thistopic is treated differently from what we do here as packetsat relay nodes are XORed and possible deadlocks in thedata dissemination are not investigated. The authors of [17]study the interaction of network coding and MAC, devis-ing suitable conict-free transmission schedules (for a givenconnectivity graph) and related off- and on-line algorithmsfor wireless multi-hop networks. However, their strategiesentail some coordination among nodes which incurs additionalcommunication overhead with respect to RLNC. Reference [9]studies all-to-all communication scenarios and introduces aclass of lightweight reactive and distributed network codingprotocols based on RLNC, proving the superiority of theseschemes over ooding [18] and epidemic routing [1]. Ourpresent work is the natural continuation of [9], which wecomplement investigating the performance degradation due toactual MAC schemes and proposing a solution to deadlocksin the dissemination of the information, which may occurin certain topologies. The performance evaluation that wecarry out in this paper is based on simulation results obtainedusing ns2; the relevant simulation code can be downloadedfrom [19].

The remainder of this paper is organized as follows. InSection II we quantify the impact of several IEEE 802.11variants on the performance of network coding. In Section IIIwe design a lightweight and distributed mechanism to performnetwork coding more efciently and show via simulations thatit can signicantly outperform the data dissemination schemesof [9]. Other results are given for multi-rate environmentsin Section IV: on the one hand, high data rates are goodas they shorten packet transmission times, thereby reducingthe collision probability; on the other hand, however, in amulti-hop scenario high data rates mean that packets have totravel more hops to reach the destination. Thus, determiningsuitable data rates for each node, so as to obtain goodtradeoffs between delay and delivery ratio, is a challenging andinteresting problem for which we propose a heuristic solutionin Section IV. Section V concludes the paper.

II. THE IMPACT OF MAC LAYER ON DATA

DISSEMINATION VIA NETWORK CODING

In this section we study the behavior of Network Codingin realistic environments. Our aim is to address open issuesfor its application in wireless networks with a realistic MACLayer.Problem description: wireless ad hoc networks are severelyconstrained by interference and channel impairments, espe-cially in the case of broadcast communication. The use oftraditional access mechanisms such as CSMA-like protocols,when multiple nodes transmit, may suffer from a high numberof collisions and dropped packets. Two main factors are to betaken into account when using network coding in conjunctionwith an actual MAC, namely 1) collisions and 2) packetscheduling. Both collisions and scheduling are the directconsequence of the random (CSMA-like) channel access thatwe adopt in this study. Collisions impact the performance asfewer packets are collected; as a consequence it takes longerto obtain full rank decoding matrices at the receivers. Packetscheduling refers to the way in which different nodes taketurns in transmitting, which is dictated by the MAC rules. Thetransmission order is important when network coding is usedat higher layers as it inuences the way encoded packets arecreated, i.e., which packets are mixed together. In this paperwe focus on the analysis of random access schemes as usedby IEEE 802.11.Network topologies: we start our investigation with circu-lar and grid reference scenarios and then consider randomtopologies. We ensure that all random topologies used inthe simulations are connected. To this end, we do a simplebreadth-rst-search of the underlying connectivity graph andcheck if all nodes are visited (a standard procedure to checkfor connectivity). The topology is valid (i.e., it is used inthe simulations) if a single connected cluster exists and isdiscarded otherwise.Physical layer: for the results in this paper we have im-plemented an extended version of the ns2 physical layerfor IEEE 802.11b/g which includes packet error rate (PER)calculations accounting for modulation, channel effects, andmulti-user interference. In detail, the Signal to Interferenceplus Noise Ratio (SINR) is evaluated for each receiving nodeand for each packet taking into consideration the interferencegenerated by nearby transmitters. PERs are obtained from pre-calculated packet error rate curves. For the channel, we use thestandard ns2 two ray ground propagation model. More detailscan be found in [20].MAC protocols: we consider four different MAC protocolsbased on CSMA, which is currently the most widely usedmedium access mechanism in wireless ad hoc networks.1) IEEE 802.11b: is considered as the baseline MAC. Weadopt the basic access provided by IEEE 802.11b that, in thebroadcast mode, does not use any acknowledgment mecha-nism. In case of collision, no retransmission occurs and thepacket is lost.2) IEEE 802.11b with pseudo broadcast [5]: this schemeis an improvement of the basic IEEE 802.11b, where anacknowledgment mechanism is implemented. A given noderandomly picks a neighbor and sends a packet to it via

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

664 IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 9, NO. 2, FEBRUARY 2010

unicast by including its address in the packet header. Allother neighbors are in promiscuous mode and can thus over-hear/decode the transmission. However, only the neighborwhich is the intended receiver of the unicast sends back anacknowledgment. This is done according to the basic IEEE802.11b unicast communication mode (without RTS/CTS).The packet is retransmitted, after a backoff period, in casethere is no acknowledgment from the intended receiver. Usingthis mechanism, only collisions at the addressed receiver canbe detected, while collisions occurring at any of the otherneighbors are ignored. Also, this strategy does not solve thehidden terminal problem.3) IEEE 802.11 with pseudo broadcast and RTS/CTS hand-shake: To further improve the performance we consider theprevious scheme with additional RTS/CTS handshake. Thesecontrol messages are introduced to alleviate the hidden nodeproblem. The CTS is only transmitted by the node addressedin the packet header. As for the previous schemes, this strategycan not detect collisions at all overhearing nodes.4) Ideal MAC: is a simple mechanism where transmittedpackets are only affected by the delay, ' # % ( '!"#! ! %,where '!"#! is the propagation delay and % is the packettransmission time. That is, we assume to have an omnisciententity which regulates the transmissions in order to completelyavoid interference and collisions. Hence, as a node sends apacket, all its neighbors successfully receive the message afterthe (xed) delay '. Note that this MAC still schedules packettransmissions according to CSMA and is thus non-ideal froma packet scheduling point of view when network coding isused at the upper layers. This idealized scheme is exploitedto pinpoint the effect of packet errors on the performance ofnetwork coding.Network coding: we consider the RLNC paradigm of [3],which is implemented as presented in [15]. At any givennode, every new encoded packet is obtained as the linearcombination of all packets in its receiving buffer, wherethe combination coefcients are scalars randomly picked in"# !$". These scalars are then stored in an encoding vectorwhich is sent along with the encoded packet, see [15] forfurther details. In addition, we implement three differentpacket combination techniques. The rst two are inspired bythe work in [9], while the last one is a new proposal. Inthe following, we detail the packet combination strategiesconsidered in this section. All the presented schemes arecharacterized by a design parameter, called forwarding factor!, which is dened as the ratio between the average numberof packets transmitted and the average number of innovativepackets received, per node. A received packet is innovativewhenever it increases the rank of the decoding matrix [9]. Forthe schemes below !, is decided a priori and equal for allnodes.1) Probabilistic network coding: this approach uses RLNC.Each node sends a random linear combination of the packetsin its buffer. When receiving an innovative message a newcombination is transmitted with probability ! (the forwardingfactor) whereas nothing is transmitted with probability )" !.For ! # *&%, a node on average sends a new message every twoinnovative packets received. From [21] we know that ! # *&%would theoretically (circular topology, ideal scheduling, and

no collisions) assure a packet delivery ratio of ) when thenumber of neighbors is $ (the packet delivery ratio is denedin Section II-A).2) Semi-deterministic network coding: in this case, for a givenforwarding factor !, each node sends out a new combinationafter having received exactly #)'!$ innovative packets. Asan example, ! # *&% means that each node deterministicallytransmits a new combination every two received innovativepackets. The forwarding factor, in this case, is not related to aprobability, but it is rather used as a threshold on the numberof incoming messages.3) Timed network coding: The two previous schemes havetwo major drawbacks. The rst is that they are particularlysensitive to packet losses, e.g., due to collisions. In fact, ifone of the transmitted packets is lost, the propagation ofthe information through the network could be interrupted.The second drawback is that both probabilistic and semi-deterministic network coding suffer from some inefciencieswhen there is a small number of packets to combine. Insuch cases, new combinations are created from a small setof packets and, for this reason, are often not innovative. Toalleviate these problems, we introduce a timing strategy intothe rst scheme. For each received innovative packet, a timeris activated. When the timer has expired, the node decidesto send out a new random combination with probability !.The timer, ( , is a uniform random variable in +*) ($%&,. Thistiming approach has two advantages. With the introductionof a waiting interval before transmission, nodes have thechance of collecting other innovative packets and send outricher combinations. Moreover, the reduction of the numberof transmissions and the random characteristic of the timerhelp in decreasing the collision probability at the MAC layer.The drawback of the timed scheme is the introduction of ashort delay due to the timer. Hence, the timer value shall bechosen so as to achieve a good trade-off between extra delayand performance improvements. In IEEE 802.11b, this valuehas to be large enough to allow for the collection of more thanone packet, which translates to selecting ($%& % )*" -* ms.We picked ($%& # $* ms. Note that in general ($%& dependson network density and ow demands.Trafc pattern: for the trafc pattern, each node * inserts intothe network a single original packet +! and wants to collect allthe other inserted packets. +!s are generated either randomlyor deterministically. In the former case, each node inserts itsoriginal packet by independently picking the insertion timeuniformly in a xed length interval of '' # )** ms. In thelatter case, we can assume to have a simple application thatinserts original packets sequentially in each node. Subsequentinsertions, at different nodes, are separated by xed timeintervals of '( # ) s. For this value of '(, with the consid-ered scenario (e.g., transmission times and network size), thecollision probability is negligible for both original packets andsubsequent transmissions elicited by network coding. This isuseful to assess the performance of our dissemination schemeswhen used with an ideal MAC.

A. MAC and Combination Strategies: Simulation results

In this section, we discuss the most relevant results weobtained via ns2 simulations. All presented schemes are eval-

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

ASTERJADHI et al.: TOWARD NETWORK CODING-BASED PROTOCOLS FOR DATA BROADCASTING IN WIRELESS AD HOC NETWORKS 665

0.2 0.4 0.6 0.8 10

0.2

0.4

0.6

0.8

1

Forwarding Factor, !

Pac

ket D

eliv

ery

Rat

io, P

DR

NC ! IEEE 802.11bNC ! IEEE 802.11b pb RTS/CTSNC ! IEEE 802.11b pbNC ! Ideal MacFlooding ! IEEE 802.11bFlooding ! IEEE 802.11b pb RTS/CTSFlooding ! IEEE 802.11b pbFlooding ! Ideal Mac

Fig. 1. Packet Delivery Ratio: Performance comparison of Probabilisticnetwork coding and Probabilistic Flooding for different MAC protocols incircular networks with ! ! "#.

uated taking into account the random and the deterministictrafc patterns. We test the algorithms varying ! from *&) to) and the number of nodes in the network, ,, from . to &.,and we consider a data rate of - # ) Mbps. For all MACs weconsider packet lengths of . # /01 (234(54!,"(/ ,where /01 and 234 are the physical and the MAC head-ers, respectively, with /01 # )/$ bits, 234 # $$. bits.54!," is the network coding header that depends on thenumber of nodes , and is of size 54!," # 0!)0 ( ," bits./ is the payload size that in our case is &. bits.1 We organizeour performance analysis in two parts: we rst focus onthe impact of different MAC protocols on network codingand we subsequently evaluate the effect of different packetcombination strategies.

Our performance metrics are: 1) the Packet Delivery Ratio,/6-, which is dened as the ratio between the number ofsuccessfully received (and decoded) packets and the numberof packets a node is interested in, averaged over all nodes;2) Packet Delivery Delay: is the average time between therst transmission of a packet and its reception and successfuldecoding at the destination nodes. This metric is only com-puted for correctly received packets; 3) Protocol Overhead:is the ratio between the number of transmitted packets at theMAC layer and the number of successfully decoded packets.This value depends on the adopted MAC protocol and on theefciency of the network coding strategy.Impact of MAC protocols: in Fig. 1 we compare probabilisticnetwork coding (solid lines) against probabilistic ooding(dotted lines) in terms of delivery ratio in a circular net-work topology for , # )&. Network coding outperformsprobabilistic ooding for all values of !. Gains are morepronounced when ! is close to one and , is large (resultsfor different values of , are not shown here due to spaceconstraints, the results are however similar to those in [9]).As observed in [21], for this topology a delivery ratio ofone is theoretically achievable with ! slightly larger than *&%.

1Due to the inefciencies of 802.11 medium access and the additionalnetwork coding overhead, using a small packet size represents a lower boundon throughput performance. The relative performance differences between theprotocols remain unchanged when using larger packet sizes.

0.2 0.4 0.6 0.8 10

0.2

0.4

0.6

0.8

1

Forwarding Factor, !

Pac

ket D

eliv

ery

Rat

io, P

DR

NC ! IEEE 802.11bNC ! IEEE 802.11b pbNC ! IEEE 802.11b pb RTS/CTSNC ! Ideal MacFlooding ! IEEE 802.11bFlooding ! IEEE 802.11b pbFlooding ! IEEE 802.11b pb RTS/CTSFlooding ! Ideal Mac

Fig. 2. Packet Delivery Ratio: Performance comparison of Probabilisticnetwork coding and Probabilistic Flooding for different MAC protocols ingrid networks with ! ! "#.

0.2 0.4 0.6 0.8 10

1

2

3

4

5

6

Forwarding Factor, !

Pro

toco

l Ove

rhea

d, P

kttx

/Pkt

dcd

NC ! IEEE 802.11bNC ! IEEE 802.11b pbNC ! IEEE 802.11b pb RTS/CTSNC ! Ideal MacFlooding ! IEEE 802.11bFlooding ! IEEE 802.11b pbFlooding ! IEEE 802.11b pb RTS/CTSFlooding ! Ideal Mac

Fig. 3. Protocol Overhead: Performance comparison of Probabilistic networkcoding and Probabilistic Flooding for different MAC protocols in gridnetworks with ! ! "#.

This is obtained through a proper centralized coordinationof the nodes’ transmissions which maximizes the probabilityof sending innovative packets at each transmission attempt.However, this performance level is never reached in practiceand the actual /6- depends on the number of nodes. Lookingat Fig. 1 for ! # *&&, IEEE 802.11b achieves /6- % *&&,whereas an ideal MAC achieves /6- % *&0, which cor-responds to a decrease in performance of about $%%. Notethat our ideal MAC does not provide full reliability as it stillschedules transmissions according to CSMA and does not usethe optimal coordination strategy of [21]. The effectiveness ofpseudo broadcast (IEEE 802.11 pb in the gure) and pseudobroadcast with RTS/CTS (IEEE 802.11 pb RTS/CTS) is alsoclear, though the improvements are not as large as expected.The observed decrease in performance is due to the use ofan actual MAC layer (IEEE 802.11b in this case) and tothe sub–optimality of random scheduling, which indicates theimportance of these issues for the design of practical schemes.

Fig. 2 shows results for a different setting where , # )&nodes are placed over a grid. As expected, the achieved

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

666 IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 9, NO. 2, FEBRUARY 2010

0.2 0.4 0.6 0.8 1

10!3

10!2

10!1

100

Forwarding Factor, !

Pac

ket D

eliv

ery

Del

ay, D

[s]

NC ! IEEE 802.11bNC ! IEEE 802.11b pbNC ! IEEE 802.11b pb RTS/CTSNC ! Ideal MacFlooding ! IEEE 802.11bFlooding ! IEEE 802.11b pbFlooding ! IEEE 802.11b pb RTS/CTSFlooding ! Ideal Mac

Fig. 4. Packet Delivery Delay: Performance comparison of Probabilisticnetwork coding and Probabilistic Flooding for different MAC protocols ingrid networks with ! ! "#.

performance is better than in the circular case due to thehigher number of neighbors per node (. instead of $), whichfavors packet mixing and dissemination. Also in this scenario,the presence of realistic MAC layers signicantly reducesthe /6- metric for a given !. As expected, the schemesimplementing collision avoidance policies (i.e., IEEE 802.11bwith pseudo broadcast and IEEE 802.11 with pseudo broadcastand RTS/CTS handshake) improve /6- but also increase theprotocol overhead. This is due to the MAC retransmissionsin case of collisions and to the control trafc (i.e., ACK,RTS and CTS packets). In addition, we note that when wecompare the performance of probabilistic network coding andooding against !, we have a fair comparison as, given aspecic ! and a xed MAC protocol, both network coding andooding lead to very similar protocol overhead (see Fig. 3).Pseudo broadcast and pseudo broadcast with RTS/CTS areeffective in decreasing the number of collisions. However,using these additional techniques to recover from packet lossleads to longer delays, as can be seen from Fig. 4. The averagedelay increase is about one order of magnitude in the worstcase (pseudo broadcast with RTS/CTS). We also note thatthe delay of network coding stabilizes for increasing ! whileit continues to increase for ooding. The reason for this isthat with ooding, a higher number of redundant packets isreceived early on, delaying the reception of innovative packets.For network coding, the combination of packets prevents thisfrom happening and most packets received are innovative evenfor high !.

To sum up, we observe that the presence of actual MACprotocols reduces the performance in terms of packet deliveryratio; however, this reduction is not as high as expected. Inaddition, collision avoidance policies give little improvementin terms of /6-, while leading to poor overhead and delayperformance.Impact of packet combination strategies: Fig. 5 shows thepacket delivery ratio performance for a circular network with, # )& for various packet combination strategies for anIEEE 802.11b MAC protocol. The semi-deterministic schemes(dotted lines) show a phase change, where /6- remains

0.2 0.4 0.6 0.8 10

0.2

0.4

0.6

0.8

1

Forwarding Factor, !

Pac

ket D

eliv

ery

Rat

io, P

DR

Probabilistic NC ! Random traffic patternSemi!deterministic NC ! Random traffic patternTimed NC ! Random traffic patternSemi!deterministic NC ! Deterministic traffic pattern

Fig. 5. Performance comparison of different combination strategies incircular networks with ! ! "# and IEEE 802.11 MAC.

constant up to !" # *&. and then suddenly increases forhigher forwarding factors. This does not occur for probabilisticnetwork coding (solid lines) whose curves are smooth. Thisreects the threshold based transmission policy of semi-deterministic network coding. The exact value of the shiftingpoint !" depends on the number of neighbors. For circularnetworks, where each node has exactly two neighbors, ! 7 *&%(#)'!$ 8 $) never sufces to trigger the transmission of anew combination, as the initial number of innovative packetsis equal to two. This aw is not present in probabilisticand timed network coding, where sending rules are based onprobabilities rather than on hard thresholds. Timed networkcoding outperforms the semi-deterministic scheme with deter-ministic trafc pattern for ! & !" and performs very closeto this method for larger forwarding factors. In addition, thetimed strategy performs better than both semi-deterministicand probabilistic network coding with random scheduling. For! # *&%, probabilistic network coding with random schedulingachieves /6- % *&-%, whereas timed network coding leadsto /6- % *&%%, which corresponds to an improvement ofabout %1%. We observed that the timed strategy introducesan additional delay. Also, there are some expected differencesbetween ideal and actual MAC. For IEEE 802.11b, the delayincrease is reasonably small (approximately equal to the aver-age value of the timer) and is similar to that introduced by thepseudo broadcast algorithms. Hence, the timed combinationprovides higher benets than pseudo broadcast in terms ofpacket delivery ratio, leading to similar extra delays. For thisreason, the timed scheme may make sense when the goalis to maximize the packet delivery ratio (throughput) whileaccepting some delay degradation. This extra delay appears,however, well tolerable (less than %% increase over the delaywithout the timed strategy). The results of probabilistic andtimed network coding for random topologies are plotted inFig. 6 (similar results hold for grid networks). Note that inthese networks the gain becomes larger for decreasing !; infact, when fewer packets are transmitted timed network codingmore effectively exploits coding opportunities.

From the above results we see that there exists a gapbetween the predicted theoretical performance and the results

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

ASTERJADHI et al.: TOWARD NETWORK CODING-BASED PROTOCOLS FOR DATA BROADCASTING IN WIRELESS AD HOC NETWORKS 667

0.2 0.4 0.6 0.8 10

0.2

0.4

0.6

0.8

1

Forwarding Factor, !

Pac

ket D

eliv

ery

Rat

io, P

DR

15 Neighbors ! Timed NC ! IEEE 802.11b 15 Neighbors ! Timed NC ! Ideal MAC 15 Neighbors ! Probabilistic NC ! IEEE 802.11b15 Neighbors ! Probabilistic NC ! Ideal MAC 7 Neighbors ! Timed NC ! IEEE 802.11b 7 Neighbors ! Timed NC! Ideal MAC 7 Neighbors ! Probabilistic NC ! IEEE 802.11b7 Neighbors ! Probabilistic NC! Ideal MA

Fig. 6. Random Networks: Performance comparison of Packet DeliveryRatio for Probabilistic and Timed Network Coding for ideal and IEEE 802.11bMAC.

obtained in realistic environments. This gap is due to therandom access mechanism of IEEE 802.11, which leads tocollisions, and also to its packet scheduling, which does notallow the combination of packets in the optimal order.

III. PROACTIVE NETWORK CODING (PRONC)

The schemes considered up to now are reactive protocols,i.e., nodes participate in the dissemination of data only whenthey receive innovative information. If this does not occur,the dissemination is interrupted even though nodes may stillhave innovative information to send. This fact is an inherentcharacteristic of the reactive approach. In this section wepropose a network coding data dissemination scheme basedon a proactive approach (referred to in the following asProNC) to address this problem. Even though our focushere is on scenarios where data is to be exchanged amongall the users of a wireless ad hoc network, the rationalebehind ProNC also applies to different settings. Our schemeis completely distributed and self-adaptable and requires verylimited network knowledge, which can be easily acquired byoverhearing the exchanged data.

In the previous section we have seen that reactive schemesare likely to suffer from the presence of interference andcollisions in realistic radio environments. The main problemof reactive schemes is that new random combinations aregenerated and transmitted only when innovative (i.e., linearlyindependent) information is received. Innovative packets mayhowever be lost due to packet collisions, thus interruptingdata propagation. Even worse, the insertion of innovativeinformation into a given network area often causes all nodesin the area to attempt their new transmissions simultaneouslyand this further increases the collision probability.

In reactive probabilistic network coding, nodes send outnew combinations based on a forwarding factor !, whichdepends on their number of neighbors [9]. Setting ! inverselyproportional to the number of neighbors has the desirableeffect that the number of innovative packets per area isindependent of the local node density. We observe that thereare particular topologies where this strategy does not work. As

an example, think of the case where a given node + has a largenumber of neighbors and one of them, say node 9, has only+ as its neighbor. Due to its high number of neighbors (small!), + sends out a small number of packets and, in turn, 9 isunlikely to be able to decode all the wanted information (as itdid not receive enough independent combinations from +). Incontrast, our proactive scheme does not require the receptionof innovative information to continue data dissemination (soit is more robust to interference and collisions), and itsperformance does not depend on the forwarding factor !. It isbased on two important components: 1) a set of conditionsto stop transmissions when all original packets have beendelivered to all nodes, i.e., Stopping Conditions (SC) and 2)a strategy to set the frequency at which new random packetcombinations are to be sent so as to avoid network congestion.In the rest of the section we refer to this strategy as RateAdaptation mechanism.Basic rules for ProNC: each node can be in one of twodifferent states: active and inactive. The basic idea of theproactive approach is that an active node periodically sends outa new packet combination to its neighbors, while an inactivenode does not transmit. To switch from one state to the other,a node considers the following set of rules:R1 A node becomes active upon receiving the rst innovative

packet. This means that a data dissemination phase isstarted and the node has to contribute to it.

R2 A node becomes inactive when the Stopping Conditionis veried. In this case, further transmissions from thisnode are no longer useful for its neighbors and shouldbe suppressed to avoid unnecessary overhead.

R3 A node becomes active again when the Stopping Con-dition no longer holds. This last rule is particularlyimportant as it allows propagation of new informationinto an area where all nodes are currently inactive.

Note that while a node is inactive, it can still receive packetsfrom its neighbors. This information is used to assess whetherthe stopping condition still holds.Stopping conditions: there are different ways to dene theStopping Conditions for proactive network coding. They de-pend, in general, on the amount of information that eachnode has to collect in order to decide whether to suspendits transmissions. Our main aim is to keep the transmissionoverhead as low as possible. We identify two simple casesin which a node has to suspend its transmission: 1) In therst case, all neighbors of a node + have decoded all thepackets they require and thus no further transmissions by +are necessary. 2) The second is when the subspace spanned bythe information vectors (i.e., packets) available at node + iscontained in the subspace spanned by the information vectorsat each of the node’s neighbors. In this case, +’s packets willnot be innovative for any of its neighbors and the node shouldsuspend its transmission.

Based on these observations, we propose two differentconditions which are referred to as Strong and Weak StoppingConditions (SSC and WSC, respectively). They dene twodifferent proactive schemes. According to the SSC, nodessend out beacons (Strong Stopping Messages, SSM) to theirneighbors when they have decoded all the packets they areinterested in. Each node collects SSMs from its neighborhood.

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

668 IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 9, NO. 2, FEBRUARY 2010

When a node receives an SSM from each of its knownneighbors, the SSC is veried and transmissions are stopped.We refer to this scheme as Strong ProNC as it requires strongassumptions on the data trafc. In order to send out SSMs,each node needs to know in advance how many packets itwants to collect. This fact implies that each node has fullknowledge about the amount (and type) of data owing overthe network. Note that the collection of this information maynot be feasible in practice.

The second strategy we propose is based on the WSC.During data propagation, each node sends out beacons (WeakStopping Messages, WSM) containing a decoding eld whichis set to ) if it can decode all packets in its buffer and to *otherwise. In addition, beacons contain a rank eld specifyingthe rank of the nodes’ decoding matrices. According to theWeak Stopping Conditions each node suspends its transmis-sions when all its neighbors can decode all the packets in theirbuffers and their matrices have the same (full) rank. We referto this second strategy as Weak ProNC because it does notrequire any knowledge about the data trafc and has a limitedoverhead. However, Weak ProNC is suboptimal as there aresome situations in which the rank alone does not capture theexact decoding status at different nodes. For instance, it mighthappen that all neighbors of a node can decode all the packetsin their buffers and they all have the same rank but the decodedinformation is different.

A. Rate adaptation heuristics

We dene ( as the time elapsed between the completion ofthe transmission of a packet by the PHY and the instant whenthe next packet is made available for transmission at the MAC,i.e., the idle time of the node. Note that ( is (roughly) inverselyproportional to the transmission rate of the nodes. In whatfollows, we present an approximate model to nd the value of( that maximizes the amount of innovative information thatis transferred over the channel as a function of the systemparameters. Note that the physical (PHY) layer data rate is keptconstant. Methods to change the PHY rate are investigated inSection IV.

Impact of MAC layer dynamics: in what follows we de-rive the relationship between the value of (%)* # :+( ,that maximizes the throughput, referred to as ("%)*, and thenumber of neighbors at any given node, ,#. We considerthe packet transmission process in a given neighborhood of, # ,# () nodes making the following assumptions: A1) weneglect the channel propagation delay as for the consideredsystem parameters it has a negligible impact on the throughputperformance, A2) we assume that all packets involved in acollision are lost and A3) we assume that any transmittedpacket is always successfully received by all nodes in theneighborhood unless it collides with another transmission. Toobtain a rate adaptation heuristic we model the IEEE 802.11broadcast communication process. As in [22], the evolutionof the transmission backoff counter is tracked using a suitableMarkov chain. However, in our case the backoff window size; is always constant as packets are neither retransmitted noracknowledged. This implies that the broadcast backoff processof any of the ,# ( ) nodes can be modeled through the one

W-1210 W-2...

-1

p p p p

1-p1-p1-p1-p

q/Wq/W ...1-q

q/W

q/Wq/Wq/Wq/W ...

1-q

q/W q/W

Fig. 7. Markov chain tracking the evolution of the IEEE 802.11 broadcasttransmission process. For !! nodes in a neighborhood, " is the probabilitythat at least one of the remaining !! nodes transmits when the target nodeis in slot # ! "$ % % % $& " ". " " ' is the probability that the transmissionbuffer is empty after the transmission of a given packet. & is the backoffwindow size of IEEE 802.11.

dimensional Markov chain of Fig. 7 (a two dimensional chainwas used in [22] for the IEEE 802.11 unicast case to takeretransmissions into account). In addition, in order to modelthe transmission process in nonsaturated trafc conditions, weadopt the technique of [23] where idle transmission times(due to empty transmission queues) are modeled through theaddition of the further state "). With reference to Fig. 7our model works as follows. When a target node has apacket to transmit, it starts the backoff process by randomlyselecting a backoff counter value from * to ; " ) and thenstarting to decrement the counter until state * is reached. State* # *) )) & & & ); " ) represents the current backoff countervalue. The transition from state * to state * " ) occurs withprobability ) " < after a backoff slot time (of xed duration=), while with probability < the process remains in state *.< is the probability that at least one of the remaining ,#

nodes transmit when the target node is in state *. If thisoccurs, the node momentarily stops counting down its backofftimer. The current packet is nally transmitted when thebackoff process reaches state * (transmission state). Upon thecompletion of the packet transmission two events can occur:E1) with probability $ the transmission queue is non-emptyand a new backoff timer is uniformly selected at random in'*) )) & & & ); ")(: the probability that the system moves fromstate * to any state * # *) )) & & & ); ") is thus $'; . E2) Withprobability )" $ the transmission queue is empty and in thiscase the process moves to the idle state "), where it remainsuntil a new packet arrives (at which point the chain evolutionis the same as in E1).

Let >!, * # ")) *) )) & & & ); " ) be the steady-state proba-bilities of the above Markov chain. Our goal is to nd >+ (thetransmission probability) and relate it to (%)*. From the chainregularities, and by computing recursively through the chainfrom right to left, we obtain:

>$#! #*$!>+ ( >#'"

; !)" <") * # )) $) & & & ); " ) )

>+ # !>+ ( >#'"$ & (1)

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

ASTERJADHI et al.: TOWARD NETWORK CODING-BASED PROTOCOLS FOR DATA BROADCASTING IN WIRELESS AD HOC NETWORKS 669

From the normalization condition!$#'

!,#' >! # ) we nd

>+ ( >#' #)

) ( -$#'.%(-'#&.

) (2)

from which we nally obtain >+ as:

>+ #$

) ( -$#'.%(-'#&.

& (3)

The probability < that at least one of the remaining ,# nodestransmits when the target node is in slot * # )) & & & ); " )

is found as: < # ) " !) " >+"'!()*# ?'!>+". We additionally

dene the probability /+ that at least one node is transmittingin a given slot,

/+ # )" !) " >+"'!/' ) (4)

and /, as the probability that only one node is in thetransmission state, conditioned on the fact that at least onenode is transmitting. /, is obtained as:

/, #!,# ( )">+!)" >+"'!

/+#

!,# ( )">+!)" >+"'!

)" !)" >+"'!/'& (5)

We are now ready to calculate the normalized throughput @as (see [22]):

@ #:+payload bits successfully transmitted in a slot,

:+slot length,& (6)

Since a successful transmission occurs in a slot with proba-bility /+/,, the average number of payload bits successfullytransmitted in a slot time is /+/,/ , where / is the payloadsize. The average length of a slot can be obtained by consid-ering the following three mutually exclusive cases: C1) withprobability )"/+, none of the nodes transmit in the slot. Theduration of an empty backoff slot is = # $* As. C2) withprobability /+/,, only one node transmits in the slot. The slotduration in this case is B,, which is the transmission timeof a packet, given by the sum of the time spent transmittingthe physical header (B012), the MAC header (B345), thenetwork coding header (B65!," # 54!,"'-), the payload(B- # /'-), plus the distributed inter frame space (DIFS)time, B789::

B, # B012 ( B345 ( B65!," ( B- ( B789: & (7)

C3) With probability /+!) " /,", multiple nodes transmit ina slot time, leading to a collision event. The duration of thisslot is also B, because packets are not acknowledged and,therefore, the transmission period for successful and collidedpackets is the same. Hence, we have :+slot length, # =!) "/+" ( /+/,B, ( /+!) " /,"B,. These facts together with (6)give:

@ #/+/,/

=!) " /+" ( /+/,B, ( /+!) " /,"B,

#/,!/'="

!)" /+"'/+ ( B,'=& (8)

Note that the maximum throughput is achieved when thefollowing function is maximized:

C!>+" #/,

!)" /+"'/+ ( B,'=

#!,# ( )">+!)" >+"'!

B,'= " !) " >+"'!/'!B,'= " )"& (9)

The optimal transmission probability >"+ can be found as (see

calculations in Section VI of [22]):

>"+ # 234526

.!

C!>+"

#

"+!,# ( )" ( $,#!B,'= " )",'!,# ( )"" )

,#!B,'= " )"&(10)

The optimal ("%)*, is obtained from >"+ as:

1. Express $ as $ # )" D#/;slot length<01"#$ , which as shownin [23] provides a good approximation of the queuebehavior in the unsaturated case. Inverting this relationgives:

(%)* # ":+slot length,784!) " $"

# "=!)" /+" ( /+B,

784!)" $"& (11)

2. Obtain >"+ from (10).

3. Invert (3) to nd < as a function of >+ as:

< # )" >+!; " )"

$!)" >+'$"()*# ?(!>+) $" (12)

and nd $" as the solution of ?'!>"+" " ?(!>"

+ ) $" # *,which leads to:

$" #$>"

+!)" >"+"

'!

$!)" >"+"

'! ( >"+!) "; "

& (13)

4. Obtain ("%)* from (11) setting $ ) $" and expanding:+slot length, using (4):

("%)* #B, " !) " >"

+"'!/'!B, " ="

784#

(-'#."! .

#!/."! -'#$ .

(-'#."! .

#!%&/."!-'#$ .

$ (14)

We observe that our model is accurate for sufciently large,# , i.e., ,# * .. For smaller values it is however inaccuratebecause of several approximations made in the analysis, i.e.,the expression of $ [23], the independence of the busy channelprobability < among subsequent access slots [22] and to thefact that in our derivation of the steady state probabilitieswe neglect the semi-Markov character of the process, i.e.,that states * and * +# * have different durations (a commonsimplication for the analysis of IEEE 802.11 throughput [22],[23]).Implementation notes: in our implementation we pick(%)* # ("%)* selecting ( uniformly in +*) $(%)*,, which gives:+( , # (%)*. We obtain ("%)* as a function of ,# from (14)using B012 # )/$ As, B345 # $$. As, B789: # %* As,= # $* As, - # ) Mbps and ; # -$ slots, which are usedfor IEEE 802.11b broadcast with a rate of ) Mbps. We ndthat the relationship between the two is well approximatedby a linear function, as predicted by the simulation resultsof [9], [24]. A good approximation is in fact given by thefollowing heuristic: ("%)* ! E,#B,, where E # *&1. We notethat (%)* corresponds to the average amount of time spentin state "), i.e., to the time elapsed between the completionof the transmission of a packet by the PHY and the instantwhen a new packet is made available by ProNC. The inter-packet transmission time is greater than (%)* as it also includesthe time spent in backoff. Moreover, ProNC requires theestimation of the number of neighbors at each node which

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

670 IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 9, NO. 2, FEBRUARY 2010

10!3

10!2

10!1

100

101

10!4

10!3

10!2

10!1

100

Weak ProNCStrong ProNCReactive NC, n

v=2

Reactive NC, nv=4

Reactive NC, nv=8

Reactive NC, nv=16

Reactive NC, nv=32

Adaptive NC, nv=2

Adaptive NC, nv=4

Adaptive NC, nv=8

Adaptive NC, nv=16

Adaptive NC, nv=32

vn =2vn =4

vn =32vn =16

vn =8

!increasingFa

ilure

Pro

babi

lity,

1!P

DR

Packet Delivery Delay [s]

Fig. 8. Failure probability ""()* vs delay: comparison between proactiveand reactive schemes. The curves shown for reactive schemes are obtainedfor different values of !! # $$$ %$ &$ "#$ '$%, varying + as the independentparameter.

can be simply achieved by monitoring the source addressesof incoming packets. Note that both the stopping conditionsand the packet rate adaptation mechanism depend on the nodedensity. Most importantly, the number of nodes estimated inthis way is smaller than that of the previous analysis. Infact, this number of neighbors only accounts for the nodeswithin transmission range, whereas ,# should include allnodes in the collision domain, whose range is always greater.Hence, the actual inter-packet transmission time ( $%)*, whichaccounts for all these facts, is ( $%)* # E$,#B, where E$ # &.We thus use this linear heuristic which gives good resultsacross all simulations. In addition, Stopping Messages areincluded within data packets at the cost of a few extra bits.For SSM, we need one additional bit, whereas for WSM weneed a bit to represent the decoding status and a byte tocommunicate the rank of the local decoding matrix2. In bothcases, the additional overhead is acceptable. On the downside,when a node becomes inactive it must send out at least oneStopping Message to communicate its change of status andthis packet may be useless for coding purposes. We notethat piggybacking control information within data packets hasthe benecial effect of keeping channel congestion low. Inaddition, the added control information (SSMs and WSMs,rank, decoding status) is used to increase the efciency ofnetwork coding schemes which, in turn, can further reducethe number of transmissions for a target performance level.These benets are quantitatively veried below.

B. ProNC: Simulation Results

Next, we compare the ProNC scheme against the reactiveprobabilistic schemes proposed in [9]. The results that followare for topologies where nodes are randomly placed withina xed area in such a way that the topology is always con-nected, possibly through multi-hop paths. We consider several

2A single byte often sufces in practice, i.e., the number of nodes in thenetwork that generate original packets is lower than or equal to $(#. Codingover more original packets would imply the inversion of large matrices at thereceiver which is impractical and difcult to obtain in realtime.

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8

10!4

10!3

10!2

10!1

100

Weak ProNCStrong ProNCReactive NC, n

v=2

Reactive NC, nv=4

Reactive NC, nv=8

Reactive NC, nv=16

Reactive NC, nv=32

Adaptive NC, nv=2

Adaptive NC, nv=4

Adaptive NC, nv=8

Adaptive NC, nv=16

Adaptive NC, nv=32

vn =32 vn =16

vn =8

vn =4vn =8

vn =2vn =4

!increasing

Failu

re P

roba

bilit

y, 1

!PD

R

Protocol Overhead

Fig. 9. Failure probability " " ()* vs overhead: comparison betweenproactive and reactive schemes. The curves shown for reactive schemes areobtained for different values of !! # $$$ %$ &$ "#$ '$%, varying + as theindependent parameter.

average node densities by varying the average number ofneighbors, ,# , '$) .) 0) )&) -$(. For the MAC, we adopt thebasic IEEE802.11b broadcast mode, accounting for channelerrors and collisions. In the following graphs we considerthe probabilistic network coding of Section II (referred to as”Reactive NC” in the plots) as well as the adaptive networkcoding (referred to as ”Adaptive NC”) scheme of [9] where! is picked independently at each node as ! # F'!,# ( )",where F is a suitable constant equal for all nodes [9]. In Fig. 8we show the tradeoff between failure probability, ) " /6-,and the packet delivery delay. We note that ProNC performsbetter in terms of data recovery; ) " /6- is at least oneorder of magnitude smaller for ProNC when ,# , '0) )&(.For small ,# , i.e., ,# , '$) .(, we often obtain pathologicaltopologies leading to deadlocks of the data disseminationwhen reactive protocols are used. ProNC efciently dealswith these topologies and alleviates the deadlock problem byoffering better performance in terms of ) " /6-. On thedownside, in these cases the dissemination of data in ProNCtakes slightly longer due to the waiting periods of proactiveschemes (see variable ( ). The tradeoff concerning the protocoloverhead is shown in Fig. 9: similarly to reactive schemes,the overhead of ProNC increases with decreasing ,#. Thisis because network coding is more efcient when the nodedensity is high. Also, the overhead of ProNC is usually smallerthan that of reactive schemes, while it always outperformsreactive solutions in terms of data recovery performance. Forboth graphs Weak ProNC performs slightly worse than StrongProNC in terms of packet delivery ratio, whereas it performsbetter in terms of overhead performance for the same ,#.The difference in performance is more signicant at smalldensities, i.e., where deadlocks are more likely to occur. Asdemonstrated in [25], the overhead performance of all schemesat high densities approaches that of an idealized scheme,having the minimum possible overhead: this reects the factthat network coding works better when there are more codingopportunities.

To summarize, both Strong and Weak ProNC show satisfac-

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

ASTERJADHI et al.: TOWARD NETWORK CODING-BASED PROTOCOLS FOR DATA BROADCASTING IN WIRELESS AD HOC NETWORKS 671

tory performance in actual network settings. Weak ProNC isa distributed and self-adaptable dissemination protocol whichdoes not require any knowledge about the trafc and onlyrequires a few local interactions among nodes to work prop-erly. Further improvements of Weak ProNC in terms of /6-are possible through the extension of the communication ofcontrol messages over multiple hops. These issues are left forfuture research.

IV. NETWORK CODING IN MULTI-RATE AD HOC

NETWORKS

When nodes have multi-rate transmission capabilities, it isnecessary to pick a suitable PHY layer data rate, besides theselection of the forwarding factor. This is not an easy task.When nodes transmit at low data rates their coverage area islarger and in this case packets travel long hops. Conversely,transmitting with higher data rates leads to shorter transmis-sion delays and shorter hops. Whichever is best depends onseveral factors such as network density and topology. Theanalysis in, e.g., [26] can be used to calculate the involveddelay-throughput tradeoffs for different rates. The objective ofthe following paragraphs is to obtain good tradeoffs between/6- and average delay in IEEE 802.11g-based multi-ratescenarios in the presence of RLNC.

As in Section III-B, we consider a random wireless networkwhere nodes want to disseminate and retrieve informationthrough multi-rate network coding. We investigate the cooper-ation between IEEE 802.11g PHY/MAC and network codingin this random scenario considering the all-to-all transmissionparadigm. We present results obtained through ns2 simulationswith varying forwarding factor ! for reactive network coding.As per our discussion above, ! is the probability of sendinga new combination whenever a node receives an innovativepacket and directly determines the amount of trafc whichows through the wireless network. Note that ProNC can beapplied to a multi-rate transmission scenario as well and, forthis case, we found similar advantages as those presented inSection III-B.

A. Rate Adaptation Heuristics and Simulation Results

In the following, we present a data rate adaptation heuristicwhich tries to achieve, at the same time, a short delay and ahigh /6-. We assume that wireless nodes initially have noknowledge about the network status, i.e., they are completelyunaware of location and number of neighbors as well as thetransmission opportunities in their neighborhood. In order toacquire this knowledge the algorithm uses internal variables,at the MAC layer, to store auxiliary pieces of informationsuch as node addresses, signal to interference plus noise ratios,@G5-, as well as data rates.

Initially, all nodes begin their transmissions with the lowestavailable rate (which is & Mbps for IEEE 802.11g). This is thebest choice in terms of neighbor discovery as it allows nodesto collect information from a larger area. The subsequent re-ception of packets permits the gathering of useful informationwhich will determine the data rate at this node, as we explainnext. Each time a node, say node *, receives a new packet fromone of its neighbors H, it extracts the following information:

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Forwarding Factor, !

Pac

ket D

eliv

ery

Rat

io, P

DR

nv = 10, R = 6 Mbps

nv = 10, R = 54 Mbps

nv = 10, c

f = 20 %

nv = 10, c

f = 40 %

nv = 10, c

f = 60 %

Fig. 10. Packet delivery ratio for a multi-rate ad hoc network as a functionof +.

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

10!2

Forwarding Factor, !

Pac

ket D

eliv

ery

Del

ay [s

]

nv = 10, R = 6 Mbps

nv = 10, R = 54 Mbps

nv = 10, c

f = 20 %

nv = 10, c

f = 40 %

nv = 10, c

f = 60 %

Fig. 11. Packet delivery delay for a multi-rate ad hoc network as a functionof +.

1) id: the address of the sending node, 2) .: the size of thereceived packet, 3) I2 : the instantaneous @G5- associatedwith this packet reception. Upon reception, an average @G5-,I2 , is updated for each neighbor H according to a discrete timerst order low pass lter as: I2 # JI2 ( !) " J"I2 , whereJ , !*) )" is the smoothing factor. For our simulations wepicked J # *&%. In this way we take into account the variationsin the received SINRs, while trying to capture its averagevalue. The packet transmission length . and I2 are thus usedto estimate the PER for neighbor H for all transmission rates.

In this way, each node estimates the status of its neighborsin terms of associated @G5-. Once node * has this informa-tion it updates its internal variables. Subsequently, it considersthe fraction F* of the nodes in its neighboring set that have thehighest Is. F* is referred to here as coverage factor. The datarate at a given node * is thus selected such that all of thesenodes will receive packets from node * with a small packeterror probability, i.e., smaller than a given threshold /+3. Inthe following results we selected /+3 # *&*- as it gave goodresults across all our experiments.

Fig. 10 shows /6- as a function of ! for different coverage

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

672 IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, VOL. 9, NO. 2, FEBRUARY 2010

0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 0.02 0.022 0.02410

!4

10!3

10!2

10!1

n

v = 7, ! = 0.4

nv = 7, ! = 0.6

nv = 7, ! = 0.8

nv = 10, ! = 0.4

nv = 10, ! = 0.6

nv = 10, ! = 0.8

nv = 15, ! = 0.4

nv = 15, ! = 0.6

nv = 15, ! = 0.8

increasing cf

Failu

re P

roba

bilit

y, 1

!PD

R

Packet Delivery Delay [s]

Fig. 12. Tradeoff between failure probability ""()* and packet deliverydelay for a multi-rate ad hoc network with different network densities.Different curves correspond to different forwarding factors +. Each curveis plotted for varying ," .

factors F* . For this gure, nodes have on average ,# # )*neighbors, solid curves represent reactive network coding withxed data rate (only the extreme cases of & and %. Mbps areplotted), whereas dotted curves represent the reliability whennodes are allowed to adapt their data rate based on the aboveheuristic. First of all, we observe that transmitting with thehighest rate of %. Mbps performs the worst. This is becausein such a case the error probability is quite high and this affectsthe overall performance. As expected, a xed rate of & Mbpsleads to the best reliability performance. However, settingF* # .*% gets very close to this performance while leadingto a better delay metric, as we can see from Fig. 11. Fromthis plot we can further appreciate the benets of adaptingthe data rate: overall, for a coverage factor of F* # .*% weget the shortest delays by performing, in terms of reliability,almost as well as the xed rate scheme with & Mbps. Forthe non monotonic behavior of the curves of Fig. 11, notethat when ! is low, e.g., ! # *&), the dissemination ofinnovative information terminates early (in this case deadlocksare frequent) and a large number of nodes are unable todecode all packets (/6- is low, see Fig. 10). An increasing !allows the dissemination process to continue longer, leading tofewer deadlocks, thus the delay increases with a correspondingincrease in /6-. A further increase of ! at rst allowsa quicker dissemination of innovative information (shorterdelays), and afterwards the delay increases again due tothe increased trafc load (collisions). Fig. 12 shows tradeoffresults representing the failure probability ) " /6- as afunction of the packet delivery delay for different number ofneighbors ,# , '1) )*) )%(. Simulation curves are plotted fordifferent values of ! and each curve is obtained by varyingF* . Good schemes are those lying on the bottom left of theplot (i.e., having short delay and high reliability). From thisgraph we see that for each !,#) !" pair there exists a suitablecoverage factor F* which minimizes the delay while achievinggood performance in term of )"/6-. In practice, F* in therange +-*) %*,% are good choices as they give good reliabilityperformance while ensuring short delays for all reasonable

network sizes. As usual, various tradeoffs can be obtained fordifferent forwarding factors !: high ! values always lead togood /6- performance at the cost of additional delay, whilea small ! is a good choice in terms of delay performance atthe cost of an increased failure probability.

V. CONCLUSIONS

In this paper we focused on the design of practical broad-casting schemes based on network coding for wireless adhoc networks. First we discussed the impact of IEEE 802.11-like random access on the performance of reactive networkcoding [9]. We identied potential problems due to prematuretermination of the data dissemination. To solve these, we pro-posed an original proactive network coding (ProNC) strategy.We nally focused on broadcasting protocols for multi-rate adhoc networks, where we devised a lightweight rate adaptationheuristic. The designed protocols use estimates of the localnode density to reduce the collision probability and keep asufcient amount of innovative packets owing across thenetwork. The effectiveness of our schemes was demonstratedby simulation in a range of different scenarios.

ACKNOWLEDGMENT

This paper is partly based on research presented at IEEEICC 2007 and IEEE GLOBECOM 2007. This work waspartially supported by DoCoMo Euro-Labs.

REFERENCES

[1] P. Eugster, R. Guerraoui, A.-M. Kermarrec, and L. Massoulie, “Epidemicinformation dissemination in distributed systems,” Computer, vol. 37,no. 5, pp. 60–67, May 2004.

[2] D. Tuninetti and C. Fragouli, “Processing along the way: forwarding vs.coding,” in ISITA, Parma, Italy, Oct. 2004.

[3] T. Ho, M. Medard, R. Koetter, D. R. Karger, M. Effros, J. Shi, andB. Leong, “A random linear network coding approach to multicast,”IEEE Trans. Inf. Theory, vol. 52, no. 10, pp. 4413–4430, Oct. 2006.

[4] J. Yuan, Z. Li, W. Yu, and B. Li, “A cross-layer optimization frameworkfor multihop multicast in wireless mesh networks,” IEEE J. Sel. AreasCommun., vol. 24, no. 11, pp. 2092–2103, Nov. 2006.

[5] S. Katti, H. Rahul, W. Hu, D. Katabi, M. Medard, and J. Crowcroft,“Xors in the air: practical wireless network coding,” ACM SIGCOMMComput. Commun. Rev., vol. 36, no. 4, pp. 243–254, Oct. 2006.

[6] S. Omiwade, R. Zheng, and C. Hua, “Practical localized network codingin wireless mesh networks,” in Proc. IEEE SECON, San Francisco,USA, June 2008, pp. 332–340.

[7] Y. Wu, P. A. Chou, Q. Zhang, K. Jain, W. Zhu, and S.-Y. Kung,“Network planning in wireless ad hoc networks: a cross-layer approach,”IEEE J. Sel. Areas Commun., vol. 23, no. 1, pp. 136–150, 2005.

[8] H. Yomo and P. Popovski, “Opportunistic scheduling for wirelessnetwork coding,” IEEE Trans. Wireless Commun., vol. 8, no. 6, pp.2766–2770, June 2009.

[9] C. Fragouli, J. Widmer, and J.-Y. L. Boudec, “Efcient broadcastingusing network coding,” IEEE/ACM Trans. Networking, vol. 16, no. 2,pp. 450–463, Apr. 2008.

[10] C. Gkantsidis and P. R. Rodriguez, “Network coding for large scalecontent distribution,” in Proc. IEEE INFOCOM, Miami, FL, USA, Mar.2005, pp. 2235–2245.

[11] R. Ahlswede, N. Cai, S.-Y. R. Li, and R. Yeung, “Network informationow,” IEEE Trans. Inf. Theory, vol. 46, no. 4, pp. 1204–1216, July2000.

[12] R. Koetter and M. Medard, “An algebraic approach to network coding,”IEEE/ACM Trans. Networking, vol. 11, no. 5, pp. 782–795, Oct. 2003.

[13] C. Fragouli and E. Soljanin, “Information ow decomposition fornetwork coding,” IEEE Trans. Inf. Theory, vol. 52, no. 3, pp. 829–848,Mar. 2006.

[14] C. Chekuri, C. Fragouli, and E. Soljanin, “On average throughput andalphabet size in network coding,” IEEE Trans. Inf. Theory, vol. 52, no. 6,pp. 2410–2424, June 2006.

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.

ASTERJADHI et al.: TOWARD NETWORK CODING-BASED PROTOCOLS FOR DATA BROADCASTING IN WIRELESS AD HOC NETWORKS 673

[15] P. A. Chou, Y. Wu, and K. Jain, “Practical network coding,” in41st Allerton Conference on Communication Control and Computing,Allerton, IL, USA, Oct. 2003.

[16] H. Dubois-Ferriere, D. Estrin, and M. Vetterli, “Packet combining insensor networks,” in Proc. ACM SenSys, San Diego, CA, USA, Nov.2005, pp. 102–115.

[17] Y. E. Sagduyu and A. Ephremides, “Crosslayer design for distributedMAC and network coding in wireless ad hoc networks,” in Proc. IEEEISIT, Adelaide, Australia, Sep. 2005, pp. 1863–1867.

[18] Y.-C. Tseng, S.-Y. Ni, Y.-S. Chen, and J.-P. Sheu, “The broadcast stormproblem in a mobile ad hoc network,” Wireless Networks, vol. 8, no.2/3, pp. 153–167, Mar. 2002.

[19] “ns2 simulation code for wireless network coding.” [Online]. Available:http://telecom.dei.unipd.it/simulation

[20] N. Baldo, F. Maguolo, M. Miozzo, M. Rossi, and M. Zorzi, “ns2-MIRACLE: a modular framework for multi-technology and cross-layersupport in network simulator 2,” in Proc. ACM ValueTools, Nantes,France, Oct. 2007, pp. 1–8.

[21] J. Widmer, C. Fragouli, and J.-Y. L. Boudec, “Low-complexity energy-efcient broadcasting in wireless ad hoc networks using network cod-ing,” in NetCod, Riva del Garda, Italy, Apr. 2005.

[22] G. Bianchi, “Performance analysis of the IEEE 802.11 distributedcoordination function,” IEEE J. Sel. Areas Commun., vol. 18, no. 3,pp. 535–547, Mar. 2000.

[23] F. Daneshgaran, M. Laddomada, F. Mesiti, and M. Mondin, “Unsat-urated throughput analysis of IEEE 802.11 in the presence of nonideal transmission channel and capture effects,” IEEE Trans. WirelessCommun., vol. 7, no. 4, pp. 1276–1286, Apr. 2008.

[24] E. Fasolo, M. Rossi, J. Widmer, and M. Zorzi, “On MAC schedulingand packet combination strategies for random network coding,” in Proc.IEEE ICC, Glasgow, UK, June 2007, pp. 3582–3589.

[25] ——, “A proactive network coding strategy for pervasive wirelessnetworking,” in Proc. IEEE GLOBECOM, Washington DC, USA, Nov.2007, pp. 5271–5276.

[26] A. Gkelias, M. Dohler, and H. Aghvami, “Throughput analysis forwireless multi-hop CSMA,” in Proc. IEEE PIMRC, Barcelona, Spain,Sep. 2004, pp. 979–983.

Alfred Asterjadhi was born in Elbasan, Albania,in 1982. He received the Bachelor’s and Master’sdegree (summa cum laude) in TelecommunicationsEngineering in 2004 and 2007, respectively, fromthe University of Padova, Italy. During the Aca-demic Year 2004/2005 he attended several graduatecourses of Computer Science at the Rey Juan CarlosUniversity (URJC), Madrid (Spain). Since 2008 hehas been a Ph.D. Student at the Department ofInformation Engineering, University of Padova andis actively participating in national and international

research projects. His current research is focused on the design and evaluationof protocols for cognitive wireless networks. Active research is carried out inseveral sub-elds such as network coding, cross-layer techniques and machinelearning.

Elena Fasolo received the Laurea degree inTelecommunication Engineering from the Universityof Padova in 2004. From January 2005 to December2007 she was a Ph.D. Student at the School of Infor-mation Engineering at the Information EngineeringDepartment, University of Padova, Italy. During thisperiod, she spent six months at DoCoMo Euro-Labsin Munich, Germany, working on network codingtechniques for wireless networks. On March 2008she defended her Ph.D. thesis on network codingstrategies for wireless ad-hoc networks. She now

works at IKS, Padova, as Application and Network Performance OptimizationSpecialist.

Michele Rossi received the Laurea degree in Electri-cal Engineering (with honors) and the Ph.D. degreein Information Engineering from the University ofFerrara in 2000 and 2004, respectively. From March2000 to October 2005 he has been a Research Fellowat the Department of Engineering of the Universityof Ferrara. During 2003 he was on leave at theCenter for Wireless Communications (CWC) at theUniversity of California San Diego (UCSD), wherehe performed research on wireless sensor networks.In November 2005 he joined the Department of

Information Engineering of the University of Padova, Italy, where he is an As-sistant Professor. Dr. Rossi is currently part of the EU-funded SENSEI projectand of the WISE-WAI project, both on wireless sensor networks. His researchinterests are centered around the dissemination of data in distributed ad hocand wireless sensor networks, including integrated MAC/routing schemes,data dissemination via network coding, the application of compressive sensingtechniques for the reconstruction of signals in wireless sensor networks andcooperative routing policies for ad hoc networks.

Joerg Widmer is manager of the Ubiquitous Net-working Research Group at DOCOMO Euro-Labs,Munich, Germany. His research expertise coverswired and wireless networks, ranging from MAClayer design for wireless communication, sensornetworking, and network coding to transport proto-cols and future Internet architectures. Before joiningDOCOMO, Joerg Widmer was senior researcherat EPFL, Switzerland, working on ultra-wide bandcommunication and network coding. Joerg Widmerobtained his M.S. degree and Ph.D. degree in com-

puter science from the University of Mannheim, Germany in 2000 and 2003,respectively. In 1999 and 2000 he was a visiting researcher at the InternationalComputer Science Institute in Berkeley, CA, USA. He authored more than 60conference and journal papers, holds several patents, and regularly participatesin program committees of major conferences.

Michele Zorzi was born in Venice, Italy, in 1966.He received the Laurea degree and the Ph.D. degreein Electrical Engineering from the University ofPadova, Italy, in 1990 and 1994, respectively. Duringthe Academic Year 1992/93, he was on leave at theUniversity of California, San Diego (UCSD), attend-ing graduate courses and doing research on multipleaccess in mobile radio networks. In 1993, he joinedthe faculty of the Dipartimento di Elettronica eInformazione, Politecnico di Milano, Italy. Afterspending three years with the Center for Wireless

Communications at UCSD, in 1998 he joined the School of Engineering of theUniversity of Ferrara, Italy, and in 2003 joined the Department of InformationEngineering of the University of Padova, Italy, where he is currently aProfessor. His present research interests include performance evaluation inmobile communications systems, random access in mobile radio networks,ad hoc and sensor networks, energy constrained communications protocols,and cognitive radio and networks.

Dr. Zorzi was the Editor-In-Chief of the IEEE WIRELESS COMMUNICA-TIONS MAGAZINE from 2003 to 2005, is currently the Editor-In-Chief of theIEEE TRANSACTIONS ON COMMUNICATIONS, and serves on the SteeringCommittee of the IEEE TRANSACTIONS ON MOBILE COMPUTING, andon the Editorial Boards of the the WILEY JOURNAL OF WIRELESS COM-MUNICATIONS AND MOBILE COMPUTING and the ACM/URSI/KLUWERJOURNAL OF WIRELESS NETWORKS. He was also guest editor for specialissues in the IEEE PERSONAL COMMUNICATIONS MAGAZINE (Energy Man-agement in Personal Communications Systems) and the IEEE JOURNAL ONSELECTED AREAS IN COMMUNICATIONS (Multi-media Network Radios).

Authorized licensed use limited to: ELETTRONICA E INFORMATICA PADOVA. Downloaded on March 03,2010 at 15:45:05 EST from IEEE Xplore. Restrictions apply.