UFlood: High-Throughput Wireless Flooding
-
Upload
whilemina-lewis -
Category
Documents
-
view
22 -
download
3
description
Transcript of UFlood: High-Throughput Wireless Flooding
1
UFlood: High-Throughput Wireless Flooding
Jayashree SubramanianCollaborators: Robert Morris, Ramakrishna Gummadi,
and Hari Balakrishnan
2
Goal of this work• To design a flooding protocol for wireless
multi-hop networks
• Application: Real-time video distribution
• What is a good flooding protocol?
• Use least #transmissions
• Provide high-throughput for the nodes
3
111
Every transmission is broadcast (Opportunistic Receptions!)
Reception is probabilistic
Challenge in Wireless Flooding
121
3
4 6
2
5
2 3
6
2 src
A B
D
C
23456
Delivery probability from Src to B
0.1
4
Challenge: Who should transmit next?What packet to transmit?
UFlood’s claim: Select best sender – to minimize total #transmissions to complete flooding
Challenge in Wireless Flooding …contd
5
Contribution of this work1. UFlood – Choosing best sender for every
transmission maximizes throughput
2. UFlood performance:
• Achieves 2x higher throughput than controlled flooding
• Performs close to the benchmark - ExOR unicast routing (multihop transfer to a single receiver)
66
• Existing Solutions
• Key Idea of UFlood
• Design of UFlood protocol
• Evaluation
Outline of this talk
7
Related Work
1. Flooding in routing
• Controlled flooding (AODV, DSR)
×Does not maximize throughput2. Tree-based flooding
• MCDS, LESS
×Does not consider opportunism3. Gossip-based flooding
B
C
A
S
0.1
Wasted transmission!
2.Tree-based flooding (static decision)
8
Related Work … contd3. Gossip-based flooding
(dynamic decision)
• Trickle, Deluge
× Does not choose best sender
B
C
A
S
0.90.1
Bad sender choice means more transmissions!
99
• Existing Solutions
• Key Idea of UFlood
• Design of UFlood protocol
• Evaluation
Outline of this talk
10
6
Select the best sender - to maximize
throughput
Select the best sender - to maximize
Useful Receptions
Key Idea
Packet availability
src
A B
D
C
12345
1 1
1
1
4 6
6
3
32 5
Delivery probability
0.9
0.1
11
Calculating Useful Receptions
6 src
A B
D
C
12345
1 1
1
1
4 6
6
3
32 5
U(A,4)=
0.9+0.4+0.6=1.8 0.9
0.4
0.6
U(B,1)=0
12
0.9 0.5
0.2 0.1
B
DC
A
S
U(S)=1.7
0.5
0.2
U(S)=0.7
U(A)=1.5
1
0.5
0.3
0.5U(D)=0.8
S
A
D
B
C
To Flood a Single Packet using UFlood
To flood multiple packets calculate utility for every packet!s
13
UFlood is a Local Heuristic
13
• Difficulty: Knowing the packet availability at all nodes
• Solution: Local heuristic- Every node knows only about its neighbors (nodes whose packets it can hear!)
• Good news: Possibility of spatial reuse!
1414
• Existing Solutions
• Key Idea of UFlood
• Design of protocol
• Evaluation
Outline of this talk
1515
Design of UFlood
Information required:1. Node states - packets available with
the neighbors
2. Delivery probabilities of all node pairs in the network
1616
Node states
• Ni- number of neighbors of i
• P – # packets flooded
• node-state matrix – [NixP]
• Method:
• Maintain local version
• Gossip packet availability using periodic
status packets
0003
0102
0111
321
003
102
111
321
Knowing Node States
Packet #
Node #
17
Delivery probabilities
• For all N nodes in the network
• Delivery prob matrix – [NxN]
• Method – offline experiment
• Each node broadcasts continuous
probes and rest of the nodes compute:
Computing Delivery Probabilities
10.60.93
110.42
0.50.311
321N
N
sentprobesTotal
receivedprobesTotalyprobabilitDelivery
1919
Pseudo code of UFlood• Source Node floods all packets
• All nodes periodically broadcast status packet
• On reception of a new data or status packet:
1.Update node-state matrix
2.Calculate utility
3.Transmit in burst – all packets whose utility is greater than neighbor’s utility
• CSMA handles contention (Listen then send or back off)
2020
Batching in UFlood
The packets are sent in batches
• To reduce overhead
• To limit the size of the status packet
Current design considers single batch!
2121
• Existing Solutions
• Key Idea of UFlood
• Design of UFlood protocol
• Evaluation
Outline of this Talk
23
Implementation
Meraki mini, 802.11b/g
2dbi Omni-directional antenna
Transmit power = 60mW
Bit rate = 24Mbps
CLICK software router toolkit
Carrier Sense on
24
Performance Comparison
Method: Flood a single batch of 5000-
1500B packet
Comparison:UFlood Vs. Controlled Flooding
UFlood Vs. Unicast routing
Time(sec)
packet(Mb)a ofsize *received packets# (Mbps)Throughput
25
UFlood Vs. Controlled Flooding
Used in routing protocols like AODV and DSR
Method:• Source broadcasts all packet• Every node rebroadcasts only once
Why we used?• Aim: to quickly send the route information
27
UFlood Vs. Estimated Unicast
Why unicast?• Multihop transfer to
one receiver Vs many receivers
Method• Setup independent unicast sessions to send a batch of packets from source (node 4) to each node
28
packet
packetpacketpacketpacketpacket
ExOR
src
A B
dst
C
packetpacketpacket
• Decide who forwards after reception
• Goal: only closest receiver should forward
30
Second best node transmits!
Why does UFlood Perform good?
Best node transmits!
UFlood is a local heuristic –
Occasional errors!
3131
Future WorkImplement network-coding, bit-rate
adaptation, and batching UFlood vs. existing high-throughput
flooding protocols