Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Protocol design and implementation using formal methods
van Sinderen M., Pires L., Vissers C. The Computer Journal35 (5):478-491,1992.Type:Article
Date Reviewed: Mar 1 1994

More rigorous modeling and proving techniques have been applied with increasing success in communications protocol design. There are two basic ways to go about this.

The more-or-less standard approach, often called the dual-language approach, is to ask the user to express the protocol behavior and the design requirements in two independent formalisms, usually some flavor of finite state machine model for the former and some flavor of temporal logic for the latter. The design verification task then boils down to proving that the temporal logic requirements are satisfied for every conceivable execution of the finite state machine behavior model.

In the second or single-language approach, the user is asked to formalize both the design requirements and the system behavior in a single uniform notation. The effort is now to derive the behavior as much as possible from an initial set of requirements. By a sequence of transformation steps, ultimately, it should thus be possible to derive an implementation from the initial requirements, in part as a simple logical consequence.

This approach is pursued in this paper. It is based on the process algebra Lotos (an ISO international standard), and it discusses a sample of transformation rules that have been proven to preserve certain specific notions of correctness. An impressive array of such transformation rules is available today. An effective toolset supports the Lotos transformation rules. The tools can be used to apply those rules that can be automated, or to verify the correct application of the user-driven rules.

The paper is aimed at readers who have a good working knowledge of the Lotos language. A comparison of the pros and cons of the Lotos approach to protocol design and the classic dual-language approach is not included in the paper, which is somewhat regrettable. The largest problem with both approaches is that a user is typically laxer in formalizing requirements than in formalizing behavior. (After all, the user usually simply “knows” that a design is correct.) In the dual-language approach, this laxness leads to inconsistencies between the behavior and requirement specifications, which can be corrected as part of the regular process of verification. In the single-language approach, an incomplete or inconsistent set of requirements could survive the entire design trajectory. A series of provably correct transformation steps may now be allowed to faithfully reproduce the flaws from the initial requirements, until the complete final implementation is realized. Of course, the further development of both approaches to the protocol design problem is being pursued actively. It is unpredictable which method will turn out to be stronger in the long run.

For those interested in a quick overview of the state of the art in protocol design using formal methods based on Lotos, this paper is definitely recommended reading.

Reviewer:  G. Holzmann Review #: CR117278
Bookmark and Share
 
Protocol Verification (C.2.2 ... )
 
 
Lotos (D.2.1 ... )
 
 
Formal Languages (F.4.3 )
 
Would you recommend this review?
yes
no
Other reviews under "Protocol Verification": Date
Design and validation of computer protocols
Holzmann G. (ed), Prentice-Hall, Inc., Upper Saddle River, NJ, 1991. Type: Book (9780135399255)
Jul 1 1992
Improving round-trip time estimates in reliable transport protocols
Karn P., Partridge C. ACM Transactions on Computer Systems 9(4): 364-373, 1991. Type: Article
Aug 1 1992
Algebraic specification and verification of communication protocols
Koomen C. Science of Computer Programming 5(1): 1-36, 1985. Type: Article
Nov 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy