Experience with formal methods in protocol development

Communication protocols are complex software systems and key components of computer networks. They must be specified completely and implemented correctly. The development of a protocol typically involves several tedious steps. Experience has shown that the use of informal techniques in these steps of protocol development generally produces systems with errors and undesirable behaviors. Formal methods permit the development of highly reliable and easily maintainable communication protocols. This paper presents our experience with using formal methods in the specification, verification, implementation, and conformance testing of OSI protocols.

[1]  Mohamed G. Gouda,et al.  Protocol Validation by Maximal Progress State Exploration , 1984, IEEE Trans. Commun..

[2]  Samuel T. Chanson,et al.  On Ferry Clip Approaches in Protocol Testing , 1989, Comput. Networks.

[3]  Hasan Ural,et al.  On the Complexity of Generating Optimal Test Sequences , 1991, IEEE Trans. Software Eng..

[4]  Raymond E. Miller Protocol verification: the first ten years, the next ten years; some personal observations , 1990, PSTV.

[5]  Thomas P. Blumer,et al.  A Formal Specification Technique and Implementation Method for Protocols , 1982, Comput. Networks.

[6]  Deepinder P. Sidhu,et al.  On sufficient conditions for an efficient protocol conformance test generation technique based on rural Chinese postman problem , 1991 .

[7]  Colin H. West,et al.  An Improved Protocol Validation Technique , 1982, Comput. Networks.

[8]  Peter Radford,et al.  Petri Net Theory and the Modeling of Systems , 1982 .

[9]  Yanghee Choi,et al.  Approaches utilizing segment overlap to minimize test sequences , 1990, PSTV.

[10]  Deepinder P. Sidhu,et al.  On arbitrariness in protocol conformance test generation , 1990 .

[11]  David H. Pitt,et al.  The Derivation of Conformance Tests from LOTOS Specifications , 1990, IEEE Trans. Software Eng..

[12]  A. Udaya Shankar,et al.  VERIFICATION OF COMMUNICATION PROTOCOLS VIA PROTOCOL PROJECTIONS. , 1982 .

[13]  W. Y. L. Chan,et al.  An improved protocol test generation procedure based on UIOS , 1989, SIGCOMM '89.

[14]  C. V. Ramamoorthy,et al.  An Implementation of an Automated Protocol Synthesizer (APS) and Its Application to the X.21 Protocol , 1985, IEEE Transactions on Software Engineering.

[15]  Deepinder P. Sidhu,et al.  Formal Methods for Protocol Testing: A Detailed Study , 1989, IEEE Trans. Software Eng..

[16]  Anton T. Dahbura,et al.  Optimal test sequence generation for protocols: chinese postman algorithm applied to q. 931 , 1986 .

[17]  A. Udaya Shankar,et al.  Protocol Verification via Projections , 1984, IEEE Transactions on Software Engineering.

[18]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[19]  Gregor von Bochmann,et al.  Semiautomatic Implementation of Communication Protocols , 1987, IEEE Transactions on Software Engineering.

[20]  Brent Hailpern,et al.  Verifying network protocols using temporal logic , 1980 .

[21]  Deepinder P. Sidhu Rules for synthesizing correct communication protocols , 1982, CCRV.

[22]  Deepinder P. Sidhu Protocol Verification via Executable Logic Specifications , 1983, Protocol Specification, Testing, and Verification.

[23]  Sanjoy Paul,et al.  Generating minimal length test sequences for conformance testing of communication protocols , 1991, IEEE INFCOM '91. The conference on Computer Communications. Tenth Annual Joint Comference of the IEEE Computer and Communications Societies Proceedings.

[24]  Güney Gönenç,et al.  A Method for the Design of Fault Detection Experiments , 1970 .

[25]  Mohamed G. Gouda,et al.  Protocol Validation by Fair Progress State Exploration , 1985, Comput. Networks.

[26]  Daniel Brand,et al.  Towards Analyzing and Synthesizing Protocols , 1980, IEEE Trans. Commun..

[27]  Deepinder P. Sidhu,et al.  Executable Logic Specifications for Protocol Service Interfaces , 1988, IEEE Trans. Software Eng..

[28]  C. A. R. Hoare,et al.  Communicating Sequential Processes (Reprint) , 1983, Commun. ACM.

[29]  C. H. West,et al.  General technique for communications protocol validation , 1978 .

[30]  Deepinder P. Sidhu Protocol Design Rules , 1982, PSTV.

[31]  C. H. West,et al.  Executable Description and Validation of SNA , 1980, IEEE Trans. Commun..

[32]  Gregor von Bochmann,et al.  On the Construction of Submodule Specifications and Communication Protocols , 1983, TOPL.

[33]  H. Zimmermann,et al.  OSI Reference Model - The ISO Model of Architecture for Open Systems Interconnection , 1980, IEEE Transactions on Communications.

[34]  Krishan K. Sabnani,et al.  A Protocol Test Generation Procedure , 1988, Comput. Networks.

[35]  Bo Yang,et al.  Protocol conformance test generation using multiple UIO sequences with overlapping , 1990, SIGCOMM '90.

[36]  Gregor von Bochmann A General Transition Model for Protocols and Communication Services , 1980, IEEE Trans. Commun..

[37]  Alfred V. Aho,et al.  An optimization technique for protocol conformance test generation based on UIO sequences and rural Chinese postman tours , 1991, IEEE Trans. Commun..

[38]  Michel Diaz,et al.  Modeling and Analysis of Communication and Cooperation Protocols Using Petri Net Based Models , 1982, Comput. Networks.

[39]  Deepinder P. Sidhu,et al.  On Conditions for Defining a Closed Cover to Verify Progress for Communicating Finite State Machines , 1989, IEEE Trans. Software Eng..

[40]  Gregor von Bochmann,et al.  A Test Design Methodology for Protocol Testing , 1987, IEEE Transactions on Software Engineering.

[41]  Gregor von Bochmann,et al.  Synchronization and Specification Issues in Protocol Testing , 1984, IEEE Trans. Commun..

[42]  Deepinder Sidhu,et al.  Fault coverage of protocol test methods , 1988, IEEE INFOCOM '88,Seventh Annual Joint Conference of the IEEE Computer and Communcations Societies. Networks: Evolution or Revolution?.

[43]  Deepinder P. Sidhu Protocol testing: the first ten years, the next ten years , 1990 .

[44]  Mohamed G. Gouda,et al.  Synthesis of Communicating Finite-State Machines with Guaranteed Progress , 1984, IEEE Trans. Commun..

[45]  Krishan K. Sabnani,et al.  An algorithmic procedure for checking safety properties of protocols , 1989, IEEE Trans. Commun..

[46]  Mostafa Hashem Sherif,et al.  Protocol modeling for conformance testing: Case study for the ISDN LAPD protocol , 1990, AT&T Technical Journal.

[47]  D. Rayner OSI Conformance Testing , 1987, Comput. Networks.

[48]  Masaki Itoh,et al.  Protocol Verification Algorithm Using Reduced Reachability Analysis , 1983 .

[49]  H. Ural,et al.  Protocol conformance test generation using multiple UIO sequences with overlapping , 1990, SIGCOMM 1990.

[50]  Fabrizio Lombardi,et al.  Protocol conformance testing using multiple UIO sequences , 1989, IEEE Trans. Commun..

[51]  F. D. Smith,et al.  A Meta-Implementation for Systems Network Architecture , 1982, IEEE Trans. Commun..

[52]  Deepinder P. Sidhu,et al.  Constructing Submodule Specifications and Network Protocols , 1988, IEEE Trans. Software Eng..

[53]  Deepinder P. Sidhu,et al.  Some Problems with the Specification of the Military Standard Transmission Control Protocol , 1985, PSTV.

[54]  Deepinder P. Sidhu,et al.  Experience with test generation for real protocols , 1988, SIGCOMM.

[55]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[56]  Mohamed G. Gouda,et al.  Proving liveness for networks of communicating finite state machines , 1986, TOPL.

[57]  Krishan K. Sabnani,et al.  An experience in estimating fault coverage of a protocol test , 1988, IEEE INFOCOM '88,Seventh Annual Joint Conference of the IEEE Computer and Communcations Societies. Networks: Evolution or Revolution?.

[58]  Deepinder P. Sidhu,et al.  Fault coverage of probabilistic test sequences , 1990 .

[59]  Deepinder P. Sidhu,et al.  Automated Verification of the Connection Management Aspects of the IEEE 802.2 Logical Link Control Protocol , 1987, IEEE Trans. Commun..

[60]  Gregor von Bochmann,et al.  Finite State Description of Communication Protocols , 1978, Comput. Networks.

[61]  G. Hoover,et al.  X.25 Conformance testing-A tutorial , 1986, IEEE Communications Magazine.

[62]  George Papageorgiou,et al.  The synthesis of communication protocols , 1986, PODC '86.

[63]  Deepinder P. Sidhu,et al.  Applications of Sufficient Conditions for Efficient Protocol Test Generation , 1992, Protocol Test Systems.

[64]  Son T. Vuong,et al.  Semiautomatic Implementation of Protocols Using an Estelle-C Compiler , 1988, IEEE Trans. Software Eng..

[65]  R.J. Linn Conformance evaluation methodology and protocol testing , 1989, IEEE J. Sel. Areas Commun..

[66]  Deepinder P. Sidhu,et al.  Semi-Automatic Implementation of OSI Protocols , 1989, Comput. Networks ISDN Syst..

[67]  Deepinder P. Sidhu,et al.  Probabilistic testing of protocols , 1989, SIGCOMM 1989.

[68]  Deepinder P. Sidhu,et al.  Verification of NBS Class 4 Transport Protocol , 1986, IEEE Trans. Commun..

[69]  Robert L. Probert,et al.  A Comprehensive Software Environment for Developing Standardized Conformance Test Suites , 1989, Comput. Networks ISDN Syst..

[70]  Mohamed G. Gouda,et al.  Closed Covers: To Verify Progress for Communicating Finite State Machines , 1984, IEEE Transactions on Software Engineering.

[71]  Tsun S. Chow,et al.  Testing Software Design Modeled by Finite-State Machines , 1978, IEEE Transactions on Software Engineering.

[72]  Deepinder P. Sidhu,et al.  Automated verification of connection management of NBS class 4 transport protocol , 1984 .

[73]  Deepinder P. Sidhu,et al.  Mechanical verification and automatic implementation of communication protocols , 1986, IEEE Transactions on Software Engineering.

[74]  Tat Y Choi,et al.  Protocol Analysis and Synthesis by Structured Partitions , 1986, Comput. Networks.

[75]  Krishan K. Sabnani,et al.  Formal methods for generating protocol conformance test sequences , 1990, Proc. IEEE.

[76]  Deepinder P. Sidhu Some problems with the specification of the Military Standard Internet Protocol , 1985, RFC.

[77]  W. Y. L. Chan,et al.  An improved protocol test generation procedure based on UIOS , 1989, SIGCOMM 1989.

[78]  David P. Anderson,et al.  Automated Protocol Implementation with RTAG , 1988, IEEE Trans. Software Eng..