On the Use of Synchronizers for Asynchronous Communication Networks

A synchronizer is a mechanism that helps simulate a synchronous communication network on an asynchronous one. In this paper, we draw attention to certain difficulties that one may face in the implementation of a synchronizer mechanism, if the model of computation assumed does not permit delaying the processing of messages once received. To illustrate the issues, we present the design of a simple, time-efficient synchronizer. Using a synchronous breadth-first-search tree protocol, it will be shown that this synchronizer will not work correctly in all cases, because the simulation may not be exact. Similar difficulties arise in the implementation of other synchronizers proposed earlier in the literature, if the messages of the synchronous algorithm do not carry the pulse number. It is easy to suggest remedies for these difficulties which are at variance with the model of computation assumed. But, if we must stay within this model, we show that only the time-inefficient β-synchronizer known earlier can be corrected. We also present simple modifications to ensure this.

[1]  Greg N. Frederickson,et al.  A Single Source Shortest Path Algorithm for a Planar Distributed Network , 1985, STACS.

[2]  Baruch Awerbuch Reducing complexities of the distributed max-flow and breadth-first-search algorithms by means of network synchronization , 1985, Networks.

[3]  Eli Gafni,et al.  Perspectives on Distributed Network Protocols: A Case for Building Blocks , 1986, MILCOM 1986 - IEEE Military Communications Conference: Communications-Computers: Teamed for the 90's.

[4]  Baruch Awerbuch,et al.  Complexity of network synchronization , 1985, JACM.

[5]  Krishnaiyan Thulasiraman,et al.  A Time-Optimal Message-Efficient Distributed Algorithm for Depth-First-Search , 1987, Inf. Process. Lett..

[6]  Robert G. Gallager,et al.  A new distributed algorithm to find breadth first search trees , 1987, IEEE Trans. Inf. Theory.

[7]  Jan van Leeuwen,et al.  Guessing Games and Distributed Computations in Synchronous Networks , 1987, ICALP.

[8]  K. Mani Chandy,et al.  Distributed computation on graphs: shortest path algorithms , 1982, CACM.

[9]  Adrian Segall,et al.  Distributed network protocols , 1983, IEEE Trans. Inf. Theory.

[10]  Nicola Santoro,et al.  Distributed algorithms for finding centers and medians in networks , 1984, TOPL.

[11]  Ernest Jen-Hao Chang Decentralized algorithms in distributed systems , 1979 .

[12]  Ernest J. H. Chang,et al.  Echo Algorithms: Depth Parallel Operations on General Graphs , 1982, IEEE Transactions on Software Engineering.