practical asynchronous neighbor discovery and rendezvous for mobile sensing applications
DESCRIPTION
Practical Asynchronous Neighbor Discovery and Rendezvous for Mobile Sensing Applications. Prabal Dutta and David culler 6 th ACM conference on Embedded network sensor systems (2008) Jihee Ryu , Keunchan Park, Jaehyun Han, and Kihoon Cha. Contents. Introduction - PowerPoint PPT PresentationTRANSCRIPT
Practical Asynchronous Neighbor Discovery and Rendezvous for Mobile Sensing Applications
Prabal Dutta and David culler 6th ACM conference on Embedded network sensor systems (2008)
Jihee Ryu , Keunchan Park, Jaehyun Han, and Kihoon Cha
1
Contents Introduction Problems & Solution Approach Related Work Simplified Algorithm Disco Example Design
Why two primes are chosen? Pair of Primes Slot non-alignment To Avoid Choosing The Same Pair
Discussion Pros & Cons
2
Introduction
3
Mobile object interacts with other mobile and static objects 3 common patterns – talking, docking, and flocking
Neighbor Discovery A sensor node discovering another (one-hop) sensor node
Rendezvous Delivering messages to previously discovered neighbors
Talking Docking Flocking
Introduction(cont’)
4
Characteristics of Sensor Network Nodes may have different capabilities
Energy Functionality Mobility
Nodes operate at different (asymmetric) duty cy-cle Duty Cycle (DC): The fraction of time that a system is in
an "active" state Nodes starts asynchronously
No synchronization
Problems & Solution Approach
Problems Approaches
- Energy consumption - Low duty cycle (e.g. 1%)
- Link Dynamics (to de-tect addition of new links or attrition of old links)
- Asynchronous neigh-bor discovery based on Chinese Remainder Theorem
5
Related work
6
T
LR
t
8721
10943
121165
20191413
22211615
24231817
32312625
34332827
36353029
m
m
• Birthday [McGlynn01]• Randomly choose to listen,
transmit or be idle (sleep)• Unpredictable
• Quorum [Tseng02]• Listen during a row • Transmit during a column• Global agreement on duty
cycle
Two nodes, i and j reference period number, x 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
x = 7+15k, k Z+
Disco uses two primes/node to ensure pair-wise relative primes
Simplified algorithm
7
Disco Example
8
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, dis-covery will occur
1 2 3 4 5 67 8 9 10 11 12
13 14 15 16 17 1819 20 21 22 23 2425 26 27 28 29 3031 32 33 34 35 36
Why two primes are chosen?
9
The prime cannot be chosen independently by the nodes
Restriction of the coprimes to expression their de-sired duty cycle (1, ½, 1/3, … 1/k, where k Z+)
If prime of node i equals prime of node j, then nodes i and j may never discover each other if they wake up with the same period but different phase
Pair of Primes
10
To Overcome Previous Limits Choosing two primes, p1 and p2
Such that p1 ≠ p2 and the sum of their reciprocals (ap-proximately) equals the desired duty cycle
Simple Validation Ensuring a coprime pair from any two nodes
A coprime pair is exist in the set of probable pairsE.g. node i picks (3, 5) and node j picks (5, 7) {3,5} / {3,7} / {5,5} / {5,7} 3 rendezvous casesE.g. node i picks (30, 77) and node j picks (35, 66) {30,35} / {30,66} / {77,35} / {77,66} 0 rendezvous cases
Slot non-alignment In practice, slots will rarely be aligned because nodes
are… run independently do not adjust clock skews
To discover other node, transmits a beacon at both the beginning and end of a slot when
beaconing
Node i
Node j
Slot
Beacon
11
Node i
Node j
To Avoid Choosing The Same Pair
12
Assumption There are classes which do not need to discover each
other Deterministic algorithm
An ordered list of possible prime pairs are generated A prime pair’s position indicate a particular class’s modulo
Example Target duty cycle = 1%, Number of classes = 3
(101,10103) (103,3433) (107,1523) (109,1201) (113,863) …
Class 1 Class 2 Class 3 Class 1 Class 2 …
Glossary Balanced primes
the intra-node primes are approximately equal (e.g.37 and 43). Unbalanced primes
the intra-node primes are significantly different (e.g.23 and 157). Symmetric pairs
both nodes choose the identical pair of primes Asymmetric pairs
both nodes choose a different pair of primes
Discovery Latency the delay between the moment two nodes are within communi-
cations range to the moment when they first discover each other
13
Implementation t_slot = 10 ms
An Application can control Parameters
Ex) DC
The beaconing pol-icy Listening Beaconing
Power
Beacon
Slot
14
Beacon Rate Adaptation By the implementation, beacon mode can be
changed
Sending beacons during their normally sched-uled rendezvous slots with nodes in their neighbor table to ensure that routing links remain connected and synchronized, but they would not send other beacons
Sharing neighbors information, new node can discover neighbor more faster than expected
15
Impact of Duty Cycle Asymmetry
Suggests that more powerful beacons combined with less powerful mobile tags is feasible and beneficial
Static(High DC)
Mobile(Low DC)Mobile(Low DC)Mobile(Low DC)
16
Predictable
2%
17
Robustness to Clock Skew Over longer timescales, nodes that have sig-
nificantly different skews are likely to have difficulty with rendezvous
but asynchronous discovery should still work
Node i
Node j
Node k
18
Pros
19
Algorithm is simple A solution to the low-power asynchronous
neighbor discovery problem in mobile sensing applications
It is possible to make decision independently at node sides
Cons
20
Why they use a slot numbers at evaluation? Different discovery time for different nodes Restriction of possible number of frequency
Discovery Rate
Small time slot makes neighbor discovery faster21
Why they use a slot numbers at evaluation?
22
Different discovery time for different nodes
23
29, 67
23, 157
29, 67
23, 157
Restriction of possible number of fre-quency
1% duty cycle : 21 pairs 5% duty cycle : 4 pairs
24