Understanding SIP through Model-Checking

"Understanding SIP through model-checking" (Pamela Zave; 2nd International Conference on Principles, Systems and Applications of IP Telecommunications, LNCS 5310, 2008) reports on an early project to build Promela models of SIP, and to verify them with the Spin model checker. These are the first formal models of this important application protocol. The following models and analysis results are an updated and corrected version of the models and results presented in the paper:

All of the .pml files are self-contained and immediately executable in Spin. Here is the conference talk on modeling SIP.

More recently, in "Specification and evaluation of transparent behavior for SIP back-to-back user agents" (Gregory Bond, Eric Cheung, Thomas Smith, and Pamela Zave; 4th International Conference on Principles, Systems and Applications of IP Telecommunications, ACM SIGCOMM, 2010), we developed a new model of invite dialogs and a model of transparent B2BUA behavior. This important property of SIP servers has never been defined before. In addition to verifying these models with Spin, we also altered Spin to generate comprehensive test suites automatically. The paper is based on the following models: