Protocol verification using symbolic model checking
To reduce problems encountered in the later phases of the software life cycle, verification techniques can be used in the design phase to ensure that a design has the intended properties. The main advantage of using formal verification over other validation methods, such as simulation and testin...
Main Author: | |
---|---|
Format: | Others |
Language: | English |
Published: |
2009
|
Online Access: | http://hdl.handle.net/2429/4956 |
id |
ndltd-UBC-oai-circle.library.ubc.ca-2429-4956 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-UBC-oai-circle.library.ubc.ca-2429-49562018-01-05T17:32:19Z Protocol verification using symbolic model checking Mathieson, Charles G. To reduce problems encountered in the later phases of the software life cycle, verification techniques can be used in the design phase to ensure that a design has the intended properties. The main advantage of using formal verification over other validation methods, such as simulation and testing, is that it reasons about all possible behaviours of a system. However, formal verification techniques have not yet been widely accepted in industry because most of them suffer from the state explosion problem or are too difficult to use. In this thesis, an automatic model checking verification system for communication protocols is developed that tackles the state explosion problem. The Ever symbolic verifier [HDDY92], which is a high-level specification language and symbolic reachability analysis tool for extended finite state machines, is used as a basis for this system. The system accepts a protocol specification written in Estelle.Y [Lu91], a variant of the Estelle formal protocol description language [IS089]. Each Estelle.Y module of the specification is translated into the Ever language and fed into the Ever symbolic verifier. The intended properties are written as CTL temporal logic formulae [CG87] expressed in terms of variables in the Estelle.Y specifications. These formulae are given to the verifier to check that they are true in the model produced from the protocol specification. With this system one can assert that given safety and liveness properties are true in all possible behaviours of a protocol. When the system finds a given formula to be false, it is capable of producing a counterexample trace. This trace greatly assists the designer to correct the protocol specification and the temporal formulae of the intended properties. After the Estelle.Y to Ever translator was implemented, the original Ever verifier was extended to support model checking of CTL temporal formulae [CG87]. The extended verifier can check not only eventuality properties but also more general temporal properties such as precedences and invariances. The Ever verifier was also extended with the notion of fairness constraints [BCMD90] to allow the model to check only fair behaviours. These extensions enable incremental verification to be performed to reduce the overall checking time dramatically. This system was successfully applied to the specification of the alternating bit protocol [IS089] to demonstrate this new tool. Various safety and liveness properties expressed as CTL temporal formulae are described and explained in detail in this thesis. The CPU time and memory requirements for this verification are discussed. Science, Faculty of Computer Science, Department of Graduate 2009-02-23T21:58:30Z 2009-02-23T21:58:30Z 1994 1994-05 Text Thesis/Dissertation http://hdl.handle.net/2429/4956 eng For non-commercial purposes only, such as research, private study and education. Additional conditions apply, see Terms of Use https://open.library.ubc.ca/terms_of_use. 7152626 bytes application/pdf |
collection |
NDLTD |
language |
English |
format |
Others
|
sources |
NDLTD |
description |
To reduce problems encountered in the later phases of the
software life cycle, verification techniques can be used in the
design phase to ensure that a design has the intended
properties. The main advantage of using formal verification
over other validation methods, such as simulation and testing,
is that it reasons about all possible behaviours of a system.
However, formal verification techniques have not yet been widely
accepted in industry because most of them suffer from the state
explosion problem or are too difficult to use.
In this thesis, an automatic model checking verification
system for communication protocols is developed that tackles the
state explosion problem. The Ever symbolic verifier [HDDY92],
which is a high-level specification language and symbolic
reachability analysis tool for extended finite state machines,
is used as a basis for this system. The system accepts a
protocol specification written in Estelle.Y [Lu91], a variant of
the Estelle formal protocol description language [IS089]. Each
Estelle.Y module of the specification is translated into the
Ever language and fed into the Ever symbolic verifier. The
intended properties are written as CTL temporal logic formulae
[CG87] expressed in terms of variables in the Estelle.Y
specifications. These formulae are given to the verifier to check that they are true in the model produced from the protocol
specification. With this system one can assert that given
safety and liveness properties are true in all possible
behaviours of a protocol. When the system finds a given formula
to be false, it is capable of producing a counterexample trace.
This trace greatly assists the designer to correct the protocol
specification and the temporal formulae of the intended
properties.
After the Estelle.Y to Ever translator was implemented, the
original Ever verifier was extended to support model checking of
CTL temporal formulae [CG87]. The extended verifier can check
not only eventuality properties but also more general temporal
properties such as precedences and invariances. The Ever
verifier was also extended with the notion of fairness
constraints [BCMD90] to allow the model to check only fair
behaviours. These extensions enable incremental verification to
be performed to reduce the overall checking time dramatically.
This system was successfully applied to the specification of
the alternating bit protocol [IS089] to demonstrate this new
tool. Various safety and liveness properties expressed as CTL
temporal formulae are described and explained in detail in this
thesis. The CPU time and memory requirements for this
verification are discussed. === Science, Faculty of === Computer Science, Department of === Graduate |
author |
Mathieson, Charles G. |
spellingShingle |
Mathieson, Charles G. Protocol verification using symbolic model checking |
author_facet |
Mathieson, Charles G. |
author_sort |
Mathieson, Charles G. |
title |
Protocol verification using symbolic model checking |
title_short |
Protocol verification using symbolic model checking |
title_full |
Protocol verification using symbolic model checking |
title_fullStr |
Protocol verification using symbolic model checking |
title_full_unstemmed |
Protocol verification using symbolic model checking |
title_sort |
protocol verification using symbolic model checking |
publishDate |
2009 |
url |
http://hdl.handle.net/2429/4956 |
work_keys_str_mv |
AT mathiesoncharlesg protocolverificationusingsymbolicmodelchecking |
_version_ |
1718586971717107712 |