Virtualize Everything But Time
The authors propose a new timekeeping architecture for virtualized systems, in the context of Xen. Built upon a feed-forward based RADclock synchronization algorithm, it ensures that the clocks in each OS sharing the hardware derive from a single central clock in a resource effective way, and that this clock is both accurate and robust. A key advantage is simple, seamless VM migration with consistent time. In contrast, the current Xen approach for timekeeping behaves very poorly under-live migration, posing a major problem for applications such as financial transactions, gaming, and network measurement, which are critically dependent on reliable timekeeping. They also provide a detailed examination of the HPET and Xen Clocksource counters. Results are validated using a hardware-supported testbed.