Realizing Uncertainty-Aware Timing Stack in Embedded Operating System

Time awareness is critical to a broad range of emerging applications -- in Cyber-Physical Systems and Internet of Things -- running on commodity platforms and operating systems. Traditionally, time is synchronized across devices through a best-effort background service whose performance is neither observable nor controllable, thus consuming system resources independently of application needs while not allowing the applications and OS services to adapt to changes in uncertainty in system time. We advocate for rethinking how time is managed in a system stack. In this paper, we propose a new clock model that characterizes various sources of timing uncertainties in true time. We then present a Kalman filter based time synchronization protocol that adapts to the uncertainties exposed by the clock model. Our realization of a uncertainty-aware clock model and synchronization protocol is based on a standard embedded Linux platform.

[1]  Brian F. Cooper Spanner: Google's globally-distributed database , 2013, SYSTOR '13.

[2]  Alec Wolman,et al.  Outatime: Using Speculation to Enable Low-Latency Continuous Interaction for Mobile Cloud Gaming , 2015, MobiSys.

[3]  J. Elson,et al.  Fine-grained network time synchronization using reference broadcasts , 2002, OSDI '02.

[4]  Woo-Young Choi,et al.  A New Network Synchronizer Using Phase Adjustment and Feedforward Filtering Based on Low-Cost Crystal Oscillators , 2010, IEEE Transactions on Instrumentation and Measurement.

[5]  Aggelos Bletsas Evaluation of Kalman filtering for network time keeping , 2005 .

[6]  Christoph Lenzen,et al.  PulseSync: An Efficient and Scalable Clock Synchronization Protocol , 2015, IEEE/ACM Transactions on Networking.

[7]  Qi Zhao,et al.  ACES: adaptive clock estimation and synchronization using Kalman filtering , 2008, MobiCom '08.

[8]  Xinjun Sheng,et al.  A New Time Synchronization Method for Reducing Quantization Error Accumulation Over Real-Time Networks: Theory and Experiments , 2013, IEEE Transactions on Industrial Informatics.

[9]  Bo Hu,et al.  Vector Kalman Filter Using Multiple Parents for Time Synchronization in Multi-Hop Sensor Networks , 2008, 2008 5th Annual IEEE Communications Society Conference on Sensor, Mesh and Ad Hoc Communications and Networks.

[10]  Gyula Simon,et al.  The flooding time synchronization protocol , 2004, SenSys '04.

[11]  David L. Mills,et al.  Internet time synchronization: the network time protocol , 1991, IEEE Trans. Commun..