Administrator's Guide
Appendix A. More About SIP
The SIP Protocol
SIP (Session Initiation Protocol), defined in RFC 3261 (with various extensions), handles
creation, modification and termination of various media stream sessions over an IP network.
It is for example used for Internet telephone calls and distribution of video streams.
SIP also supports user mobility by allowing registration of a user and proxying or redirecting
requests to the user’s current location. This is performed by the user registering his presence
at a machine with the central registrar. The SIP registrar keeps track of the user, but doesn’t
hold any information about which media streams the computers or clients can manage. This
is negotiated between the parts when initiating a SIP session.
Why use SIP?
Today, two protocols for transmitting IP telephony exist; SIP and H.323. The H.323 protocol
was originally designed for video conferences over ISDN and is a mix of several protocols
and standards for performing the various phases of a connection. The SIP protocol was
designed for general session initialization over the Internet.
Both protocols have the disadvantage (from a firewall point of view) of needing dynamically
allocated ports for the data transmission, but today no protocol supports tunneling random
media streams.
When comparing the two protocols, there is one major drawback to the H.323 protocol: its
lack of scalability. H.323 is mostly used in small LANs. When extending to world-wide IP
networks, SIP has many advantages:
• Loop detection
When trying to locate a user over several domains, loops can occur. H.323 has no support
for loop detection, which can cause network overload.
Loops are easily detected using SIP headers, as they specify all proxies that have handled
the SIP packet.
• Distributed control
H.323 uses gatekeepers, which are devices used for handling call states and redirecting
calls to aliases. As every call is carried out statefully, the gatekeepers must keep a call
state during the entire call. This of course makes the gatekeepers a major bottleneck in the
system.
There is also a need for a central point when performing multi-user calls, which means
that someone must provide this central point, and that this machine must be dimensioned
for the size of the call.
SIP sessions are completely distributed, making the need of these central points disappear.
321