| |
H.323
|
SIP
|
Architecture
|
H.323 covers
almost every service, such as capability exchange, conference control, basic
signaling, QoS, registration, service discovery, and so on. |
SIP is
modular because it covers basic call signaling, user location, and registration.
Other features are in other separate orthogonal protocols.
|
|
Components
|
Terminal/Gateway
|
UA |
|
Gatekeeper
|
Servers |
|
Protocols
|
RAS/Q.931
|
SIP |
|
H.245
|
SDP |
|
Call control Functionality
|
| Call Transfer |
Yes |
Yes |
| Call Forwarding |
Yes |
Yes |
| Call Holding |
Yes |
Yes |
| Call
Parking/Pickup |
Yes |
Yes |
| Call Waiting |
Yes |
Yes |
| Message Waiting
Indication |
Yes |
No |
| Name
Identification |
Yes |
No |
| Call Completion on
Busy Subscriber |
Yes |
Yes |
| Call Offer |
Yes |
No |
| Call Intrusion |
Yes |
No |
| |
H.323 splits them across H.450, RAS, H.245 and Q.931 |
|
|
Advanced Features
|
| Multicast Signaling |
Yes, location requests (LRQ) and auto gatekeeper
discovery (GRQ). |
Yes, e.g., through group INVITEs. |
| Third-party Call Control |
Yes, through third-party pause and re-routing which is
defined within H.323. More sophisticated control is defined by the
related H.450.x series of standards. |
Yes, through SIP as described in separate Internet
Drafts. |
| Conference |
Yes |
Yes |
| Click
for Dial |
Yes |
Yes |
|
Scalability
|
| Large
Number of Domains |
The initial intent
of H.323 was for the support of LANs, so it was not inherently designed
for wide area addressing. The concept of a zone was added to accommodate
wide area addressing. Procedures
are defined for “user location” across zones for email names. Annex G
defines communication between administrative domains, describing methods
to allow for address resolution, access authorization and usage reporting
between administrative domains. In multi-domain searches, there is no easy
way to perform loop detection. Performing the loop detection can be done
(using the PathValue field), but introduces other issues related to
scalability. |
SIP inherently
supports wide area addressing. When multiple servers are involved in
setting up a call, SIP uses a
loop detection algorithm similar to the one used in BGP, which can be done
in a stateless manner, thus avoiding scalability issues. The SIP Registrar
and redirect servers were designed to support user location. |
| Large
Number of Calls |
H.323 call control can be implemented in a stateless
manner. A gateway can use messages defined in H.225 to assist the
gatekeeper in performing load balancing across gateways. |
Call control can be
implemented in a call stateless manner. SIP supports n to n scaling
between UAs and servers. SIP takes less CPU cycles to generate signaling
messages; therefore a server could theoretically handle more transactions.
SIP has specified a method of load balancing based upon the DNS SRV record
translation mechanisms.
|
| Connection
State |
Stateful or Stateless.
|
Stateful or Stateless.
A SIP call is
independent of the existence of a transport-layer connection, but instead
signals call termination explicitly. |
| Internationalization |
Yes, H.323 uses Unicode
(BMPString within ASN.1) for some textual information (h323-id), but
generally has few textual parameters. |
Yes, SIP uses Unicode
(ISO 10646-1), encoded as UTF-8, for all text strings, affording full
character set neutrality for names, messages and parameters. SIP provides
for the indication of languages and language preferences. |
|
Security
|
Defines security mechanisms and negotiation facilities via H.235, can also use SSL for transport-layer
security. |
SIP supports caller
and callee authentication via HTTP mechanisms. Cryptographically secure
authentication and encryption is supported hop-by-hop via SSL/TSL, but SIP
could use any transport-layer or HTTP-like security mechanism, such as SSH
or S-HTTP. Keys for media encryption are conveyed using SDP. SSL supports
symmetric and asymmetric authentication. SIP also defines end-to-end authentication and encryption
using either PGP or S/MIME. |
|
Interoperability
among Versions
|
The
fully backward compatibility in H.323 enables all implementations based on
different H.323 versions to be seamlessly integrated. |
In SIP, a newer version may
discard some old features that are not expected to be implemented any
more. This approach saves code size and reduces protocol complexity, but
loses some compatibility between different versions.
|
|
Implementation
Interoperability
|
H.323 provides an
implementers’ guide, which clarifies the standard and helps towards
interoperability among different implementations.
|
SIP thus far has not provided an implementation
agreement.
|
|
Billing
|
Even with H.323's direct call model, the ability to
successfully bill for the call is not lost because the endpoint reports to
the gatekeeper the beginning and end time of the call via the RAS
protocol. |
If the SIP proxy wants to collect billing information, it
has no choice but to stay in the call signaling path for the entire
duration of the call so that it can detect when the call completes. Even
then, the statistics are skewed because the call signaling may have been
delayed. |
|
Codecs
|
H.323 supports any codec, standardized or proprietary, not
just ITU-T codecs. There have been codepoints for MPEG and GSM, which are
not ITU-T codecs, in H.323 for a long time; many vendors support
proprietary codecs through ASN.1 NonStandardParameters, which is
equivalent to SIP's "privately-named codec by mutual agreement";
and any codec can be signaled via the GenericCapability feature that was
added in H.323v3. Payload types can be specified statically or
dynamically. |
SIP supports any IANA-registered codec (as a legacy
feature) or other codec whose name is mutually agreed upon. Payload types
can be specified statically or dynamically. |
|
Call Forking
|
H.323 gatekeeper can control the call signaling and may
fork the call to any number of devices simultaneously. |
SIP proxies can control the call signaling and may fork the
call to any number of devices simultaneously. |
|
Transport protocol
|
Reliable
or unreliable,
e.g., TCP or UDP. Most H.323 entities use a reliable transport for
signaling. |
Reliable
or unreliable,
e.g., TCP or UDP. Most SIP entities use an unreliable transport for
signaling. |
|
Message Encoding
|
H.323 encodes messages in a compact binary format that is
suitable for narrowband and broadband connections.
| SIP messages are encoded in ASCII text format, suitable
for humans to read. |
|
Addressing
|
Flexible addressing mechanisms, including URLs and E.164
numbers.
| SIP only understands URL-style addresses. |
|
PSTN Interworking
|
H.323 borrows from traditional PSTN protocols, e.g.,
Q.931, and is therefore well suited for PSTN integration. However, H.323
does not employ the PSTN's circuit-switched technology--like SIP,
H.323 is completely packet-switched. How Media Gateway Controllers fit
into the overall H.323 architecture is well-defined within the standard. |
SIP has no commonality with the PSTN and such signaling
must be "shoe-horned" into SIP. SIP has no architecture that
describes the decomposition of the gateway into the Media Gateway
Controller and the Media Gateways. |
|
Loop Detection
|
Yes, routing gatekeepers can detect loops by looking at
the CallIdentifier and destinationAddress fields in call-processing
messages. If the combination of these matches an existing call, it is a
loop. |
Yes, the SIP message Via header facilitates this.
However, there has been talk about deprecating Via as a means of loop
detection due to its complexity. Instead, the Max-Forwards header seems
to be the prefered method of limiting hops and therefore loops. |
Minimum Ports for VoIP Call
|
5
(Call signaling, 2 RTP, and 2 RTCP.) |
5 (Call signaling,
2 RTP, and 2 RTCP.) |
Video and Data Conferencing
|
H.323 fully supports video and data conferencing.
Procedures are in place to provide control for the conference as well as
lip synchronization of audio and video streams. |
SIP has limited support for video and no support for data
conferencing protocols like T.120. SIP has no protocol to control
the conference and there is no mechanism within SIP for lip
synchronization. |
|
Microtronix
Test System Available
|
Yes |
Yes |