scispace - formally typeset
Open AccessProceedings ArticleDOI

An Analysis of Wireless Network Coding for Unicast Sessions: The Case for Coding-Aware Routing

Reads0
Chats0
TLDR
In this paper, a theoretical formulation for computing the throughput of network coding on any wireless network topology and any pattern of concurrent unicast traffic sessions is presented, and the tradeoff between routing flows close to each other for utilizing coding opportunities and away from each other to avoid wireless interference is analyzed.
Abstract
A recent approach, COPE, for improving the throughput of unicast traffic in wireless multi-hop networks exploits the broadcast nature of the wireless medium through opportunistic network coding. In this paper, we analyze throughput improvements obtained by COPE-type network coding in wireless networks from a theoretical perspective. We make two key contributions. First, we obtain a theoretical formulation for computing the throughput of network coding on any wireless network topology and any pattern of concurrent unicast traffic sessions. Second, we advocate that routing be made aware of network coding opportunities rather than, as in COPE, being oblivious to it. More importantly, our work studies the tradeoff between routing flows "close to each other" for utilizing coding opportunities and "away from each other" for avoiding wireless interference. Our theoretical formulation provides a method for computing source-destination routes and utilizing the best coding opportunities from available ones so as to maximize the throughput. We handle scheduling of broadcast transmissions subject to wireless transmit/receive diversity and link interference in our optimization framework. Using our formulations, we compare the performance of traditional unicast routing and network coding with coding-oblivious and coding-aware routing on a variety of mesh network topologies, including some derived from contemporary mesh network testbeds. Our evaluations show that a route selection strategy that is aware of network coding opportunities leads to higher end-to-end throughput when compared to coding-oblivious routing strategies.

read more

Content maybe subject to copyright    Report

