Communication Patterns and Input Patterns in Distributed Computing

(Invited Talk)
  • Michel Raynal
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9439)


A communication pattern is a pattern on messages exchanged in a distributed computation. An input pattern is a vector made up of the input parameters of the processes involved in a distributed computation. This paper investigates three such patterns. The first two, which are related to the causality relation associated with a distributed execution, are on causal message delivery and the capture of consistent global states, respectively. The last one, which concerns the consensus problem, is on vectors defined by the input values proposed by processes (this is also called the “condition-based” approach).

An aim of the paper is to promote the concept of pattern in distributed computing, both as a way to provide higher abstraction levels (as it is the case in communication patterns), or a tool to investigate computability or optimality issues (as it is the case with input patterns).


Agreement problem Byzantine failure Causality Causal message order Checkpointing Consensus Crash failure Error-correcting code Input vector Message pattern Zigzag path 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Baldoni, R., Hélary, J.M., Mostéfaoui, A., Raynal, M.: A communication-induced checkpointing protocol that ensures rollback-dependency trackability. In: Proc. 27th IEEE Symposium on Fault-Tolerant Computing (FTCS-27), pp. 68–77. IEEE Press (1997)Google Scholar
  2. 2.
    Baldoni, R., Hélary, J.M., Raynal, M.: Rollback-dependency trackability: a minimal characterization and its protocol. Information and Computation 165(2), 144–173 (2001)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    Baylis, J.: Error-Correcting Codes: a Mathematical Introduction, p. 219. Chapman & Hall Mathematics (1998)Google Scholar
  4. 4.
    Ben-Or, M.: Another advantage of free choice: completely asynchronous agreement protocols. In: Proc. 2nd Annual ACM Symposium on Principles of Distributed Computing(PODC 1983), pp. 27–30. ACM Press (1983)Google Scholar
  5. 5.
    Birman, K.P., Joseph, T.A.: Reliable communication in presence of failures. ACM Transactions on Computer Systems 5(1), 47–76 (1987)CrossRefGoogle Scholar
  6. 6.
    Bonnet, F., Raynal, M.: Conditions for set agreement with an application to synchronous systems. Springer Journal Computer Science and Technology 24(3), 418–433 (2009)MathSciNetCrossRefGoogle Scholar
  7. 7.
    Chandra, T.D., Hadzilacos, V., Toueg, S.: The weakest failure detector for solving consensus. Journal of the ACM 43(4), 685–722 (1996)MathSciNetCrossRefMATHGoogle Scholar
  8. 8.
    Chandra, T., Toueg, S.: Unreliable failure detectors for reliable distributed systems. Journal of the ACM 43(2), 225–267 (1996)MathSciNetCrossRefMATHGoogle Scholar
  9. 9.
    Chandy, K.M., Lamport, L.: Distributed snapshots: determining global states of distributed systems. ACM Transactions on Computer Systems 3(1), 63–75 (1985)CrossRefGoogle Scholar
  10. 10.
    Chandy, K.M., Misra, J.: Systolic algorithms as programs. Distributed Computing 1(3), 177–183 (1986)CrossRefMATHGoogle Scholar
  11. 11.
    Dwork, C., Lynch, N., Stockmeyer, L.: Consensus in the presence of partial synchrony. Journal of the ACM 35(2), 288–323 (1988)MathSciNetCrossRefGoogle Scholar
  12. 12.
    Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. Journal of the ACM 32(2), 374–382 (1985)MathSciNetCrossRefMATHGoogle Scholar
  13. 13.
    Friedman, R., Mostéfaoui, A., Rajsbaum, S., Raynal, M.: Distributed agreement problems and their connection with error-correcting codes. IEEE Transactions on Computers 56(7), 865–875 (2007)MathSciNetCrossRefGoogle Scholar
  14. 14.
    Harel, D., Feldman, Y.: Algorithmics, the spirit of computing, 572 p. Springer (2012)Google Scholar
  15. 15.
    Hélary, J.-M., Mostéfaoui, A., Raynal, M.: Communication-induced determination of consistent snapshots. IEEE Trans. on Parallel and Distributed Systems 10(9), 865–877 (1999)CrossRefGoogle Scholar
  16. 16.
    Hélary, J.-M., Mostéfaoui, A., Netzer, R.H.B., Raynal, M.: Communication-based prevention of useless checkpoints in distributed computations. Distr. Comput. 13(1), 29–43 (2000)CrossRefGoogle Scholar
  17. 17.
    Hélary, J.-M., Mostéfaoui, A., Raynal, M.: Interval consistency of asynchronous distributed computations. Journal of Computer and System Sciences 64(2), 329–349 (2002)MathSciNetCrossRefMATHGoogle Scholar
  18. 18.
    Hélary, J.-M., Netzer, R.H.B., Raynal, M.: Consistency issues in distributed checkpoints. IEEE Transactions on Software Engineering 25(4), 274–281 (1999)CrossRefGoogle Scholar
  19. 19.
    Herlihy, M., Shavit, N.: The art of multiprocessor programming, 508 p. Morgan Kaufmann (2008). ISBN 978-0-12-370591-4Google Scholar
  20. 20.
    Izumi, T., Masuzawa, T.: Condition adaptation in synchronous consensus. IEEE Transactions on Computers 55(7), 843–853 (2006)CrossRefGoogle Scholar
  21. 21.
    Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Communications of the ACM 21(7), 558–565 (1978)CrossRefMATHGoogle Scholar
  22. 22.
    Lamport, L., Shostak, R., Pease, M.: The Byzantine generals problem. ACM Transactions on Programming Languages and Systems 4(3), 382–401 (1982)CrossRefMATHGoogle Scholar
  23. 23.
    Loui, M., Abu-Amara, H.: Memory requirements for for agreement among Unreliable Asynchronous processes. Adv. Computing Research 4, 163–183 (1987)MathSciNetGoogle Scholar
  24. 24.
    Mostéfaoui, A., Moumen, H., Raynal, M.: Signature-free asynchronous Byzantine consensus with t < n/3 and O(n 2) messages. In: Proc. 33th ACM Symposium on Principles of Distributed Computing (PODC 2014), pp. 2–9. ACM Press (2014)Google Scholar
  25. 25.
    Mostéfaoui, A., Rajsbaum, S., Raynal, M.: Conditions on input vectors for consensus solvability in asynchronous distributed systems. Journal of the ACM 50(6), 922–954 (2003)MathSciNetCrossRefMATHGoogle Scholar
  26. 26.
    Mostéfaoui, A., Rajsbaum, S., Raynal, M.: Synchronous condition-based Consensus. Distributed Computing 18(5), 325–343 (2006)CrossRefMATHGoogle Scholar
  27. 27.
    Mostéfaoui, A., Rajsbaum, S., Raynal, M., Roy, M.: Condition-based consensus solvability: a hierarchy of conditions and efficient protocols. Distr. Computing 17(1), 1–20 (2004)CrossRefMATHGoogle Scholar
  28. 28.
    Mostéfaoui, A., Rajsbaum, S., Raynal, M., Travers, C.: The combined power of conditions and information on failures to solve asynchronous set agreement. SIAM Journal of Computing 38(4), 1574–1601 (2008)MathSciNetCrossRefMATHGoogle Scholar
  29. 29.
    Netzer, R.H.B., Xu, J.: Necessary and sufficient conditions for consistent global snapshots. IEEE Transactions on Parallel and Distributed Systems 6(2), 165–169 (1995)CrossRefGoogle Scholar
  30. 30.
    Pease, M., Shostak, R., Lamport, L.: Reaching agreement in the presence of faults. Journal of the ACM 27, 228–234 (1980)MathSciNetCrossRefMATHGoogle Scholar
  31. 31.
    Rabin, M.: Randomized Byzantine generals. In: Proc. 24th IEEE Symposium on Foundations of Computer Science (FOCS 1983), pp. 116–124. IEEE Computer Society Press (1983)Google Scholar
  32. 32.
    Randell, B.: System structure for software fault-tolerance. IEEE Transactions on Software Engineering SE1(2), 220–232 (1975)Google Scholar
  33. 33.
    Raynal, M.: Fault-tolerant agreement in synchronous message-passing systems, 165 p. Morgan & Claypool Publishers (2010). ISBN 978-1-60845-525-6Google Scholar
  34. 34.
    Raynal, M.: Communication and agreement abstractions for fault-tolerant asynchronous distributed systems, 251 p. Morgan & Claypool Publ. (2010). ISBN 978-1-60845-293-4Google Scholar
  35. 35.
    Raynal, M.: Distributed algorithms for message-passing systems, 515 p. Springer (2013). ISBN 978-3-642-38122-5Google Scholar
  36. 36.
    Raynal, M.: Concurrent programming: algorithms, principles, and foundations, p. 530. Springer (2013). ISBN 978-3-642-32026-2Google Scholar
  37. 37.
    Raynal, M., Schiper, A., Toueg, S.: The causal ordering abstraction and a simple way to implement it. Information Processing Letters 39(6), 343–350 (1991)MathSciNetCrossRefMATHGoogle Scholar
  38. 38.
    Taubenfeld, G.: Synchronization algorithms and concurrent programming, 423 p. Pearson Education/Prentice Hall (2006). ISBN 0-131-97259-6Google Scholar
  39. 39.
    Wang, Y.-M.: Consistent global checkpoints that contain a given set of local checkpoints. IEEE Transactions on Computers 46(4), 456–468 (1997)MathSciNetCrossRefGoogle Scholar
  40. 40.
    Zhu, S.: Jade mirror of the four unknowns (1303), Chinese and English bilingual, vol. 1 & 2. Liaoning Education Press, China (2006). ISBN 7-5382-6923-1Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Michel Raynal
    • 1
    • 2
  1. 1.Institut Universitaire de France & IRISAUniversité de RennesRennesFrance
  2. 2.Department of ComputingPolytechnic UniversityHong KongHong Kong

Personalised recommendations