sip, Sip, SIP - Gulp!
Session Initiation Protocol
or 'SIP' as it is known has become a major signalling protocol in the IP world as it lies at the heart of Voice-over-IP (VoIP). It's a term you can hardly miss as it is supported by
every vender of phones on the planet (Picture credit: Avaya: An Avaya SIP phone).
Many open software groups have taken SIP to the heart of their initiatives and an example of this is IP Multimedia Subsystem (IMS)
which I recently touched upon in IP Multimedia Subsystem or bust!
SIP is a real-time IP applications layer protocol that sits alongside HTTP, FTP, RTP and other well known
protocols used to move data through the Internet. However it is an extremely important one because it enables SIP devices to discover, negotiate, connect and establish communication sessions with
other SIP enabled devices.
SIP was co-authored in 1996 by Jonathan Rosenberg who is now a Cisco Fellow,
Henning Schulzrinne who is Professor and Chair in the Dept. of Computer Science at
Columbia University and Mark Handley who is Professor of Networked
Systems at UCL. SIP became an IETF
SIP Working Group which is
still supporting the RFC 3261 standard. SIP was originally used on the US
experimental Multicast network commonly known as Mbone. This makes SIP an IT /IP standard rather than one developed by the
Prior to SIP, voice signalling protocols were essentially proprietary signalling protocols aimed at use by the big telecommunications companies on
their big Public Switched Telecommunications Networks (PSTN) voice networks such as SS7 (C7 in the UK). With the advent of the Internet and the 'invention' of Voice over IP, it soon became
clear that a new signalling protocol was required that was peer-to-peer, scalable, open, extensible, lightweight and simple in operation that could be used on a whole new
generation of real-time communications devices and services that are running over the Internet.
SIP itself is based on earlier IETF / Internet standards, principally Hypertext Transport Protocol (HTTP) which is the core protocol behind
the World Wide Web.
Key features of SIP
The SIP signalling standard has many key features:
Communications device identification: SIP supports a concept known as Address of Record (AOR) which
represents a user's unique address in the world of SIP communications. An example of an AOR is sip: firstname.lastname@example.org. To enable a user to have multiple communications devices or services, SIP
has a mechanism called a Uniform resource Identifier (URI). A URI is like the Uniform Resource Locator (URL) used to identify servers on the world wide web. URIs can be used to specify the
destination device of a real-time session e.g.
IM: sip: email@example.com (Windows Messenger uses SIP)
Phone: sip: 1234 1234 firstname.lastname@example.org; user=phone
FAX: sip: 1234 1234 email@example.com; user=fax
A SIP URI can use both traditional PSTN numbering schemes AND alphabetic schemes as used on the Internet.
Focussed function: SIP only manages the set up and tear down of real time communication sessions, it does not
manage the actual transport of media data. Other protocols undertake this task.
Presence support: SIP is used in a
variety of applications but has found a strong home in applications such as VoIP and Instant Messaging (IM). What makes SIP interesting is that it is not only capable of setting up and tearing
down real time communications sessions but also supports and tracks a user's availability through the Presence capability. The open presence standard
Jabber uses SIP. I wrote about presence in -
The magic of ‘presence’.
Presence is supported through a key SIP extension: SIP for Instant messaging and Presence Leveraging Extensions (SIMPLE) [a really contrived
acronym!]. This allows a user to state their status as seen in most of the common IM systems. AOL Instant Messenger is shown in the picture on the left.
SIMPLE means that the concept of Presence can be used transparently on other communications devices such as mobile phones, SIP phones, email
clients and PBX systems.
User preference: SIP user preference functionality enables a user to control how a call is handled in accordance
to their preferences. For example:
Time of day: A user can take all calls during office hours but direct them to a voice mail box in the
Buddy lists: Give priority to certain individuals according to a status associated with each contact in an
Multi-device management: Determine which device / service is used to respond to a call from particular
PSTN mapping: SIP can manage the translation or mapping of conventional PSTN numbers to SIP URIs and vice
versa. This capability allows SIP sessions to transparently inter-work with the PSTN. There are organisations, such as
ENUM, who provide appropriate database capabilities. To quote ENUM's home page:
"ENUM unifies traditional telephony and next-generation IP networks, and provides a critical framework for mapping and
processing diverse network addresses. It transforms the telephone number—the most basic and commonly-used communications address—into a universal identifier that can be used across many different
devices and applications (voice, fax, mobile, email, text messaging, location-based services and the Internet)."
SIP trunking: SIP trunks enable enterprises to group inter-site calls using a pure IP network. This could use an
IP-VPN over an MPLS-based network with a guaranteed Quality of Service. Using SIP trunks could lead to significant cost saving when compared to using traditional E1 or T1 leased lines.
In a recent post,
Islands of communication or isolation? I wrote about the challenges of communication between islands of standards or users. The adoption of SIP-based services could enable a degree
of integration with other companies to extend the reach of what, to date, have been internal services.
Of course, the partner companies need to have adopted SIP as well and have appropriate security measures in place. This is where the challenge
would lay in achieving this level of open communications! (Picture credit:
Zultys: a Wi-Fi SIP phone)
SIP servers are the centralised capability that manage establishment of communications sessions by users. Although there are many types of server,
they are essentially only software processes and could be run on a single processor or device. There are several types of SIP server:
Registrar Server: The registrar server authenticates and registers users as soon as they come on-line. It stores
identities and the list of devices in use by each user.
Location Server: The location server keeps track of users' locations as they roam and provides this data to
other SIP servers as required.
Redirect Server: When users are roaming, the Redirect Server maps session requests to a server closer to the
user or an alternate device.
Proxy Server: SIP Proxy servers pass on SIP requests that are located either downstream or upstream.
Presence Server: SIP presence servers enable users to provide their status (presentities) to other users who
would like to see it (Watchers).
Call setup Flow
The diagram below shows the initiation of a call from the PSTN network (section A), connection (section B) and disconnect (section C). The flow is
quite easy to understand. One of the downsides is that if a complex session is being set up it's quite easy to get up to 40 to 50+ separate transactions which could lead to unacceptable
set-up times being experienced - especially if the SIP session is being negotiated across the best-effort Internet.
(Picture source: NMS
As a standard SIP has had a profound impact on our daily lives and lives well along those other protocol acronyms that have fallen into the daily
vernacular such as IP, HTTP, www and TCP. Protocols that operate at the application level seem to be so much more relevant to our daily lives than those that are buried in the network such as MPLS
There is still much to achieve by building capability on top of SIP such as federated services and more importantly interoperability.
Bodies working on interoperability are SIPcenter, SIP Forum,
SIPfoundry, SIP'it and IETF's
SPEERMINT working group. More fundamental areas under evaluation are authentication and billing.
More depth information about SIP can be found at
http://www.tech-invite.com, a portal devoted to SIP and surrounding technologies.
Next time you just buy a SIP Wi-Fi phone from your local shop, install it, find that it works first time AND saves you money, just think about all
the work that has gone into creating this software wonder. Sometimes, standards and open software hit a home run. SIP is just that.
Back to home