3Com Version 4.3 Drums User Manual


 
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.
Small connection overhead
Establishing a connection using H.323 takes about three times the data and turnarounds compared to when
using SIP.
Apart from this, there are some more disadvantages with H.323. As it uses many protocols, more ports need to be
opened in a firewall to enable H.323 traffic through. SIP is a single protocol, which means that only one port has to
be opened for SIP traffic. For both protocols, however, more ports must be opened for the data streams.
SIP runs on both TCP and UDP (and, in fact, can be extended to run on almost any transport protocol), making it
possible to use UDP for large servers, thereby enabling stateless sessions. H.323 only runs on TCP, which as
already stated loads the servers by requiring state management.
SIP and firewalls
When trying to use SIP through a firewall, there are some problems.
SIP initiates sessions of other protocols. This means that when a SIP session has been started, various other
protocols are used as well, usually transmitted over TCP or UDP on some port. For a firewall, this is a problem, as it
125