Formal Methods in Communication Protocol Design

While early protocol design efforts had to rely largely on seat-of-the-pants methods, a variety of more rigorous techniques have been developed recently. This paper surveys the formal methods being applied to the problems of protocol specification, verification, and implementation. In the specification area, both the service that a protocol layer provides to its users and the internal operations of the entities that compose the layer must be defined. Verification then consists of a demonstration that the layer will meet its service specification and that each of the components is correctly implemented. Formal methods for accomplishing these tasks are discussed, including state transition models, program verification, symbolic execution, and design rules.

[1]  Dines Bjørner Finite state automation: definition of data communication line control procedures , 1970, AFIPS '70 (Fall).

[2]  Jonathan Bruce Postel A graph-model analysis of computer communications protocols. , 1974 .

[3]  B. H. Liskov,et al.  Specification techniques for data abstractions , 1975, IEEE Transactions on Software Engineering.

[4]  Eric G. Manning,et al.  Protocol Machines: A Concise Formal Model and its Automatic Implementation , 1976, International Conference on Innovative Computing and Cloud Computing.

[5]  André A. S. Danthine,et al.  An Axiomatic Description of the Transport Protocol of Cyclades , 1976, Rechnernetze und Datenfernverarbeitung.

[6]  Vic Stenning,et al.  A Data Transfer Protocol , 1976, Comput. Networks.

[7]  P. Merlin,et al.  Recoverability of Communication Protocols - Implications of a Theoretical Study , 1976, IEEE Transactions on Communications.

[8]  A. Danthine,et al.  Influence on Packet Node Behavior of the Internode Protocol , 1976, IEEE Trans. Commun..

[9]  Clarence A. Ellis,et al.  Consistency and correctness of duplicate database systems , 1977, SOSP '77.

[10]  Donald I. Good Constructing verified and reliable communications processing systems , 1977, SOEN.

[11]  Gregor V. Bochmann Notes on the X.25 procedures for virtual call establishment and clearing , 1977, CCRV.

[12]  A. M. Rybczynski,et al.  Datapac X.25 service characteristics , 1977, SIGCOMM.

[13]  J. Harangozó An approach to describing a data link level protocol with a formal language , 1977 .

[14]  Dag Belsnes,et al.  Some problems with the X.25 packet level protocol , 1977, CCRV.

[15]  Gregor von Bochmann,et al.  A Unified Method for the Specification and Verification of Protocols , 1977, IFIP Congress.

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

[17]  C. H. West,et al.  Automated validation of a communications protocol: the CCITT X.21 recommendation , 1978 .

[18]  Daniel Brand,et al.  Verification of Protocols Using Symbolic Execution , 1978, Comput. Networks.

[19]  Ellis Horowitz,et al.  Abstract data types and software validation , 1978, CACM.

[20]  Gérard Le Lann,et al.  Verification and Evaluation of Communication Protocols , 1978, Comput. Networks.

[21]  Carl A. Sunshine Survey of Protocol Definition and Verification Techniques , 1978, Comput. Networks.

[22]  Carl A. Sunshine,et al.  Survey of protocol definition and verification techniques , 1978, CCRV.

[23]  André A. S. Danthine,et al.  Modelling and Verification of End-to-End Transport Protocols , 1978, Comput. Networks.

[24]  Carl A. Sunshine,et al.  Connection Management in Transport Protocols , 1978, Comput. Networks.

[25]  Gregor von Bochmann,et al.  Development and Structure of an X.25 Implementation , 1979, IEEE Transactions on Software Engineering.

[26]  Carl A. Sunshine,et al.  Formal Techniques for Protocol Specification and Verification , 1979, Computer.

[27]  Carl A Sunshine,et al.  Formal Methods for Communication Protocol Specification and Verification , 1979 .

[28]  P. Merlin,et al.  Specification and Validation of Protocols , 1979, IEEE Trans. Commun..

[29]  F. H. Vogt,et al.  Message link protocol (MLP): functional specification , 1979, CCRV.

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

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

[32]  A. Danthine,et al.  Protocol Representation with Finite-State Models , 1980, IEEE Trans. Commun..