This Article 
 Bibliographic References 
 Add to: 
Hardware-Assisted Software Clock Synchronization for Homogeneous Distributed Systems
April 1990 (vol. 39 no. 4)
pp. 514-524

A clock synchronization scheme that strikes a balance between hardware and software solutions is proposed. The proposed scheme is a software algorithm that uses minimal additional hardware to achieve reasonably tight synchronization. Unlike other software solutions, the guaranteed worst-cast skews can be made insensitive to the maximum variation of message transit delay in the system. The scheme is particularly suitable for large partially connected distributed systems with topologies that support simple point-to-point broadcast algorithms. Examples of such topologies include the hypercube and the mesh interconnection structures.

[1] M.-S. Chen, K. G. Shin, and D. D. Kandlur, "Addressing, routing, and broadcasting in hexagonal mesh multiprocessors,"IEEE Trans. Comput., vol. 39, no. 1, pp. 10-18, Jan. 1990.
[2] F. Cristian, "Probabilistic clock synchronization," Tech. Rep. RJ 6432 (62550), IBM Almaden Research Center, Sept. 1988.
[3] A. Davis, R. Hodgson, B. Schediwy, and K. Stevens, "Mayfly system hardware," Tech. Rep. HPL-SAL-89-23, Hewlett-Packard Co., Apr. 1989.
[4] D. Dolev, "The Byzantine generals strike again,"J. Algorithms, vol. 3, pp. 14-30, 1982.
[5] D. Dolev, M. J. Fischer, R. Fowler, N. A. Lynch, and H. R. Strong, "An efficient algorithm for Byzantine agreement without authentication,"Inform. Contr., vol. 52, no. 3, pp. 257-274, Mar. 1982.
[6] C. Dwork, N. Lynch, and L. Stockmeyer, "Consensus in the presence of partial synchrony,"J. ACM, vol. 35, no. 2, pp. 288-323, Apr. 1988.
[7] J.Y. Halpern et al., "Fault-Tolerant Clock Synchronization,"Proc. Third Ann. ACM Symp. Principles of Distributed Computing, ACM, New York, 1984, pp. 89-102.
[8] D. D. Kandlur, "Networking issues in distributed real-time systems," Tech. Rep., Real-Time Computing Laboratory, Dep. Elec. Eng. Comput. Sci., Univ. Michigan, Ann Arbor, May 1989.
[9] J. L. W. Kessels, "Two designs of a fault-tolerant clocking system,"IEEE Trans. Comput., vol. C-33, no. 10, pp. 912-919, Oct. 1984.
[10] C.M. Krishna, K.G. Shin, and R.W. Butler, "Ensuring Fault Tolerance of Phase-Locked Clocks,"IEEE Trans. Computers, Vol. C- 34, No. 8, Aug. 1985, pp. 752-756.
[11] L. Lamport, "Using Time Instead of Timeout for Fault-Tolerant Distributed Systems,"ACM Trans. Programming Languages and Systems, Vol. 6, No. 2, Apr. 1984, pp. 254-280.
[12] L. Lamport and P. M. Melliar-Smith, "Synchronizing clocks in the presence of faults," CSL Tech. Rep. 141, SRI International, 1982.
[13] L. Lamport and P.M. Melliar-Smith, "Synchronizing Clocks in the Presence of Faults,"J. ACM, Vol. 32, No. 1, Jan. 1985, pp. 52-78.
[14] L. Lamport, R. Shostak, and M. Pease, "The Byzantine Generals Problem,"ACM Trans. Programming Languages and Systems, Vol. 4, No. 3, July 1982, pp. 382-401.
[15] J. Lundelius-Welch and N. Lynch, "A New Fault-Tolerant Algorithm for Clock Synchronization,"Information and Computation, Vol. 77, No. 1, 1988, pp. 1-36.
[16] P. Ramanathan and K. G. Shin, "Reliable broadcast in hypercube multicomputers,"IEEE Trans. Comput., vol. 37, no. 12, pp. 1654-1657, Dec. 1988.
[17] Y. Saad and M. H. Schultz, "Topological properties of hypercubes,"IEEE Trans. Comput., vol. 37, no. 7, pp. 867-872, July 1988.
[18] C. L. Seitz, "The Cosmic Cube,"Commun. ACM, pp. 22-33, Jan. 1985.
[19] K.G. Shin and P. Ramanathan, "Clock Synchronization of a Large Multiprocessor System in the Presence of Malicious Faults,"IEEE Trans. Computers, Vol. C-36, No. 1, Jan. 1987, pp. 2-12.
[20] T.K. Srikanth and S. Toueg, "Optimal Clock Synchronization,"J. ACM, Vol. 34, No. 3, July 1987, pp. 626-645.
[21] K. S. Stevens, "The communication framework for a distributed ensemble architecture," AI Tech. Rep. 47, Schlumberger Research Lab., Feb. 1986.
[22] N. Vasanthavada and P. N. Marinos, "Synchronization of fault-tolerant clocks in the presence of malicious failures,"IEEE Trans. Comput., vol. 37, no. 4, pp. 440-448, Apr. 1988.
[23] C. L. Yang and G. M. Masson, "A distributed algorithm for fault diagnosis in systems with soft failures,"IEEE Trans. Comput., vol. 37, no. 11, pp. 1476-1480, Nov. 1988.
[24] H. Kopetz and W. Ochsenreiter, "Clock Synchronization in Distributed Real-Time Systems,"IEEE Trans. Computers, Vol. 36, No. 8, Aug. 1987, pp. 933-940.

Index Terms:
hardware assisted software clock synchronisation; homogeneous distributed systems; software algorithm; worst-cast skews; message transit delay; point-to-point broadcast algorithms; hypercube; mesh interconnection structures; distributed processing; software engineering; synchronisation.
P. Ramanathan, D.D. Kandlur, K.G. Shin, "Hardware-Assisted Software Clock Synchronization for Homogeneous Distributed Systems," IEEE Transactions on Computers, vol. 39, no. 4, pp. 514-524, April 1990, doi:10.1109/12.54844
Usage of this product signifies your acceptance of the Terms of Use.