On Practical Network Coding for Wireless Environments

2 downloads 1102 Views 109KB Size Report
On Practical Network Coding for Wireless ... address the bandwidth limitation of wireless networks. ... is easy to illustrate its benefits using the following simple.
Int. Zurich Seminar on Communications (IZS), Feb. 22–24, 2006

On Practical Network Coding for Wireless Environments Dina Katabi, Sachin Katti, Wenjun Hu, Hariharan Rahul, and Muriel Medard Massachusetts Institute of Technology

In this extended abstract, we briefly describe COPE, an opportunistic approach to network coding that provides orders of magnitudes improvement in the throughput of dense wireless mesh networks. COPE supports multiple unicast flows, deals with bursty and unknown demands, and is simple and easy to deploy. Our COPE prototype provides the first implementation of network coding in the wireless environment. It shows the supremacy of opportunistic network coding over current wireless implementations. I. I NTRODUCTION It is clear to network researchers, engineers, and businesses that wireless in its various forms (last-mile connectivity, sensors, community networks, etc.) will be the dominant medium of communication in the future. But current wireless implementations still struggle with a major limitation: bandwidth. For a dense large-scale wireless network to work properly, we need major research advances that provide a drastic reduction in bandwidth consumption. Our work builds on the theory of network coding to address the bandwidth limitation of wireless networks. In contrast to source coding, network coding allows the routers to mix/encode information in packets from potentially different sources. Coding enables the routers to compress the information whenever possible to reduce the number of transmissions required to deliver the packets in the router’s queue. A fewer number of transmissions translates directly to less bandwidth consumption and higher throughput. But, prior work on network coding is mainly theoretical. Focused on analytical tractability, prior work usually assumes multicast communication, senders and receivers are known a priori, and average traffic rates are known and smooth [1], [3]–[5], [7]–[10]. Given these assumptions, it is possible to run an optimization to find how the routers should code the packets so as to minimize bandwidth consumption [11], [12]. Unfortunately, wireless networks do not comply with these assumptions: traffic is unicast; senders and receivers are unknown a priori; and the send rate is bursty and unknown in advance even to

c 1-4244-0092-9/06/$20.00 2006 IEEE.

84

the sender itself. In practice, the wireless environment is highly unpredictable and difficult to capture using available models. In [6], we present COPE, which builds on the elegant theory of network coding to produce a practical system, resulting in orders of magnitude improvement in the throughput of dense wireless mesh networks. II. A N OVERVIEW OF COPE We briefly describe COPE and refer the reader to [6] for more details. COPE adopts an opportunistic approach to network coding: each node learns the status of its neighbors, detects coding opportunities in realtime, and exploits them. While the design of COPE is involved, it is easy to illustrate its benefits using the following simple example. Alice and Bob want to exchange a pair of packets via an intermediate router. In current approaches, Alice sends her packet to the router which forwards it to Bob, and Bob sends his packet to the router which forwards it to Alice. This process requires 4 transmissions. Now, consider a network coding approach. Specifically, Alice and Bob send their corresponding packets to the router, which XORs the two packets and broadcasts the XOR-ed version. Both Alice and Bob can obtain the other’s packet by XOR-ing again with their own packet. This entire process takes only 3 transmissions. Thus, network coding has reduced the required bandwidth by 25%. Indeed, COPE can lead to much larger bandwidth savings; it extends beyond duplex flows; it can XOR more than two packets; and it applies to any topology and traffic distribution. In a nutshell, COPE has two components: opportunistic listening and opportunistic coding. All nodes participate in opportunistic listening: they snoop on all communications they hear over the wireless medium, and store the heard packets for a limited interval. The nodes also annotate the packets they send to tell their neighbors which packets they have heard. When a node forwards a packet, it uses its knowledge of what its neighbors have heard to perform opportunistic coding; the node can XOR multiple packets and send them in a single transmission if each intended receiver has enough information to decode its packet.

Network Throughput in KB/s

Int. Zurich Seminar on Communications (IZS), Feb. 22–24, 2006

1000 900 800 700 600 500 400 300 200 100 0

802.11 with No Coding 802.11 with COPE

0

5

10

15

20

25 30 35 Number of Flows

40

45

50

55

60

Fig. 1: COPE outperforms the current approach which does not use coding. It provides dramatic increase in network throughput particularly as the number of flows increases.

Our approach has the following practical features: it works for multiple unicast flows as well as multicast flows. It is distributed, and makes no assumptions about senders, receivers, or traffic. And finally, it is easy to implement and deploy in today’s networks. We have built a prototype of COPE, which constitutes the first implementation of network coding in the wireless environment. Initial experiments over 3-node testbed show that COPE almost doubles the wireless throughput. To evaluate COPE in a larger topology, we have used the Emstar wireless emulator [2]. Our emulation results, illustrated in Fig. 1, show that COPE substantially improve the throughput of current mesh wireless networks. Depending on the degree of congestion and the number of distinct flows, COPE’s throughput may be many times higher than the current approach which does not use coding. III. O NGOING W ORK

[4] T. Ho, B. Leong, Medard, R. Koetter, Y. Chang, and M. Effros. The Utility of Network Coding in Dynamic Environments. In IWWAN, 2004. [5] S. Jaggi, P. Sanders, P. A. Chou, M. Effros, S. Egner, K. Jain, and L. Tolhuizen. Polynomial time algorithms for multicast network code construction. IEEE Transactions on Information Theory, 2003. [6] S. Katti, W. Hu, R. Hariharan, D. Katabi, and M. Medard. The Importance of Being Opportunistic: Practical Network Coding For Wireless Environments, 2005. [7] R. Koetter and M. Medard. An algebraic approach to network coding. IEEE/ACM Transactions on Networking, 2003. [8] S. R. Li, R. W. Yeung, and N. Cai. Linear network coding. In IEEE Transactions on Information Theory, 2003. [9] D. S. Lun, M. Medard, and R. Koetter. Efficient operation of wireless packet networks using network coding. In International Workshop on Convergent Technologies (IWCT), 2005. [10] D. S. Lun, M. Medard, R. Koetter, and M. Effros. Further results on coding for reliable communication over packet networks. In IEEE International Symposium on Information Theory (ISIT 05), 2005. [11] D. S. Lun, N. Ratnakar, R. Koetter, M. Mdard, E. Ahmed, and H. Lee. Achieving Minimum-Cost Multicast: A Decentralized Approach Based on Network Coding. In IEEE INFOCOM, 2005. [12] Y. Wu and S.-Y. Kung. Distributed utility maximization for network coding based multicasting: a shorted path approach. submitted to IEEE INFOCOM 2006.

Currently, we are extending COPE in three major directions: (1) We are incorporating COPE into the network stack as a shim between the IP and MAC layers. (2) We are extending COPE to provide interoperability with TCP. This requires designing a reliable link layer broadcast and taking care of ack implosion problems and out-of-order packets. (3) We are also working toward a detailed implementation and large-scale testbed experiments. R EFERENCES [1] S. Deb, M. Effros, T. Ho, D. R. Karger, R. Koetter, D. S. Lun, M. Medard, and N. Ratnakar. Network coding for wireless applications: A brief tutorial. In IWWAN, 2005. [2] L. Girod, T. Stathopoulos, N. Ramanathan, J. Elson, D. Estrin, E. Osterweil, and T. Schoellhammer. A system for simulation, emulation, and deployment of heterogeneous sensor networks. In ACM Sensys, 2004. [3] T. Ho, R. Koetter, M. Medard, D. Karger, and M. Effros. The Benefits of Coding over Routing in a Randomized Setting. In ISIT, 2003.

85

Suggest Documents