ISIT2007, Nice, France, June 24 - June 29, 200O
Network Coding in Wireless Networks with Random Access Danail Traskovt, Desmond S. Lun§, Ralf Koettert, and Muriel Medardt §Broad Institute +LIDS tCoordinated Science Laboratory MIT and Harvard MIT University of Illinois at Urbana-Champaign Urbana, IL Cambridge, MA Cambridge, MA Email: {traskov2, koetter}@uiuc.edu Email:
[email protected] Email:
[email protected]
The joint resource provision and allocation strategy we will investigate is random, linear, intra-session network coding combined with a slotted-ALOHA random medium access scheme. To be more precise, network coding takes place only within the set of packets of a particular user (i.e. intra-session) and is applied by forming linear combinations of packets with random coefficients at intermediate nodes of the subgraph. This scheme is easy to implement, it achieves the capacity for a single connection [3], and has a simple flow optimization I. INTRODUCTION formulation [4]. Given multiple connections, it is reasonable The problem we consider is to establish a set of multicast to ask why we restrict ourselves from using network coding or unicast connections in a wireless network using network combining packets of different users (i.e. inter-session). There coding. The utility of network coding in such a setup has exists a variety of techniques for inter-session network coding, been demonstrated e.g. in [1], [2]. There, the authors develop such as [5]-[8], but these are quite complex and therefore siga mathematical framework for computing a network coding nificantly further down the road of practical implementation. In subgraph that can support the desired connections and provide contrast COPE [9] is a practical and successfully implemented simulation results showing significant advantages of a network network coding protocol. However, our focus is on developing coded approach. As they point out, to include the interference mathematical models in terms of optimization of flows and constraints of the wireless network in the optimization model the opportunistic and heuristic nature of COPE is difficult to may pose quite a challenge. In fact, it is the structure of capture in such a framework. Although we use solely intrathe medium access constraints of the network that essentially session network coding, it is important to keep in mind that, in determines the difficulty of the resulting optimization problem. general, inter-session network coding is necessary to approach Conceptually, one can view the overall problem, of es- the capacity of the network and it is reasonable to expect tablishing a set of connections in a wireless network with further gains by applying inter-session coding. At the medium access layer of the network, we use a interference, as two coupled subproblems. Resource provision (or scheduling) deals with the supply of network resources random slotted-ALOHA-like mechanism. The network is assuch as interference-free sets of links, whereas the concern of sumed to operate in time slots and, for every slot, a node is resource allocation is how to assign the available resources assigned some transmission attempt probability. We assume to different users. For resource provision one can consider a that in every time slot nodes decide to transmit with these scheduled approach which effectively eliminates interference fixed probabilities but otherwise independently of each other. or, on the other hand, an ALOHA-like random medium ac- Random access is an important medium access technique used cess mechanism. For the resource allocation problem possible in various applications (see e.g. [10]). One main advantage lies in the simplicity, since just deciding, whether a vector of link choices are routing as opposed to network coding. The authors in [1], [2] focus on the resource allocation flows can be supported by a collision-free transmission schedaspect, assuming that nodes in the network do not experience ule is an NP-complete problem [11]. Furthermore, if nodes interference. The wireless network is regarded as essentially are assumed to be mobile, frequent changes in the network interference free, due to an underlying schedule. However, to topology have to be taken into account and a low-complexity bring network coding one step closer to practical implementa- random access approach is expected to cope better with the tion, it is necessary to investigate the interplay between these updates due to mobility. Furthermore, our subgraph selection by no means independent problems. The focus of our work procedure can be combined with a scheduled approach in is to combine the network coding subgraph optimization with a fairly straightforward fashion. The problem of cross-layer network coding and random access is also treated in [12], the resource provision aspect of the overall problem. [13]. This work was supported by the Control-Based Mobile Ad-Hoc Networking As it turns out, the problem of finding an optimal network (CBMANET) Program under DARPA subcontract no. 060786, by the National coding subgraph subject to the random access interference Science Foundation under grant no. CCR-0325673, and by AFOSR. The authors would like to thank R. Srikant his valuable input. constraints is too difficult to be tractable in practical networks 2726 1-4244-1429-6/07/$25.00 (.)2007 IEEE Abstract- We consider the problem of applying network coding in wireless networks with random medium access. To optimize the network coding subgraph and the transmission attempt probabilities jointly is a tractable problem only for rather small networks. Therefore, we suggest a suboptimal, yet practical and decentralized algorithm to combine network coding with random access. We illustrate the performance gains of our approach with simulations.
ISIT2007, Nice, France, June 24 - June 29, 2007
'v
in its memory and upon an opportunity transmits a linear combination of the stored packets with coefficients drawn uniformly from a finite field. Coding is restricted to packets belonging to the same user (intra-session). Fig. 1. An example of a hypergraph. Here, the node set is JA and the hyperarc set is A = {(1, {2, 3}), (2, 3)}.
{1, 2, 3}
III. THE JOINT NETWORK CODING AND RANDOM ACCESS OPTIMIZATION PROBLEM
We consider C multicast sessions, where a multicast session
(sc, Tc, Rc), c C 1, .... C is characterized by its source sc, its of moderate size. This is largely due to the non-convexity destination set TC C AV and rate Rc. Every node t e TC reof the medium access rate region. Furthermore, in [14], [15] ceives information at the common rate Rc. We seek a network the authors have looked at the problem of communicating in
coding subgraph that is able to support these requirements multiple access networks from an information theoretic per- and that is subject to the multiple access constraints of the spective and reach similar conclusions regarding the difficulty network. This can be formulated as an optimization problem of the general problem. We therefore suggest a relaxation of and translates into the following constraint set [4] the original problem, which is suboptimal, yet practically imc plementable. Our algorithm can be carried out in a distributed V (i, J) C A, fashion, a highly desirable property in practical networks, and (2) E ii < zij, c=l therefore can serve as the baseline of a protocol. The remainder of this paper is organized as follows: In < Yij iJK, (3) S Section II, we introduce the wireless network model and the jeK network coding scheme. In Section III, we formulate the joint V (i,J) c A, Kc J, tCTc, C= 1,... ,C, network coding and random access problem and discuss its complexity. Section IV suggests a relaxation of this problem Z j (RC t = SC, (t, c) combined with an iterative procedure to verify feasibility and vJKiJCA v(t,c) i = tc, assign transmission attempt probabilities. In Section V, we 1{jt,iAc E J jEEJ i I(i,J)EE,4 (i, I)EA,iGI 11 0 else, evaluate the performance gains of our algorithm by means of simulations. Section VI concludes the paper. (4) icAJ\f\t}, t C T,v c= I,....,C,
t'j)
II. NETWORK MODEL
The wireless network (following the model from [4]) is represented by a hypergraph X = (JV, A), where AV stands for the set of nodes and A is the set of hyperarcs. A hyperarc, our approach to model a broadcast channel, is a pair (i, J), where i is a node and J is a nonempty subset of the node set AV. An example of a hypergraph is depicted in Fig. 1. If node i injects a packet on hyperarc J it is received by some subset K C J, possibly K being the empty set 0. Let Ai (T) be the counting process describing packet injections on hyperarc J and AiJK (T) be the counting processes accounting for the packets received precisely by the subsets K. Obviously, we have EKCJ AiJK(T) = Aij(T). We assume that for the injection processes time averages exist, i.e. limT"Q Ai(T) exists with probability 1, is finite, and equals Zij. Similarly, = ZiJK- With these assumptions we define limTO AiJK(T) T Zij = EKCJ ZiJK is the average packet injection rate on hyperarc J. In the remainder of the paper we will assume that ZiJK is proportional to ziJ and define PiJK
ZiJK ZiJ
to be the probability that a packet injected on J is received precisely by the subset K. We call the rate vector (ZiJ)(i,J)C, the network coding subgraph. Once the subgraph is computed our network coding technique of choice will be the well known random network coding [3], [4], some more practical aspects of which can be found in [16]. Roughly, that means that a node stores received packet
SCj >, 0,
(ziJ) C Z,
V (i, J) C A, j C J, V
(i, J) C A,
(5)
(6)
where we define
biJK
PiJLE {LCJILnK 0} Here, biJK stands for the probability that a packet injected on hyperarc (i, J) is received by at least one node in K. As discussed Zij is the packet injection rate on hyperarc (i, J), and y(c) is the rate allocated for multicast session c on (t,c) this hyperarc. The variable xij represents the flow between node i, the source of a hyperarc, to a node j e J in the destination set of the hyperarc. We will therefore, slightly abusing terminology, refer to a variable of this type as a link flow. Constraint (3) defines the feasible rate region of link flow allocations for a hyperarc (i, J). Constraints (2)-(5) relate the network coding subgraph (ziJ) and the link flows (t,c) xij. The network coding subgraph is restricted within some constraint set Z which is dictated by the medium access layer of the network. It is the structure of this set that essentially determines the difficulty of the optimization problem.1 We consider a random access mechanism, where in every time slot a node makes a transmission attempt determined by a Bernoulli random variable. Nodes make the transmission ths yprac.Th
vribl
'As we will show in the next section the constraints (2)-(5) alone if combined with a convex cost function define a fairly tractable convex optimization problem.
2727
ISIT2007, Nice, France, June 24 - June 29, 200O
decisions independent of each other with the same probability over different slots. We assume that the time granularity of the system is sufficiently high and do not use a backoff mechanism, such as binary exponential backoff. We make no assumptions on the statistical properties of the traffic in the network except that average rates exist. This is without loss of generality, since in [17] it is shown that bursty traffic does not decrease the capacity region of the multiple access channel. To formulate the constraint set under a random medium access policy, let qijj be the probability that node i places a packet on hyperarc J which is intended to be received by node j e J. In the following we will make the assumption that every node has precisely one outgoing hyperarc, which is not a major restriction and serves mainly to streamline notation. We will therefore write qij suppressing the hyperarc index. Let (7) Qi = Eqij jCJ
be the probability that node i transmits in a slot. If node i transmits a packet on its outgoing hyperarc J then it will be received by node j C J if and only if 1) it is not lost due to an erasure, 2) node j is not transmitting itself, and 3) none of the nodes with outgoing hyperarcs containing j transmit. As a consequence of this interference model for every hyperarc (i, J) the link throughputs fij, for all (i,j), j , must be smaller than the capacity =
IV. A RELAXATION OF THE JOINT OPTIMIZATION PROBLEM
The joint optimization problem is very difficult and intractable for all but rather small network instances. We therefore suggest a simple relaxation that is easily implementable not only with a manageable amount of complexity but also in a distributed fashion. To that end, we drop the random access constraints and solve the remaining optimization problem which is the selection of the network coding subgraph. Once we have computed the required link throughputs fij to support the given demands, we can use the iterative procedure from [10] to either find transmission attempt probabilities qij supporting the desired link throughputs or to rule out their feasibility. In case we encounter an infeasible set of demands, we reduce the rates (according to some heuristic rule), recompute the required link throughputs and check again for feasibility. Consider to that end the following linear program, where for brevity we have omitted the qualifying conditions:
qij(I Qj)
1 (1 - Qk), (8) kKjK\i where Ki C AV is the set of all nodes whose hyperarcs contain node j. The link throughput fij between node i and j is
cij
constraint set which, to the best of our knowledge, cannot be overcome with convexifying transformations. In an apparently similar setting, the authors in [18] have successfully applied a logarithmic transformation to exploit the fact that the RHS of (10) is log-concave (i.e. its logarithm is concave). However, they consider joint medium access and end-to-end rate control only. We on the other hand are also interested in finding a subgraph to code over. In this case, this and related well known transformations fail to yield a convex problem formulation.
minimize A ZiJ (i, J)GA
-
subject to
c
fi;
=
E: max x(tJjc):
C=l
(9)
E
c=l
where the maximum is taken over the link flows required to serve the different sinks of one multicast session and the summation implies that the traffic demands due to different multicast sessions contribute additively to the overall network flow2. This is due to the fact that we code only within one session and different multicast connections share the network without network coding cooperation across them. The medium access constraint (6) thus becomes C
S maxxt'c) c=l
< q.
(I QH)II (1 -Qk) kgKj\i
This is an intriguing closed form expression for the problem of jointly selecting a network coding subgraph and assigning optimal transmission attempt probabilities. Unfortunately, it is very difficult to solve for general networks except for very small ones. This is due to the non-convexity of the 2Strictly speaking, (9) as it stands holds in the case where the network does not experience erasures. However, to take these into account is straightforward as we merely have to scale the link flows with a proper set of coefficients depending on the loss probabilities.
(1 1)
x i< < zij,
c
jeK
S S {JI(i,J)EA4
jEJ
(t,c)
< Yi(j) biJK, ti'c) ()i
E
Z(
t, c)
zjtSiC
{iI (j,I)EA,iGl (t,
(12)
t-j
(RC
10
-°
R
t
=
sc,
i
=
tc,
else, (13) (14)
The cost function we have chosen to minimize is the total number of transmissions necessary to support a given rate, however any convex separable function of the network coding subgraph3 can easily be accommodated in our framework. This optimization problem has a decentralized solution. As shown in [19], for a single session, the multicast subgraph selection can be carried out in a distributed fashion. Under our assumptions on the cost function and the relaxed constraint set it is readily seen that minimizing Zij is equivalent to minimizing jC7 Z.j) Yi((c Furthermore, the different
Z(iJ)c,
3That means a function of the form f(z) =(i,J) v4 fij(zij). where the fij (.) are increasing and convex functions.
2728
ISIT2007, Nice, France, June 24 - June 29, 2007
Lt
multicast sessions are not coupled through any constraints, which implies that a solution to the subgraph optimization problem can be obtained by solving the different sessions oneby-one and then adding the resulting link flows. Clearly, in this case the distributed algorithm from [19] applies. After having computed the network coding subgraph, we can determine the required link throughputs fij using (9). To find transmission attempt probabilities qij yielding the desired link throughputs we can use the iterative procedure from [10], which consists of the following steps:
0.222^ .2
Path coding/scheduling Our algorithm Path coding/random access Link-by-link retransm./random access
...- .-...-
0.2 0.18
o 0.1 0.16.c .........
co:
0.12 ...
...
...
..
...............
0.14 01
qij [O]
1) Initialize:
=
0.
0.08 15
2) Perform the iteration:
Qi [n] Pij [n]
=
=
1: qij [n],
(I1- Qj [n] )
kg Kj \i
(]-Qk [n]),
(15)
20
25 30 Number of nodes
35
40
Fig. 2. Maximal rate of a unicast connection as a function of the number of nodes. The number of neighbors is upper bounded by 5.
(16) 0.24
(17) Pij Inl] If the iteration converges, then it is guaranteed that the transmission attempt probabilities qij support the required link throughputs. If, on the other hand, at some point any of the Qi[n] exceeds 1 the link throughputs are infeasible. Then we have to reduce the end-to-end rates, compute a new subgraph and repeat the feasibility iteration loop. Note that at every step of this iteration all required variable updates can be performed with information gathered within a one hop neighborhood, implying that also this component of our algorithm is decentralized and, combined with the above subgraph optimization, yields a fully distributed approach. Our algorithm is suboptimal since we separated the original problem into a subgraph selection problem and a multiple access problem and solved them more or less independently. However, simulation results illustrate that our approach shows significant gains. This is the focus of the next section.
Path coding/scheduling Our.. algorithm . .. Path coding/random access :Link-by-link retransm./random access
-
0.22
02
0.18 o , 16 'r 0.14
EU a 0.12.-
..
..
0.1
0.08
..
15
...
20
..
25 30 Number of nodes
35
40
Fig. 3. Maximal rate of a unicast connection as a function of the number of nodes. The number of neighbors is upper bounded by 6.
In Fig. 2 and Fig. 3, we are interested in the maximal rate of a single point-to-point connection. The source is taken to be the node with the smallest x-coordinate and the destination the V. SIMULATION RESULTS one with the highest x-coordinate. The difference between the To get an idea of the performance gains of our approach two figures is merely the limit on the number of neighbors, we conduct simulations over random network topologies. We with Fig. 3 having slightly richer connectivity. We simulate assume that a number of nodes are uniformly scattered over a the following schemes: square region with unit node density. Two nodes are in radio 1) Path coding and scheduling: The shortest path4 from range if their distance is below some threshold, the radius source to sink is chosen and nodes on the path employ of connectivity, which we take to be 1.8. Transmissions are a random linear code (e.g. the coding scheme from [1]) subject to erasures which may be due to distance attenuation to compensate for erased packets. This is a form of and Rayleigh fading. When a node transmits another node in network coding. Alternatively, one could employ a FECradio range at distance d will receive the packet correctly if code on every link and let intermediate nodes decode and -yd2 > /3, where 'yis a unit mean exponential variable and re-encode packets. However, such an approach seems Q = 1/4 is our chosen SNR threshold, otherwise the packet prohibitive due to large delays especially on longer is lost completely. We also take into account interference paths. An optimal collision-free schedule is used which, by assuming nodes to operate half-duplex (i.e. they cannot for the special case of a single connection on a path transmit and receive at the same time) and furthermore if in rather than a subgraph, is not a difficult task. a given time slot a node is in radio range of more than one 4See also [20] for an interesting approach using multiple paths. transmitting neighbor then it cannot recover any of the packets. 272
ISIT2007, Nice, France, June 24 - June 29, 200
VI. CONCLUSION We have suggested a combined network coding and random access strategy which shows significant performance gains in simulations. It can be implemented in a distributed fashion which is a basic requirement if it is to be used as the basis of a protocol. What is not yet clear in particular is the delay characteristics of packets in actual network operation. This is an important aspect in networking and requires more investigation.
0.13 F
0.121 0.1 12
0.11
Ir
0.1
0
E 0.09 E
cEi
0.08
5 0.07-
0.06
L Path coding/scheduling
0.05
*Our algorithm Path coding/random
0.04
15
20
25 30 Number of nodes
REFERENCES
access
35
40
Fig. 4. Maximal common rate of four simultaneous unicast connection as a function of the number of nodes. The number of neighbors is upper bounded by 6.
2) Subgraph coding and random access heuristic: This is our algorithm as described in Sections III and IV. Note, that in contrast to the three other techniques, we code over a subgraph rather than over a path. 3) Path coding and random access: The shortest path between source and destination is chosen and the same coding scheme from the first approach is used on the path. However, instead of scheduling we use random access with optimal transmission attempt probabilities. 4) Link-by-link retransmission and random access: The shortest path between source and destination is chosen and nodes are required to acknowledge received packets. If a packet or an acknowledgement is lost a retransmission is triggered, however we do not explicitly use negative acknowledgements (NACK's). It is important to keep in mind that approaches (1)-(3) network coding, while approach (4) does not. Therefore, although approach (3) operates on a path rather than on a subgraph it capitalizes already significantly on network coding gains. Approach (2) goes one step further by choosing a subgraph rather than a path to code over and therefore utilizes the overhearing of packets by other neighbors, a phenomenon called the wireless broadcast advantage [19]. We observe, that our suboptimal network coding algorithm is able to close much of the gap between random access and a scheduled approach. The gains are more pronounced in Fig. 3 where the network use
connectivity
is
richer.
Another experiment we conducted is to use the same network topology and setup simultaneously four unicast connections sharing the network. Fig. 4 shows the maximal common rate at which they can transmit and, again, the curves illustrate the gains due to network coding. Together, these experiments give a compelling reason to expect considerable advantages by using network coding. In fact, together with the simulation results in [2], [21], [22], it is reasonable to investigate further the application of network coding in wireless networks.
[1] D. S. Lun, M. Medard, R. Koetter, and M. Effros, "On coding for reliable communication over packet networks," Technical report #2741, MIT LIDS, January 2007. [2] D. S. Lun, M. Medard and R. Koetter, "Network coding for efficient wireless unicast," in International Zurich Seminar on Communication, February 2006. [3] T. Ho, R. Koetter, M. Medard, M. Effros, J. Shi, and D. Karger, "A random linear network coding approach to multicast," IEEE Trans. on Information Theory, 52 (10). pp. 4413-4430, October 2006. [4] D. S. Lun, "Efficient operation of coded packet networks," Ph.D. dissertation, Massachusetts Institute of Technology, June 2006. [5] N. Ratnakar, D. Traskov, and R. Koetter, "Approaches to network coding for multiple unicast," invited paper, International Zurich Seminar on Communication, February 2006. [6] D. Traskov, N. Ratnakar, D. S. Lun, R. Koetter, and M. Medard, "Network coding for multiple unicasts: An approach based on linear optimization," in IEEE Int. Symp. on Inf. Theory, Seattle, 2006. [7] A. Eryilmaz, and D. S. Lun, "Control for inter-session network coding," Technical report #2722, MIT LIDS, August 2006. [8] T. Ho, Y. Chang and K. J. Han, "On constructive network coding for multiple unicasts," invited paper, 44th Allerton Conference on Communication, Control and Computing, 2006. [9] S. Katti, D. Katabi, W. Hu, and R Hariharan, "The importance of being opportunistic: Practical network coding for wireless environments," in Allerton Conference on Communication, Control, and Computing, 2005. [10] D. Bertsekas, and R. Gallager. Data networks. Prentice Hall, Upper Saddle River, NJ, second edition, 1992. [11] E. Arikan "Some complexity results about packet radio networks," IEEE Trans. on Information Theory," 30(4):681-685, July 1984. [12] Y. E. Sagduyu, and A. Ephremides, "Cross-layer optimization through wireless network coding in queueing tandem networks," submitted to IEEE Trans. on Information Theory, May 2006. [13] Y. Wu, P. A. Chou, Q. Zhang, K. Jain, W. Zhu, and S.-Y. Kung, "Network planning in wireless ad hoc networks: a cross-layer approach," in IEEE Journal on Selected Areas in Comm., 23(1):136-150, Jan. 2005. [14] B. Nazer, and M. Gastpar, "Reliable computation over multiple-access channels," in Allerton Conference on Commununication, Control and Computation, Monticello, IL, Sept. 2005. [15] S. Ray, M. Effros, M. Medard, R. Koetter, T. Ho, D. Karger and J. Abounadi, "On separation, randomness and linearity for network codes over finite fields," MIT LIDS Technical Report #2687, March 2006. [16] P. A. Chou, Y. Wu, and K. Jain, "Practical network coding," Allerton Conference on Communication, Control, and Computing, Monticello, IL, October 2003. [17] M. Medard, J. Huang, A. Goldsmith, S. Meyn, T. Coleman, "Capacity of time-slotted ALOHA packetized mutiple-access systems over the AWGN channel", in IEEE Trans. on Wireless Comm., 3(2):486-499, March 2004. [18] X. Wang, and K. Kar, "Cross-layer rate control in multi-hop wireless networks with random access," IEEE Journal on Selected Areas in Communications, 24(8):1548- 1559, August 2006. [19] D.S. Lun, N. Ratnakar, M. Medard, R. Koetter, D.R. Karger, T. Ho, E. Ahmed, "Minimum-cost multicast over coded packet networks," IEEE Trans. on Information Theory, 52(6):2608-2623, June 2006. [20] A. L. Toledo, and X. Wang, "Efficient multipath in sensor networks using diffusion and network coding," in 4oth Annual Conference on Information Sciences and Systems, Princeton, NJ, March, 2006. [21] J.-S. Park, D. S. Lun, F. Soldo, M. Gerla, and M. Medard. "Performance of network coding in ad hoc networks," in IEEE Milcom, October 2006. [22] R. Khalili and K. Salamatian, "A new relaying scheme for cheap wireless relay nodes," in Wiopt 2005, Trentino, Italy.
2730