Synchronizing clocks in the presence of faults
Journal of the ACM (JACM)
A new fault-tolerant algorithm for clock synchronization
Information and Computation
Dynamic fault-tolerant clock synchronization
Journal of the ACM (JACM)
Proceedings of the fourth annual ACM symposium on Principles of distributed computing
The Byzantine Generals Problem
ACM Transactions on Programming Languages and Systems (TOPLAS)
Self-stabilizing systems in spite of distributed control
Communications of the ACM
Real-Time Systems: Design Principles for Distributed Embedded Applications
Real-Time Systems: Design Principles for Distributed Embedded Applications
On the possibility and impossibility of achieving clock synchronization
STOC '84 Proceedings of the sixteenth annual ACM symposium on Theory of computing
Self-stabilizing clock synchronization in the presence of Byzantine faults
Journal of the ACM (JACM)
Self-stabilizing pulse synchronization inspired by biological pacemaker networks
SSS'03 Proceedings of the 6th international conference on Self-stabilizing systems
The truth system: can a system of lying processes stabilize?
SSS'07 Proceedings of the 9h international conference on Stabilization, safety, and security of distributed systems
A fault-resistant asynchronous clock function
SSS'10 Proceedings of the 12th international conference on Stabilization, safety, and security of distributed systems
SSS'11 Proceedings of the 13th international conference on Stabilization, safety, and security of distributed systems
Fault-tolerant algorithms for tick-generation in asynchronous logic: robust pulse generation
SSS'11 Proceedings of the 13th international conference on Stabilization, safety, and security of distributed systems
Journal of Computer and System Sciences
Hi-index | 0.00 |
Embedded distributed systems have become an integral part of safety-critical computing applications, necessitating system designs that incorporate fault tolerant clock synchronization in order to achieve ultra-reliable assurance levels. Many efficient clock synchronization protocols do not, however, address Byzantine failures, and most protocols that do tolerate Byzantine failures do not self-stabilize. Of the Byzantine self-stabilizing clock synchronization algorithms that exist in the literature, they are based on either unjustifiably strong assumptions about initial synchrony of the nodes or on the existence of a common pulse at the nodes. The Byzantine self-stabilizing clock synchronization protocol presented here does not rely on any assumptions about the initial state of the clocks. Furthermore, there is neither a central clock nor an externally generated pulse system. The proposed protocol converges deterministically, is scalable, and self-stabilizes in a short amount of time. The convergence time is linear with respect to the self-stabilization period. Proofs of the correctness of the protocol as well as the results of formal verification efforts are reported.