We consider the classical problem of clock synchronization in distributed systems. Previously, this problem was solved optimally and efficiently only in the case when all individual clocks are non-drifting, i.e., only for systems where all clocks advance at the rate of real time. In this paper, we present a new algorithm for systems with drifting clocks, which is the first optimal algorithm to solve the problem efficiently: clock drift bounds and message latency bounds may be arbitrary; the computational complexity depends on the communication pattern of the system in a way which is bounded by a polynomial in the network size for most systems. More specifically, the complexity is polynomial in the maximal number of messages known to be sent but not received, the relative system speed, and time-stamp size. Our result has two consequences. From the theoretical standpoint, it refines the known bounds for optimal synchronization. But even more importantly, it enables us to derive new optimal algorithms that are reasonably efficient for most practical systems.
|Number of pages||10|
|State||Published - 1999|
|Event||Proceedings of the 1999 18th Annual ACM Symposium on Principles of Distributed Computing (PODC), FCRC'99 - Atlanta, GA, USA|
Duration: 3 May 1999 → 6 May 1999
|Conference||Proceedings of the 1999 18th Annual ACM Symposium on Principles of Distributed Computing (PODC), FCRC'99|
|City||Atlanta, GA, USA|
|Period||3/05/99 → 6/05/99|