An Analysis of Wireless Network Coding for Unicast
Sessions: The Case for Coding-Aware Routing
Sudipta Sengupta
Shravan Rayanchu
,1
Suman Banerjee
1
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
throughput of unicast traffic in wireless multi-hop networks
exploits the broadcast nature of the wireless medium through
opportunistic network coding. In this paper, we analyze through-
put improvements obtained by COPE-type network coding in
wireless networks from a theoretical perspective. We make two
key contributions. First, we obtain a theoretical formulation for
computing the throughput of network coding on any wireless
network topology and any pattern of concurrent unicast traffic
sessions. Second, we advocate that routing be made aware of
network coding opportunities rather than, as in COPE, being
oblivious to it. More importantly, our work studies the tradeoff
between routing flows “close to each other” for utilizing coding
opportunities and “away from each other” for avoiding wireless
interference. Our theoretical formulation provides a method
for computing source-destination routes and utilizing the best
coding opportunities from available ones so as to maximize the
throughput. We handle scheduling of broadcast transmissions
subject to wireless transmit/receive diversity and link interference
in our optimization framework. Using our formulations, we
compare the performance of traditional unicast routing and
network coding with coding-oblivious and coding-aware routing
on a variety of mesh network topologies, including some derived
from contemporary mesh network testbeds. Our evaluations
show that a route selection strategy that is aware of network
coding opportunities leads to higher end-to-end throughput when
compared to coding-oblivious routing strategies.
I. INTRODUCTION
1
Network coding is gaining popularity as a mechanism to
increase the utilization of both wired and wireless networks.
We explain the basic idea of network coding using a very
simple example consisting of three wireless nodes as shown in
Figure 1(a). In the figure, node 1 wants to send a single packet
(A) to node 3, while node 3 wants to send single packet (B)
to node 1. Due to transmission range limitations both these
paths go via node 2. Using standard techniques of packet
forwarding, four wireless transmissions would be needed to
complete these end-to-end packet transfers. The following are
a possible sequence of these transmissions: (i) packet A is
transmitted by 1, with 2 being the intended recipient, (ii)
packet B is transmitted by 3, with 2 being the intended
recipient, (iii) packet A is transmitted by 2, with 3 being the
intended recipient, and (iv) packet B is transmitted by 2, with
1 being the intended recipient.
In comparison, using a simple form of network coding (as
employed in the COPE approach [10]), the same two pack-
ets can be transferred by using three wireless transmissions
instead of four using the following sequence: (i) 1 transmits
packet A, with 2 being the intended recipient, (ii) 3 transmits
packet B with 2 being the intended recipient, and (iii) node 2
transmits a new packet C obtained by performing an XOR of
packets A and B.
Both nodes 1 and 3 are intended recipients of this new
packet. Wireless medium being inherently broadcast in nature
1
S. Rayanchu and S. Banerjee are supported in part by the following NSF
grants: CNS-0520152, CNS-0627102, CNS-0639434, and CNS-0627589.
1
2 3
1
2 3
4
5
Topology (a)
Topology (b)
(A)
(B) (B)
(A)
(C)
(D)
Fig. 1. Illustration of Network Coding
allows such communication to be possible. Assuming node
1 still has a copy of packet A, it can obtain packet B by
performing an XOR of packets A and C. Similarly node 3
can obtain packet A by performing an XOR of packets B and
C. Overall, this simple form of network coding achieved the
same packet transfer effect on this two-hop path by using three
transmissions instead of four and would lead to a throughput
improvement of 33%, in this example. Using prior terminology
[10], we will refer to the original packets (A and B) as native
packets while the packet C derived as a combination of native
packets as a coded packet.
In this paper, we focus on network coding as applicable
to a multi-hop wireless network where there are multiple
concurrent unicast sessions. We provide a theoretical
framework for investigating the potential interactions between
coding opportunities and routing decisions. Our goal is
develop techniques for systematically quantifying the benefits
of network coding aware routing across arbitrary wireless
network topologies and traffic demands. We use a COPE-type
network coding scheme for unicast traffic that exploits the
broadcast nature of the wireless medium. More specifically,
we study the following related set of issues in this paper:
Estimating Coding Benefits: Given any wireless topology,
a set of traffic demands, and a coding-oblivious
2
routing
strategy, e.g., based on shortest-hop routing, ETX [3],
WCETT [5], what is the potential benefit of using network
coding on end-to-end throughput? Note that this question
assumes that the routing decisions are made by an independent
routing protocol and our goal is to quantify bounds on
throughput gains of network coding under this scenario.
Coding-Aware (and Interference-Aware) Routing: Prior
work has shown that wireless routing protocols need in-
terference (and link-quality) awareness for improved perfor-
mance [9], [3], [5]. Introduction of network coding, therefore,
raises new questions in the route selection process should
routing decisions now need to be aware of coding opportuni-
ties, and if so, what are the approaches to design coding-aware
routing in wireless networks?
We illustrate the new opportunity presented by network
coding in the context of route selection using a simple example
2
Coding oblivious routing implies that routing decisions are not made
based on coding opportunities available. This approach requires no change
in existing routing mechanisms.

