Open AccessJournal Article
Tracing protocols
64
TL;DR: The paper addresses the problem of finding errors in data communication protocols of which the size precludes analysis by traditional means and describes the protocol tracing method, which allows one to locate design errors in protocols relatively quickly by probing a partial state space.
read more
Abstract: Automated protocol validation tools are by necessity often based on some form of symbolic execution. The complexity of the analysis problem however imposes restrictions on the scope of these tools. The paper studies the nature of these restrictions and explicitly addresses the problem of finding errors in data communication protocols of which the size precludes analysis by traditional means. The protocol tracing method described here allows one to locate design errors in protocols relatively quickly by probing a partial state space. This scatter searching method was implemented in a portable program called Trace. Specifications for the tracer are written in a higher-level language and are compiled into a minimized finite state machine model, which is then used to perform either partial or exhaustive symbolic executions. The user of the tracer can control the scope of each search. The tracer can be used as a fast debugging tool but also, depending on the complexity of the protocol being analyzed, as a slower and rather naive correctness prover. The specifications define the control flow of the protocol and may formalize correctness criteria in assertion primitives.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
The model checker SPIN
Gerard J. Holzmann
- 01 May 1997
TL;DR: An overview of the design and structure of the verifier, its theoretical foundation, and an overview of significant practical applications are given.
State-space caching revisited
Patrice Godefroid,Gerard J. Holzmann,Didier Pirottin +2 more
- 01 Nov 1995
TL;DR: It is shown that, in many cases, most reachable states are visited only once during state-space exploration, which enables one not to store most of the states that have already been visited without incurring too much redundant explorations of parts of the state space.
130
Verification techniques for cache coherence protocols
Fong Pong,Michel Dubois +1 more
TL;DR: This article presents a comprehensive survey of various approaches for the verification of cache coherence protocols based on state enumeration, (symbolic model checking, and symbolic state models), and discusses the efficiency and the limitations of each technique in terms of memory and computation time.
118
Coverage Preserving Reduction Strategies for Reachability Analysis
Gerard J. Holzmann,Patrice Godefroid,Didier Pirottin +2 more
- 22 Jun 1992
TL;DR: Three new reduction strategies for conventional reachability analysis, as used in automated protocol validation algorithms, are shown to have a potential for substantially improving the performance of a conventional search.
Application of coloured Petri Nets in system development
TL;DR: Four case studies where coloured Petri Nets and their supporting computer tools have been used in system development projects with industrial partners are presented to illustrate different application areas of CP-nets in various phases of system development.
105
References
Communicating sequential processes
TL;DR: It is suggested that input and output are basic primitives of programming and that parallel composition of communicating sequential processes is a fundamental program structuring method.
•Book
A calculus of communicating systems
Robin Milner
- 01 Jan 1980
TL;DR: A case study in synchronization and proof techniques, and some proofs about data structures in value-communication as a model of CCS 2.0.
5.3K
Guarded commands, nondeterminacy and formal derivation of programs
TL;DR: So-called “guarded commands” are introduced as a building block for alternative and repetitive constructs that allow nondeterministic program components for which at least the activity evoked, but possibly even the final state, is not necessarily uniquely determined by the initial state.
Automated Protocol Validation in Argos: Assertion Proving and Scatter Searching
TL;DR: A model in Argos is constructed consisting of a control flow specification and a formal description of the correctness requirements that can be compiled into a minimized lower level description based on a formal model of communicating finite state machines.
Automated Protocol Validation inArgos:Assertion Provingand Scatter Searching
Gerard J. Holzmann
- 01 Jan 1987
TL;DR: Argos is a verification language for datacommunication protocols as mentioned in this paper, which is based on a model of finite state machines (FSM) and can be used to prove correctness of protocols.
75