Presentation is loading. Please wait.

Presentation is loading. Please wait.

Efficient Flooding for Wireless Mesh Networks

Similar presentations


Presentation on theme: "Efficient Flooding for Wireless Mesh Networks"— Presentation transcript:

1 Efficient Flooding for Wireless Mesh Networks
Jayashree Subramanian

2 Challenges in Wireless Flooding
Wireless receptions are probabilistic How many packets to transmit? Pattern of packet reception is non-deterministic What packets are with each receiver? Feedback is expensive Wireless transmissions are inherently broadcast Two near by transmissions cannot coexist How to exploit opportunism?

3 Design of UFLOOD Design questions
Who should transmit next? What to transmit? UFlood’s claim: Selection of best sender Higher throughput Fewer #transmissions What are the important question in designing wireless flooding protocols: (1) Who should transmit next? (2) And what packet a node should transmit? How does UFLOOD handle these – It selects the best sender and send coded packets. Sender selection Feedback

4 UFlood’s Sender Selection Strategies
Favor higher delivery Probabilities Favor senders with large number of receivers Favor senders with new information Account for correlated receptions Utility = Value of a node’s transmission Best Sender  Highest Utility

5 Computing Packet Utility
Utility(A) Bit rate of node A Indicates if transmissions of node A are useful to node B This is the same equation given in the UFLOOD paper. P(b) B(b) I? Neighbors(A) Delivery probability from node A to node B

6 How UFLOOD works? PA,B – Independent experiment
U(S)=1.7 U(S)=0.7 PA,B – Independent experiment b(A) – Bit rate selection scheme IA,B – Feedback packets B D C A S S 0.9 0.5 0.2 0.1 0.5 This slide explains how uflood works (assuming flooding of a single packet): “Red circle indicates that a node has the packet. Each node calculates utility based on: (1) Delivery probabilities and (2) availability of the packet” First the source node S is the only node that has the packet and is the best sender. Source S transmits the packet. Nodes A and D receives the packet. Now, nodes S, A, and D compete for the best sender position. Each node calculates the utility of every other node in the network. Node A wins and sends the packet. This continues until all the nodes in the network receives the pcket 0.5 U(A)=1.5 A B 1 0.2 0.3 D U(D)=0.8 C 0.5

7 Pseudo Code of UFlood Packet preparation:
All APs receive the file from multicast server. Split file in to equal sized packets Group in to batches of 64 packets. Batches are flooded one at a time.

