Building Voice
over IP
May 8, 2000
by Philip Carden
H.323 vs. SIP
Given that two standards currently compete for
the dominance of IP telephony signaling, how do you decide which
is more appropriate? The good news is that the two protocol suites
appear to be converging picking up good ideas from one another.
In particular, the third and latest incarnation of H.323 (H.323
v3) has addressed some key performance issues (call setup delay
and stateless processing to support UDP), which were initially key
SIP advantages.
Most importantly, each suite supports (pretty
much equally well) the majority of required end-user functions (including
call setup and tear-down, call holding, call transfer, call forwarding,
call waiting, conferencing and click-for-dial). The only functional
differences are message waiting indication (which only H.323 supports),
third-party control (e.g., a secretary placing a call on behalf
of a manager, which only SIP supports, and certain conferencing
functions. While the range of functions supported is similar, the
H.323 v3 suite (by means of H.245) provides a somewhat more robust
mechanism for "capabilities exchange" than does SIP, which
relies on the less descriptive Session Description Protocol (SDP).
"Capabilities Exchange" is the process by which it is
determined whether a particular feature is supported by both participating
entities.
However, functionality is by no
means the only consideration in the H.323 vs. SIP debate. Equally
important are Quality of Service (QOS), Scalability/Flexibility
and Interoperability. Indeed, whereas the suites are relatively
similar in terms of functionality, they differ quite substantially
in these areas, as seen in the following table. Because SIP is a
significantly less complex protocol, it is argued that it should
scale better. This is an important consideration given that the
Internet may well come to support 500 million IP telephony devices.
However, it is my opinion that this potential advantage doesnt
sufficiently compensate for the protocols current weaknesses
in terms of QOS and interoperability. Most importantly, SIP doesnt
provide for redundancy (making it unsuitable for carrier applications),
doesnt support the emerging Differentiated Services/Policy
Management approach to QOS and has a limited interoperability testing
track record (largely because the protocol is new, having only been
ratified in February 1999).
|
|
Similar
|
H.323 v3
Better
|
SIP Better
|
|
Quality of Service and Management
|
Call setup delay, packet loss
recovery, lack of resource reservation capability
|
Fault tolerance (H.323 supports
redundant gatekeepers and endpoints), Admission Control
(SIP relies on other protocols for bandwidth mgmt, call
mgmt and bandwidth control), Policy Control (H.323 has limited
DiffServ support vs. none for SIP)
|
Loop detection (SIP's algorithm
using "via header" somewhat superior to H.323's PathValue
approach)
|
|
Scalability and Flexibility
|
Stateless processing, UDP Support,
Inter-server communications for endpoint location
|
Location of endpoints in other
administrative domains (SIP does not define a method, but
suggests use of DNS)
|
Complexity (SIP is less complex),
Extensibility (SIP's use of hierarchical feature names and
error codes which can be IANA registered is more flexible
than H.323's vendor-specific single extension field "NonStandardParam"),
Ease of customization (SIP less complex, and offers text-based
protocol encoding)
|
|
Interoperability
|
|
PSTN Signaling Interoperability
(SIP Internet Draft only, H.323 uses Q.931-like messages,
which are SS7 compatible, though only a subset of ISUP messages),
Inter-vendor interoperability (H.323 more mature, greater
interoperability track record, IMTC iNOW! profile to assist
implementation)
|
|
Does the H.323 vs. SIP debate even matter?
From a practical perspective, if you go out
and research the IP telephony products that are available today
youll find that many are still vendor specific, several support
H.323 version 1, some support H.323 v2 and very few support either
SIP or H.323 v3. This is particularly true of products targeted
at enterprise solutions as opposed to carrier solutions (where H.323
support is more widespread).
In practice, what is likely to happen is that
major vendors will support both approaches until it becomes clear
either that one standard is going to die, or that the two are going
to merge. That said, it is certainly worthwhile clarifying vendors
intended strategies with respect to signaling. If you are particularly
concerned with high availability and interoperability, then a SIP-oriented
solution might be too bleeding edge right now. Otherwise, both approaches
pretty much deliver the same in terms of functionality. The only
area where there is a noticeable difference is in the implementation
of conferencing capabilities. Because SIP can be used to invite
multiple parties to join a call, simple conference calls can be
initiated without the requirement for a conferencing server (whereas
H.323 does require one). In practice however, whether or not this
is a constraint depends on the full vendor solution and approach
rather than just the protocols that happen to be used.
|