0% found this document useful (0 votes)
52 views

Code Route

1) The document analyzes network coding for improving throughput in wireless networks, specifically for unicast traffic. 2) It advocates for coding-aware routing rather than coding-oblivious routing, to better utilize network coding opportunities. 3) Theoretical formulations are provided to compute throughput with network coding for any topology and traffic flows, and to determine source-destination routes that maximize throughput by balancing coding opportunities with interference avoidance.

Uploaded by

jomnifawzi
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views

Code Route

1) The document analyzes network coding for improving throughput in wireless networks, specifically for unicast traffic. 2) It advocates for coding-aware routing rather than coding-oblivious routing, to better utilize network coding opportunities. 3) Theoretical formulations are provided to compute throughput with network coding for any topology and traffic flows, and to determine source-destination routes that maximize throughput by balancing coding opportunities with interference avoidance.

Uploaded by

jomnifawzi
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

An Analysis of Wireless Network Coding for Unicast

Sessions: The Case for Coding-Aware Routing


Sudipta Sengupta∗ Shravan Rayanchu∗,1 Suman Banerjee1
∗ Bell Laboratories, Lucent Technologies, Murray Hill, NJ, USA
1 University of Wisconsin Madison, Madison, WI, USA

Abstract— A recent approach, COPE [10], for improving the 4

throughput of unicast traffic in wireless multi-hop networks (D)


exploits the broadcast nature of the wireless medium through (A)
(A)
opportunistic network coding. In this paper, we analyze through- 1 2 3 1 2 3
put improvements obtained by COPE-type network coding in (B) (B)

wireless networks from a theoretical perspective. We make two Topology (a)


(C)

key contributions. First, we obtain a theoretical formulation for


