Advertisement

SPY: Local Verification of Global Protocols

  • Rumyana Neykova
  • Nobuko Yoshida
  • Raymond Hu
Conference paper
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].

Keywords

Security Policy Local Protocol Session Type Logical Assertion Multiparty Session 
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.
    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