Fig. 2. Coding-oblivious vs coding-aware routing
(Figure 2). The example shows two flows, one from node 1
to node 4 and the other from node 4 to node 5. The link
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
there are no losses on these wireless links, then Figure 2(a)
shows the best paths for the two flows in absence of network
coding. These are the shortest and minimum interference paths
for the flows, which results in an end-to-end throughput of
0.25. However, if the nodes are allowed to perform network
coding, then the throughput of these flows can be improved by
choosing paths for the two flows as shown in Figure 2(b). Note
that such a choice increases the path overlap of the two flows to
increase coding opportunities. Using the techniques developed
in this paper, it can be shown that routing the flows as in Figure
2(b) results in an throughput of 0.3325, an improvement of
33% compared to the previous case.
Clearly, there is a tradeoff between routing choices that
facilitate more coding, and routing choices that mitigate
interference in the network. We, therefore, present a
systematic approach for choosing routes that optimize the
tradeoffs between the conflicting effects of increased coding
opportunities and increased wireless interference.
Impact of Multi-Path Routing: Many network traffic en-
gineering techniques have shown that multi-path routing ap-
proaches are known to better utilize the capacity of any
network. Therefore, in this paper, we consider coding aware
multi-path routing. More specifically, we study how the ability
to route traffic demands along multiple paths is enhanced by
the ability to code packets inside the wireless network. Our
formulations can also be used in single-path routing scenarios
where a path needs to be determined in a coding-aware manner
or is computed based on a coding-oblivious metric like ETX.
We answer all of these questions in the context of an op-
portunistic network coding scheme such as COPE [10]. COPE
uses the easy-to-implement and relatively inexpensive XOR
operation to perform coding. In addition, COPE’s approach to
network coding has two other attractive properties:
1) Opportunistic Coding: Each wireless node uses only
packets in its local queues for coding (the rules are
described in Section II-B). This allows benefits of net-
work coding through local decisions without requiring
any form of global coordination between different nodes.
2) Opportunistic Listening: Exploiting the broadcast nature
of the wireless medium, COPE sets each node into a
promiscuous mode to snoop on all packets communi-
cated by its neighbors. The snooped packets are used in
coding decisions.
We illustrate the advantage of opportunistic listening using
the example in Figure 1 (b), where there are 4 intended packet
transfers as follows: from 1 to 3, 3 to 1, 4 to 5, and 5 to 4.
Due to range limitations all transfers need to go via node 2.
Let us assume that nodes 1, 3, 4, and 5 transmit their packets
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
necessary, while coding without opportunistic listening would
have required 6.
A. Prior Work on Network Coding
The notion of network coding to enhance utilization was
first proposed by Ahlswede et. al. [1] in the context multicast
communication. Since then a large body of work has explored
efficient construction of network codes, e.g., [14], [11],
[2], [17], [4]. In the context of wireless networks, Lun et.
al. [15], [16] studied the problems of minimum cost (energy)
multicast involving a single session with a single source node.
Ramamoorthy et. al. [18] derived results for maximum flow
achievable in random wireless networks (modeled as geomet-
ric random graphs) for a similar single multicast session with
a single source.
Li et. al. [13], [12] show that in some multi-hop wire-
less scenarios with multiple unicast sessions, network coding
would provide marginal benefits over traditional approaches
that do not involve network coding. Ho et al. [8] consider
network coding across multiple unicasts within the class of
network codes restricted to XOR coding between pairs of
flows. To the best of our knowledge, there is no prior work
analyzing the benefits of COPE-type opportunistic network
coding for unicast traffic in wireless networks or making
routing decisions aware of coding opportunities.
B. Unique Contributions of Our Work
Ours is the first work that provides a detailed analytical
evaluation of a practical network coding approach, such as
COPE, that is applicable to wireless environments with mul-
tiple unicast sessions. More specifically, our solutions are ap-
plicable to any multi-hop wireless network topology, and any
pattern of concurrent unicast traffic demands. Our results are
valid both in presence and absence of opportunistic listening
mechanisms. In contrast, the COPE paper [10] constructs and
analyzes the best case bounds for reduction in number of
transmissions with opportunistic network coding.
A second important contribution is that this paper introduces
the notion of joint coding-aware and interference-aware rout-
ing in multi-hop wireless networks. It illustrates the tradeoffs
between needs of increased coding and decreased interference
in a systematic manner and identifies efficient routing choices
by selecting the appropriate operating point. (Note that COPE
does not consider coding-aware routing.)
Finally, this paper illustrates how a coding approach, such
as COPE, can be integrated with a multi-path routing solution
to further increase end-to-end throughput.
The difficulty of the optimization problem tackled in this
paper arises from at least two aspects. First, for a given routing,
many combinations of coding opportunities at different nodes
are possible and a subset needs to be selected from the avail-
able ones so as to optimize a global objective (e.g., network
throughput). Second, when the routing is made aware of the
coding opportunities, it has to make choices between routing

