Skip to main content
  • 2978 Accesses

Abstract

While the previous chapter was devoted to communication abstractions on message ordering, this chapter is on synchronous communication (also called logically instantaneous communication, or rendezvous, or interaction). This abstraction adds synchronization to communication. More precisely, it requires that, for a message to be sent by a process, the receiver has to be ready to receive it. From an external observer point view, the message transmission looks instantaneous: The sending and the reception of a message appear as a single event (and the sense of the communication could have been in the other direction). From an operational point of view, we have the following: For each pair of processes, the first process that wants to communicate—be it the sender or the receiver—has to wait until the other process is ready to communicate.

This chapter first defines synchronous communication and introduces a characterization based on a specific message pattern called a crown. It then presents several implementations of this communication abstraction, each suited to a specific context. It also describes implementations for real-time rendezvous in the context of synchronous message-passing systems. In this case, each process is required to associate a deadline with each of its rendezvous.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 99.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. R. Bagrodia, Process synchronization: design and performance evaluation for distributed algorithms. IEEE Trans. Softw. Eng. SE15(9), 1053–1065 (1989)

    Article  Google Scholar 

  2. R. Bagrodia, Synchronization of asynchronous processes in CSP. ACM Trans. Program. Lang. Syst. 11(4), 585–597 (1989)

    Article  Google Scholar 

  3. A.J. Bernstein, Output guards and non-determinism in “communicating sequential processes”. ACM Trans. Program. Lang. Syst. 2(2), 234–238 (1980)

    Article  Google Scholar 

  4. A.D. Birell, B.J. Nelson, Implementing remote procedure calls. ACM Trans. Comput. Syst. 3, 39–59 (1984)

    Article  Google Scholar 

  5. L. Bougé, Repeated snapshots in distributed systems with synchronous communications and their implementation in CSP. Theor. Comput. Sci. 49, 145–169 (1987)

    Article  MATH  Google Scholar 

  6. L. Bougé, N. Francez, A compositional approach to super-imposition, in Proc. 15th Annual ACM Symposium on Principles of Programming Languages (POPL’88) (ACM Press, New York, 1988), pp. 240–249

    Chapter  Google Scholar 

  7. P. Brinch Hansen, Distributed processes: a concurrent programming concept. Commun. ACM 21(11), 934–941 (1978)

    Article  MATH  Google Scholar 

  8. G.N. Buckley, A. Silberschatz, An effective implementation for the generalized input-output construct of CSP. ACM Trans. Program. Lang. Syst. 5(2), 223–235 (1983)

    Article  MATH  Google Scholar 

  9. K.M. Chandy, J. Misra, Parallel Program Design (Addison-Wesley, Reading, 1988), 516 pages

    MATH  Google Scholar 

  10. A. Charlesworth, The multiway rendezvous. ACM Trans. Program. Lang. Syst. 9, 350–366 (1987)

    Article  MATH  Google Scholar 

  11. B. Charron-Bost, G. Tel, F. Mattern, Synchronous, asynchronous, and causally ordered communications. Distrib. Comput. 9(4), 173–191 (1996)

    Article  MathSciNet  Google Scholar 

  12. M. Choy, A.K. Singh, Efficient implementation of synchronous communication over asynchronous networks. J. Parallel Distrib. Comput. 26, 166–180 (1995)

    Article  MATH  Google Scholar 

  13. E.W. Dijkstra, Guarded commands, nondeterminacy, and formal derivation of programs. Commun. ACM 18(8), 453–457 (1979)

    Article  MathSciNet  Google Scholar 

  14. E. Evangelist, N. Francez, S. Katz, Multiparty interactions for interprocess communication and synchronization. IEEE Trans. Softw. Eng. 15(11), 1417–1426 (1989)

    Article  Google Scholar 

  15. N. Francez, B. Halpern, G. Taubenfeld, Script: a communication abstraction mechanism. Sci. Comput. Program. 6(1), 35–88 (1986)

    Article  MATH  Google Scholar 

  16. N. Francez, S. Yemini, Symmetric intertask communication. ACM Trans. Program. Lang. Syst. 7(4), 622–636 (1985)

    Article  MATH  Google Scholar 

  17. R. Fujimoto, Parallel discrete event simulation. Commun. ACM 33(10), 31–53 (1990)

    Article  Google Scholar 

  18. V.K. Garg, Principles of Distributed Systems (Kluwer Academic, Dordrecht, 1996), 274 pages

    Book  Google Scholar 

  19. C.A.R. Hoare, Communicating sequential processes. Commun. ACM 21(8), 666–677 (1978)

    Article  MathSciNet  MATH  Google Scholar 

  20. J. Jefferson, Virtual time. ACM Trans. Program. Lang. Syst. 7(3), 404–425 (1985)

    Article  MathSciNet  Google Scholar 

  21. I. Lee, S.B. Davidson, Adding time to synchronous processes. IEEE Trans. Comput. C-36(8), 941–948 (1987)

    Article  Google Scholar 

  22. J. Misra, Distributed discrete event simulation. ACM Comput. Surv. 18(1), 39–65 (1986)

    Article  Google Scholar 

  23. A. Mostéfaoui, M. Raynal, P. Veríssimo, Logically instantaneous communication on top of distributed memory parallel machines, in Proc. 5th Int’l Conference on Parallel Computing Technologies (PACT’99). LNCS, vol. 1662 (Springer, Berlin, 1999), pp. 258–270

    Chapter  Google Scholar 

  24. V.V. Murty, V.K. Garg, An algorithm to guarantee synchronous ordering of messages, in Proc. 2nd Int’l IEEE Symposium on Autonomous Decentralized Systems (IEEE Press, New York, 1995), pp. 208–214

    Chapter  Google Scholar 

  25. V.V. Murty, V.K. Garg, Characterization of message ordering specifications and protocols, in Proc. 7th Int’l Conference on Distributed Computer Systems (ICDCS’97) (IEEE Press, New York, 1997), pp. 492–499

    Chapter  Google Scholar 

  26. R. Righter, J.C. Walrand, Distributed simulation of discrete event systems. Proc. IEEE 77(1), 99–113 (1989)

    Article  Google Scholar 

  27. A. Silberschatz, Synchronization and communication in distributed systems. IEEE Trans. Softw. Eng. SE5(6), 542–546 (1979)

    Article  Google Scholar 

  28. J.L.A. van de Snepscheut, Synchronous communication between asynchronous components. Inf. Process. Lett. 13(3), 127–130 (1981)

    Article  Google Scholar 

  29. T. Soneoka, T. Ibaraki, Logically instantaneous message passing in asynchronous distributed systems. IEEE Trans. Comput. 43(5), 513–527 (1994)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Raynal, M. (2013). Rendezvous (Synchronous) Communication. In: Distributed Algorithms for Message-Passing Systems. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38123-2_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-38123-2_13

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-38122-5

  • Online ISBN: 978-3-642-38123-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics