1 Practical Asynchronous Neighbor Discovery and Rendezvous for Mobile Sensing Applications Prabal Dutta and David Culler Computer Science Division University of California, Berkeley {prabal,culler}@cs.berkeley. edu Sensys’08 – Raleigh, NC – Nov. 5-7, 2008
34
Embed
Practical Asynchronous Neighbor Discovery and Rendezvous for Mobile Sensing Applications
Practical Asynchronous Neighbor Discovery and Rendezvous for Mobile Sensing Applications. Prabal Dutta and David Culler. Computer Science Division University of California, Berkeley {prabal,culler}@cs.berkeley.edu. Sensys’08 – Raleigh, NC – Nov. 5-7, 2008. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1
Practical Asynchronous Neighbor Discoveryand Rendezvous for Mobile Sensing Applications
Prabal Dutta and David Culler
Computer Science DivisionUniversity of California, Berkeley{prabal,culler}@cs.berkeley.edu
Sensys’08 – Raleigh, NC – Nov. 5-7, 2008
2
Mobility makes energy and communication challenges fundamentally harder• Energy
– Must carry it along with the node
– Or harvest it from the ambient environment
– And deal with inherent uncertainty of harvesting
• Link dynamics– Link. What link?– Never before seen link– What radio channel?– When to look?– Can’t just probe during
deployment– History is a poor guide– History is no guide
“Weather + mobility = uncertain energy budget”- Jacob Sorber, Sensys 2007
J. Sorber et al., “Eon: A Language and Runtime for Perpetual Systems”, Sensys’07, Sydney, Australia
3
Mobility makes asynchronous neighbor discovery
a fundamental problem
The asynchronous neighbor discovery problem
• How can two systems that are– rarely co-located– awake infrequently– operating with independent duty cycles
• discover each other– without prior knowledge of potential
encounters– without external assistance?
4
Emerging class of low-power mobile sensing applications
Talking Docking Flocking
[Liu04]
[Choudury04,07]
[Wark07]
[Malinowski07]
[Borriello04]
[Huang05] [Huang05] [Huang05]
[UP08]
[Eisenman08]
Three interaction patterns.Three operating regimes: symmetric, asymmetric,
hybrid
5
Some asynchronous neighbor discovery techniques exist
• Quorum [Tseng02]• Divide time into m x m
intervals• Listen during a column• Transmit during a row• Rendezvous at their
intersection• Used by LPL (B-MAC, X-MAC)
– Listen periodically (m = Tlisten)– Transmit long preambles or
same packet repeatedly, periodically (E{Tlisten/2})
– Rendezvous when these listen and transmit times overlap
• Overhearing problem
TL Rt
87
21
109
43
1211
65
2019
1413
2221
1615
2423
1817
3231
2625
3433
2827
3635
3029
CCAO(15 ms)
in T2
m
m
But requires global agreement onthe minimum node duty cycle (B-MAC)
or unclear termination condition (X-MAC)
6
Variations on a theme
T
L
R
t
8721
10943
121165
20191413
22211615
24231817
32312625
34332827
36353029
m
m
• Birthday [McGlynn01]• Randomly choose to listen,
• Quorum [Tseng02]• Listen during a row • Transmit during a column• Used by some TDMA protocols• Global agreement on duty cycle
7
Disco: a new asynchronous neighbor discovery algorithmthat is fully distributed and allows local duty cycle choices
• Two nodes, i and j– start their counters ci and cj
– at arbitrary times, say x = 1 and x = 2– increment counters with equal period Tslot– and wake up at some relatively prime intervals, say mi = 3 and mj = 5
• Dark cells indicate times when node i and j turn on radios• Both nodes are awake at times x = 7 and x = 22• This rendezvous pattern repeats for x = 7+15k, k Z+
• Works by virtue of the Chinese Remainder Theorem– Provided periods mi = 3 and mj = 5 are relatively prime
• Disco uses two primes/node to ensure pairwise relative primes
The choice of primes is a critical design consideration that enables great flexibility with relative simplicity
• Introduction• Related Work• Disco Overview• How does it work?
– From duty cycle to primes– Slot design to ensure rendezvous– A complete example– Duty cycle as a function of latency– (A lot of other details are in the paper)
• How well does it work?• How is it used?• What are its limitations?
10
Choosing primes from the duty cycle
+DC pi1 pi21 1
+5% = 37 431 1
=
+5% = 23 1571 1
11
Ensuring bi-directional discovery during rendezvous
i
j
i leads j i and j in syncCSMA/CA
12
A more realistic example of Disco operation
• Node i is awake at times:– 5, 10, 15, 20, 25, 30, 25, and– 7, 14, 21, 28, 35
• Node j is awake at times:– 1, 6, 11, 16, 21, 26, 31, and – 1, 8, 15, 22, 29, 36
• Nodes i and j are both awake at:– 15, 22
• Two primes per node ensures even if both nodes pick same primes, discovery will occur
i j Rt
87
21
109
43
1211
65
2019
1413
2221
1615
2423
1817
3231
2625
3433
2827
3635
3029
B/L/BO(11 ms)in Disco
m
m21
15
13
Outline
• Introduction• Related Work• Disco Overview• How does it work?• How well does it work?
– Discovery latency– Choice of prime pairs– Duty cycle asymmetry
• How is it used?• What are its limitations?
14
First, some terminology
• Discovery latency: time to rendezvous from an unsynchronized state
• Slot length: the time to beacon + listen (Tslot)
• Beacon rate: number of beacons per second
• Balanced primes: when intra-node primes are approximately equal (e.g. 5% = 1/37 + 1/43)
• Unbalanced primes: when intra-node primes are significantly different (e.g. 5% = 1/23 + 1/157)
• Symmetric pairs: when inter-node pairs are identical (e.g. both nodes i and j chooses (37, 43))
• Aymmetric pairs: when inter-node pairs are distinct (e.g. node i chooses (37, 43) and node j chooses (23, 157))
15
CDF of discovery latency for the Disco, Quorum, and Birthday operating at the same duty cycle (5%)
Birthday starts strong but the tail is longDisco and Quorum track each other
Disco using balanced primes in
symmetric pairs
16
Practice often beats theory
Theory
Practice
17
Choice of primes and pairs greatly affects discovery latency
Birthday
Unbalanced primes in asymmetric pairsshow best latency(23,157), (29,67)
Unbalanced primes in symmetric pairsshow worst latency(23,157), (23,157)
Balanced primes in symmetric pairsshow average latency(37,43), (37,43)
5%
18
Limit of the ratio between the best (U/A) and worst (U/S)discovery latency is equal to the duty cycle
Example:1% ≈ (1/101 + 1/10103) ≈ (1/103 + 1/3433)
Best cast: O(101*103)Worst case:
O(101*10103)≈ 1
100
19
A concrete example: the benefits of good primes and pairs
Discovery occurs more quickly in75% of cases
Discovery occurs more slowly in 19% of cases
And the really bad pairing is quite rare
Four unique pairs for a 5% duty cycle:(23,157), (29,67), (31,59), (37,43)
CDF of discovery latencies for the 16 distinct combinations
Conclusion: asymmetry helps most of the time.Take advantage if possible.
20
Discovery latency decreases with increasing asymmetryin pairwise duty cycles for a fixed average duty cycle
Sink nodes
Cattle nodes
[Wark07]
DC = 3% = (3%+3%)/2
(61,73), (61,73)
DC = 3% = (2%+4%)/2
(97,103), (47,53)
DC = 3% = (1%+5%)/2
(191,211), (37,43)
Useful when applicationhas natural asymmetry,
like “Docking”
21
Neighbor discovery in clusters
2% = (97,103)
Time to discovery of first node is short.Sharing neighbor information could be
useful
22
Outline
• Introduction• Related Work• Disco Overview• How does it work?• How well does it work?• How is it used?