flows “close to each other” for utilizing coding opportunities
and “away from each other” for avoiding interference.
Note that in this paper we do not define a full-fledged
network coding protocol, but instead focus on algorithmic
analysis (using linear programming based formulations) that
quantifies potential benefits across arbitrary wireless topolo-
gies, demands, as well as impact of joint network coding
and interference-aware routing techniques. Our framework
and its evaluation is fairly general it properly models
arbitrary interference between wireless nodes, availability of
different data rates, link loss rates, and other usual practical
phenomenon observed in wireless environments. We believe
our work provides interesting insights to design protocols that
integrate network coding and routing selection techniques.
C. Roadmap
The rest of the paper is structured as follows. In the next
section, we introduce notation and formally state the rules
for (COPE-type) network coding and our modeling assump-
tions. In Section III, we consider how to schedule broadcast
transmissions for network coding subject to wireless trans-
mit/receive diversity and link interference. In Section IV, we
consider maximum throughput coding-aware routing without
opportunistic listening and give a linear programming formu-
lation for the multi-path routing version of the problem. In
Section V, we add opportunistic listening to our optimization
framework. In Section VI using the theoretical formulations
developed, we evaluate the benefits of network coding (with
and without coding-aware routing) over traditional routing
(without coding) on various topologies, including some de-
rived from real mesh network testbed deployments.
II. NETWORK CODING: NOTATION AND MODELING
ASSUMPTIONS
A. Notation
The wireless network topology, given by the nodes and the
links corresponding to pairs of nodes within direct communi-
cation range, is modeled as a graph G = (N, E) with node set
N and (directed) edge set E. Each node in the network can
be a source or destination of traffic. The sets of incoming and
outgoing edges at node i are denoted by E
(i) and E
+
(i)
respectively. We let e = (i, j) represent a directed link in the
network from node i to node j. The transmitting node for link
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 ¯e = (j, i). The rate
of transmission on link e will be denoted by R
e
and its delivery
probability by p
e
. Thus, the effective rate of transmission on
link e is u
e
= p
e
R
e
.
Let D be the set of demands. A demand k D has source
node s(k), destination node d(k), and traffic value t(k). For
a given routing/coding scheme, the throughput is defined as
the maximum multiplier λ such that all demands with their
traffic values multiplied by λ can be feasibly routed by the
network. In this paper, we will be concerned with maximizing
the throughput λ for coding-aware network routing.
For a path P and links e, e
1
, e
2
, we will use e P to denote
that link e is on path P and e
1
e
2
P to denote that path P
contains link e
1
followed by link e
2
in consecutive order (this
assumes r(e
1
) = t(e
2
)). For a path P and node i, we will use
i P to denote that node i is on path P .
B. Coding Rules and Modeling Assumptions
Consider k packets p
1
, p
2
, . . . , p
k
at a node that have distinct
next-hop nodes n
1
, n
2
, . . . , n
k
respectively. Suppose these are
coded together to form the coded packet p = p
1
p
2
. . .p
k
that is broadcast to all the above next-hop nodes. This is a
valid network coding if the next-hop node n
i
for each packet
p
i
already has all other packets p
j
for j 6= i (so that it can
decode p
i
) this can happen if
(i) node n
i
is the previous-hop node of packet p
j
, or
(ii) node n
i
overheard packet p
j
from the transmission
of its previous-hop node (opportunistic listening).
In the specification of coding opportunities above, node n
i
can have packet p
j
also if (i’) node n
i
was one of the nodes
traversed by packet p
j
before its previous-hop node, or (ii’)
node n
i
overheard packet p
j
from the transmission of a node
traversed by packet p
j
before its previous-hop node. For either
of conditions (i’), (ii’) to hold, node n
i
will need to buffer
packet p
j
for longer periods of time in the hope that additional
coding opportunities involving packet p
j
will arise at a node
further downstream on its path (and adjacent to n
i
). (It is also
unlikely that packet p
j
will take a circuitous route and pass
through a neighbor node of n
i
at least two-hops downstream
when it has already passed through either n
i
or one of its
neighbors.) In contrast, conditions (i), (ii) do not require node
n
j
to buffer packet p
j
beyond the transmission at the next-hop
node after the packet passed through or was overheard.
In this paper, we do not model coding opportunities arising
from conditions (i’), (ii’) above. Our assumption is consistent
with the requirement to have minimal additional packet buffer-
ing requirements at each wireless node for network coding.
III. SCHEDULING BROADCAST TRANSMISSIONS
Network coding exploits the broadcast nature of the wireless
medium, hence a proper model that handles scheduling of
broadcast transmissions is essential. Accordingly, prior to
developing our analytical framework for network coding, we
discuss how to handle broadcast transmissions in this section.
We use the protocol model of interference introduced by Gupta
and Kumar [7]. Prior work by Jain et. al. [9] developed an opti-
mization framework for scheduling unicast transmissions. We
generalize their approach to handle broadcast transmissions.
To the best of our knowledge, this generalization has not been
proposed earlier in the literature.
A. Prior Work on Scheduling Unicast Transmissions
Let d
ij
denote the distance between nodes i and j. Let
the radio at node i have a communication range of `
i
and
potentially larger interference range `
0
i
. Under the protocol
model of interference [7], if there is a single wireless channel, a
transmission from node i to node j is successful if (i) d
ij
`
i
(receiver is within communication range of sender), and (ii)
any node k, such that d
kj
`
0
k
, is not transmitting (receiver
is free of interference from any other possible sender).
The authors in [9] construct a conflict graph whose nodes
correspond to links in the topology graph. Two nodes are
connected by an (undirected) edge in the conflict graph if
the corresponding links cannot be scheduled simultaneously.
Scheduling link transmissions for transmit/receive diversity
and link interference are then modeled using constraints cor-
responding to either cliques or independent sets in the conflict
graph. It is shown that the clique constraints provide an upper
bound on the throughput (and this upper bound is not always
tight) while the independent constraints provide an achievable
lower bound. Note that this does not completely model the
IEEE 802.11 MAC [6], primarily because it does not take
contention time for acquiring a channel into account.

B. Broadcast Transmission Rates
We are given the rate of transmission u
e
and associated
delivery probability p
e
for each wireless link e. The delivery
probability of a wireless link generally decreases with increase
in transmission rate. For a given rate of transmission, the
delivery probability is most accurately determined only by
experiment, as it depends on many factors, including environ-
ment, transmission power, distance between transmitter and
receiver, channel fading, and background noise. We discuss
how we use given information on a single (u
e
, p
e
) per link e
to obtain broadcast transmission rates for our model.
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) = u
e
. Now, consider the case
when B consists of multiple links. Because of the given lim-
ited information per link (as explained above), we will assume
that the transmission rate for broadcast on B is the minimum
rate of its component links, which equals R(B) = min
eB
R
e
(this allows us to make a conservative estimation of the
effective rates of transmission for broadcasts). To compute the
effective rate of transmission, we need the delivery probability
of this transmission. Since R(B) R
e
for any e B, the
probability that a single broadcast reaches r(e) is at least p
e
,
since delivery probabilities can only increase with decrease in
transmission rates. Assuming that losses on individual links
are independent, the delivery probability of the broadcast B
is at least
Q
eB
p
e
. We will use this conservative estimate as
the delivery probability for broadcast on B. Thus, the effective
rate of transmission for broadcast on B is given by
u(B) =
Ã
Y
eB
p
e
!
min
eB
R
e
Note that the optimization techniques developed in this pa-
per are independent of the manner in which effective broadcast
transmission rates are obtained.
C. Broadcast Conflict Graph
A broadcast transmission at node i on a subset B of its
outgoing links will represented as (i, B) and the associated
broadcast traffic as y
B
i
. Note that this includes unicast as a
special case when the set B consists of just one link. We
define the broadcast conflict graph F as a natural extension
of the conflict graph for unicast transmissions. Each node in
this graph represents a broadcast transmission (i, B). Let r(B)
denote the set of receiver nodes for the links in broadcast set
B. Two broadcasts (i
1
, B
1
) and (i
2
, B
2
) interfere and hence
have an edge between them in the broadcast conflict graph if
either
Some node j r(B
1
) is within interference range of
node i
2
, or
Some node j r(B
2
) is within interference range of
node i
1
It can be verified that the above conditions include special
cases like i
1
= i
2
(broadcasts out of same node) or r(B
1
)
r(B
2
) 6= Φ (broadcasts have a common receiver).
D. Clique Constraints for Broadcast Transmission Scheduling
With this generalization of the conflict graph, we can use
constraints corresponding to cliques in the broadcast conflict
graph. Consider a clique in the broadcast conflict graph. Let C
be the set of broadcast nodes (i, B) that correspond to nodes of
this clique. The fraction of time that broadcast (i, B) is active
is y
B
i
/u(B). Since the broadcasts in C mutually conflict with
each other, at most one of them can be active at any given
time. This can be modeled by the constraint
X
(i,B)C
y
B
i
u(B)
1 cliques C in F (1)
Note that it is sufficient to add just constraints corresponding
to maximal cliques, since the constraints corresponding to
cliques contained inside maximal cliques are redundant.
E. Independent Set Constraints for Broadcast Transmission
Scheduling
Let I
1
, I
2
, . . . , I
q
denote all the maximal independent sets in
the broadcast conflict graph (let each set consist of correspond-
ing broadcasts of the form (i, B)). Let independent set I
j
be
active for b
j
fraction of the time. Any set of active broadcast
transmissions are contained in some independent set. Then,
we should have
q
X
j=1
b
j
1 (2)
The fraction of time that an individual broadcast transmission
is active is at most the sum of the fraction of time that each
independent set it belongs to is active. This can be written as
y
B
i
u(B)
X
j:I
j
3(i,B)
b
j
broadcasts (i, B) (3)
We will use the clique constraints in our linear programming
formulations for routing with network coding in Sections
IV and V below. One may choose to use the independent
set constraints instead. We do talk about convergence of the
computed upper and lower bounds using each set of constraints
in the evaluation section.
IV. CODING AWARE NETWORK ROUTING WITHOUT
OPPORTUNISTIC LISTENING
In the absence of opportunistic listening, a coding opportu-
nity at a node involves XOR-ing exactly two packets these
packets enter and leave the node using the same links but in
opposite directions. We summarize this in the lemma below.
The proof is straightforward and is omitted for lack of space.
Lemma 1: Under the assumptions for network coding out-
lined in Section II-B and in the absence of opportunistic
listening, a coding opportunity at a node involves XOR-ing
exactly two packets (and not more).
We now formulate the problem of maximum throughput
routing with network coding without opportunistic listening.
We consider multi-path routing. (By using integer variables,
the formulation can be modified to handle single path routing.)
Let P
k
denote the set of available paths from source s(k)
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 f
k
(P ) denotes the amount
of traffic on path P for routing demand k. Let variable y
B
i
denote the traffic that is broadcast at node i on link set
B E
+
(i). Because there is no opportunistic listening, we
have |B| 2. If |B| = 1, the corresponding transmission
is a unicast (of a native packet) on the single link in B.

Let λ denote the throughput for routing all demands in D.
Then, the problem of routing under network coding without
opportunistic listening so as to maximize throughput can be
expressed as the following linear program (LP):
maximize λ
subject to
X
P ∈P
k
f
k
(P ) = t(k)λ k D (4)
y
{e
1
,e
2
}
i
X
kD
X
P ∈P
k
,P 3 ¯e
1
e
2
f
k
(P )
e
1
, e
2
E
+
(i), i N (5)
y
{e
1
,e
2
}
i
X
kD
X
P ∈P
k
,P 3 ¯e
2
e
1
f
k
(P )
e
1
, e
2
E
+
(i), i N (6)
y
{e}
i
=
X
kD,s(k)=i
X
P ∈P
k
,P 3e
f
k
(P ) +
X
e
1
E
(i)
[
X
kD
X
P ∈P
k
,P 3e
1
e
f
k
(P )
y
{e, ¯e
1
}
i
] e E
+
(i), i N (7)
X
(i,B)C,|B|≤2
y
B
i
u(B)
1 cliques C in F (8)
Constraints (4) state that the total traffic routed on the
available paths for a demand must equal the demand value
multiplied by its throughput. Constraints (5)-(6) determine
the maximum amount of coded traffic y
{e
1
,e
2
}
i
that can be
broadcast on outgoing links {e
1
, e
2
} at node i. The to-
tal traffic traversing node i along link sequence ¯e
1
e
2
is
P
kD
P
P ∈P
k
,P 3 ¯e
1
e
2
f
k
(P ) and along link sequence ¯e
2
e
1
is
P
kD
P
P ∈P
k
,P 3 ¯e
2
e
1
f
k
(P ). Thus, y
{e
1
,e
2
}
i
is at most each
of these amounts.
Constraints (7) give the total amount of traffic y
{e}
i
that is unicast on outgoing link e at node i. This traf-
fic can be divided into two parts. The first part is the
traffic that originates at node i and is sent on link e
and equals
P
kD,s(k)=i
P
P ∈P
k
,P 3e
f
k
(P ). The second part
is the amount of transit traffic at node i with next-hop
e that could not be coded with other flows and equals
P
e
1
E
(i)
[
P
kD
P
P ∈P
k
,P 3e
1
e
f
k
(P ) y
{e, ¯e
1
}
i
].
Finally, constraints (8) are the broadcast transmission
scheduling constraints corresponding to cliques in the broad-
cast conflict graph, as discussed in Section III. The cliques
are restricted to include broadcast sets of size at most 2, since
there is no opportunistic listening.
Note that this LP can be also be used to compute the
throughput when ETX metric routes are used. For this purpose,
the set P
k
of available paths for demand k consists of the
(singleton) shortest cost ETX path from node s(k) to node
d(k).
The path-indexed routing variables f
k
(P ) can be reduced to
polynomial size by converting to dual-link-indexed variables
f
k
(e
1
, e
2
), where (e
1
, e
2
) denotes the incoming-outgoing link
pair at each node. This corresponds to routing on a graph
with a (straightforward) node-splitting transformation, details
of which are omitted for lack of space.
V. CODING AWARE NETWORK ROUTING WITH
OPPORTUNISTIC LISTENING
In this section, we develop a model that allows coding of
different packets at a node to take advantage of opportunistic
listening by its neighbors of the transmission of packets by
the previous-hop node of each packet. We represent a coding
opportunity by what we call a coding structure. We give
a linear programming formulation for maximum throughput
coding aware routing with opportunistic listening.
A. Modeling Network Coding with Opportunistic Listening
The usefulness of opportunistic listening depends on the
whether the listening involved transmission of a coded or
native packet. If a packet was transmitted as a coded packet
(i.e., XOR-ed with other packets), then a listening node (that is
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
than not, since coding guarantees that only the next-hop node
of a packet (and not opportunistic listeners) will be able to
decode it. Hence, we will model useful listening opportunities
that involve transmission of a native packet only. Thus, the
coding opportunity for a packet at a node is determined by
two factors, namely,
The combination of its incoming and outgoing links at
that node, and
Whether the packet was received at that node as a coded
or native packet.
Let us fix a node i N of (in/out) degree d
i
. The number of
possible combinations of incoming/outgoing links at this node
is d
i
(d
i
1). A coding opportunity at node i is completely
specified by a structure S that consists of elements of the form
s = (e
1
e
2
, v), where e
1
is the incoming link of the packet, e
2
is the outgoing link of the packet, and v = c, n depending on
whether the packet was received as coded (c) or native (n).
We will call such structures coding structures. We will denote
the v-component of s by v(s). The previous-hop node of s is
t(e
1
) and the next-hop node of s is r(e
2
).
A coding structure represents a coding opportunity under
the following conditions:
1) The next-hop node of each s S must be distinct, since
two packets going to the same next-hop node cannot be
coded. Thus, a coding structure S at node i can contain
at most d
i
elements f.
2) The next-hop node for each s S must be able to
decode its packet. Thus, for any given s S, the next-
hop node of s should already have the packet associated
with all other s
0
S, s
0
6= s. For the latter to hold, we
must have: for each other s
0
S, the next-hop node of s
must be either (i) the previous-hop node of s
0
, or (ii) be
a neighbor of previous-hop node of s
0
to have overheard
the transmission, provided v(s
0
) = n, i.e., the associated
packet was transmitted as native. Note that in case (i),
the value of v(s
0
) does not matter.
The broadcast set b(S) for a coding structure is defined as
the set of next-hop links of each s S. This is simply the set
of links over which the XOR-ed packets are broadcast for the
coding opportunity represented by the structure S. We will
say that s (or, the associated packet) participates in coding
structure S as native-received if v(s) = n, and as coded-
received if v(s) = c.
We now provide a few simple examples to explain how we
capture useful listening opportunities with coding structures.

