Probabilistic Causal Message Ordering

  • Achour MostéfaouiEmail author
  • Stéphane Weiss
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10421)


Causal broadcast is a classical communication primitive that has been studied for more then three decades and several implementations have been proposed. The implementation of such a primitive has a non negligible cost either in terms of extra information messages have to carry or in time delays needed for the delivery of messages. It has been proved that messages need to carry a control information the size of which is linear with the size of the system. This problem has gained more interest due to new application domains such that collaborative applications are widely used and are becoming massive and social semantic web and linked-data the implementation of which needs causal ordering of messages. This paper proposes a probabilistic but efficient causal broadcast mechanism for large systems with changing membership that uses few integer timestamps.


Asynchronous message-passing system Happened before relation Logical clock Message causal ordering Vector clock 



This work has been partially supported by the Franco-German DFG-ANR Project DISCMAT (40300781) devoted to connections between mathematics and distributed computing, and the French ANR project O’Browser (ANR-16-CE25-0005-01) devoted to decentralized computing on networks of browsers.


  1. 1.
    Alvaro, P., Conway, N., Hellerstein, J.M., Marczak, W.R.: Consistency analysis in bloom: a CALM and collected approach. In: Proceedings of the CIDR 2011, pp. 249–260 (2011)Google Scholar
  2. 2.
    Birman, K.P., Joseph, T.A.: Reliable communication in the presence of failures. ACM Trans. Comput. Syst. 5, 47–76 (1987)CrossRefGoogle Scholar
  3. 3.
    Bloom, B.H.: Space/time trade-offs in hash coding with allowable errors. Commun. ACM 13(7), 422–426 (1970)CrossRefzbMATHGoogle Scholar
  4. 4.
    Charron-Bost, B.: Concerning the size of logical clocks in distributed systems. Inf. Process. Lett. 39, 11–16 (1991)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Eugster, P.T., Guerraoui, R., Handurukande, S.B., Kouznetsov, P., Kermarrec, A.M.: Lightweight probabilistic broadcast. In: DSN, pp. 443–452 (2001)Google Scholar
  6. 6.
    Fidge, C.: Logical time in distributed computing systems. Computer 24(8), 28–33 (1991)CrossRefGoogle Scholar
  7. 7.
    Fischer, M.J., Lynch, N.A., Paterson, M.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)CrossRefzbMATHGoogle Scholar
  9. 9.
    Mattern, F.: Virtual time and global states of distributed systems. In: Proceedings of the International Workshop on Parallel and Distributed Algorithms, pp. 215–226 (1989)Google Scholar
  10. 10.
    Mostefaoui, A., Weiss, S.: A Probabilistic Causal Message Ordering Mechanism. Research report, Université de Nantes (2017). Open archive HAL ref. hal-01527110Google Scholar
  11. 11.
    Oster, G., Urso, P., Molli, P., Imine, A.: Data consistency for p2p collaborative editing. In: CSCW, pp. 259–268 (2006)Google Scholar
  12. 12.
    Raynal, M., Schiper, A., Toueg, S.: The causal ordering abstraction and a simple way to implement it. Inf. Process. Lett. 39(6), 343–350 (1991)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Schiper, A., Eggli, J., Sandoz, A.: A new algorithm to implement causal ordering. Distrib. Algorithms 392, 219–232 (1989)MathSciNetCrossRefGoogle Scholar
  14. 14.
    Shapiro, M., Preguiça, N., Baquero, C., Zawirski, M.: Conflict-free replicated data types. In: Défago, X., Petit, F., Villain, V. (eds.) SSS 2011. LNCS, vol. 6976, pp. 386–400. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-24550-3_29 CrossRefGoogle Scholar
  15. 15.
    Sun, C., Jia, X., Zhang, Y., Yang, Y., Chen, D.: Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems. ACM Trans. Comput.-Hum. Interact. 5(1), 63–108 (1998)CrossRefGoogle Scholar
  16. 16.
    Terry, D., Demers, A., Petersen, K., Spreitzer, M., Theimer, M., Welch, B.: Session guarantees for weakly consistent replicated data. In: Proceedings of the PDIS, pp. 140–149 (1994)Google Scholar
  17. 17.
    Torres-Rojas, F.J., Ahamad, M.: Plausible clocks: constant size logical clocks for distributed systems. Distrib. Comput. 12(4), 179–195 (1999)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.LS2NUniversité de NantesNantesFrance

Personalised recommendations