Protocol verification using reachability analysis: the state space explosion problem and relief strategies

Reachability analysis has proved to be one of the most effective methods in verifying correctness of communication protocols based on the state transition model. Consequently, many protocol verification tools have been built based on the method of reachability analysis. Nevertheless, it is also well known that state space explosion is the most severe limitation to the applicability of this method. Although researchers in the field have proposed various strategies to relieve this intricate problem when building the tools, a survey and evaluation of these strategies has not been done in the literature. In searching for an appropriate approach to tackling such a problem for a grammar-based validation tool, we have collected and evaluated these relief strategies, and have decided to develop our own from yet another but more systematic approach. The results of our research are now reported in this paper. Essentially, the paper is to serve two purposes: first, to give a survey and evaluation of existing relief strategies; second, to propose a new strategy, called PROVAT (PROtocol VAlidation Testing), which is inspired by the heuristic search techniques in Artificial Intelligence. Preliminary results of incorporating the PROVAT strategy into our validation tool are reviewed in the paper. These results show the empirical evidence of the effectiveness of the PROVAT strategy.

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

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

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

[4]  G. J. Holzmann,et al.  Tracing protocols , 1985, AT&T Technical Journal.

[5]  Gerard J. Holzmann,et al.  Automated Protocol Validation in Argos: Assertion Proving and Scatter Searching , 1987, IEEE Transactions on Software Engineering.

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

[7]  C. H. West,et al.  Applications and Limitations of Automated Protocol Validation , 1982, Protocol Specification, Testing and Verification.

[8]  Jean-Pierre Ansart Issues and Tools for Protocol Specification , 1984, Advanced Course: Distributed Systems.

[9]  Daniel Brand,et al.  On Communicating Finite-State Machines , 1983, JACM.

[10]  Mohamed G. Gouda,et al.  A discipline for constructing multiphase communication protocols , 1985, TOCS.

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

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

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

[14]  Judea Pearl,et al.  Heuristics : intelligent search strategies for computer problem solving , 1984 .

[15]  S. Purushothaman Iyer,et al.  Reasoning About Probabilistic Behavior in Concurrent Systems , 1987, IEEE Transactions on Software Engineering.

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

[17]  Lloyd David Umbaugh Automated techniques for specification and validation of communications protocols , 1983 .

[18]  Leslie Lamport,et al.  Distributed Systems: Methods and Tools for Specification, An Advanced Course, April 3-12, 1984 and April 16-25, 1985, Munich, Germany , 1985, Advanced Course: Distributed Systems.

[19]  Avron Barr,et al.  The Handbook of Artificial Intelligence , 1982 .

[20]  Raymond E. Miller,et al.  A decomposition method for the analysis and design of finite state protocols , 1983, SIGCOMM '83.