A non-blocking lightweight implementation of causal order message delivery

  • Friedemann Mattern
  • Stefan Fünfrocken
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 938)


This paper presents an algorithm to implement point-topoint causal order message delivery in distributed systems which does not force the sender to wait and which does not piggyback control information (such as timestamps) on messages. The algorithm is based on a message transmission protocol using low-level acknowledgements between FIFO buffers. We show that on the one hand causal order can easily and efficiently be realized in that way, but that on the other hand the loss of knowledge—induced by not using dependency matrices as in previously known protocols—leads to a slight restriction with respect to the applicability of the new protocol. The advantages of our scheme, however, are obvious because it is non-blocking and the piggybacking of huge control information on messages is avoided. Furthermore, the new algorithm is easily implementable since many distributed systems and low-level transmission protocols already provide message buffers and explicit or implicit message acknowledgements.


Transportation Beach Tocol 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AB92]
    Acharya A., Badrinath B., Recording Distributed Snapshots Based on Causal Order of Message Delivery. Information Processing Letters 44, 1992, pp. 317–321MathSciNetGoogle Scholar
  2. [AV94]
    Alagar S., Venkatesan S., An Optimal Algorithm for Distributed Snapshots with Causal Message Ordering. Information Processing Letters 50, 1994, pp. 311–316Google Scholar
  3. [BJ87]
    Birman K., Joseph T., Reliable Communication in the Presence of Failures, ACM Trans. on Computer Systems 5, 1987, pp. 47–76Google Scholar
  4. [BR94]
    Birman K., van Renesse R. (eds.), Reliable Distributed Computing with the Isis Toolkit, IEEE Computer Society Press, 1994Google Scholar
  5. [BSS91]
    Birman K., Schiper A., Stephenson P., Lightweight Causal and Atomic Group Multicast, ACM Trans. on Computer Systems, 9(3) (August 1991), 272–314Google Scholar
  6. [CMT94]
    Charron-Bost B., Mattern F., Tel G., Synchronous, Asynchronous, and Causally Ordered Communication. Submitted to Distributed Computing, 1994Google Scholar
  7. [Fid88]
    Fidge C., Timestamps in Message-Passing Systems that Preserve the Partial Ordering. Proc. 11th Autralian Computer Science Conf., University of Queensland, 1988, pp. 55–66Google Scholar
  8. [KK89]
    Kearns P., Koodalattupuram B., Immediate Ordered Service in Distributed Systems. Proc. 9th International Conference on Distributed Computing Systems, Newport Beach, California, June 5–9, 1989, pp. 611–618Google Scholar
  9. [Lam78]
    Lamport L., Time, Clocks, and the Ordering of Events in a Distributed System. Comm. of the ACM 21 (7), 1978, pp. 558–565Google Scholar
  10. [Mat88]
    Mattern F., Virtual Time and Global States of Distributed Systems. In: Cosnard M. et al. (eds.): Proc. Workshop on Parallel and Distributed Algorithms, Bonas, France, 1988, pp. 215–226. (Reprinted in: Z. Yang, T.A. Marsland (eds.), Global States and Time in Distributed Systems, IEEE, 1994, pp. 123–133)Google Scholar
  11. [RST91]
    Raynal M., Schiper A., Toueg S., The Causal Ordering Abstraction and a Simple Way to Implement it. Information Processing Letters 39, 1991, pp. 343–350Google Scholar
  12. [SES89]
    Schiper A., Eggli J., Sandoz A., A New Algorithm to Implement Causal Ordering. In: J.-C. Bermond, M. Raynal (eds.), Distributed Algorithms, Vol. 392 of Lecture Notes in Computer Science, Springer-Verlag, 1989, pp. 219–232Google Scholar
  13. [SM94]
    Schwarz R., Mattern F., Detecting Causal Relationships in Distributed Computations: In Search of the Holy Grail. Distributed Computing 7 (3), 1994, pp. 149–174Google Scholar
  14. [TM93]
    Tel G., Mattern F., The Derivation of Distributed Termination Detection Algorithms from Garbage Collection Schemes, ACM Trans. on Prog. Lang. Sys. 15 (1), 1993, pp. 1–35Google Scholar

Copyright information

© Springer-Verlag 1995

Authors and Affiliations

  • Friedemann Mattern
    • 1
  • Stefan Fünfrocken
    • 1
  1. 1.Department of Computer ScienceTechnical University of DarmstadtDarmstadtGermany

Personalised recommendations