Formalizing compatibility and substitutability in communication protocols using I/O-constraint automata

A communication protocol consists of a sequence of messages used by peer entities to communicate. Each entity in a network is equipped by at least one protocol stack. Due to the need for on-the-fly reconfiguration of protocol stack in future communication and computation devices, formalizing substitutability and compatibility of protocol entities are important in correctness assessment of dynamic reconfiguration. In this paper, we extend Constraint Automata and propose I/O-Constraint Automata to model behavior of protocols and propose enough formalism for substitutability and compatibility relations between protocols. We introduce input-blocking property of communication protocols, and show that in the context of communication protocols simulation relation is not strong enough for notion of substitutability. We show the relation between substitutability and compatibility to reason about the correctness in substitution of a protocol with a new one.

[1]  Sabine Moisan,et al.  Towards formalizing behavioral substitutability in component frameworks , 2004, Proceedings of the Second International Conference on Software Engineering and Formal Methods, 2004. SEFM 2004..

[2]  Frantisek Plasil,et al.  Behavior Protocols for Software Components , 2002, IEEE Trans. Software Eng..

[3]  Sagar Chaki,et al.  Dynamic Component Substitutability Analysis , 2005, FM.

[4]  Hung Keng Pung,et al.  Design and implementation of a dynamic protocol framework , 2004, ICON.

[5]  Christel Baier,et al.  Modeling Component Connectors in Reo by Constraint Automata: (Extended Abstract) , 2004, Electron. Notes Theor. Comput. Sci..

[6]  Marshall T. Rose,et al.  SMTP Service Extensions , 1993, RFC.

[7]  Hung Keng Pung,et al.  Design and implementation of a dynamic protocol framework , 2004, Proceedings. 2004 12th IEEE International Conference on Networks (ICON 2004) (IEEE Cat. No.04EX955).

[8]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[9]  Van Jacobson,et al.  TCP Extension for High-Speed Paths , 1990, RFC.

[10]  Thomas A. Henzinger,et al.  Interface automata , 2001, ESEC/FSE-9.

[11]  Barbora Zimmerova,et al.  Component-Interaction Automata for Specification and Verification of Component Interactions , 2005 .

[12]  Jeannette M. Wing,et al.  A behavioral notion of subtyping , 1994, TOPL.

[13]  Larry L. Peterson,et al.  TCP Extensions Considered Harmful , 1991, RFC.

[14]  Thomas A. Henzinger,et al.  Computing simulations on finite and infinite graphs , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[15]  Christel Baier,et al.  Models and temporal logics for timed component connectors , 2004, Proceedings of the Second International Conference on Software Engineering and Formal Methods, 2004. SEFM 2004..

[16]  Nabil Hameurlain On compatibility and behavioural substitutability of component protocols , 2005, Third IEEE International Conference on Software Engineering and Formal Methods (SEFM'05).

[17]  Edmund M. Clarke,et al.  Program Compatibility Approaches , 2005, FMCO.

[18]  Vern Paxson,et al.  TCP Congestion Control , 1999, RFC.

[19]  Rasool Jalili,et al.  On Validity Assurance of Dynamic Reconfiguration for Component-based Programs , 2006, Electron. Notes Theor. Comput. Sci..

[20]  Gerhard Goos,et al.  Fast Software Encryption , 2001, Lecture Notes in Computer Science.

[21]  Mahadev Satyanarayanan,et al.  Pervasive computing: vision and challenges , 2001, IEEE Wirel. Commun..

[22]  Pierre Verbaeten,et al.  Position summary. DiPS: a unifying approach for developing system software , 2001, Proceedings Eighth Workshop on Hot Topics in Operating Systems.

[23]  Randall R. Stewart,et al.  Stream Control Transmission Protocol , 2000, RFC.

[24]  Ian J. Hayes,et al.  FM 2005: Formal Methods, International Symposium of Formal Methods Europe, Newcastle, UK, July 18-22, 2005, Proceedings , 2005, FM.

[25]  Christel Baier,et al.  Modeling component connectors in Reo by constraint automata , 2004, Sci. Comput. Program..

[26]  Yueh-Feng Lee,et al.  Developing dynamic‐reconfigurable communication protocol stacks using Java , 2005, Softw. Pract. Exp..

[27]  Nancy A. Lynch,et al.  An introduction to input/output automata , 1989 .

[28]  David Garlan,et al.  A formal basis for architectural connection , 1997, TSEM.