Download presentation
Presentation is loading. Please wait.
Published byJane Floyd Modified over 8 years ago
1
The Importance of Being Opportunistic Sachin Katti Dina Katabi, Wenjun Hu, Hariharan Rahul, and Muriel Medard
2
Bandwidth is scarce in wireless Can we send more while consuming less bandwidth?
3
Current Approach Bob Alice Relay Alice’s packet Bob’s packet Alice’s packet Requires 4 transmissions Can we do it in 3 transmissions?
4
A Network Coding Approach Bob Alice Relay Alice’s packet Bob’s packet Alice’s packet 3 transmissions instead of 4 Save bandwidth
5
Network Coding Routers mix bits in packets, potentially from different flows Theoretically shown to achieve capacity for multicast No concrete results for unicast case
6
How to apply network coding? Multicast S R R R Given Sender & Receivers Given Flow Rate & Capacities State-of-the Art Min-Cost Flow Optimization Find the routing, which dictates the encoding
7
How to apply network coding? Multicast Given Sender & Receivers Given flow rate & capacities State-of-the Art Min-Cost Flow Optimization Find the routing, which dictates the encoding Unicast Many Unknown Changing Sender & Receivers Unknown and bursty flow rate In Practice ?
8
How to apply network coding? Multicast Given Sender & Receivers Given flow rate & capacities State-of-the Art Min-Cost Flow Optimization Find the routing, which dictates the encoding In Practice Opportunism Unicast Many Unknown Changing Sender & Receivers Unknown and bursty flow rate
9
Opportunism (1) Opportunistic Listening: o Every node listens to all packets o It stores all heard packets for a limited time
10
Opportunism (1) Opportunistic Listening: o Every node listens to all packets o It stores all heard packets for a limited time D A B
11
Opportunism (1) Opportunistic Listening: o Every node listens to all packets o It stores all heard packets for a limited time o Node sends Reception Reports to tell its neighbors what packets it heard Reports are annotations to packets If no packets to send, periodically send reports
12
Opportunism (2) Opportunistic Coding: o Each node uses only local information o Use your favorite routing protocol o To send packet p to neighbor A, XOR p with packets already known to A Thus, A can decode o But how to benefit multiple neighbors from a single transmission?
13
Efficient Coding Arrows show next-hop D A B C
14
Efficient Coding Arrows show next-hop D A B C Bad Coding C will get RED pkt but A can’t get BLUE pkt
15
Efficient Coding Arrows show next-hop D A B C Better Coding Both A & C get a packet
16
Efficient Coding Arrows show next-hop D A B C Best Coding A, B, and C, each gets a packet To XOR n packets, each next-hop should have the n-1 packets encoded with the packet it wants
17
But how does a node know what packets a neighbor has? Reception Reports But reception reports may get lost or arrive too late Use Guessing o If I receive a packet I assume all nodes closer to sender have received it
18
Putting It Together D A B C
19
D A B C
20
D A B C Don’t reorder packets in a flow Keeps TCP happy No scheduling No packet is delayed Don’t reorder packets in a flow Keeps TCP happy No scheduling No packet is delayed Putting It Together
21
Beyond Fixed Routes B A D S Route Chosen by Routing Protocol B heard S’s transmission S transmits No need for A transmission Opportunistic Routing [BM05] Piggyback on reception report to learn whether next-hop has the packet cancel unnecessary transmissions
22
Opportunism Unicast Flows arrive and leave at any time No knowledge of rate No assumption of smooth traffic O G N A C K M E F B D C K
23
Performance
24
Emulation Environment We use Emstar o “Real code” simulator o 802.11 radios o Power Level: 200mW o 11Mbps bit rate o Simulated radio channel
25
Recall Our Simple Experiment XOR Bob Alice Relay 3 transmissions instead of 4 25% throughput increase Alice’s packet Bob’s packet Alice’s packet
26
Network coding requires broadcast But 802.11 broadcast has no backoff more collisions No Coding XOR Throughput (KB/s) 270 KB/s Practical artifacts make network coding perform poorly 330 KB/s
27
Pseudo Broadcast Piggyback on 802.11 unicast which has synchronous Acks and backoff o Each XOR-ed packet is sent to the MAC address of one of the intended receivers Our Solution: Ideally, design a back-off scheme for broadcast channels In practice, we want a solution that works with off-the-shelf 802.11 drivers/cards
28
XOR with Pseudo-Broadcast Improves Throughput No Coding XOR XOR with Pseudo-Broadcast Throughput (KB/s) 330 KB/s 270 KB/s 495 KB/s Improvement is more than 25% because 802.11 MAC gives nodes equal bandwidth shares Without coding, relay needs twice as much bandwidth With coding, all nodes need equal bandwidth
29
Larger experiment 100 nodes 800mx800m Senders and receivers are chosen randomly Metric: Total Throughput of the Network
30
Opportunistic Coding vs. Current No Coding Our Scheme Network Throughput (KB/s) No. of flows A Unicast Network Coding scheme that works well in realistic situations Opp. Coding Opp. Coding (no guessing) No Coding
31
Preliminary Implementation Results Linux Kernel 802.11 MAC Click Elements (part of Roofnet) Only Opportunistic Coding & Pseudo Broadcast (No opportunistic Listening) Alice Relay Bob
32
Implementation Results Ratio of throughput with coding to without coding Network Coding Doubles the Throughput
33
Conclusion First implementation of network coding in a wireless network Learned Lessons o Be opportunistic (greed is good!) o Can do a good job with multiple unicast o 5x higher throughput in congested networks o Preliminary implementation results show throughput doubles
34
The Wireless Environment Multi-hop wireless networks (e.g., Roofnet)
35
Opportunistic Coding vs. Current No Coding Our Scheme Network Throughput (KB/s) No. of flows A Unicast Network Coding scheme that works well in realistic situations
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.