Verifying a UMTS Protocol Using Spin and EASN

  • Authors:
  • Matti Luukkainen;Vivek K. Shanbhag;K. Gopinath

  • Affiliations:
  • Department of Computer Science, P.O.Box 26, 00014, University of Helsinki, Finland;Sun Microsystems, Divyasree Chambers, Bangalore 560025;CSA Dept., Indian Institute of Science, Bangalore 560012

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Next generation mobile protocols have become very complex and it is becoming increasingly difficult for standards bodies to be sure of the correctness of protocols during the standardization process. A convenient notation for specifying protocols and a means to analyze their behavior at a certain level of abstraction could be quite useful. Model-checking has turned out to be an efficient and relatively easy-to-use technique in the verification of formally described behaviors. However, there are two major drawbacks in using model-checking: one is state explosion (the behavior models of real-life programs tend to be extremely large); the other factor limiting industrial applicability of model checkers is their restricted input language. For instance, in the field of telecommunications, the standards define the data model of the protocols using the ASN.1 notation and it would be simpler if the verification models could directly be built using this 'native' data definition language of telecommunication industry. In this paper, we consider model checking the RLC protocol in the UMTS system that is seeing ongoing development as a third generation mobile communication system. We briefly describe EASN, a model checker wherein the behavior can be formally specified through a language based upon Promela for control structures but with data models from ASN.1. We discuss the verification problem for RLC and then discuss the results of using EASN on the verification problem and compare with Spin which also is the basis for the EASN realization. As a side-effect of realizing EASN, we have been able to locate some intricate performance bugs in the Spin implementation. We believe that this type of ''n-version'' programming is necessary to increase confidence in model checkers.