Citations
More filters
Journal ArticleDOI

XORs in the air: practical wireless network coding

TL;DR: The results show that using COPE at the forwarding layer, without modifying routing and higher layers, increases network throughput, and the gains vary from a few percent to several folds depending on the traffic pattern, congestion level, and transport protocol.
Journal ArticleDOI

XORs in the air: practical wireless network coding

TL;DR: The results show that COPE largely increases network throughput, and the gains vary from a few percent to several folds depending on the traffic pattern, congestion level, and transport protocol.
Book

Network Coding: An Introduction

TL;DR: The first book to present a unified and intuitive overview of the theory, applications, challenges, and future directions of this emerging field, this is a must-have resource for those working in wireline or wireless networking.
Journal ArticleDOI

A Survey of Network Design Problems and Joint Design Approaches in Wireless Mesh Networks

TL;DR: The fundamental WMN design problems of interference modeling, power control, topology control, link scheduling, and routing are identified, and brief overviews are provided, together with a survey of the recent research on these topics, with special stress on joint design methods.
Journal ArticleDOI

DCAR: Distributed Coding-Aware Routing in Wireless Networks

TL;DR: DCAR, the distributed coding-aware routing mechanism which enables the discovery for available paths between a given source and destination and the detection for potential network coding opportunities over much wider network region, is proposed and implemented.
References
More filters
Journal ArticleDOI