5
computing the throughput of network coding on any wireless
network topology and any pattern of concurrent unicast traffic Topology (b)
sessions. Second, we advocate that routing be made aware of
network coding opportunities rather than, as in COPE, being Fig. 1. Illustration of Network Coding
oblivious to it. More importantly, our work studies the tradeoff
between routing flows “close to each other” for utilizing coding allows such communication to be possible. Assuming node
opportunities and “away from each other” for avoiding wireless 1 still has a copy of packet A, it can obtain packet B by
interference. Our theoretical formulation provides a method performing an XOR of packets A and C. Similarly node 3
for computing source-destination routes and utilizing the best
coding opportunities from available ones so as to maximize the can obtain packet A by performing an XOR of packets B and
throughput. We handle scheduling of broadcast transmissions C. Overall, this simple form of network coding achieved the
subject to wireless transmit/receive diversity and link interference same packet transfer effect on this two-hop path by using three
in our optimization framework. Using our formulations, we transmissions instead of four and would lead to a throughput
compare the performance of traditional unicast routing and improvement of 33%, in this example. Using prior terminology
network coding with coding-oblivious and coding-aware routing
on a variety of mesh network topologies, including some derived [10], we will refer to the original packets (A and B) as native
from contemporary mesh network testbeds. Our evaluations packets while the packet C derived as a combination of native
show that a route selection strategy that is aware of network packets as a coded packet.
coding opportunities leads to higher end-to-end throughput when In this paper, we focus on network coding as applicable
compared to coding-oblivious routing strategies. to a multi-hop wireless network where there are multiple
concurrent unicast sessions. We provide a theoretical
I. I NTRODUCTION framework for investigating the potential interactions between
1 coding opportunities and routing decisions. Our goal is
Network coding is gaining popularity as a mechanism to
develop techniques for systematically quantifying the benefits
increase the utilization of both wired and wireless networks.
of network coding aware routing across arbitrary wireless
We explain the basic idea of network coding using a very
network topologies and traffic demands. We use a COPE-type
simple example consisting of three wireless nodes as shown in
network coding scheme for unicast traffic that exploits the
Figure 1(a). In the figure, node 1 wants to send a single packet
broadcast nature of the wireless medium. More specifically,
(A) to node 3, while node 3 wants to send single packet (B)
we study the following related set of issues in this paper:
to node 1. Due to transmission range limitations both these
paths go via node 2. Using standard techniques of packet Estimating Coding Benefits: Given any wireless topology,
forwarding, four wireless transmissions would be needed to a set of traffic demands, and a coding-oblivious 2 routing
complete these end-to-end packet transfers. The following are strategy, e.g., based on shortest-hop routing, ETX [3],
a possible sequence of these transmissions: (i) packet A is WCETT [5], what is the potential benefit of using network
transmitted by 1, with 2 being the intended recipient, (ii) coding on end-to-end throughput? Note that this question
packet B is transmitted by 3, with 2 being the intended assumes that the routing decisions are made by an independent
recipient, (iii) packet A is transmitted by 2, with 3 being the routing protocol and our goal is to quantify bounds on
intended recipient, and (iv) packet B is transmitted by 2, with throughput gains of network coding under this scenario.
1 being the intended recipient. Coding-Aware (and Interference-Aware) Routing: Prior
In comparison, using a simple form of network coding (as work has shown that wireless routing protocols need in-
employed in the COPE approach [10]), the same two pack- terference (and link-quality) awareness for improved perfor-
ets can be transferred by using three wireless transmissions mance [9], [3], [5]. Introduction of network coding, therefore,
instead of four using the following sequence: (i) 1 transmits raises new questions in the route selection process — should
packet A, with 2 being the intended recipient, (ii) 3 transmits routing decisions now need to be aware of coding opportuni-
packet B with 2 being the intended recipient, and (iii) node 2 ties, and if so, what are the approaches to design coding-aware
transmits a new packet C obtained by performing an XOR of routing in wireless networks?
packets A and B. We illustrate the new opportunity presented by network
Both nodes 1 and 3 are intended recipients of this new coding in the context of route selection using a simple example
packet. Wireless medium being inherently broadcast in nature
2 Coding oblivious routing implies that routing decisions are not made
1 S.Rayanchu and S. Banerjee are supported in part by the following NSF based on coding opportunities available. This approach requires no change
grants: CNS-0520152, CNS-0627102, CNS-0639434, and CNS-0627589. in existing routing mechanisms.
in sequence to packet 2. When node 1 transmits its packet
to node 2, nodes 4 and 5, in promiscuous mode, snoop on
the packet. Similarly when node 4 transmits its packet to 2,
nodes 1 and 3 snoop on this packet. Therefore, at the end of
these four packet transmissions, if node 2 were to transmit
a single coded packet that XORs all of the four packets,
then each node (1, 3, 4, and 5) would be able to correctly
decode their intended packets. Thus the packet transfers are
completed by using just 5 packet transmissions. Note that in
absence of coding, 8 packet transmissions would have been
Fig. 2. Coding-oblivious vs coding-aware routing necessary, while coding without opportunistic listening would
(Figure 2). The example shows two flows, one from node 1 have required 6.
to node 4 and the other from node 4 to node 5. The link A. Prior Work on Network Coding
transmission rates are set to 1 unit and the value of each flow
is also set to 1 unit. If we assume a simple scenario where The notion of network coding to enhance utilization was
there are no losses on these wireless links, then Figure 2(a) first proposed by Ahlswede et. al. [1] in the context multicast
shows the best paths for the two flows in absence of network communication. Since then a large body of work has explored
coding. These are the shortest and minimum interference paths efficient construction of network codes, e.g., [14], [11],
for the flows, which results in an end-to-end throughput of [2], [17], [4]. In the context of wireless networks, Lun et.
0.25. However, if the nodes are allowed to perform network al. [15], [16] studied the problems of minimum cost (energy)
coding, then the throughput of these flows can be improved by multicast involving a single session with a single source node.
choosing paths for the two flows as shown in Figure 2(b). Note Ramamoorthy et. al. [18] derived results for maximum flow
that such a choice increases the path overlap of the two flows to achievable in random wireless networks (modeled as geomet-
increase coding opportunities. Using the techniques developed ric random graphs) for a similar single multicast session with
in this paper, it can be shown that routing the flows as in Figure a single source.
2(b) results in an throughput of 0.3325, an improvement of Li et. al. [13], [12] show that in some multi-hop wire-
33% compared to the previous case. less scenarios with multiple unicast sessions, network coding
Clearly, there is a tradeoff between routing choices that would provide marginal benefits over traditional approaches
facilitate more coding, and routing choices that mitigate that do not involve network coding. Ho et al. [8] consider
interference in the network. We, therefore, present a network coding across multiple unicasts within the class of
systematic approach for choosing routes that optimize the network codes restricted to XOR coding between pairs of
tradeoffs between the conflicting effects of increased coding flows. To the best of our knowledge, there is no prior work
opportunities and increased wireless interference. analyzing the benefits of COPE-type opportunistic network
coding for unicast traffic in wireless networks or making
Impact of Multi-Path Routing: Many network traffic en- routing decisions aware of coding opportunities.
gineering techniques have shown that multi-path routing ap-
proaches are known to better utilize the capacity of any B. Unique Contributions of Our Work
network. Therefore, in this paper, we consider coding aware Ours is the first work that provides a detailed analytical
multi-path routing. More specifically, we study how the ability evaluation of a practical network coding approach, such as
to route traffic demands along multiple paths is enhanced by COPE, that is applicable to wireless environments with mul-
the ability to code packets inside the wireless network. Our tiple unicast sessions. More specifically, our solutions are ap-
formulations can also be used in single-path routing scenarios plicable to any multi-hop wireless network topology, and any
where a path needs to be determined in a coding-aware manner pattern of concurrent unicast traffic demands. Our results are
or is computed based on a coding-oblivious metric like ETX. valid both in presence and absence of opportunistic listening
We answer all of these questions in the context of an op- mechanisms. In contrast, the COPE paper [10] constructs and
portunistic network coding scheme such as COPE [10]. COPE analyzes the best case bounds for reduction in number of
uses the easy-to-implement and relatively inexpensive XOR transmissions with opportunistic network coding.
operation to perform coding. In addition, COPE’s approach to A second important contribution is that this paper introduces
network coding has two other attractive properties: the notion of joint coding-aware and interference-aware rout-
1) Opportunistic Coding: Each wireless node uses only ing in multi-hop wireless networks. It illustrates the tradeoffs
packets in its local queues for coding (the rules are between needs of increased coding and decreased interference
described in Section II-B). This allows benefits of net- in a systematic manner and identifies efficient routing choices
work coding through local decisions without requiring by selecting the appropriate operating point. (Note that COPE
any form of global coordination between different nodes. does not consider coding-aware routing.)
2) Opportunistic Listening: Exploiting the broadcast nature Finally, this paper illustrates how a coding approach, such
of the wireless medium, COPE sets each node into a as COPE, can be integrated with a multi-path routing solution
promiscuous mode to snoop on all packets communi- to further increase end-to-end throughput.
cated by its neighbors. The snooped packets are used in The difficulty of the optimization problem tackled in this
coding decisions. paper arises from at least two aspects. First, for a given routing,
We illustrate the advantage of opportunistic listening using many combinations of coding opportunities at different nodes
the example in Figure 1 (b), where there are 4 intended packet are possible and a subset needs to be selected from the avail-
transfers as follows: from 1 to 3, 3 to 1, 4 to 5, and 5 to 4. able ones so as to optimize a global objective (e.g., network
Due to range limitations all transfers need to go via node 2. throughput). Second, when the routing is made aware of the
Let us assume that nodes 1, 3, 4, and 5 transmit their packets coding opportunities, it has to make choices between routing
flows “close to each other” for utilizing coding opportunities coded together to form the coded packet p = p1 ⊕p2 ⊕. . .⊕pk
and “away from each other” for avoiding interference. that is broadcast to all the above next-hop nodes. This is a
Note that in this paper we do not define a full-fledged valid network coding if the next-hop node ni for each packet
network coding protocol, but instead focus on algorithmic pi already has all other packets pj for j 6= i (so that it can
analysis (using linear programming based formulations) that decode pi ) – this can happen if
quantifies potential benefits across arbitrary wireless topolo- (i) node ni is the previous-hop node of packet pj , or
gies, demands, as well as impact of joint network coding (ii) node ni overheard packet pj from the transmission
and interference-aware routing techniques. Our framework of its previous-hop node (opportunistic listening).
and its evaluation is fairly general — it properly models
arbitrary interference between wireless nodes, availability of In the specification of coding opportunities above, node ni
different data rates, link loss rates, and other usual practical can have packet pj also if (i’) node ni was one of the nodes
phenomenon observed in wireless environments. We believe traversed by packet pj before its previous-hop node, or (ii’)
our work provides interesting insights to design protocols that node ni overheard packet pj from the transmission of a node
integrate network coding and routing selection techniques. traversed by packet pj before its previous-hop node. For either
of conditions (i’), (ii’) to hold, node ni will need to buffer
C. Roadmap packet pj for longer periods of time in the hope that additional
The rest of the paper is structured as follows. In the next coding opportunities involving packet pj will arise at a node
section, we introduce notation and formally state the rules further downstream on its path (and adjacent to ni ). (It is also
for (COPE-type) network coding and our modeling assump- unlikely that packet pj will take a circuitous route and pass
tions. In Section III, we consider how to schedule broadcast through a neighbor node of ni at least two-hops downstream
transmissions for network coding subject to wireless trans- when it has already passed through either ni or one of its
mit/receive diversity and link interference. In Section IV, we neighbors.) In contrast, conditions (i), (ii) do not require node
consider maximum throughput coding-aware routing without nj to buffer packet pj beyond the transmission at the next-hop
opportunistic listening and give a linear programming formu- node after the packet passed through or was overheard.
lation for the multi-path routing version of the problem. In In this paper, we do not model coding opportunities arising
Section V, we add opportunistic listening to our optimization from conditions (i’), (ii’) above. Our assumption is consistent
framework. In Section VI using the theoretical formulations with the requirement to have minimal additional packet buffer-
developed, we evaluate the benefits of network coding (with ing requirements at each wireless node for network coding.
and without coding-aware routing) over traditional routing
(without coding) on various topologies, including some de-
rived from real mesh network testbed deployments. III. S CHEDULING B ROADCAST T RANSMISSIONS
Network coding exploits the broadcast nature of the wireless
II. N ETWORK C ODING : N OTATION AND M ODELING medium, hence a proper model that handles scheduling of
A SSUMPTIONS broadcast transmissions is essential. Accordingly, prior to
A. Notation developing our analytical framework for network coding, we
discuss how to handle broadcast transmissions in this section.
The wireless network topology, given by the nodes and the We use the protocol model of interference introduced by Gupta
links corresponding to pairs of nodes within direct communi- and Kumar [7]. Prior work by Jain et. al. [9] developed an opti-
cation range, is modeled as a graph G = (N, E) with node set mization framework for scheduling unicast transmissions. We
N and (directed) edge set E. Each node in the network can generalize their approach to handle broadcast transmissions.
be a source or destination of traffic. The sets of incoming and To the best of our knowledge, this generalization has not been
outgoing edges at node i are denoted by E − (i) and E + (i) proposed earlier in the literature.
respectively. We let e = (i, j) represent a directed link in the
network from node i to node j. The transmitting node for link A. Prior Work on Scheduling Unicast Transmissions
e will be denoted by t(e) and its receiving node by r(e). We
will denote the reverse of link e = (i, j) by ē = (j, i). The rate Let dij denote the distance between nodes i and j. Let
of transmission on link e will be denoted by Re and its delivery the radio at node i have a communication range of `i and
probability by pe . Thus, the effective rate of transmission on potentially larger interference range `0i . Under the protocol
link e is ue = pe Re . model of interference [7], if there is a single wireless channel, a
Let D be the set of demands. A demand k ∈ D has source transmission from node i to node j is successful if (i) dij ≤ `i
node s(k), destination node d(k), and traffic value t(k). For (receiver is within communication range of sender), and (ii)
a given routing/coding scheme, the throughput is defined as any node k, such that dkj ≤ `0k , is not transmitting (receiver
the maximum multiplier λ such that all demands with their is free of interference from any other possible sender).
traffic values multiplied by λ can be feasibly routed by the The authors in [9] construct a conflict graph whose nodes
network. In this paper, we will be concerned with maximizing correspond to links in the topology graph. Two nodes are
the throughput λ for coding-aware network routing. connected by an (undirected) edge in the conflict graph if
For a path P and links e, e1 , e2 , we will use e ∈ P to denote the corresponding links cannot be scheduled simultaneously.
that link e is on path P and e1 e2 ∈ P to denote that path P Scheduling link transmissions for transmit/receive diversity
contains link e1 followed by link e2 in consecutive order (this and link interference are then modeled using constraints cor-
assumes r(e1 ) = t(e2 )). For a path P and node i, we will use responding to either cliques or independent sets in the conflict
i ∈ P to denote that node i is on path P . graph. It is shown that the clique constraints provide an upper
bound on the throughput (and this upper bound is not always
B. Coding Rules and Modeling Assumptions tight) while the independent constraints provide an achievable
Consider k packets p1 , p2 , . . . , pk at a node that have distinct lower bound. Note that this does not completely model the
next-hop nodes n1 , n2 , . . . , nk respectively. Suppose these are IEEE 802.11 MAC [6], primarily because it does not take
contention time for acquiring a channel into account.
B. Broadcast Transmission Rates this clique. The fraction of time that broadcast (i, B) is active
We are given the rate of transmission ue and associated is yiB /u(B). Since the broadcasts in C mutually conflict with
delivery probability pe for each wireless link e. The delivery each other, at most one of them can be active at any given
probability of a wireless link generally decreases with increase time. This can be modeled by the constraint
in transmission rate. For a given rate of transmission, the
delivery probability is most accurately determined only by X yiB
experiment, as it depends on many factors, including environ- ≤ 1 ∀ cliques C in F (1)
u(B)
ment, transmission power, distance between transmitter and (i,B)∈C
receiver, channel fading, and background noise. We discuss
Note that it is sufficient to add just constraints corresponding
how we use given information on a single (ue , pe ) per link e
to maximal cliques, since the constraints corresponding to
to obtain broadcast transmission rates for our model.
cliques contained inside maximal cliques are redundant.
Let B be a subset of outgoing links at some node. If
B = {e} consists of a single link, then its effective rate of
transmission is simply u(B) = ue . Now, consider the case E. Independent Set Constraints for Broadcast Transmission
when B consists of multiple links. Because of the given lim- Scheduling
ited information per link (as explained above), we will assume Let I1 , I2 , . . . , Iq denote all the maximal independent sets in
that the transmission rate for broadcast on B is the minimum the broadcast conflict graph (let each set consist of correspond-
rate of its component links, which equals R(B) = mine∈B Re ing broadcasts of the form (i, B)). Let independent set Ij be
(this allows us to make a conservative estimation of the active for bj fraction of the time. Any set of active broadcast
effective rates of transmission for broadcasts). To compute the transmissions are contained in some independent set. Then,
effective rate of transmission, we need the delivery probability we should have
of this transmission. Since R(B) ≤ Re for any e ∈ B, the q
probability that a single broadcast reaches r(e) is at least pe , X
since delivery probabilities can only increase with decrease in bj ≤ 1 (2)
j=1
transmission rates. Assuming that losses on individual links
are independent,
Q the delivery probability of the broadcast B The fraction of time that an individual broadcast transmission
is at least e∈B pe . We will use this conservative estimate as is active is at most the sum of the fraction of time that each
the delivery probability for broadcast on B. Thus, the effective independent set it belongs to is active. This can be written as
rate of transmission for broadcast on B is given by
à ! yiB X
Y ≤ bj ∀ broadcasts (i, B) (3)
u(B) = pe min Re u(B)
j:Ij 3(i,B)
e∈B
e∈B
We will use the clique constraints in our linear programming
Note that the optimization techniques developed in this pa- formulations for routing with network coding in Sections
per are independent of the manner in which effective broadcast IV and V below. One may choose to use the independent
transmission rates are obtained. set constraints instead. We do talk about convergence of the
computed upper and lower bounds using each set of constraints
C. Broadcast Conflict Graph in the evaluation section.
A broadcast transmission at node i on a subset B of its
outgoing links will represented as (i, B) and the associated IV. C ODING AWARE N ETWORK ROUTING WITHOUT
broadcast traffic as yiB . Note that this includes unicast as a O PPORTUNISTIC L ISTENING
special case when the set B consists of just one link. We In the absence of opportunistic listening, a coding opportu-
define the broadcast conflict graph F as a natural extension nity at a node involves XOR-ing exactly two packets – these
of the conflict graph for unicast transmissions. Each node in packets enter and leave the node using the same links but in
this graph represents a broadcast transmission (i, B). Let r(B) opposite directions. We summarize this in the lemma below.
denote the set of receiver nodes for the links in broadcast set The proof is straightforward and is omitted for lack of space.
B. Two broadcasts (i1 , B1 ) and (i2 , B2 ) interfere and hence Lemma 1: Under the assumptions for network coding out-
have an edge between them in the broadcast conflict graph if lined in Section II-B and in the absence of opportunistic
either listening, a coding opportunity at a node involves XOR-ing
• Some node j ∈ r(B1 ) is within interference range of exactly two packets (and not more).
node i2 , or We now formulate the problem of maximum throughput
• Some node j ∈ r(B2 ) is within interference range of routing with network coding without opportunistic listening.
node i1 We consider multi-path routing. (By using integer variables,
It can be verified that the above conditions include special the formulation can be modified to handle single path routing.)
cases like i1 = i2 (broadcasts out of same node) or r(B1 ) ∩ Let P k denote the set of available paths from source s(k)
r(B2 ) 6= Φ (broadcasts have a common receiver). to destination d(k) for routing demand k. For example, we
could choose the K-shortest distance paths from s(k) to d(k)
as the set P k . Let routing variable fk (P ) denotes the amount
D. Clique Constraints for Broadcast Transmission Scheduling of traffic on path P for routing demand k. Let variable yiB
With this generalization of the conflict graph, we can use denote the traffic that is broadcast at node i on link set
constraints corresponding to cliques in the broadcast conflict B ⊆ E + (i). Because there is no opportunistic listening, we
graph. Consider a clique in the broadcast conflict graph. Let C have |B| ≤ 2. If |B| = 1, the corresponding transmission
be the set of broadcast nodes (i, B) that correspond to nodes of is a unicast (of a native packet) on the single link in B.
Let λ denote the throughput for routing all demands in D. V. C ODING AWARE N ETWORK ROUTING WITH
Then, the problem of routing under network coding without O PPORTUNISTIC L ISTENING
opportunistic listening so as to maximize throughput can be In this section, we develop a model that allows coding of
expressed as the following linear program (LP): different packets at a node to take advantage of opportunistic
listening by its neighbors of the transmission of packets by
maximize λ the previous-hop node of each packet. We represent a coding
opportunity by what we call a coding structure. We give
subject to a linear programming formulation for maximum throughput
X coding aware routing with opportunistic listening.
f k (P ) = t(k)λ ∀ k ∈ D (4)
P ∈P k
{e1 ,e2 }
X X A. Modeling Network Coding with Opportunistic Listening
yi ≤ f k (P )
k∈D P ∈P k ,P 3e¯1 e2
The usefulness of opportunistic listening depends on the
whether the listening involved transmission of a coded or
∀ e1 , e2 ∈ E + (i), i ∈N (5) native packet. If a packet was transmitted as a coded packet
{e ,e }
X X
yi 1 2 ≤ k
f (P ) (i.e., XOR-ed with other packets), then a listening node (that is
k∈D P ∈P k ,P 3e¯2 e1 not its next-hop) will not be able to decode it if it does not have
all the other packets. This is likely to be the case more often
∀ e1 , e2 ∈ E + (i), i ∈N (6) than not, since coding guarantees that only the next-hop node
{e}
X X
k of a packet (and not opportunistic listeners) will be able to
yi = f (P ) +
k∈D,s(k)=i P ∈P k ,P 3e decode it. Hence, we will model useful listening opportunities
X X X that involve transmission of a native packet only. Thus, the
[ f k (P ) coding opportunity for a packet at a node is determined by
e1 ∈E − (i) k∈D P ∈P k ,P 3e1 e two factors, namely,
{e,e¯1 } • The combination of its incoming and outgoing links at
−yi ] ∀ e ∈ E + (i), i ∈ N (7)
X that node, and
yiB
≤ 1 ∀ cliques C in F (8) • Whether the packet was received at that node as a coded
u(B) or native packet.
(i,B)∈C,|B|≤2
Let us fix a node i ∈ N of (in/out) degree di . The number of
possible combinations of incoming/outgoing links at this node
Constraints (4) state that the total traffic routed on the is di (di − 1). A coding opportunity at node i is completely
available paths for a demand must equal the demand value specified by a structure S that consists of elements of the form
multiplied by its throughput. Constraints (5)-(6) determine s = (e1 e2 , v), where e1 is the incoming link of the packet, e2
{e ,e }
the maximum amount of coded traffic yi 1 2 that can be is the outgoing link of the packet, and v = c, n depending on
broadcast on outgoing links {e1 , e2 } at node i. The to- whether the packet was received as coded (c) or native (n).
tal traffic
P P traversing node i along link sequence e¯1 e2 is We will call such structures coding structures. We will denote
k
k f (P ) and along link sequence e¯2 e1 is the v-component of s by v(s). The previous-hop node of s is
Pk∈D PP ∈P ,P 3e¯1 e2 k {e1 ,e2 }
k∈D P ∈P k ,P 3e¯2 e1 f (P ). Thus, yi is at most each t(e1 ) and the next-hop node of s is r(e2 ).
of these amounts. A coding structure represents a coding opportunity under
{e}
Constraints (7) give the total amount of traffic yi the following conditions:
that is unicast on outgoing link e at node i. This traf- 1) The next-hop node of each s ∈ S must be distinct, since
fic can be divided into two parts. The first part is the two packets going to the same next-hop node cannot be
traffic that Poriginates atP node i and is sent on link e coded. Thus, a coding structure S at node i can contain
and equals k∈D,s(k)=i P ∈P k ,P 3e f k (P ). The second part at most di elements f .
is the amount of transit traffic at node i with next-hop 2) The next-hop node for each s ∈ S must be able to
e that could not be coded with other flows and equals decode its packet. Thus, for any given s ∈ S, the next-
P P P {e,e¯1 }
e1 ∈E − (i) [ k∈D
k
P ∈P k ,P 3e1 e f (P ) − yi ]. hop node of s should already have the packet associated
Finally, constraints (8) are the broadcast transmission with all other s0 ∈ S, s0 6= s. For the latter to hold, we
scheduling constraints corresponding to cliques in the broad- must have: for each other s0 ∈ S, the next-hop node of s
cast conflict graph, as discussed in Section III. The cliques must be either (i) the previous-hop node of s0 , or (ii) be
are restricted to include broadcast sets of size at most 2, since a neighbor of previous-hop node of s0 to have overheard
there is no opportunistic listening. the transmission, provided v(s0 ) = n, i.e., the associated
Note that this LP can be also be used to compute the packet was transmitted as native. Note that in case (i),
throughput when ETX metric routes are used. For this purpose, the value of v(s0 ) does not matter.
the set P k of available paths for demand k consists of the The broadcast set b(S) for a coding structure is defined as
(singleton) shortest cost ETX path from node s(k) to node the set of next-hop links of each s ∈ S. This is simply the set
d(k). of links over which the XOR-ed packets are broadcast for the
The path-indexed routing variables fk (P ) can be reduced to coding opportunity represented by the structure S. We will
polynomial size by converting to dual-link-indexed variables say that s (or, the associated packet) participates in coding
fk (e1 , e2 ), where (e1 , e2 ) denotes the incoming-outgoing link structure S as native-received if v(s) = n, and as coded-
pair at each node. This corresponds to routing on a graph received if v(s) = c.
with a (straightforward) node-splitting transformation, details We now provide a few simple examples to explain how we
of which are omitted for lack of space. capture useful listening opportunities with coding structures.
Structure set (a) B. Maximizing Throughput
(n,c) e1 e2
1 In addition to the variables for the first linear programming
2 3
_
e1
_
(n,c)
formulation, we will use two new sets of variables. Let xi (S)
e2
denote the traffic associated with coding structure S at node i
1 3 1 (n,c)
3 – this is the traffic amount associated with each e1 e2 link-pair
e4 e2 e4 e2 participating in the structure. Also, let zik (P ) be the portion
2 2
of the traffic on path P for demand k that is transmitted as
e1 e3 e1 e3
native from node i (the variables zik (P ) are defined for all
i ∈ P − {d(k)}. Also, the broadcast set B in variables yiB are
4 (n) (n) 5 4 (n) 5 no longer restricted to be of size at most 2, but can include
Structure set (b) Structure set (c)
all the outgoing links at node i.
Fig. 3. Network Coding Structures
maximize λ
Consider network (a) in Figure 3 where packets p1 , p2 have subject to
to be sent along the paths 1 → 2 → 3 and 3 → 2 → X
1 respectively. A coding opportunity arises at node 2 as f k (P ) = t(k)λ ∀ k ∈ D (9)
it can forward both the packets in a single transmission P ∈P k
p = p1 ⊕ p2 . Since node 1 is the previous hop of p1 , it X X X
k
can correctly decode the packet p2 using p ⊕ p1 i.e. the xi (S) ≤ zt(e1)
(P )
ability to decode the packet does not depend on whether the S3(e1 e2 ,n) k∈D P ∈P k ,P 3e 1 e2

p1 was native-received or coded-received. Similarly, trans- ∀ e1 ∈ E − (i), e2 ∈ E + (i),


mission of packet p2 from node 3 can be as a native or i∈N (10)
coded packet. Therefore, the set of coding structures for X X X
node 2 are S = {(e1 e2 , n), (e¯2 e¯1 , n)}, {(e1 e2 , c), (e¯2 e¯1 , n)}, xi (S) ≤ [f k (P ) −
{(e1 e2 , n), (e¯2 e¯1 , c)}, {(e1 e2 , c), (e¯2 e¯1 , c)}. S3(e1 e2 ,c) k∈D P ∈P k ,P 3e1 e2
k
Now consider the network (b) where packets p1 , p2 have zt(e 1)
(P )] ∀ e1 ∈ E − (i),
to be sent along the paths 4 → 2 → 3 and 5 → 2 → 1 e2 ∈ E + (i), i ∈ N (11)
respectively. Assume that node 4 sends the packet p1 as a X X X X
native packet. In such a case, node 1 would also be able to f k (P ) = k
zi (P ) +
receive it. Similarly, node 3 will also receive the packet p2 k∈D P ∈P k ,P 3e1 e2 k∈D P ∈P k ,P 3e1 e2
if node 5 transmits it as a native packet. Node 2 can then X
xi (S) +
transmit the coded packet p = p1 ⊕ p2 and nodes 1 and 3
S3(e1 e2 ,n)
will be able to correctly decode p2 and p1 respectively. How- X
ever, such a coding opportunity cannot arise if either of the xi (S) ∀ e1 ∈ E − (i),
transmissions 4 → 2 or 5 → 2 were coded-received. Hence, S3(e1 e2 ,c)
only S = {(e1 e2 , n), (e3 e4 , n)} would represent a coding
opportunity for node 2. It is easy to see that for network (c), e2 ∈ E + (i), i
∈N (12)
k
the structures {(e1 e2 , n), (e3 e4 , n)} and {(e1 e2 , n), (e3 e4 , c)} zs(k) (P ) = f (P ) ∀ P ∈ P k , k ∈ D
k
(13)
would represent coding opportunities. k
zi (P ) ≤ f k (P ) ∀ i ∈ P − {s(k), d(k)},
We use a straightforward method to generate all the valid P ∈ Pk, k ∈ D (14)
coding structures. Let Γi denote the set of all valid cod- {e}
X X
k
ing structures at node i. The number of different elements yi = zi (P )
s = (e1 e2 , v) at node i is 2di (di − 1). Since nodes in k∈D P ∈P k ,P 3e
a wireless mesh network topology have small degree, this +
∀ e ∈ E (i), i ∈ N (15)
number is small. Hence, it is relatively fast to generate all such X
combinations S of elements s obeying the coding opportunity yiB = xi (S)
condition (1) above and checking whether condition (2) holds. S∈Γi ,b(S)=B

It is important to note that the size and running time of ∀ i ∈ N, |B| ≥ 2 (16)
the LP formulation for coding aware network routing with X yiB
opportunistic listening in Section V is independent of the ≤ 1 ∀ cliques C in F (17)
u(B)
method used to generate the structures (but depends on the (i,B)∈C
number of structures in Γi ).
We explain why we need not consider additional transmis- Constraints (10) state that for each combination of incoming
sion scheduling constraints for opportunistic listening. Con- link e1 and outgoing link e2 at node i, the portion of transit
sider a node n1 that listens on the transmission of a (native) traffic that participates in coding as native-received flows is
packet from a node n2 to its next-hop node n3 . Since n1 is a at most the amount that was received as native from t(e1 ).
neighbor of n2 and hence within interference range of n2 , it Similarly, constraints (11) state that the portion of transit traffic
cannot be a receiver for some other transmission during this that participates in coding as coded-received flows is at most
time in valid schedule. Also, for the listening to be useful in the amount that was received as coded.
a coding decision at n3 , n1 must be a neighbor of n3 . Thus, Constraints (12) are balance constraints for the total transit
n1 cannot also be transmitting during this time, otherwise it traffic entering through link e1 and exiting through link e2
will interfere at n3 with the transmission from n2 .
Fig. 7. In building mesh network
Fig. 4. Example Topology Fig. 5. 15-node random
topology Fig. 6. Community wireless network
at node i,PwhichPappears on LHS. The first portion on RHS, the optimal solution was much smaller.) We solve all linear
namely, k∈D P ∈P k ,P 3e1 e2 zik (P ) is the amount of transit programs using CPLEX [19].
traffic that goes out as native (i.e., Pdoes not participate in
any coding). The second portion, S3(e1 e2 ,n) xi (S), is the
amount of transit traffic that participates
P in coding as native- A. Results on Illustrative Topology
received flows. The third portion, S3(e1 e2 ,c) xi (S), is the
amount of transit traffic that participates in coding as coded- We first start with a simple 14-node topology shown in
received flows. Figure 4. We have deliberately chosen this topology to illus-
Constraints (13)-(14) are the boundary conditions for the trate two key properties of our LP formulations – for a given
zik (P ) variables. Constraints (13) state that the source node of network and traffic demands, the LP computes the routes to
every path transmits the entire traffic on that path as native, obtain maximum throughput by (1) maximizing the coding
since no coding opportunities are available for originating opportunities and (2) minimizing the interference among the
traffic at the source node. Constraints (14) state that for a flows.
given path, the amount of traffic transmitted as native at each We assume that the communication range of each node is
transit node is at most the total traffic on that path. 100 units and the interference range is 200. For simplicity,
{e}
Constraints (15) express the unicast traffic variable yi as assume that all the wireless links have the same transmission
the total amount of traffic that is transmitted as native on link e rates (one unit). We assume the protocol interference model
at node i. Constraints (16) express the broadcast traffic variable (Section III) We allow opportunistic listening. We compare
yiB as the total amount of traffic that is transmitted as coded the maximum throughput obtained using CA - SPATH - CODE,
on link set B at node i – this corresponds to the sum of traffic SPATH - CODE and SPATH for the following scenarios:
over all coding structures S ∈ Γi with b(S) = B. Scenario A – Minimizing interference: Consider two
Finally, as before, constraints (17) are the broadcast trans- concurrent demands d1 : 0 → 4 and d2 : 10 → 13 each
mission scheduling constraints corresponding to cliques in the of 1 unit which have to be routed. Now, SPATH and SPATH -
broadcast conflict graph. In this case, the broadcast sets of the CODE will route the demands d1 and d2 along the shortest
cliques are not restricted to be of size 2, since opportunistic paths P1 and P2 respectively. It can be shown that only one
listening is allowed. of these 7 links can be active at a time and hence the optimal
In a manner analogous to Section IV, this LP can also throughput with SPATH would be 1/7. Since there are no
be used to compute the throughput when ETX metric routes coding opportunities along these paths, the optimal throughput
are used. For this purpose, the set P k of available paths for with SPATH - CODE would also be 1/7. However, the routes
demand k consists of the (singleton) shortest cost ETX path computed by CA - SPATH - CODE result in an optimal throughput
from node s(k) to node d(k). of 2/9 i.e. an improvement of 55% over SPATH - CODE. This
is because, in the absence of coding opportunities, CA - SPATH -
VI. E VALUATION CODE routes the demands along the paths which result in the
We evaluate the performance of the following schemes on least interference. In this case, CA - SPATH - CODE routes d2 on
a variety of network topologies: (1) shortest path routing a longer path P3 which yields a better throughput because of
(SPATH) (2) interference-aware multi-path routing (MPATH) the reduced interference with d1 .
(computed using a variation of the LP formulation in [9]) Scenario B – Maximizing coding opportunities: We now
(3) shortest path routing with network coding (SPATH - CODE), reverse the first demand (d1 : 4 → 0) and compute the optimal
derived by restricting P k to (singleton) shortest cost ETX path throughput for each scheme. In this case, SPATH and SPATH -
(4) network coding aware multi-path routing (CA - MPATH - CODE route the demand along the paths P1 and P2 0 (Figure 4).
CODE , shortened to LP - CODE in the plots), and (5) network For these routes, an optimal schedule results in a throughput
coding aware single-path routing (CA - SPATH - CODE) 3 . We of 1/5 (since links {(10, 11), (4, 3)},{(1, 0), (12, 13)} can be
evaluate SPATH - CODE and CA - MPATH - CODE, both with and scheduled in single time slot). Routing the demand d1 along
without opportunistic listening. The main goals of our sim- the P3 0 (reverse of P3 ) does not reduce the interference in this
ulation are to: (1) characterize the maximum throughput of case and results in a throughput of 1/5. However, CA - SPATH -
a given network and traffic patterns with network coding CODE takes advantage of opportunistic listening and routes
(2) quantify the benefits of coding aware routing. For the the demand d1 along path P4 and d2 along P2 0 which results
evaluations using multi-path routing, the set Pk of available in coding opportunities at nodes 1, 2 and 3. This reduces
paths was chosen to consist of the K-shortest distance paths the number of transmissions from 7 to 4 and hence results
for K = 40. (In all cases, the actual number of paths used by in an optimal throughput of 1/4 (an improvement of 25%
over SPATH - CODE). It is important to note that a longer path
3 Due to space constraints, we present results for CA - SPATH - CODE for only P4 results in a better throughput because of increased coding
one illustrative topology. opportunities.
1.7 1.7 0.5
MPATH LP-CODE w/o listening

Broadcast transmission bandwidth


MPATH LP-CODE w/ listening
SPATH-CODE w/ listening SPATH-CODE w/o listening 1.3 LP-CODE w/listening SPATH-CODE w/o listening
1.6 1.6 0.45
LP-CODE w/ listening SPATH-CODE w/ listening SPATH-CODE w /listening SPATH-CODE w/ listening

Fraction of coded traffic


LP-CODE w/ listening 1.2 LP-CODE w/o listening 0.4 LP-CODE w/o listening
1.5 1.5

Throughput gain
Throughput gain

0.35
1.4 1.4 1.1
0.3
1.3 1.3 1
0.25
1.2 1.2
0.9 0.2
1.1 1.1 0.15
0.8
1 1 0.1
0 50 100 150 200 250 300 350 400 450 500 0 50 100 150 200 250 300 350 400 450 500 0 50 100 150 200 250 300 350 400 450 500 0 50 100 150 200 250 300 350 400 450 500
Number of demands Number of demands Number of demands Number of demands

Fig. 8. Throughput gain (Nor- Fig. 9. Throughput gain (w/ and Fig. 10. Bandwidth/throughput Fig. 11. Fraction of coded traffic
malized wrt SPATH) w/o opportunistic listening) normalized w.r.t SPATH Vs number of demands
B. Evaluation on Wireless Network Topologies both with and without opportunistic listening. The results
We evaluated the performance of our LP formulations on a are shown in Figure 9. Allowing opportunistic listening for
various topologies. Here, we present the results for a random SPATH - CODE results in a throughput gain of 30% over shortest
graph topology and two other topologies derived from an path. Throughput increase compared to SPATH - CODE without
operational community wireless network and an in-building listening is 10%, which is not significant. It is interesting to
mesh network. note that for this topology, CA - MPATH - CODE without oppor-
Optimality: In general, the upper and the lower bounds tunistic listening results in a better throughput than SPATH -
computed by the clique constraints and the independent set CODE with opportunistic listening. However, increase over
constraints (Section III) may not converge. However, for the SPATH - CODE is only around 10% . Thus, for this topology
topologies under consideration, the upper and lower bounds for only the combined gain of both coding-aware routing and
each of the schemes were found to converge, hence assuring opportunistic listening is significant (40% over SPATH - CODE).
us of the optimality of the solution. Evaluation #3 – Broadcast transmission bandwidth and
throughput: We compare the amount of broadcast transmis-
Random Graph Topology sion bandwidth required per unit throughput for (1) MPATH (2)
We present the results for a 15-node wireless network SPATH - CODE with opportunistic listening and (3) CA - MPATH -
shown in figure 5. The positions of the nodes were chosen CODE with and without opportunistic listening. Figure 10
randomly in a square of side 400 units. The communication shows that the number of broadcast transmissions normalized
range of each node is set to 100 units and interference range with respect to that of shortest path routing decrease for
is set to 200. The capacity of the communication links is SPATH - CODE up to a certain point and then remain constant.
chosen according to Shannon’s formula (parameters in the The initial decrease is due to the saving from increased coding
formula are appropriately fixed). The average degree of each opportunities (arising from increasing demands). We observe
node was 4.4. The source and the destination for each flow that MPATH requires around 15% more transmission bandwidth
is chosen at random. We vary the number of demands from than shortest path, as it tries to increase throughput by routing
10 to 600. along multiple paths, which might be longer but less interfer-
ence prone. SPATH - CODE requires an average bandwidth of
Evaluation #1 - Interplay of interference effects and only 0.83 per unit throughput and the savings of around 17%
coding opportunities: We study the variation of throughput compared to shortest path routing are purely due to coding.
gain as a function of number of demands for SPATH - CODE, CA - MPATH - CODE without opportunistic listening requires a
MPATH and CA - MPATH - CODE . We allow opportunistic listen- bandwidth of 0.94 even when it chooses potentially longer
ing. Figure 8 shows the throughput normalized w.r.t shortest routes because of the reduced transmissions due to increased
path routing for increasing number of flows. The throughput coding opportunities. CA - MPATH - CODE with opportunistic lis-
gain for MPATH increases with the increase in number of flows. tening performs the best with 0.87 which is slightly higher than
However, as the network load increases, it becomes difficult to SPATH - CODE , but as observed, results in a higher throughput
find paths that do not interfere with other flows and thus the gain.
gain decreases. For SPATH - CODE the routes are fixed, hence Evaluation #4 – Increase in throughput with fraction
interference cannot be avoided and the gains are purely due to of coded traffic: Figure 11 shows that the fraction of coded
coding opportunities. Coding opportunities increase with the traffic for SPATH - CODE and CA - MPATH - CODE, both with
number of flows resulting in increasing throughput gain. We and without opportunistic listening. As the number of flows
observe that CA - MPATH - CODE outperforms both the schemes increase, the fraction of coded traffic increases and then
with a maximum gain of 65% over shortest path and of about attains a maximum. Figure 12 shows that throughput gain
40% over SPATH - CODE. The higher slope of the curve is due increases with fraction of coded traffic for SPATH - CODE thus
to the combined gains of reduced interference and increased confirming the fact that observed gains are purely due to
coding opportunities. It is important to note that increase in coding opportunities.
coding opportunities is due to coding aware routing as well as In Building Mesh Network
opportunistic listening. Figure 7 shows a 32-node topology derived from a mesh
Evaluation #2 – Coding-aware routing vs opportunistic network test bed [10]. The average node degree was 6.8 and
listening: A natural question is to ask how much is the the maximum degree was 14. The effective link rates were
performance improvement due to coding aware routing (with- derived from the delivery ratios and the shortest path routing
out opportunistic listening) alone and how much is due to was based on the ETX metric.
opportunistic listening. Motivated by this question, we study Evaluation #5 – Impact of network structure: We com-
the variation of throughput gain as a function of increasing puted the throughput gains for each of the schemes for increas-
number of demands for SPATH - CODE and CA - MPATH - CODE, ing number of flows. Figure 13 shows an interesting result
1.25 1.8
SPATH-CODE w/o listening LP-CODE w/o listening LP-CODE w/o listening
SPATH-CODE w/ listening SPATH-CODE w/o listening 1.5 SPATH-CODE w/o listening S-NOL (SPATH-NETCOD w/ listening)
1.7 S-OL (SPATH-NETCOD w/ listening)
SPATH-CODE w/ listening SPATH-CODE w/ listening

Coded traffic contributions


0.90
1.2 LP-CODE w/ listening LP-CODE w/ listening
S-NOL (CA-MPATH-NETCOD w/ listening)
1.6 1.4 S-OL (CA-MPATH-NETCOD w/ listening)

Throughput gain
Throughput gain
Throughput gain

0.75
1.5
1.15
1.3 0.60
1.4
1.1 0.45
1.3 1.2
0.30
1.2
1.05 1.1
1.1 0.15

1 1 1
15-node Mesh network Community wireless
0 0.05 0.1 0.15 0.2 0.25 0.3 0 50 100 150 200 250 300 0 50 100 150 200 250 300
topology topology network topology
Fraction of coded traffic Number of demands Number of demands

Fig. 15. Coded traffic associated


Fig. 12. Throughput gain with Fig. 13. Throughput gain (mesh Fig. 14. Throughput gain (com- with structures
coded traffic network) munity wireless network)
– throughput gains for SPATH - CODE and CA - MPATH - CODE other objective functions such as minimizing total transmission
are as high as 61% and 72% when opportunistic listening is bandwidth using network coding in wireless sensor networks.
allowed, while the corresponding gains without opportunistic Our theoretical formulations and evaluation results assume
listening are only 18% and 32%. We observe that in a network a “fair” MAC that does optimal scheduling. The throughput
with relatively high average degree of nodes, opportunistic improvements with network coding could be higher with an
listening facilitates increased coding opportunities and thus 802.11 like MAC, as reported in COPE [10]. These additional
results in significant throughput improvements. gains stem from inherent unfairness of 802.11 MAC. Adding a
careful model for an 802.11 like MAC within our optimization
Community Wireless Network
framework is more challenging and will be the subject of our
We repeated the above evaluation on a 31-node topology future work.
derived from a campus-wide community wireless network In conclusion, we hope that the framework presented in this
(Figure 6). The average node degree was 3.8 and the maximum paper can be a valuable tool to design protocols integrating
degree was 8. Figure 14 shows the throughput gains for network coding and routing selection techniques to increase
SPATH - CODE and CA - MPATH - CODE , both with and without end-to-end throughput in multi-hop wireless networks.
opportunistic listening. We observe that the trend is similar to
that observed in throughput gains for 15-node topology with R EFERENCES
the combined gains for opportunistic listening and coding-
[1] R. Ahlswede, N. Cai, S.-Y. R. Li, and R. W. Yeung. “Network informa-
aware routing resulting in a throughput increase of 45%. tion flow”, IEEE Transactions on Information Theory, Vol. 46, No. 4.
Evaluation #6 – Coding structures and throughput (2000), pp. 1204-1216.
contributions: We computed the average amount of coded [2] P. A. Chou, Y. Wu and K. Jain, “Practical network coding”, Allerton
Conference on Communications, 2003.
traffic contributed by (i) structures requiring opportunistic [3] D. S. J. De Couto, D. Aguayo, J. Bicket, R. Morris “A High-Throughput
listening (S-OL) and (ii) structures not requiring opportunistic Path MEtric for Multi-hop Wireless Routing,” ACM MOBICOM, 2003,
listening (S-NOL), for each of the topologies mentioned above. pp. 134–146.
[4] R. Dougherty, C. Freiling, and K. Zeger “Insufficiency of Linear Coding
Figure 15 shows that for the mesh network (Figure 7), majority in Network Information Flow”, IEEE Transactions on Information
of the throughput is contributed by coding structures requiring Theory vol. 51, no. 8, pp. 2745-2759, August 2005.
opportunistic listening, thus justifying the increased through- [5] R. Draves, J. Padhye, and B. Zill, ”Routing in Multi-radio, Multi-hop
Wireless Mesh Networks”, ACM MOBICOM 2004.
put gains for SPATH - CODE and CA - MPATH - CODE when op- [6] M. Gast, 802.11 Wireless Networks: The Definitive Guide, O’Reilly
portunistic listening is allowed. and Associates, 2002.
[7] P. Gupta, and P. R. Kumar, “The Capacity of Wireless Networks”, IEEE
Transactions on Information Theory, vol. 34, no. 5, pp. 910-917, 2000.
VII. C ONCLUSION [8] Tracey C. Ho, Yu-Han Chang, and Keesook J. Han, “On Constructive
Network Coding for Multiple Unicasts”, 44th Annual Allerton Confer-
In this paper we have presented a theoretical framework for ence on Communication, Control, and Computing, September 2006.
a detailed analytical evaluation of a practical network coding [9] K. Jain., J. Padhye, V. N. Padmanabhan, L. Qiu, “Impact of Interference
approach, such as COPE for improving throughput in a multi- on Multi-hop Wireless Network Performance”, ACM MOBICOM 2003,
September 2003.
hop wireless network. Our formulations provide a systematic [10] S. Katti, H. Rahul, W. Hu, D. Katabi, M. Medard and J. Crowcroft,
method to quantify the benefits of using network coding in “XORs in the Air: Practical Wireless Network Coding”, ACM SIG-
the presence of multiple concurrent unicast sessions. We work COMM 2006, September 2006.
[11] R. Koetter, and M. Medard, “An algebraic approach to network coding,”
with any wireless topology, any pattern of concurrent unicast IEEE Trans. Networking, Oct. 2003.
traffic demands and our results are valid both in presence and [12] Z. Li, B. Li, “On Increasing End-to-end Throughput in Wireless Ad
absence of opportunistic listening mechanisms. In addition, we Hoc Networks”, Conference on Quality of Service in Heterogeneous
Wired/Wireless Networks (QShine), 2005.
introduced the notion of joint coding-aware and interference- [13] Z. Li and B. Li, “ Network coding: The case for multiple unicast
aware routing for choosing routes that optimize the tradeoffs sessions”, Allerton Conference on Communications, 2004.
between the conflicting effects of increased coding opportuni- [14] S.-Y. R. Li, R. W. Yeung, and N. Cai. “Linear network coding”, IEEE
Transactions on Information Theory, 49:371–381, 2003.
ties and increased wireless interference. [15] D. S. Lun, M. Medard, and R. Koetter. “Efficient operation of wireless
We evaluated our formulations on various topologies and packet networks using network coding”, IWCT 2005, June 2005.
found that coding-aware routing improved the throughput [16] D. S. Lun, N. Ratnakar, R. Koetter, M. Mdard, E. Ahmed, and H. Lee,
“Achieving minimum cost multicast: A decentralized approach based
significantly, with observed gains reaching as high as 70% on network coding”, In Proc. IEEE INFOCOM 2005, volume 3, pages
over traditional routing and 40% over coding-oblivious routing 1607-1617, March 2005
for some scenarios. However, we also observe that throughput [17] M. Medard, M. Effros, T. Ho, D. Karger, “On coding for non-multicast
networks”, Allerton Conference on Communications, 2003.
improvements are dependent on the network structure, traffic [18] Ramamoorthy A., Shi J., and Wesel R. D., “On the Capacity of Network
pattern and on whether mechanisms like opportunistic listen- Coding for Random Networks”, Allerton Conference on Communica-
ing are employed. We also showed that our model is extensible tions, 2003
[19] ILOG CPLEX, http://www.ilog.com.
and the methodology used here is applicable to optimize many

You might also like