Short about the Session Initiation Protocol
With the advent of the Internet, the users get the opportunity to experience both fancy and useful services such as email, messenger, information services, banking, ticketing, e-commerce, and so forth. As the popularity of the Internet increases, the need for telephony or more generally communication services on the Internet arises.
To meet this, the Session Initiation Protocol (SIP) (IETF, 2003) allowing the establishment of soft real time communication sessions between two or several parties has been specified. As known the Internet is a packet-switched network meant for computer communications. Computers are equipped with functions to receive packets whenever they arrive. Users as human beings are not. In order to offer telephony or voice communication, users need to have assistance from SIP user agents. The agents have the responsibility to communicate with each other and with the users to establish a session between the users.
If the agents know the IP address that is assigned to its counterpart they can communicate directly with it and invite for a session. But, telephony is supposed to be available for any user and it is therefore not possible for a SIP user agent to know the IP address of all other SIP user agents in the world.
As shown in Figure 1 a SIP server is introduced to provide the mapping between users and the IP addresses of the user agents. A user is allowed to move and make use of one or several devices. With SIP, personal mobility, also called user mobility is supported. To make a call or to receive calls, a user may register to one or more devices. When moving the user may later on deregister and register to new devices. Several users may also register themselves to the same device.
Overview of the SIP architecture
However, SIP is not made for mobile networks and does not support terminal mobility, that is, enable calls when a terminal or device is moving. Indeed, the device may move to another IP sub-network and acquire a new IP address without the awareness of the user agent and the SIP server.