SPY: Local Verification of Global Protocols

  • Rumyana Neykova
  • Nobuko Yoshida
  • Raymond Hu
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8174)

Abstract

This paper presents a toolchain for designing deadlock-free multiparty global protocols, and their run-time verification through automatically generated, distributed endpoint monitors. Building on the theory of multiparty session types, our toolchain implementation validates communication safety properties on the global protocol, but enforces them via independent monitoring of each endpoint process. Each monitor can be internally embedded in or externally deployed alongside the endpoint runtime, and detects the occurrence of illegal communication actions and message types that do not conform to the protocol. The global protocol specifications can be additionally elaborated to express finer-grained and higher-level requirements, such as logical assertions on message payloads and security policies, supported by third-party plugins. Our demonstration use case is the verification of choreographic communications in a large cyberinfrastructure for oceanography [10].

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Advanced Message Queuing Protocol homepage, http://www.amqp.org/
  2. 2.
    Bocchi, L., Chen, T.-C., Demangeon, R., Honda, K., Yoshida, N.: Monitoring networks through multiparty session types. In: Beyer, D., Boreale, M. (eds.) FMOODS/FORTE 2013. LNCS, vol. 7892, pp. 50–65. Springer, Heidelberg (2013)Google Scholar
  3. 3.
    Chen, T.-C., Bocchi, L., Deniélou, P.-M., Honda, K., Yoshida, N.: Asynchronous distributed monitoring for multiparty session enforcement. In: Bruni, R., Sassone, V. (eds.) TGC 2011. LNCS, vol. 7173, pp. 25–45. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  4. 4.
    Deniélou, P.-M., Yoshida, N.: Multiparty session types meet communicating automata. In: Seidl, H. (ed.) ESOP 2012. LNCS, vol. 7211, pp. 194–213. Springer, Heidelberg (2012)Google Scholar
  5. 5.
    Honda, K., Hu, R., Neykova, R., Chen, T.-C., Demangeon, R., Deniélou, P.-M., Yoshida, N.: Structuring Communication with Session Types. In: COB 2012. LNCS (2012) (to appear)Google Scholar
  6. 6.
    Honda, K., Mukhamedov, A., Brown, G., Chen, T.-C., Yoshida, N.: Scribbling interactions with a formal foundation. In: Natarajan, R., Ojo, A. (eds.) ICDCIT 2011. LNCS, vol. 6536, pp. 55–75. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  7. 7.
    Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. In: POPL 2008, pp. 273–284. ACM (2008)Google Scholar
  8. 8.
    Hu, R., Neykova, R., Yoshida, N., Demangeon, R.: Towards practical interruptible conversations. This volumeGoogle Scholar
  9. 9.
    Session Python (SPY) resource page, http://www.doc.ic.ac.uk/~rn710/spy/
  10. 10.
    Ocean Observatories Initiative, http://www.oceanobservatories.org/
  11. 11.
  12. 12.
    Scribble project home page, http://www.scribble.org
  13. 13.
    JBoss Scribble site, http://www.jboss.org/scribble

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Rumyana Neykova
    • 1
  • Nobuko Yoshida
    • 1
  • Raymond Hu
    • 1
  1. 1.Imperial College LondonUK

Personalised recommendations