Abstract

The Session Initiation Protocol (SIP) is an application layer signaling protocol used to create, manage, and terminate sessions in an IP based network. SIP is considered as a transactional protocol. There are two main SIP transactions, the INVITE transaction and the non-INVITE transaction. The SIP INVITE transaction specification is described in an informal way in Request for Comments (RFC) 3261 and modified in RFC 6026. In this paper we focus on the INVITE transaction of SIP, over reliable and unreliable transport mediums, which is used to initiate a session. In order to ensure the correctness of SIP, the INVITE transaction is modeled and verified using event-B method and its Rodin platform. The Event-B refinement concept allows an incremental development by defining the studied system at different levels of abstraction, and Rodin discharges almost all proof obligations at each level. This interaction between modeling and proving reduces the complexity and helps in assuring that the INVITE transaction SIP specification is correct, unambiguous, and easy to understand.

Highlights

  • Session Initiation Protocol is a network communications protocol commonly employed for Voice over IP (VoIP) signaling

  • The two main Session Initiation Protocol (SIP) transactions are the INVITE transaction for setting up a session, and the non-INVITE transaction for maintaining and closing down a session. Their specifications are defined in Request for Comments (RFC) 3261 [1] and they have been modified in RFC 6026 [2]

  • The INVITE client and server transactions are defined in RFC 3261 and its modifications are presented in RFC 6026 using two state machines

Read more

Summary

Introduction

Session Initiation Protocol is a network communications protocol commonly employed for Voice over IP (VoIP) signaling It is based on request/response transaction model. The two main SIP transactions are the INVITE transaction for setting up a session, and the non-INVITE transaction for maintaining and closing down a session Their specifications are defined in Request for Comments (RFC) 3261 [1] and they have been modified in RFC 6026 [2]. We use Event-B to model and prove the SIP INVITE transaction over reliable and unreliable transport medium. We use Event-B to model and prove the SNMP protocol. The most important benefit of using Event-B is its capability to use abstraction and refinement [7].

Overview of Event-B
Informal Description of SIP INVITE Transaction
Refinement Strategy
Formal Development
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call