XORs in the air: Practical Wireless Network Coding Sachin Katti, Hariharan Rahul, Wenjun Hu, Dina Katabi, Muriel Medard, Jon Crowcroft SIGCOMM ‘06 Presented.

Slides:



Advertisements
Similar presentations
Network Coding for Wireless Networks
Advertisements

XORs in The Air: Practical Wireless Network Coding
Symbol Level Network Coding By Sachin Katti, Dina Katabi, Hari Balakrishnan, Muriel Medard Sigcomm 2008.
Analog Network Coding Sachin Katti Shyamnath Gollakota and Dina Katabi.
Incentive-Compatible Opportunistic Routing for Wireless Networks Fan Wu, Tingting Chen, Sheng Zhong (SUNY Buffalo) Li Erran Li Li Erran Li (Bell Labs)
Prentice HallHigh Performance TCP/IP Networking, Hassan-Jain Chapter 2 TCP/IP Fundamentals.
Improving TCP Performance over Mobile Ad Hoc Networks by Exploiting Cross- Layer Information Awareness Xin Yu Department Of Computer Science New York University,
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
TCP Congestion Control Dina Katabi & Sam Madden nms.csail.mit.edu/~dina 6.033, Spring 2014.
1 A Framework for Joint Network Coding and Transmission Rate Control in Wireless Networks Tae-Suk Kim*, Serdar Vural*, Ioannis Broustis*, Dimitris Syrivelis.
Priority Queuing Achieving Flow ‘Fairness’ in Wireless Networks Thomas Shen Prof. K.C. Wang SURE 2005.
1 XORs in the Air: Practical Wireless Network Coding Sachin Katti HariharanRahul, WenjunHu, Dina Katabi, Muriel Medard, Jon Crowcroft Presented by Lianmu.
TDC365 Spring 2001John Kristoff - DePaul University1 Internetworking Technologies Transmission Control Protocol (TCP)
Random Access MAC for Efficient Broadcast Support in Ad Hoc Networks Ken Tang, Mario Gerla Computer Science Department University of California, Los Angeles.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Mobile Ad Hoc Networks Network Coding and Xors in the Air 7th Week.
Cool Topics in Networking CS144 Review Session 8 November 20, 2009 Samir Selman.
Exploiting Opportunism in Wireless Networks Aruna Balasubramanian Guest Lecture, CS 653 (Some slides borrowed from the ExOr and MORE presentations at SigComm.
Opportunistic Routing in Multi-hop Wireless Networks Sanjit Biswas and Robert Morris MIT CSAIL Presented by: Ao-Jan Su.
Denial of Service Resilience in Ad Hoc Networks Imad Aad, Jean-Pierre Hubaux, and Edward W. Knightly Designed by Yao Zhao.
Block-switched Networks: A New Paradigm for Wireless Transport Ming Li, Devesh Agrawal, Deepak Ganesan and Arun Venkataramani presented by zhen qin, marcel.
Network coding for multicasting and unicasting in MANETs Muriel Médard LIDS Massachusetts Institute of Technology.
Opportunistic Routing in Multi-hop Wireless Networks Sanjit Biswas and Robert Morris MIT CSAIL
Opportunistic Packet Scheduling and Media Access Control for Wireless LANs and Multi-hop Ad Hoc Networks Jianfeng Wang, Hongqiang Zhai and Yuguang Fang.
XORs in The Air: Practical Wireless Network Coding Daniel Courcy- Sachin Katti, Hariharan Rahul, Wenjun Hu, Dina.
1 How Many Packets Can We Encode? - An Analysis of Practical Wireless Network Coding Jerry Le, John C.S. Lui, Dah Ming Chiu Chinese University of Hong.
Error Checking continued. Network Layers in Action Each layer in the OSI Model will add header information that pertains to that specific protocol. On.
SourceSync: A Distributed Architecture for Sender Diversity Hariharan Rahul Haitham Hassanieh Dina Katabi.
Distributed Quality-of-Service Routing of Best Constrained Shortest Paths. Abdelhamid MELLOUK, Said HOCEINI, Farid BAGUENINE, Mustapha CHEURFA Computers.
Performance Evaluation and Improvement of an Ad Hoc Wireless Network Takayuki Yamamoto Graduate School of Engineering Science, Osaka University, Japan.
SOAR: Simple Opportunistic Adaptive Routing Protocol for Wireless Mesh Networks Authors: Eric Rozner, Jayesh Seshadri, Yogita Ashok Mehta, Lili Qiu Published:
XORs in the Air: Practical Wireless Network Coding Sachin Katti Hariharan Rahul Wenjun Hu Dina Katabi Muriel Medard Jon Crowcroft Presented by: Suvesh.
Qian Zhang Department of Computer Science HKUST Advanced Topics in Next- Generation Wireless Networks Transport Protocols in Ad hoc Networks.
An End-to-end Approach to Increase TCP Throughput Over Ad-hoc Networks Sarah Sharafkandi and Naceur Malouch.
Enhancing TCP Fairness in Ad Hoc Wireless Networks Using Neighborhood RED Kaixin Xu, Mario Gerla University of California, Los Angeles {xkx,
Wireless Sensor Networks COE 499 Energy Aware Routing
Wireless Network Coding Martin Xu. Outline Introduction New Solutions – COPE – ANC Conclusions.
Recitation 8 Wireless Networks. Virtual carrier sensing First exchange control frames before transmitting data – Sender issues “Request to Send” (RTS),
Design and Implementation of a Multi-Channel Multi-Interface Network Chandrakanth Chereddi Pradeep Kyasanur Nitin H. Vaidya University of Illinois at Urbana-Champaign.
Computer Networks Performance Metrics. Performance Metrics Outline Generic Performance Metrics Network performance Measures Components of Hop and End-to-End.
A High-Throughput Path Metric for Multi-Hop Wireless Routing Douglas S. J. De Couto, Daniel Aguayo, John Bicket, Robert Morris MIT Computer Science and.
A High-Throughput Path Metric for Multi-Hop Wireless Routing Douglas S. J. De Couto MIT CSAIL (LCS) Daniel Aguayo, John Bicket, and Robert Morris
Link Estimation, CTP and MultiHopLQI. Learning Objectives Understand the motivation of link estimation protocols – the time varying nature of a wireless.
Pushing the Limits of Wireless Networks Prof. Dina Katabi Jan 9, 2006.
Practical Network Coding for Wireless Mesh Networks Wenjun Hu Joint work with Sachin Katti, Hariharan Rahul, Dina Katabi, Jon Crowcroft and Muriel Médard.
S Master’s thesis seminar 8th August 2006 QUALITY OF SERVICE AWARE ROUTING PROTOCOLS IN MOBILE AD HOC NETWORKS Thesis Author: Shan Gong Supervisor:Sven-Gustav.
Mitigating Congestion in Wireless Sensor Networks Bret Hull, Kyle Jamieson, Hari Balakrishnan Networks and Mobile Systems Group MIT Computer Science and.
15-744: Computer Networking L-12 Wireless Broadcast.
KAIS T High-throughput multicast routing metrics in wireless mesh networks Sabyasachi Roy, Dimitrios Koutsonikolas, Saumitra Das, and Y. Charlie Hu ICDCS.
Deadline-based Resource Management for Information- Centric Networks Somaya Arianfar, Pasi Sarolahti, Jörg Ott Aalto University, Department of Communications.
Introduction to Wireless Networks Dina Katabi & Sam Madden MIT – – Spring 2014.
Recitation 8 Wireless Networks.
Cross-Layer Approach to Wireless Collisions Dina Katabi.
a/b/g Networks Routing Herbert Rubens Slides taken from UIUC Wireless Networking Group.
An Energy-Efficient MAC Protocol for Wireless Sensor Networks Speaker: hsiwei Wei Ye, John Heidemann and Deborah Estrin. IEEE INFOCOM 2002 Page
Medium Access Control in Wireless networks
Optimization Problems in Wireless Coding Networks Alex Sprintson Computer Engineering Group Department of Electrical and Computer Engineering.
2012 1/6 NSDI’08 Harnessing Exposed Terminals in Wireless Networks Mythili Vutukuru, Kyle Jamieson, and Hari Balakrishnan MIT Computer Science and Artificial.
1 End-to-End Protocols User Datagram Protocol (UDP) Transmission Control Protocol(TCP)
Trading Structure for Randomness in Wireless Opportunistic Routing Szymon Chachulski, Michael Jennings, Sachin Katti and Dina Katabi MIT CSAIL SIGCOMM.
Information Theory for Mobile Ad-Hoc Networks (ITMANET): The FLoWS Project Collision Helps! Algebraic Collision Recovery for Wireless Erasure Networks.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
The Importance of Being Opportunistic Sachin Katti Dina Katabi, Wenjun Hu, Hariharan Rahul, and Muriel Medard.
Xors in the air Sachin Katti, Hariharan Rahul, Wenjun Hu, Dina Katabi, Muriel Medard, Jon Crowcroft.
Taking Advantage of Broadcast
Javad Ghaderi, Tianxiong Ji and R. Srikant
TCP Congestion Control
Wireless Mesh Networks
Error Checking continued
Presentation transcript:

XORs in the air: Practical Wireless Network Coding Sachin Katti, Hariharan Rahul, Wenjun Hu, Dina Katabi, Muriel Medard, Jon Crowcroft SIGCOMM ‘06 Presented by Thangam Seenivasan 1

Problem Increase the throughput of dense wireless networks Network Coding 2

Current Approach Alice Bob Relay A B A B A B Requires 4 transmission 3

COPE Approach Alice Bob Relay A B A B Requires 3 transmission A XOR B Increased throughput A XOR B XOR A XOR B XOR B = A = A XOR B 4

COPE Approach Exploits shared nature of wireless medium – Every node snoops on all packets – A node stores all heard packets for a limited time Tell neighbors which packets it has heard Perform opportunistic coding – XOR multiple packets and transmit them as single packet Decode the encoded packet using stored packets 5

Scenario S1 D1 S2 D2 R AB A AB B A+B BA Requires 3 transmission 6

Outline Design Cope Gains Making it work Implementation details Experimental results 7

Overview Opportunistic listening Opportunistic coding Learning neighbor state 8

Opportunistic listening Exploit broadcast nature of wireless – Set nodes in promiscuous mode – Opportunities to overhear packets Store the overheard packets – Limited time period (T = 0.5s) Broadcast reception reports to tell neighbors which packets it has stored – Annotate with data packets – If no data packets, send reception reports periodically 9

Opportunistic coding What packets to code together to maximize throughput? 10

Opportunistic coding 11

Opportunistic coding P1 + P2 Bad Coding – C can decode but A can’t 12

Opportunistic coding P1 + P3 Better Coding – Both A and C can decode 13

Opportunistic coding P1 + P3 + P4 Best Coding – Nodes A, C, D can decode 14

Opportunistic coding Maximize the number of native packets delivered in a single transmission While ensuring that each intended next hop has enough information to decode its native packet 15

Opportunistic coding To transmit n packets: p 1, …., p n To n next hops: r 1, …., r n A node can XOR the n packets together only if each next hop r i has all n-1 packets p j for j!=i Choose the largest n that satisfies the above rule 16

Learning Neighbor State How does a node know what packets its neighbors have? Send reception reports During congestion, reports may get lost in collisions or may arrive late 17

Learning Neighbor State Wireless routing protocols compute delivery probability between every pair of nodes and broadcast them – E.g.: ETX Using these weights, – Estimate the probability that a particular neighbor has a packet 18

Outline Design Cope Gains Making it work Implementation details Experimental results 19

COPE Gains Coding Gain Coding + MAC Gain 20

Coding Gain Number of transmissions required by non-coding approach Minimum number of transmissions used by COPE Coding Gain = Alice & Bob experiment – Coding gain = 4/3 =

Coding Gain Coding gain = 4/3 = 1.33 Coding gain = 8/5 =

Coding + MAC Gain Alice Bob Router A B A B MAC divides the bandwidth equally between the 3 contending nodes The router needs to transmit twice as many packets Hence router is a bottleneck – Half the packets are dropped as routers queue 23

Coding + MAC Gain Alice Bob Router A B COPE – XOR pairs of packets – router drains packets twice as fast A + B Coding + MAC gain = 2 24

Coding + MAC Gain For topologies with single bottleneck Draining rate with COPE Draining rate without COPE Coding + MAC Gain = Coding + MAC gain = 2 Coding + MAC gain = 4 25

Coding + MAC Gain In the presence of opportunistic listening, COPE’s maximum Coding + MAC gain is unbounded. N -> ∞ 26

Outline Design Cope Gains Making it work Implementation details Experimental results 27

Making it work Packet Coding Algorithm Packet Decoding Pseudo-broadcast Hop-by-hop ACKs and Retransmissions Preventing TCP packet reordering 28

Packet Coding Algorithm Never delaying packets – Does not wait for additional codable packets to arrive Preference to XOR packets of similar lengths – Pad zeros if different lengths Maintain two virtual queues per neighbor – One for small, one for large packets Dequeue the packet at the head of the FIFO – Look only at the head of the virtual queues Each neighbor has a high probability of decoding the packet – Threshold probability 29

Packet Coding Algorithm 30

Packet Decoding Each node maintains a Packet Pool – Packets it received or sent out Packets are stored in a hash table keyed on packet id Encoded packet with n packets – XOR with n – 1 packets from packet pool 31

Pseudo-broadcast Broadcast – No ACKs – No retransmissions – Poor reliability and lack of back-off Unicast – ACKed as soon as received – Sender back-off exponentially if no ACKs – Retransmissions – More Reliable 32

Pseudo-broadcast – Unicast packet to one of its recipients – That node ACKs and hence the transmission is reliable – Since others listen in promiscuous mode they receive the packet as well – An XOR header is added after the link-layer header listing all next hops Each node checks the XOR header if it is a recipient and processes the packet 33

Hop-by-hop ACKs and Retransmissions Encoded packets require all next hops to ack the receipt of the associated native packet – Only one node ACKs (pseudo-broadcast) – There is still a probability of loss to other next hops – Hence, each node ACKs the reception of native packet – If not-acked, retransmitted, potentially encoded with other packets – Overhead - highly inefficient 34

Hop-by-hop ACKs and Retransmissions Asynchronous ACKs and Retransmissions – Cumulatively ACK every T a seconds – If a packet is not ACKed in T a seconds, retransmitted – Piggy-back ACKs in COPE header of data packets – If no data packets, send periodic control packets (same packets as reception reports) 35

Preventing TCP Packet Reordering Asynchronous ACKs can cause packet reordering – TCP can take this as a sign of congestion Ordering agent – Ensures TCP packets are delivered in order – Maintains packet buffer 36

Outline Design Cope Gains Making it work Implementation details Experimental results 37

Packet Format 38

Control flow - Sender 39

Control flow - Receiver 40

Outline Design Cope Gains Making it work Implementation details Experimental results 41

Testbed 20 nodes – Path between nodes are 1 to 6 hops in length – a with a bit-rate of 6Mb/s Software – Linux and click toolkit – User daemon and exposes a new interface – Applications use this interface No modification to application is necessary Traffic model – udpgen to generate UDP traffic – ttcp to generate TCP traffic – Poisson arrivals, Pareto file size distribution 42

Metrics Network throughput – Total end-to-end throughput (sum of throughput of all flows in a network) Throughput gain – The ratio of measured throughput with and without COPE – Calculate from two consecutive experiments, with coding turned on and off 43

Long-lived TCP flows Close to 1.33 Close to 1.6 Close to coding gain – TCP backs-off due to congestion control – To match the draining rate at the bottleneck 44

Long-lived UDP flows Close to Coding + MAC gain – XOR headers add small overhead (5-8%) – The difference is also due to imperfect overhearing 45

Ad-hoc network - TCP TCP flows – Arrive according to Poisson process – Pick sender and receiver randomly – Transfer files (size - Pareto distribution) Does not show any significant improvement – TCP’s reaction to collision-related losses – Hidden terminals 46

Ad-hoc network - TCP Even with 15 MAC retries, 14% loss – Due to hidden terminals Bottleneck never see enough traffic to make use of coding – Few coding opportunities 47

TCP with no hidden terminals 38% improvement in TCP goodput 48

Ad-hoc network - UDP 3-4x improvement in throughput 49

Ad-hoc network - UDP 50

Ad-hoc network - UDP On an average 3 packet are coded together 51

Mesh network COPE throughput gain relies on coding opportunities – Depends on diversity of packets in the queue of the bottleneck node 52

Fairness More fair – more opportunities to code 53

Conclusion Network coding to improve the throughput of wireless networks COPE -Implementation of first system architecture for wireless network coding COPE improves the UDP throughput by 3-4x 5% to 70% throughput improvement in mesh networks depending on downlink-uplink ratio 54

Thank You Questions? 55