Practical Asynchronous Neighbor Discovery and Rendezvous for Mobile Sensing Applications Prabal Dutta and David Culler Computer Science Division University of California, Berkeley ACM SenSys 2008
Outline Introduction Related Work Proposed Method Simulation Conclusion
Introduction Challenge for asynchronous neighbor discovery: Awake infrequently Co-located discover each other Without any prior knowledge of their potential encounters Without external assistance
Introduction Two requirements Low-power operation Active vigilance These are at odds with each other since optimizing for one may come at the expense of the other.
Related Work Prior Work in asynchronous neighbor discovery: Stochastic McGlynn and Borbash proposed “Birthday Protocols” Quorum Tseng et al. propose a quorum-based protocol for multihop ad hoc networks Combinatorial For asymmetric duty cycles, the approach reduces to an NP- complete minimum vertex cover problem requiring a centralized solution.
Goal Discovery can be quite valuable in mobile networks Discovery should be a fundamental and continuous service in both mobile and static networks “Disco” addresses a more general set of neighbor discovery problems and avoids the need for a randomized protocol by using pairs of primes
Proposed method – using Chinese Remainder Theorem Choosing a prime Starting counting at reference period Two nodes, i and j, pick two numbers, m i and m j, such that m i and m j are relatively prime (coprimes)
Example Node ix ≡ 1 (mod 3) Node jx ≡ 2 (mod 5) prime Starting counting period
Chinese Remainder Theorem if x 0 is one such solution, then an integer x satisfies the congruences if and only if x is of the form x = x 0 + km for some integer k. One x 0 is: The goal is to find an x such that c i |m i and c j |m j. We can express this as a pair of simultaneous congruences There is exactly one such overlapping period every m = mimj periods. Letting x represent the reference period number, we have where the solution is unique (mod m) for m = m i m j, and where b i and b j must satisfy the congruences
Duty cycle Duty Cycle (DC) = 1/m i Node ix ≡ 1 (mod 3) Node jx ≡ 2 (mod 5) DC = 1/3 =33% DC = 1/5 =20%
Coprimes are not enough The moduli cannot be chosen independently by the nodes Such choices could lead to values of m i and m j that are not coprimes. Restricting the moduli to coprimes is not scalable There are only a handful numbers that can satisfy both the target duty cycle and coprime requirement. If m i = m j, then node i and j may never discover each if they wake up with the same period but different phase.
Example x cici cjcj Node ix ≡ 1 (mod 3) Node jx ≡ 2 (mod 3)
Coprimes are not enough (cont.) To require each node i to pick two primes, p i 1 and p i 2, such that p i 1 ≠ p i 2 ex: Duty Cycles are 97 and 103 (1/97 + 1/103 = 2%) For every pair of nodes i and j, there will be at least one pair in the set {(p i 1, p j 1 ), (p i 1, p j 2 ), (p i 2, p j 1 ), (p i 2, p j 2 )} that are relatively prime ex: (p i 1, p i 2 ) = (30, 77) and (p j 1, p j 2 ) = (35, 66) x = 30k and x = 77k, for all k ∈ Z + x = 35k + 1 and x = 66k + 1, for all k ∈ Z +
Choosing Primes Low discovery times are possible: one of the primes is very close to the reciprocal of the duty cycle the other prime is a much larger number The limit of the ratio between the auspicious and unfortunate worst-case latencies is Node i : (53, 883) Node j : (97, 103) 883 × 103 = × 97 = 5141
Slot Non-Alignment To maximize the likelihood that overlapping slots result in discovery, Disco transmits a beacon at both the beginning and end of a slot.
Duty Cycle form Discovery Latency Maximum discovery latency: t disco, Without loss of generality, p = p i 1 = p j 1 The minimum duty cycle, DC, must satisfy the following inequality The minimum required beacon rate:
Simulation Study Programming languagenesC Operating SystemTinyOS Empirical Sensor NodeTelos Wiress sensor node
Discover Latency Comparison
Discovery Latency: A Deeper Look prime pairs: (23,157), (29, 67), (31, 59), (37, 34)
Impact of Duty Cycle Asymmetry
Latency-Driven Discovery
Empirical Evaluation
Conclusion This paper presents a practical solution to the low- power asynchronous neighbor discovery problem. This simple protocol achieves discovery faster than other discovery protocols for a given duty cycle, allows nodes to independently select their own duty cycle.
Thank you