Title: FineGrained Network Time Synchronization using Reference Broadcasts
1Fine-Grained Network Time Synchronization using
Reference Broadcasts
- slides for cs7210 by David Spain
- (http//www.cc.gatech.edu/dspain/cs7210/slides_FI
NE_GRAINED_NETWORK.ppt
2Reference-Broadcast Synchronization
- Nodes send reference beacons to their neighbors
via a physical layer broadcast. - Allows highly accurate relative timescales to be
established or global timescales when used in
conjunction with an external time source. - Motivating applications system debugging, sensor
data fusion, etc
3 2. Related Work
- NTP-like protocols commonalities (2nd paragraph)
- Settling times for GPS synchronized clocks may be
too long or unavailable. (sensor power/cost
issues too) - CesiumSpray similar but unable to unify
multiple domains w/o a common external
timesource. - Liao et al similar time bounds, but they
require guarantees about the underlying network - Others similar time bounds, but require tight
coupling of the application with the MAC (add a
deterministic bit-detector)
43. Traditional Synch. Methods
- Typical server pulses clock value. Also, client
request / server reply ? client gains one-way
latency estimate. - The problem of network time synchronization is
all about NON-DETERMINISM.
53.1 Sources of Synch Error
- SEND TIME msg from host to network interface
- ACCESS TIME contention on the transmit channel
(contention-based MACs, ex Ethernet). - PROPAGATION TIME transit, includes queuing
switching delay at routers. - RECEIVE TIME delay between arrival at network
interface notifying the host
63.1/3.2
- RBS removes NON-DETERMINISM of Send Access
- Send RBS gives relative time msgs have no
timestamp - THINK about receiver vs server synchronized
- Access Simultaneous for all receivers! (phys.
layer broadcast) - Propagation assume 0 b/c beacons are only heard
over small area (is this assumption valid?) - Receive factor this out as mostly deterministic!
Time to read a bit is constant, read system clock
in interrupt handler. Remaining non-determinism
is Gaussian.
74. Reference Broadcast Synchronization (single
hop RBS algorithm)
- Phase Offset (4.1)
- Broadcast a packet to n gt 2 receivers
- Receivers record local time of broadcast
- Receivers trade observations
- 3 Factors
- Group dispersion (max phase error among all rcvr
pairs) - Non-determinism of receiver
- Clock Skew
- Receiver non-determinism may be statistically
removed by sending multiple broadcast beacons
(Recall non-D was Gaussian)
84.2 Estimation of Clock Skew
- Clock Skew clocks run at different rates.
- Accuracy difference between an oscillators
actual expected frequencies. - Stability the oscillators tendency to stay at
the same rate (long short term) - Calculated least-squares linear regression over
the multiple phase error samples. Frequency
phase of the local clock vs remote are given by
slope line intercept. (Fig 4) - Allows conversion from local clock to remote
clock times!
94.4 Commodity Hardware Implementation 4.5
Kernal Timestamps
- RBS as a user space daemon on IPAQs
- NTP NTP-Offset account for NTPs delayed
adjustment - Tested under light heavy network loads
- Light RBS 8 times better than NTP
- Heavy RBS about the same, NTP -30x
- Timestamping during network interrupt yields
excellent results (1.85usec 1.28usecs vs
6.29usec 6.45usec)
104.6 Post-Facto Synchronization
- Wake-up after an event of interest
- Perform synchronization with neighbor nodes
- Use least squares linear regression to
extrapolate backwards - Saves power in a sensor network NTP is
particularly unsuited to these deep sleep
situations (Question if sleeping, how would it
detect the event of interest?)
114.7 Summary of Advantages of RBS
- Largest sources of non-deterministic latency
removed via using broadcast to synchronize
receivers - Multiple broadcast samples provide
- Synchronization b/c errors have a nice
statistical distribution. - Estimation of clock skew
- Extrapolation of past phase offsets post-facto
synchronization - Outliers lost packets handled best fit line
still works - Local timescales (absolute available in the next
section!)
125.1 Multihop Clock conversion
- It is just the single hop algorithm extended!
- A two hop example
- Local clock ? Neighbors clock
- Neighbors clock ? Destination clock
- Requires overlap in the broadcast domains
135.2 Time Routing in Multihop Networks5.3
Multihop Performance
- Shortest path using Root Mean Squared error
(scalability issues in larger networks) - A more localized routing scheme do time
conversions as the packet is routed - Avg n-hop path error approx sn0.5 there are no
comparison results given!
145.4 Synchronization to External Timescales
- Add a host to the broadcast routing domain that
has GPS time - Other hosts find a multihop conversion route to
that timeserver. Easy.
157. Summary Future Work
- RBS synchronizes a set of receivers
- Remove non-determinism via broadcast
- Nice error distribution allows calculation of
clock skew post facto synchronization - Localized global timescales
- Need
- Algorithm to elect which nodes are beacons
- Minimum time to acquire synchronization