Title: Time Synchronization for Wireless Sensor Networks
1Time SynchronizationforWireless Sensor Networks
- IPDPS 2001 - WNC Workshop
- April 27, 2001
- University of California, Los Angeles
- Department of Computer Science
- April 10, 2001
Jeremy Elson and Deborah Estrin
2wireless sensor networks
Environmental Monitoring
- New technologies have reduced the cost, size, and
power of micro-sensors and wireless interfaces. - Systems can
- Sense phenomena at close range
- Embedded into environment
- These systems will revolutionize
- Environmental monitoring
- Disaster scenarios
- Fantastic Voyage?
3new challenges
- Energy constraints imposed by unattended systems.
- Scaling challenges due to very large numbers of
sensors. - Level of dynamics
- Environmental obstacles, weather, terrain, etc.
- System large number of nodes, failures.
4Part I Defining the Problem
5time synchronization
- Time sync is critical at many layers
6time synchronization
- Time sync is critical at many layers
- Beam-forming, localization, distributed DSP
7time synchronization
- Time sync is critical at many layers
- Beam-forming, localization, distributed DSP
- Data aggregation caching
t1
t0
t2
t3
8time synchronization
- Time sync is critical at many layers
- Beam-forming, localization, distributed DSP
- Data aggregation caching
- TDMA guard bands
Radio On
Radio Off
Sender
Radio Off
Receiver
Guard band due to clock skew receiver
cant predict exactly when packet will arrive
Time
9time synchronization
- Time sync is critical at many layers
- Beam-forming, localization, distributed DSP
- Data aggregation caching
- TDMA guard bands
- Clock sync for TDMA is more important in sensor
nets, compared to traditional nets - Listening is EXPENSIVE
- Infrequent data means infrequent sync
- Small data means guard band is relatively big
10time synchronization
- Time sync is critical at many layers
- Beam-forming, localization, distributed DSP
- Data aggregation caching
- TDMA guard bands
- Traditional uses (debugging, user interaction,
certain crypto algorithms, database consistency,
etc.)
11time synchronization
- Time sync is critical at many layers
- Beam-forming, localization, distributed DSP
- Data aggregation caching
- TDMA guard bands
- Traditional uses (debugging, user interaction)
- But time sync needs are non-uniform
- Maximum Error
- Lifetime
- Scope Availability
- Efficiency (use of power and time)
- Cost and form factor
12related work
- Clock sync over computer networks
- Protocols NTP, Berkeley, Cristians
probabilistic alg - Stable frequency standards
- Cesium, Rubidium, temperature-controlled
- National time standards
- USNOs time, UTC/TAI
- Two-way satellite time transfer, GPS
- Virtual clocks (Lamport)
13whats wrong with whats there?
- Existing work is a critical building block
BUT...
- Energy
- e.g., we cant always be listening or using CPU!
- Wide range of requirements within a single app
no method optimal on all axes - Cost and form factor can disposable motes have
GPS receivers, expensive oscillators? Completely
changes the economics
14our approach
- Use multiple modes
- Extend existing sync methods
- Develop new methods, and compositions of methods
- Characterize these methods
- Use tiered architectures
- Not a single hardware platform but a range of
hardware - Analogy memory hierarchy
- The set as a whole can (?) be necessary and
sufficient, to minimize resource waste - Dont spend energy to get better sync than app
needs
15a palette of sync methods
Goal make the set rich enough to minimize waste
Time Sync Parameter Space (max error, lifetime,
scope, etc.)
Available Sync Methods
Better
Application Requirement
Better
16a palette of sync methods
Goal make the set rich enough to minimize waste
Time Sync Parameter Space (max error, lifetime,
scope, etc.)
Ideally, methods should be tunable
Better
Application Requirement
Better
17Part II Initial Experimentation
18post-facto sync
- Basic idea
- A set of receivers is waiting for an event
- Locally timestamp an event when it happens
- After the fact, reconcile clocks
- Allows us to avoid wasting energy on sync when it
is not needed - Train clocks with NTP beacon after event
- NTP is good at correcting frequency
- A local pulse is good at correcting phase
- How well does the combination work?
19expected error sources
- Clock skew
- We hope to reduce this with NTP BUT
- Temperature variations likely in sensor nets
- Nondeterministic delays on receivers
- Not considering senders to be synced helps!
- Propagation delay
- Using RF to sync works if were measuring sound,
not if were measuring RF
20an initial experiment
- Create a (wired) stimulus sent to 10 nodes
- We know it arrives at each node simultaneously
- With how much error can we timestamp it? (All
timestamps should be the same) - Four methods
- NTP alone
- Sync pulse alone
- Pulse active NTP
- Pulse disconnected NTP
21(No Transcript)
22the experiment says?
- Sync pulse much better than NTP 100usec vs.
1usec (clock resolution1usec) - At the cost of a localized timebase
- PulseNTP10x better than either alone
- Multi-modal solutions are good!
- Important We do as well when we train NTP first,
then cut off its time source - No time source needed no radio listening much
lower energy expenditure
23future work 1
- Repeat experiment in wireless context
- Test determinism of different ways of sending the
pulse (radios, light?) - Multi-hop sync pulse chaining
- Characterize - error vs. distance
- analogous to our current error vs. time
- Better understand limitations and uses of
existing methods (NTP, GPS, etc.)
24future work 2
- Testbed for object tracking
- In cooperation with Girod acoustic ranging
- Uses time sync in two ways
- Each localization point requires sync
- Integration of pointsover time requires sync
- Implement synched msgprimitive using beacons
25future work 3
- Work in simulation (somewhat less well defined)
- Explore aspects of sync without burden of real
implementations - Scaling
- Adaptive fidelity
- Automatic mode selection
- Certain tuning knobs
26thats all, folks!
Thank you!