The capacity of wireless networks

TL;DR: When n identical randomly located nodes, each capable of transmitting at W bits per second and using a fixed range, form a wireless network, the throughput /spl lambda/(n) obtainable by each node for a randomly chosen destination is /spl Theta/(W//spl radic/(nlogn)) bits persecond under a noninterference protocol.
Journal ArticleDOI

Network information flow

TL;DR: This work reveals that it is in general not optimal to regard the information to be multicast as a "fluid" which can simply be routed or replicated, and by employing coding at the nodes, which the work refers to as network coding, bandwidth can in general be saved.
Journal ArticleDOI

Linear network coding

TL;DR: This work forms this multicast problem and proves that linear coding suffices to achieve the optimum, which is the max-flow from the source to each receiving node.
Proceedings ArticleDOI

A high-throughput path metric for multi-hop wireless routing

TL;DR: Measurements taken from a 29-node 802.11b test-bed demonstrate the poor performance of minimum hop-count, illustrate the causes of that poor performance, and confirm that ETX improves performance.
Proceedings ArticleDOI

Routing in multi-radio, multi-hop wireless mesh networks

TL;DR: A new metric for routing in multi-radio, multi-hop wireless networks with stationary nodes called Weighted Cumulative ETT (WCETT) significantly outperforms previously-proposed routing metrics by making judicious use of the second radio.
Related Papers (5)
Frequently Asked Questions (10)
Q1. What are the contributions mentioned in the paper "An analysis of wireless network coding for unicast sessions: the case for coding-aware routing" ?

In this paper, the authors analyze throughput improvements obtained by COPE-type network coding in wireless networks from a theoretical perspective. Using their formulations, the authors compare the performance of traditional unicast routing and network coding with coding-oblivious and coding-aware routing on a variety of mesh network topologies, including some derived from contemporary mesh network testbeds. 

The authors observe that in a network with relatively high average degree of nodes, opportunistic listening facilitates increased coding opportunities and thus results in significant throughput improvements. 

The usefulness of opportunistic listening depends on the whether the listening involved transmission of a coded or native packet. 

If a packet was transmitted as a coded packet (i.e., XOR-ed with other packets), then a listening node (that is not its next-hop) will not be able to decode it if it does not have all the other packets. 

Re for any e ∈ B, the probability that a single broadcast reaches r(e) is at least pe, since delivery probabilities can only increase with decrease in transmission rates. 

Since node 1 is the previous hop of p1, it can correctly decode the packet p2 using p ⊕ p1 i.e. the ability to decode the packet does not depend on whether the p1 was native-received or coded-received. 

the problem of routing under network coding without opportunistic listening so as to maximize throughput can be expressed as the following linear program (LP):maximize λsubject to ∑P∈Pk fk(P ) = t(k)λ 

A coding structure represents a coding opportunity under the following conditions:1) The next-hop node of each s ∈ S must be distinct, since two packets going to the same next-hop node cannot be coded. 

For this purpose, the set Pk of available paths for demand k consists of the (singleton) shortest cost ETX path from node s(k) to node d(k). 

The total traffic traversing node i along link sequence ē1e2 is∑k∈D ∑P∈Pk,P3ē1e2 f k(P ) and along link sequence ē2e1 is∑k∈D ∑ P∈Pk,P3ē2e1 f k(P ).