This Article 
 Bibliographic References 
 Add to: 
Delay-Independent Design for Distributed Systems
August 1988 (vol. 14 no. 8)
pp. 1229-1237

Methods of limiting the impact of communication delays on the logical behavior of distributed systems are considered. It is assumed that a distributed system is described in terms of a number of interconnected modules, and each module is described in terms of its possible states and the possible state transitions. Transitions may be initiated spontaneously by a module and may give rise to output messages, which will be received, after some possible delay, by another module as an input. Otherwise, transitions may be initiated by received input. If the system has the property called regularity, its behavior is logically independent of the communication delays. A simple condition for regularity is given. This condition is the basis for the implementation of counter-based synchronization conditions in a distributed environment. Weaker forms of regularity, which make abstraction of internal operations invisible from the point of view of an outside observer, are also considered. The application of these concepts to the design of module interfaces involving 'collisions' and to communication including timeouts is discussed in some detail with examples.

[1] E. A. Akkoyunlu, A. J. Bernstein, F. B. Schneider, and A. Silberschatz, "Conditions for the equivalence of synchronous and asynchronous systems,"IEEE Trans. Software Eng., vol. SE-4, pp. 507- 516, Nov. 1978.
[2] P. Bernstein, D. Shipman, and B. Rothnie, "Concurrency control in a system for distributed database,"ACM Trans. Database Syst., vol. 5, no. 1, pp. 18-51, Mar. 1980.
[3] G. v. Bochmann, "Logical verification and implementation of protocols," inProc. 4th Data Commun. Symp. (ACM-IEEE), Quebec City, P.Q., Canada, Oct. 1975, pp. 7-15-7-20: reprinted inCommunication Protocol Modeling, C. Sunshine, Ed. Artech, 1981.
[4] G. v. Bochmann, "Distributed synchronization and regularity,"Comput. Networks, vol. 3, pp. 36-43, 1979.
[5] G. v. Bochmann, "Towards an understanding of distributed and parallel systems," Dep. d'IRO, Univ. Montréal, Montréal, P.Q., Canada, Pub. #317, 1980.
[6] G. v. Bochmann, R. Dssouli, and J. R. Zhao, "Trace analysis for conformance and arbitration testing,"IEEE Trans. Software Eng., to be published.
[7] G. v. Bochmann and A. Finkel, "Impact of queued interaction on protocol specification and verification," Dep. Inform. Récherche Opérationnelle, Univ. Montréal, Montréal, P.Q., Canada, Tech. Rep., 1988.
[8] E. W. Dijkstra, "Guarded commands, nondeterminacy and formal derivation of programs,"Commun. ACM, vol. 18, no. 8, pp. 453- 457, 1975.
[9] "Estelle A formal description technique based on an extended state transition model," ISO Int. Standard 9074, 1987.
[10] K. P. Eswaran, J. N. Gray, R. A. Lorie, and I. L. Traiger, "The notions of consistency and predicate locks in a database system,"Commun. ACM, vol. 19, no. 11, pp. 624-633, Nov. 1976.
[11] D. Herman, "Controle reparti des synchronisations entre processus," IRISA, Rennes, France, 1981, to be published.
[12] C. A. R. Hoare, "Communicating sequential processes,"Commun. ACM, vol. 21, pp. 666-677, 1978.
[13] R. M. Keller, "A fundamental theorem of asynchronous parallel computation," inParallel Processing, T. Y. Feng, Ed. New York: Springer-Verlag, 1974, pp. 102-112.
[14] R. M. Keller, "Formal verification of parallel programs,"Commun. ACM, voI. 19, no. 7, pp. 371-384, July 1976.
[15] S. S. Lam and A. U. Shankar, "Protocol verification via projections,"IEEE Trans. Software Eng., vol. SE-10, July 1984.
[16] L. Lamport, "Time, clocks, and the ordering of events in a distributed system,"Commun. ACM, vol. 21, no. 7, pp. 558-565, July 1978.
[17] G. LeLann, "Distributed systems--Towards a formal approach," inProc. IFIP Congr. 1977. Amsterdam, The Netherlands: North-Holland, 1977, pp. 155-160.
[18] R. J. Lipton, "Reduction: A method of proving properties of parallel programs,"Commun. ACM, vol. 18, no. 12, pp. 717-721, Dec. 1975.
[19] B. Liskov and S. Zilles, "Specification techniques for data abstractions,"IEEE Trans. Software Eng., vol. SE-1, pp. 7-18, Mar. 1975.
[20] P. M. Merlin and A. Segall, "A failsafe distributed routing protocol,"IEEE Trans. Commun., vol. COM-27, no. 9, pp. 1280-1287, Sept. 1979.
[21] P. Merlin and G. Bochmann, "On the construction of submodule specifications and communication protocols,"ACM TOPLAS, vol. 5, no. 1, pp. 1-25, 1983.
[22] R. Milner,A Calculus of Communicating Systems (Lecture Notes in Computer Science 92). New York: Springer-Verlag, 1980.
[23] M. Raynal, "Algorithmique du parallèlisme: Le problème de l'exclusion mutuelle,"DUNOD(in French), 1984, 164 p.
[24] D. P. Reed and R. K. Kanodia, "Synchronization with event counts and sequencers," inProc. Sixth ACM Symp. Operating Syst. Principles, Nov. 1977.
[25] P. Robert and J. P. Verjus, "Toward autonomous descriptions of synchronization modules," inProc. IFIP Congr. I977. Amsterdam, The Netherlands: North-Holland, 1977, pp. 981-986.
[26] H. A. Schmid, "On the efficient implementation of conditional critical regions and the construction of monitors,"Acta Inform., vol. 6, pp. 227-249, 1976.
[27] N. V. Stenning, "A data transfer protocol,"Comput. Networks, vol. 1, pp. 99-110, 1976.
[28] A. J. Gerber, "Process synchronization by counter variables,"ACM Opt. Syst. Rev., vol. 11, no. 4, pp. 6-17, Oct. 1977.

Index Terms:
protocols; distributed systems; communication delays; interconnected modules; regularity; synchronization; module interfaces; delays; distributed processing; protocols
G. Von Bochmann, "Delay-Independent Design for Distributed Systems," IEEE Transactions on Software Engineering, vol. 14, no. 8, pp. 1229-1237, Aug. 1988, doi:10.1109/32.7630
Usage of this product signifies your acceptance of the Terms of Use.