Title: An Introduction to Megaco/H.248
1An Introduction to Megaco/H.248
- Tom Taylor
- taylor_at_nortelnetworks.com
2Media Gateway Control
- References for Megaco/H.248
- RFC 2805 -- requirements
- RFC 3015 (Megaco) or ITU-T Rec. H.248
- H.248 Annexes F to K
- History and tutorial
- T. Taylor, "Megaco/H.248 A New Standard For
Media Gateway Control", IEEE Communications
Magazine, October 2000.
3Media gateway control vs. call signalling
SIP-T, ISUP in H.323, Q.BICC
SG
MGC
SG
MGC
SIP
SIP User Agent
H.323 call signalling
Gateway control protocol
Gateway control protocol
H.323 Endpoint
MG
MG
Call signalling
Media gateway control signalling
Media flows
4Gateway control family tree
SGCP
Early 1998
IPDC
ASPEN
Late 1998
MGCP (I-RFC 2705)
MDCP
1999 (Standard in 2000)
Megaco/H.248
5Gateway control functions
Connection Bearer Mediation Media Transcoding
Events and Signals
Context
Terminations
The context supports multiple media streams if
required for multimedia service.
6Basic concepts
- Connection model terminations, streams, and the
context - Termination properties descriptors
- Context properties
- Message structure transactions, actions, and
commands - Event and signal processing
- Packages
7Media flow connections
- Connections achieved by placing two or more
terminations into a common context. - Context viewed as mixing bridge
- Termination source or sink of media flows
- provisioned vs. ephemeral terminations
- provisioned terminations reside in NULL context
when not active - Flows specified by stream
- common streamID implies connected flows
- default streamID 1 to simplify audio-only
operation - Transport, medium, encoding/decoding specified
per stream at each termination
8Context example basic call
Mediumaudio,
Mediumaudio,
T2
T1
ModesendReceive
ModesendReceive
9Context example multimedia
Stream1, mediumaudio
T2
T1
T3
Stream1, mediumaudio
Stream2, mediumvideo
Stream2, mediumvideo
10Descriptors
- Properties of terminations are organized
syntactically into descriptors - basic ones are Termination State, Media, Events,
and Signals descriptors - Media descriptor actually composed of other
descriptors Stream descriptors, which in turn
contain LocalControl, Local, and Remote
descriptors - Default property values can be configured in the
MG
11Context properties
- currently three properties can be specified for a
context - more could be added in the future
- topology descriptor allows detailed specification
of connectivity between individual pairs of
terminations - useful for legal interception
- priority flag can guide MG's allocation of scarce
resources - emergency flag can indicate contexts which must
be maintained and restored in the event of
failures
12Null context and ROOT termination
- Null context introduced as a convention
- where persistent terminations are held when they
are not in a real context - When terminations are returned to the null
context, they take on their configured default
property values. - ROOT termination represents the MG itself
- useful for specifying properties of the MG as a
device, and to refer to the MG in commands like
AuditCapability and ServiceChange
13Message structure
Megaco/H.248 message
Header Transaction Transaction ...
Transaction Req or Reply Req or
Reply Req or Reply
Trans Hdr Action ... Action
Ctx Hdr Ctx Properties Command ... Command
Cmd Hdr Descriptor ... Descriptor
14Commands
- Megaco/H.248 provides the following commands
- For termination manipulation Add, Subtract,
Move, Modify - For event reporting Notify
- For management AuditCapability, AuditValue,
ServiceChange
15Events
- Events are detected at the MG and reported to the
MGC - example in-band signalling
- MGC controls what events it wants to learn about
at any given time - sets the termination Events descriptor
- Events can have side effects
- stop playout of signals
- start new signals
- automatically update the set of events of
interest
16Signals
- Signals cause things to happen on terminations
- play a tone, display text, ...
- Specified in the Signals descriptor for a
termination - MGC can specify duration of signal ahead of time
or signal can play until explicitly stopped - Signals stop playing when any event is detected
unless MGC says otherwise.
17Packages
- Add detailed content to the protocol
- all events, signals, and statistics are specified
in packages - can also specify additional properties
- Package definition a continuing process
- being created by multiple standards bodies
- private packages also allowed
- Packages can inherit from and extend other
packages.
18Example message flow
PSTN MGC MG
Destination
1. IAM
2. ADD (trunk, send only)ADD(RTP,both)
3. Reply
4. INVITE (local SDP)
5. 180 Ringing (remote SDP)
6. MODIFY (RTP, remote SDP)
7. ACM
8. Reply
19Example message flow (2)
PSTN MGC MG
Destination
10. 200 OK
11. ANM
12. MODIFY (trunk, both)
13. Reply
14. ACK
15. BYE
16. REL
17. SUBTRACT (trunk), SUBTRACT (RTP)
18. Reply
19. 200 OK
20. RLC
20Sample message (long text form)
MEGACO/1 ltMGC1.gz.cngtTransaction1432
Context ADDCkt54/20 Media
LocalControlmodesendonly, Localv0cTDM
NUL xxxxmaudio 0 31kHz/I230 basic
,
21Sample message (long text form) continued
Remotev0cTDM NUL xxxxmaudio 0 UDI/I230
basic
22Sample message, compact text form
!/1 ltMGC1.gz.cngt T1432CACkt54/20MOMOs
o,Lv0cTDM NUL xxxxmaudio 0 31kHz/I230
basic,R v0cTDM NUL xxxxmaudio 0
31kHz/I230 basic