Skip to main content

Compositional Verification of a Communication Protocol for a Remotely Operated Vehicle

  • Conference paper
Formal Methods for Industrial Critical Systems (FMICS 2009)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5825))

Abstract

We present the specification and verification, in PVS, of a protocol intended to facilitate communication in an experimental remotely operated vehicle used by NASA researchers. The protocol is defined as a stack-layered composition of simpler protocols. It can be seen as the vertical composition of protocol layers, where each layer performs input and output message processing, and the horizontal composition of different processes concurrently inhabiting the same layer, where each process satisfies a distinct requirement. We formally prove that the protocol components satisfy certain delivery guarantees. Then, we demonstrate compositional techniques that allow us to prove that these guarantees also hold in the composed system. Although the protocol itself is not novel, the methodology employed in its verification extends existing techniques by automating the tedious and usually cumbersome part of the proof, thereby making the iterative design process of protocols feasible.

This work was supported by the National Aeronautics and Space Administration under NASA Cooperative Agreement NNX08AE37A awarded to the National Institute of Aerospace. This work was done while the second author was resident at the National Institute of Aerospace. Authors are in alphabetical order.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Badban, B., Fokkink, W., Groote, J., Pang, J., van de Pol, J.: Verification of a sliding window protocol in μCRL and PVS. Formal Aspects of Computing 17, 342–388 (2005)

    Article  MATH  Google Scholar 

  2. Bailey, R., Hostetler, R., Barnes, K., Belcastro, C., Belcastro, C.: Experimental validation subscale aircraft ground facilities and integrated test capability. In: Proceedings of the AIAA Guidance Navigation, and Control Conference and Exhibit 2005, San Francisco, California (2005)

    Google Scholar 

  3. Brunekreff, J.: Sliding window protocols. In: Algebraic Specification of Protocols. Cambridge Tracts in Theoretical Computer Science, vol. 36, pp. 71–112 (1993)

    Google Scholar 

  4. Cardell-Oliver, R.M.: The Formal Verification of Hard Real-Time Systems, PhD thesis. University of Cambridge, Cambridge (1992)

    Google Scholar 

  5. Chkliaev, D., Hooman, J., de Vink, E.: Verification and improvement of the sliding windonw protocol. In: Garavel, H., Hatcliff, J. (eds.) TACAS 2003. LNCS, vol. 2619, pp. 113–127. Springer, Heidelberg (2003)

    Google Scholar 

  6. Van de Snepscheut, J.L.A.: The sliding-window protocol revisited. Formal Aspects of Computing 7, 3–17 (1995)

    Article  MATH  Google Scholar 

  7. Gouda, M.: Elements of Network Protocols. Wiley-Interscience, Hoboken (1998)

    Google Scholar 

  8. Gouda, M., Multari, N.: Stabilizing communication protocols. IEEE Transactions on Computers 40(4), 448–458 (1991)

    Article  Google Scholar 

  9. Holzmann, G.: The model checker Spin. IEEE Transactionsactions of Software Engineerng 23(4), 279–295 (1997)

    Article  MathSciNet  Google Scholar 

  10. Hoogerwoord, R.: A formal derviation of a sliding window protocol. Technical University of Eindhoven (2006)

    Google Scholar 

  11. Jones, C.: Tentative steps toward a method for interfering programs. ACM Transactions of Programming Languages and Systems (TOPLAS) 5(4), 596–619 (1983)

    Article  MATH  Google Scholar 

  12. Kaivola, R.: Using compositional preorders in the verification of a sliding window protocol. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, pp. 48–59. Springer, Heidelberg (1997)

    Google Scholar 

  13. Nieto, L.: The rely-guarantee method in Isabelle/HOL. In: Degano, P. (ed.) ESOP 2003. LNCS, vol. 2618, pp. 348–362. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  14. Owicki, S., Gries, D.: An axiomatic proof technique for parallel programs. Acta Informatica 6, 319–340 (1976)

    Article  MATH  MathSciNet  Google Scholar 

  15. Owre, S., Rushby, J., Shankar, N.: PVS: A prototype verification system. In: Kapur, D. (ed.) CADE 1992. LNCS, vol. 607, pp. 748–752. Springer, Heidelberg (1992)

    Google Scholar 

  16. Rusu, V.: Verifying a Sliding-Window Using PVS. In: Formal Techniques for Networked and Distributed Systems (FORTE 2001), pp. 251–266. Kluwer Academic, Dordrecht (2001)

    Google Scholar 

  17. Stahl, K., Baukus, K., Lakhnech, K., Steffen, Y.: Divide, abstract, and model check. In: Dams, D.R., Gerth, R., Leue, S., Massink, M. (eds.) SPIN 1999. LNCS, vol. 1680, pp. 57–76. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  18. Stenning, N.: A data transfer protocol. Computer Networks 1(2), 99–110 (1976)

    Google Scholar 

  19. Tannenbaum, A.: Computer Networks, 3rd edn. Prentice Hall, Englewood Cliffs (1996)

    Google Scholar 

  20. Vaandrager, F.: Verification of two communication protocol by means of process algebra. Technical report, CWI (1986)

    Google Scholar 

  21. Xu, Q., de Roever, W., He, J.: The rely-guarantee method for verifying shared variable concurrent programs. Formal Aspects of Computing 9(2), 149–174 (1997)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Goodloe, A.E., Muñoz, C.A. (2009). Compositional Verification of a Communication Protocol for a Remotely Operated Vehicle. In: Alpuente, M., Cook, B., Joubert, C. (eds) Formal Methods for Industrial Critical Systems. FMICS 2009. Lecture Notes in Computer Science, vol 5825. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-04570-7_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-04570-7_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-04569-1

  • Online ISBN: 978-3-642-04570-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics