Advertisement

On the Number of Opinions Needed for Fault-Tolerant Run-Time Monitoring in Distributed Systems

  • Pierre Fraigniaud
  • Sergio Rajsbaum
  • Corentin Travers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8734)

Abstract

Decentralized runtime monitoring involves a set of monitors observing the behavior of system executions with respect to some correctness property. It is generally assumed that, as soon as a violation of the property is revealed by any of the monitors at runtime, some recovery code can be executed for bringing the system back to a legal state. This implicitly assumes that each monitor produces a binary opinion, true or false, and that the recovery code is launched as soon as one of these opinions is equal to false. In this paper, we formally prove that, in a failure-prone asynchronous computing model, there are correctness properties for which there is no such decentralized monitoring. We show that there exist some properties which, in order to be monitored in a wait-free decentralized manner, inherently require that the monitors produce a number of opinions larger than two. More specifically, our main result is that, for every k, 1 ≤ k ≤ n, there exists a property that requires at least k opinions to be monitored by n monitors. We also present a corresponding distributed monitor using at most k + 1 opinions, showing that our lower bound is nearly tight.

Keywords

Shared Memory Linear Temporal Logic Time Linear Temporal Logic Opinion Number Runtime Monitoring 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Afek, Y., Attiya, H., Dolev, D., Gafni, E., Merritt, M., Shavit, N.: Atomic snapshots of shared memory. J. ACM 40(4), 873–890 (1993)CrossRefMATHGoogle Scholar
  2. 2.
    Arafat, O., Bauer, A., Leucker, M., Schallhart, C.: Runtime verification revisited. Technical Report TUM-I0518, Technischen Universität München (2005)Google Scholar
  3. 3.
    Attiya, H., Rajsbaum, S.: The Combinatorial Structure of Wait-Free Solvable Tasks. SIAM J. Comput. 31(4), 1286–1313 (2002)MathSciNetCrossRefMATHGoogle Scholar
  4. 4.
    Attiya, H., Welch, J.L.: Distributed computing: fundamentals, simulations and advanced topics. Wiley, USA (2004)CrossRefGoogle Scholar
  5. 5.
    Awerbuch, B., Varghese, G.: Distributed Program Checking: A Paradigm for Building Self-stabilizing Distributed Protocols (Extended Abstract). In: SFCS, pp. 258–267. IEEE (1991)Google Scholar
  6. 6.
    Bauer, A., Falcone, Y.: Decentralised LTL monitoring. In: Giannakopoulou, D., Méry, D. (eds.) FM 2012. LNCS, vol. 7436, pp. 85–100. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  7. 7.
    Bauer, A., Leucker, M., Schallhart, C.: Monitoring of real-time properties. In: Arun-Kumar, S., Garg, N. (eds.) FSTTCS 2006. LNCS, vol. 4337, pp. 260–272. Springer, Heidelberg (2006)Google Scholar
  8. 8.
    Bauer, A., Leucker, M., Schallhart, C.: Comparing LTL semantics for runtime verification. J. Log. and Comput. 20(3), 651–674 (2010)MathSciNetCrossRefMATHGoogle Scholar
  9. 9.
    Berkovich, S., Bonakdarpour, B., Fischmeister, S.: Gpu-based runtime verification. In: IPDPS, pp. 1025–1036. IEEE (2013)Google Scholar
  10. 10.
    Bonakdarpour, B., Navabpour, S., Fischmeister, S.: Sampling-based runtime verification. In: Butler, M., Schulte, W. (eds.) FM 2011. LNCS, vol. 6664, pp. 88–102. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  11. 11.
    Burnim, J., Sen, K., Stergiou, C.: Sound and complete monitoring of sequential consistency for relaxed memory models. In: Abdulla, P.A., Leino, K.R.M. (eds.) TACAS 2011. LNCS, vol. 6605, pp. 11–25. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  12. 12.
    Chandy, K.M., Lamport, L.: Distributed Snapshots: Determining Global States of Distributed Systems. ACM Trans. Comput. Syst. 3(1), 63–75 (1985)CrossRefGoogle Scholar
  13. 13.
    Chauhan, H., Garg, V.K., Natarajan, A., Mittal, N.: A distributed abstraction algorithm for online predicate detection. In: SRDS, pp. 101–110. IEEE (2013)Google Scholar
  14. 14.
    Cooper, R., Marzullo, K.: Consistent detection of global predicates. In: Workshop on Parallel and Distributed Debugging, pp. 167–174. ACM Press (1991)Google Scholar
  15. 15.
    Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)MathSciNetCrossRefMATHGoogle Scholar
  16. 16.
    Fraigniaud, P., Korman, A., Peleg, D.: Local distributed decision. In: FOCS, pp. 708–717. IEEE (2011)Google Scholar
  17. 17.
    Fraigniaud, P., Rajsbaum, S., Travers, C.: Locality and checkability in wait-free computing. Distributed Computing 26(4), 223–242 (2013)CrossRefMATHGoogle Scholar
  18. 18.
    Fraigniaud, P., Rajsbaum, S., Travers, C.: On the Number of Opinions Needed for Fault-Tolerant Run-Time Monitoring in Distributed Systems Technical report #hal-01011079 (2014), http://hal.inria.fr/hal-01011079
  19. 19.
    Genon, A., Massart, T., Meuter, C.: Monitoring distributed controllers: When an efficient LTL algorithm on sequences is needed to model-check traces. In: Misra, J., Nipkow, T., Sekerinski, E. (eds.) FM 2006. LNCS, vol. 4085, pp. 557–572. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  20. 20.
    Ha, J., Arnold, M., Blackburn, S.M., McKinley, K.S.: A concurrent dynamic analysis framework for multicore hardware. In: OOPSLA, pp. 155–174. ACM (2009)Google Scholar
  21. 21.
    Henle, M.: A Combinatorial Introduction to Topology. Dover (1983)Google Scholar
  22. 22.
    Herlihy, M., Kozlov, D., Rajsbaum, S.: Distributed Computing Through Combinatorial Topology. Morgan Kaufmann-Elsevier (2013)Google Scholar
  23. 23.
    Herlihy, M., Shavit, N.: The topological structure of asynchronous computability. J. ACM 46(6), 858–923 (1999)MathSciNetCrossRefMATHGoogle Scholar
  24. 24.
    Kupferman, O., Vardi, M.Y.: Model checking of safety properties. Form. Methods Syst. Des. 19(3), 291–314 (2001)MathSciNetCrossRefMATHGoogle Scholar
  25. 25.
    Raynal, M.: Concurrent Programming - Algorithms, Principles, and Foundations. Springer (2013)Google Scholar
  26. 26.
    Sen, K., Vardhan, A., Agha, G., Rosu, G.: Efficient decentralized monitoring of safety in distributed systems. In: ICSE, pp. 418–427. IEEE (2004)Google Scholar
  27. 27.
    Sen, K., Vardhan, A., Agha, G., Rosu, G.: Decentralized runtime analysis of multithreaded applications. In: IPDPS. IEEE (2006)Google Scholar
  28. 28.
    Zhu, H., Dwyer, M.B., Goddard, S.: Predictable runtime monitoring. In: ECRTS, pp. 173–183. IEEE (2009)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Pierre Fraigniaud
    • 1
  • Sergio Rajsbaum
    • 2
  • Corentin Travers
    • 3
  1. 1.CNRS and U. Paris DiderotFrance
  2. 2.Instituto de Matemáticas, UNAM, D.F.Mexico
  3. 3.CNRS and U. of BordeauxFrance

Personalised recommendations