Compositional verification of a communication protocol for a remotely operated aircraft

This paper presents the formal specification and verification of a communication protocol between a ground station and a remotely operated aircraft. The protocol 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 should satisfy a distinct delivery requirement. A compositional technique is used to formally prove that the protocol satisfies these requirements. 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.

[1]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[2]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[3]  Martin Peschke,et al.  Design and Validation of Computer Protocols , 2003 .

[4]  Jan Friso Groote,et al.  Verification of a sliding window protocol in μCRL and PVS , 2005, Formal Aspects of Computing.

[5]  Myla Archer,et al.  Developing User Strategies in PVS: A Tutorial , 2003 .

[6]  Rachel Cardell-Oliver The formal verification of hard real-time systems , 1992 .

[7]  J. J. Brunekreef Algebraic Specification of Communication Protocols: Sliding Window Protocols , 1993 .

[8]  Austin M. Murch A Flight Control System Architecture for the NASA AirSTAR Flight Test Infrastructure , 2008 .

[9]  Karsten Stahl,et al.  Divide, Abstract, and Model-Check , 1999, SPIN.

[10]  Christine M. Belcastro,et al.  AirSTAR: A UAV Platform for Flight Dynamics and Control System Testing , 2006 .

[11]  Vlad Rusu Verifying a Sliding Window Protocol using PVS , 2001, FORTE.

[12]  A. Udaya Shankar,et al.  Construction of Network Protocols by Stepwise Refinement , 1989, REX Workshop.

[13]  Jeff W. Sanders,et al.  An incremental specification of the sliding-window protocol , 2005, Distributed Computing.

[14]  Viktor Vafeiadis,et al.  A Marriage of Rely/Guarantee and Separation Logic , 2007, CONCUR.

[15]  César Muñoz,et al.  From Verified Models to Verifiable Code , 2009 .

[16]  William R. Crowther,et al.  The Data Transfer Protocol , 1971, RFC.

[17]  Susan Owicki,et al.  An axiomatic proof technique for parallel programs I , 1976, Acta Informatica.

[18]  Rr Rob Hoogerwoord A formal derivation of a sliding window protocol , 2006 .

[19]  Mohamed G. Gouda Elements of network protocol design , 1998 .

[20]  Willem P. de Roever,et al.  The rely-guarantee method for verifying shared variable concurrent programs , 1997, Formal Aspects of Computing.

[21]  Arjan J. Mooij,et al.  Incremental Verification of Owicki/Gries Proof Outlines Using PVS , 2005, ICFEM.

[22]  Mohamed G. Gouda,et al.  Block acknowledgment: redesigning the window protocol , 1991, IEEE Trans. Commun..

[23]  Tobias Nipkow,et al.  Owicki/Gries in Isabelle/HOL , 1999, FASE.

[24]  Roope Kaivola Using Compositional Preorders in the Verification of Sliding Window Protocal , 1997, CAV.

[25]  Frits W. Vaandrager Verification of two communication protocols by means of process algebra , 1986 .

[26]  Erik P. de Vink,et al.  Verification and Improvement of the Sliding Window Protocol , 2003, TACAS.

[27]  Leonor Prensa Nieto The Rely-Guarantee Method in Isabelle/HOL , 2003, ESOP.

[28]  John Rushby Formal Verification of McMillan's Compositional Assume-Guarantee Rule , 2001 .

[29]  Giuseppe Di Battista,et al.  26 Computer Networks , 2004 .

[30]  Cliff B. Jones,et al.  Tentative steps toward a development method for interfering programs , 1983, TOPL.

[31]  Michel Charpentier,et al.  Composing invariants , 2006, Sci. Comput. Program..

[32]  Natarajan Shankar,et al.  PVS: A Prototype Verification System , 1992, CADE.

[33]  Roger M. Bailey,et al.  Experimental Validation: Subscale Aircraft Ground Facilities and Integrated Test Capability , 2005 .

[34]  Mohamed G. Gouda,et al.  Block Acknowledgement: Redesigning the Window Protocol , 1989, SIGCOMM.

[35]  Jan L. A. van de Snepscheut,et al.  The sliding-window protocol revisited , 2005, Formal Aspects of Computing.