A Review on Message Complexity of the Algorithms for Clock Synchronization in Distributed Systems
Chandeepa Dissanayake, Chanuka Algama
TL;DR
The paper analyzes how message complexity affects clock synchronization in distributed systems, focusing on four classic algorithms: Lamport's algorithm, Ricart–Agrawala, Vector Clocks, and Christian's algorithm. It surveys foundational concepts (Byzantine General Problem, clock accuracy/precision, skew/offset, and timestamping) and contextual protocols (NTP, PTP, RBS, TPSN) to frame a comparative metric of communication cost. The key finding is that Lamport's, Ricart–Agrawala, and Vector Clocks operate with $O(N)$ message complexity, while Christian's algorithm achieves $O(1)$, highlighting a trade-off between simplicity, fault tolerance, and efficiency. The discussion also references related approaches (RBS, TPSN, Berkeley) and emphasizes how choosing a synchronization strategy impacts network load and reliability in practice.
Abstract
In this work, we present an extensive analysis of clock synchronization algorithms, with a specific focus on message complexity. We begin by introducing fundamental concepts in clock synchronization, such as the Byzantine generals problem and specific concepts like clock accuracy, precision, skew, offset, timestamping, and clock drift estimation. Describing the concept of logical clocks, their implementation in distributed systems is discussed, highlighting their significance and various approaches. The paper then examines four prominent clock synchronization algorithms: Lamport's Algorithm, Ricart-Agrawala Algorithm, Vector Clocks Algorithm, and Christian's Algorithm. Special attention is given to the analysis of message complexity, providing insights into the efficiency of each algorithm. Finally, we compare the message complexities of the discussed algorithms.
