ACM Comm 2010 May Principles of Robust Timing over the Internet (Notes)
Principles of Robust Timing over the Internet |
Contents
Principles of Robust Timing over the Internet
The key to synchronizing clocks over networks is taming delay variability. Synchronizing timing between disparate ecosystems, or even between objects withing the same ecosystem, to any acceptable degree, is impossible. This article explains that.
How to synchronize biological software running over a Darwin Machine which is event, not time driven?
People
Ideas
- Time is an event.
- Light Speed \(c\) is finite.
- No two artifacts can synchronize faster than \(c\). This is a hard limit.
- Time \(t\) is true time measured in seconds in a Newtonian universe, with the origin at some arbitrary time point.
- Clock \(C\) reads \(C(t)\) at true time \(t\).
- Constant Offset Clock Clock \(C_{o}(t)\) always reads faster than true time.
- Constant Skew Clock Clock \(C_{s}(t)\) always reads slower than true time.
- Drifting Clock Clock \(C_{d}(t)\) always reads slower or faster than true time as time goes on. In computers drift is related to computer temperature.
- Perfect Clock Theoretical clock \(C_{p}(t)\) that always reads true time.
- Skew or drift are never constant over any time interval.
- Synchronization Delay. Even \(C_{p}(t)\) can appear to drift due to communication delays, which always vary in the real world.
- Clock Uses
- Establish a strict order between events.
- A simple time counter can establish order with good accuracy, with no correction or update needed.
- Measure time durations between events
- Define a universally comparable and triggerable event label, the “time of day.”
- Establish a strict order between events.
- Allan Deviation plot, which measures oscillator stability (variability as a function of timescale).
- Feedback The Client clock sends time errors back to the Master clock for correction during the next update round.
- Feed-Forward The Master clock applies the correction before sending the time update.
- Difference Clock Tracks the time difference between two clocks.
- Synchronization over networks is actually impossible. For clocks, data, events, or anything else. See Einstein, A., and his articles on mechanical clock synchronization.
- Asymmetry Jitter Changes in synchronization, even leading to improvements, can confuse software because the jitter has an unknown validity from an unknown source.
References
- Ridoux, J., Veitch, D. RADclock Project[1].
Internal Links
Parent Article: Reading Notes