Effects of runtime failures in IEEE 1588 clock networks
Bálint Ferencz, Tamás Kovácsházy · 2017
Usage of a precise and accurate clock synchronization solution is unavoidable in modern distributed systems. In industrial usage IEEE 1588:2008 standard is becoming ubiquitous as it provides in-band, cost-effective and reasonably accurate distributed clocks to implement. The reliability is mostly discussed in a cybersecurity perspective, as maintaining the integrity of the clock synchronization messages is crucial to protect the consistency of the clock synchronization network. The current (NTP) and proposed (IEEE 1588v3) clock synchronization standards contain mitigation methods to counter these issues. The PTP protocol uses tens of variables to calculate the hierarchy of the synchronization tree, and update the state variables/clock servos of the synchronizing nodes. The temporal properties of these variable may induce sensitivity to transient memory errors. For example bit errors in static (or rarely recalculated) variables may introduce reconfigurations in the clock sync network which may lead to undesired consequences. This paper examines the robustness and reliability of the IEEE 1588:2008 implementations from a different point of view. The implementation of operational memories, caches, register files used in runtime hardware employ several competing volatile memory technologies. All of them are more or less sensitive to perturbations induced by their environment or to aging. This paper analyses the causes and effects of potential problems related to operation memory corruption and offers solutions so the possible breakdowns could be mitigated or at least detected.