Pushing the Limits of Wireless Networks Prof. Dina Katabi Jan 9, 2006
High PerformanceSwitching and RoutingTelecom Center Workshop: Sept 4, 1997.
Pushing the Limits of Wireless Networks
Prof. Dina Katabi
Jan 9, 2006
But, wireless still struggle with bandwidth scarcity
Need a breakthrough!
The future is wireless
Current Approach
BobAlice
Router
Alice’s packetBob’s packet
Bob’s packetAlice’s packet
• Requires 4 transmissions
• Can we do it in 3 transmissions?
A Network Coding Approach
BobAlice
Router
Alice’s packetBob’s packet
Bob’s packetAlice’s packet
3 transmissions instead of 4 Save bandwidth Increase Throughput
3 transmissions instead of 4 Save bandwidth Increase Throughput
XOR =
XOR =
Network Coding
Routers mix bits in packets, potentially from different flows
How to apply network coding?
• MulticastS 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
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 traffic
In Practice
?
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 traffic
Opportunism (1)
Opportunistic Listening: Every node listens to all packets It stores all heard packets for a limited time
Opportunism (1)
Opportunistic Listening: Every node listens to all packets It stores all heard packets for a limited time
D
A
B
Opportunism (1)
Opportunistic Listening: Every node listens to all packets It stores all heard packets for a limited time
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
Opportunism (2)
Opportunistic Coding: To send packet p to neighbor A, XOR p
with packets already known to A• Thus, A can decode
But how to benefit multiple neighbors from a single transmission?
Efficient Coding
Arrows show next-hop
D
A
B
C
Efficient Coding
Arrows show next-hop
D
A
B
C
Bad Coding
C will get RED pkt but A can’t get BLUE pkt
Efficient Coding
Arrows show next-hop
D
A
B
C
Better Coding
Both A & C get a packet
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
To XOR n packets, each next-hop should have the n-1 packets encoded with the packet it wants
Opportunism
• Flows arrive and leave at any time
• Follow any path
• No SchedulingO
GN
A
C
K
M
EF
B
DC
K
Performance
Simulation
• Emstar Simulator
• 100 nodes
• 800mx800m
• Senders and receivers are chosen randomly
• Metric: Total Throughput of the Network
No Coding
Our Scheme
Network Throughput (KB/s)
0
200
400
600
800
1000
1 5 9 13 17 21 25 29 33 37 41 45 49 53 57
No. of Flows
No Coding
Opportunistic Coding vs. Current(Simulation Results)
Opportunistic Coding vs. Current(Simulation Results)
No Coding
Our Scheme
Network Throughput (KB/s)
0
200
400
600
800
1000
1 5 9 13 17 21 25 29 33 37 41 45 49 53 57
No. of Flows
Opportunistic Coding
No Coding
Orders of magnitude higher throughput in dense networks
Orders of magnitude higher throughput in dense networks
Now, we also have a prototype implementation
Rerun the Alice-and-Bob experiment using our Implementation on 3 Linux PCs
Preliminary Results of our Prototype Implementation
(Alice and Bob Experiment)
1
1.2
1.4
1.6
1.8
2
1 2 5.5 11
802.11 Bit Rates (Mb/s)
Ratio of Throughput with Coding to No-Coding
Opportunistic Coding Doubles the Throughput
Opportunistic Coding Doubles the Throughput
Why More than 25%?
MAC is fair 1/3 BW for each node
• Without coding, relay needs twice as much bandwidth as Alice or Bob
• With coding, all nodes need equal bandwidth
Alice
Relay
Bob
Conclusion
• Introduced an opportunistic approach to Network Coding
• Drastic throughput improvement in dense networks
• First implementation of network coding in a wireless network
• Simple, Practical, and It Works!
Ongoing and Future Work
A practical approach to Network Coding in wireless networks, including:
• Reduce bandwidth consumption
• Reduce power consumption
• Security
• Mobility
Questions?
No Coding
Our Scheme
0
200
400
600
800
1000
1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 No. of Flows
Opportunistic Coding
No Coding
Drastic throughput increase in dense networks
Drastic throughput increase in dense networks
Network Throughput (KB/s)