8 Pseudo Code for UFlood Random Network Coding
Source AP has “native” packets (n1,…n64) Source constructs “coded” packets = Linear Combination or LC(n1,…n64) P1= c1` n1+ c2` n2+…+ c64` n64 P2= c1`` n1+ c2`` n2+…+ c64`` n64 These are first generation packets

9 Pseudo Code of UFlood UFlood is distributed and a local heuristic: Nodes periodically calculate utility of itself and all its neighbors The best sender transmits coded packets in burst. All nodes recode every time a packet is sent Nodes broadcast feedback of the packets they possess. Go to Step 6.

10 Implementation Issues: Feedback
I(A,B)=1 if transmissions of A are linearly independent to packets of B How to construct feedback for Coded packets? Coefficients of each coded packet – Huge! Rank = # Linearly independent coded packets bitmap identifying each distinct first-generation packet that contributed via coding to any of the packets B holds Feedback  Rank(B)+bitmap+Rank(N(B)) How often to send feedback? Smart feedback Nodes interpolates feedback Detects an idle channel for 3-pkt duration

11 Implementation Issues: Deadlocks
Feedback packets includes neighbor’s rank – Two hop information  Accurate utility calculation of neighbors Sends burst of packets  Reduces #deadlocks

12 Implementation Issues: Burst size
Burst size = minBεN(A)(LA,B) LA,B= # Packets A can send to B without causing utility(B) to be greater than utility(A)

13 Contributions of UFlood
Notion of Utility – Sender selcection Smart feedback for coded packets A distributed implementation

14 Lower Bit Rates are Slow but Strong
PA,B at b1 <= PA,B at b2, if b1>b2 PA,B at 1Mbps = 1, then PA,B at 54Mbps<=1 Cite the URL

15 Challenges in Bit Rate Selection
Single hop (Lower rate) Vs Multi-hop (Higher rate) A 54M 11M B 54M Reword the challenge C

16 Challenges in Bit Rate Selection
Many senders and Many Receivers AP 54M 54M 54M C X Y 5.5M 11M Complexity? B 11M 5.5M A Net Rate = 11M Net Rate = 5.5M

17 Bit Rate Selection for Node X
Step 1: ETT(X,C,b) = 1/(PX,C*b) Step 2: Best bit rate for link XC = minbETT(X,C,b) Step 2: Construct Dijkstra shortest path routes from AP to all the nodes, using ETT metric Step 3: Pick the least bit rate to the next hop 1M 54M AP 54M C X Y 5.5M 11M B 11M 5.5M A

18 Implementation 6 APs and 20 nodes on a 250x150meters 3-floor office building Nodes: 500 MHz AMD Geode LX800 CPU 802.11b/g, Omni-directional antenna Transmit power = 12 mW CLICK software router toolkit Carrier Sense on

19 Performance Comparison
Metrics:

20 Protocols used for Comparison
UFlood Vs MORE Statically assigns the number of packets a node sends for each packet reception No detailed feedback High throughput but wasted transmissions UFlood Vs MNP Save Energy Too slow but efficient transmissions

21 UFlood: Throughput MNP MORE UFlood

22 UFlood: Airtime UFlood MORE MNP

23 Why UFlood Wins? Each UFLOOD transmission benefit twice as many receivers as MORE and 20% more than MNP

24 Protocols used for Comparison
UCast Constant Bitrate of 5.5Mbps Ucast/Rate Use Bit rate selections Strawman Traditional WiFi multicasting N/w coding Dircast AP sends packets until the poorest receiver receives all the packets N/W coding Rate selection for APs

25 UCast Vs Dircast VS Strawman: Throughput
Insensitive to AP connection Ucast/Rate Ucast Dircast Strawman Client coopertion Few APs never send!

26 UCast Vs Dircast VS Strawman: Airtime
Inherent properties of UFlood helps reduce #transmissions Strawman Dircast Ucast Ucast/Rate

27 Why Client Cooperation?
UCast Only best APs send ? Strawman One line result at the end # Cooperating clients/Total #clients

28 Contributions of this work
UCast: Client cooperation multicasting and experiments show a huge benefit UFlood: High-throughput distributed flooding scheme Introduce notion of Utility Smart feedback for coded packets Increases throughput and uses fewer transmissions A novel bit rate selection for flooding protocols

29 Questions?

30

31 Sender Selection Strategy 1: Favor High Delivery Probabilities
AP A C 0.8 0.3 0.9 0.2 B D Back…

32 UFlood Strategy 2: Favor Large Number of Receivers
AP A B 0.4 0.5 0.4 0.4 0.4 0.4 C D E F G Back…

33 UFlood Strategy 3: Favor Senders with New Information
AP A C 0.2 0.1 0.9 0.2 Feed back B D Back…

34 UFlood Strategy 4: Account for Correlated Receptions
P1 … P50 AP 0.5 0.5 P`1 … P`25 F1 F2 P``1 … P``25 1 1 But in realistic wireless network, feedback . Change animationLast two requires dynamic updates R P`1 … P`25 == P``1 … P``25? Feedback? Back…

35 Inherent Wireless Characteristics
Independent Receptions Links Invariance

36 What is Random Network Coding(RNC)?
In Wired Networks… P1 P2 F1 F2 P1 P2 F3 F - Forwarders R - Receivers P1 P1+P2 P2 P1+P2 P1+P2 F4 P1,? ?,P2 P1,P1+P2 R1 R2 P1+P2,P2

37 What is RNC? In Wired Networks…
P1…P10 P11…P20 P``1…P``10 F1 F2 P`1…P`10 F3 F - Forwarders R - Receivers P`1…P`10 P``1…P``10 P```1…P```10 P`1…P` LC(P1,…,P10) P``1…P`` LC(P11,…,P20) P```1…P``` LC(P`1,…,P`10, P``1,…,P``10) F4 R1 R2 P`1…P`10 P```1…P```10 P``1…P``10 P```1…P```10 How many packets to transmit ? - connectivity

38 Calculation of IA,B Max # of linearly independent coded packets that B can receive from A This is based on Section 4.6 in the paper.

39 Factors Affecting Performance of UFLOOD: Network size
Large network has many potential senders and receivers with hard-to-predict states and choosing best sender is a challenge

40 Factors Affecting Performance of UFLOOD: Node Density
Low delivery probability cause different nodes to receive different packets, which increases importance of sender selection

41 Factors Affecting Performance of UFLOOD: Batchsize
Larger batches allow coding to be effective. Smaller batches decrease throughput because of per-batch overhead

42 Factors Affecting Performance of UFLOOD: Bitrates
UFLOOD’s performance is consistently higher than MORE at various bitrates

43 Background on Bit rates
If delivery probability of a link at bit rate R1 Mbps = P(R1), then P(R2)>P(R1) for all R2<R1 Bit error rate Cite the URL Signal to Noise Ratio


Download ppt "Efficient Flooding for Wireless Mesh Networks"

Similar presentations


Ads by Google