Bisimulation analysis of SDL-expressed protocols: a case study

Faster, better networks algorithms are often being discovered, and it is desirable to be able to replace an old algorithm by a new in a manner that is completely transparent to the application using it. This paper investigates the technique for ensuring such transparency for protocols expressed in SDL, via bisimulation checking. We discuss the main issues involved in translating SDL into Concurrency Workbench, a tool for performing bisimulation checking, and illustrate the feasibility of the technique by comparing the SDL specification of the Go-Back N protocol with the family of new protocols, called Asynchronous Retransmission Go-Back- N (AR). The latter perform better in environments characterized by high error rates and/or large propagation delays.

[1]  Gerard J. Holzmann,et al.  The Theory and Practice of A Formal Method: NewCoRe , 1994, IFIP Congress.

[2]  Kim G. Larsen A Context Dependent Equivalence Between Processes , 1987, Theor. Comput. Sci..

[3]  Teruo Higashino,et al.  Automated Verification of Equivalence of Protocol Machines , 1989, PSTV.

[4]  Gerard J. Holzmann,et al.  Practical methods for the formal validation of SDL specifications , 1992, Comput. Commun..

[5]  Robin Milner,et al.  Algebraic laws for nondeterminism and concurrency , 1985, JACM.

[6]  Hakan Erdogmus,et al.  Formal Verification Based on Relation Checking in SPIN: A Case Study , 1995 .

[7]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[8]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[9]  P. Borsook Data communications , 1994, IEEE Spectrum.

[10]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[11]  K. Larsen Context-dependent bisimulation between processes , 1986 .

[12]  Don Towsley,et al.  The Stutter Go Back-N ARQ Protocol , 1979, IEEE Trans. Commun..

[13]  Marius Bozga,et al.  IF: An Intermediate Representation and Validation Environment for Timed Asynchronous Systems , 1999, World Congress on Formal Methods.

[14]  Itu-T Specification and Description Language (SDL) , 1999 .

[15]  K. Tsukada,et al.  Data communications , 1981, IEEE Communications Magazine.

[16]  Marsha Chechik,et al.  On Interpreting Results of Model-Checking with Abstraction , 2000 .

[17]  Fred Halsall,et al.  Data communications, computer networks and open systems (3. ed.) , 1995, Electronic-systems engineering series.

[18]  Christian Facchi,et al.  The SDL specification of the sliding window protocol revisited , 1997, SDL Forum.

[19]  Sérgio Vale Aguiar Campos,et al.  Symbolic Model Checking , 1993, CAV.

[20]  Heikki Tuominen Embedding a Dialect of SDL in PROMELA , 1999, SPIN.

[21]  Hakan Erdogmus,et al.  Architecture-Driven Verification of Concurrent Systems , 1997, Nord. J. Comput..

[22]  Gerard J. Holzmann,et al.  Validating SDL Specifications: an Experiment , 1989, PSTV.

[23]  Rance Cleaveland,et al.  The concurrency workbench: a semantics-based tool for the verification of concurrent systems , 1993, TOPL.

[24]  Marsha Chechik,et al.  Lightweight reasoning about program correctness , 2001, CASCON.

[25]  Dieter Hogrefe,et al.  SDL - with applications from protocol specification , 1991, BCS practitioner series.

[26]  Shu Lin,et al.  Automatic-repeat-request error-control schemes , 1984, IEEE Communications Magazine.

[27]  Fred Halsall,et al.  Data communications, computer networks and open systems (3. ed.) , 1995, Electronic-systems engineering series.

[28]  Jan A. Bergstra,et al.  Process Algebra Semantics of fSDL , 1995 .

[29]  H.-A. Schneider,et al.  Process algebra techniques for verification of SDL-diagrams , 1992 .

[30]  Gerard J. Holzmann The Theory and Practice of A Formal Method: NewCoRe (Proceedings IFIP World Congress, Hamburg August 1994, Invited Paper) , 1994 .

[31]  Yoshiaki Kakuda,et al.  Protocol Verification System for SDL Specifications Based on Acyclic Expansion Algorithm and Temporal Logic , 1991, FORTE.