Basics of Protocols SIP / H.323 / MGCP: Presented by Jonathan Cumming
Basics of Protocols SIP / H.323 / MGCP: Presented by Jonathan Cumming
• Introduction
o Terminology
o Concepts
• Call vs. Media Gateway Control Protocols
• Call Control Protocols
o SIP
o H.323
o How SIP and H.323 compare
• Media Gateway Control Protocols
o MGCP and Megaco/H.248
• Summary
Concepts
• IETF-based
• Developed from work on multi-party conferences
• Releases
o RFC 2543 1999
o RFC 3261 2002 - Better scalability and resilience
• Request
o Request URI sip:user@host
o Headers To: …, From: …, etc.
o Body SDP offer
• Response
o Status Line 180 Ringing
o Headers To:…, From: …, etc.
o Body SDP answer
SIP Extensibility
• Anyone can define SIP extensions
o New Message types
o New Headers
• Unrecognized message types and headers ignored
• If a UAC requires a UAS to support an extension it can
mandate it using Require:
• UAS and UAC advertise supported extensions using
Supported: and Allow: headers
• Offer/Answer handshake
o Offer contains list of supported streams and codecs
o Answer contains list of accepted streams and codecs
• Published by ITU-T
• Developed from H.320 - Conferencing over ISDN
o Adapted for unreliable packet-based networks.
• Widely used for conferencing and IP telephony
• Releases
o H.323 v1 1996
o H.323 v2 1998 - Useable VoIP support
o H.323 v3 1999 - Improved scalability
o H.323 v4 2000 - Improved web support, inc URLs
H.323 Standards
• Related standards
o H.235 Security within H.245-based systems
o H.245 Interworking with the PSTN
o H.450 Supplementary Services
H.323 Architecture
• RAS messages
o Gatekeeper Discovery (Gxx), and Registration (Rxx)
o Admission (Axx), Location (Lxx), and Bandwidth (Bxx)
o Disengage (Dxx), Information (Ixx), and various others
H.225 Call Signaling
• Provides
o Terminal capability exchange, e.g. Codecs supported
o Channel signaling to open the media sessions
o Conference control
• Optimization options
o H.245 can be tunneled in H.225 Call Signaling channel
• Normally transmitted in its own TCP connection
o Fast connect does not establish an H.245 channel
• Relevant H.245 fields passed in H.225 Setup message
Comparing SIP and H.323
• H.323
Similarities
Advantages
oo MoreRTP
Use compact
and RTCP
messages
for media transport
o Support
More mature
call routing
(in some
through
areas)proxies/gatekeepers using username, phone
numbers or URLs
o Similar flows
• SIP Advantages
o Easier to prototype (text)
• Differences
o More flexible extensibility
oo Encoding (Text vs. ASN.1)
More scalable
o Standardized Feature sets
• loop detection
o Same messages
• Conference used throughout network
control
• Attended and blind transfer
o Cleaner separation of layers
• Caller Preferences
o Use of SDP is compatible with MGCP and Megaco
Example 1: Endpoint Registration
• H.323
SIP
o Discovery and Registration
• REGISTER
GRQ -> Gatekeeper
-> Registrar
• GCF
200 OK
returned
on success
on success
• GRJ
>= 300
on error
on error
• H.323
SIP with FastConnect
o Admission control and routing
• Provided
ARQ -> Gatekeeper
by routing INVITE message through proxies
• ACF returned on success
o Call Setup
o Call Setup
• INVITE
• Setup
180 ringing
-> remote terminal
• 200 OK
Proceeding returned
• ACK
Connect returned
• Ack -> remote terminal (UDP)
MGCP and Megaco
• Originally designed to control PSTN access by IP terminals
• Developed by Cisco, Telcordia and Level 3
• Published by IETF as RFC 2705, Oct 1999
• Widely used in cable networks (PacketCable standards)
• Text protocol
o Binary coding available for Megaco, but hardly used
• Uses SDP to describe the media
• Uses RTP and RTCP as the media transport
• MGC tells MG
o Media streams to establish
o Tones to play and events to monitor
o Digit maps against which to map received digits
• Megaco
MCGP
o Termination
Endpoint
A media source or sink.
A media
This could
gateway
be either
is considered
a physical device,
as a collection
e.g. DS0,of or
endpoints,
an ephemeral
e.g.
DS0, Analogsuch
termination line, as
etc.
an RTP stream.
o Context
Connection
A connection is created
an association
by placing
between
terminations
two endpoints,
into thewhich
same may
be on the same or different MGs.
context
MGCP/Megaco Features
• Media bridging
o MGCP – By connecting endpoints together
o Megaco – By placing two terminations in the same context
• Conferencing
o MCGP – By connection multiple endpoints to a conference bridge
o Megaco - By placing multiple terminations in the same context
• Media transcoding
o By bridging endpoints using different codecs
MGCP Example: Call Setup