Upload
pascal
View
91
Download
0
Embed Size (px)
DESCRIPTION
An Introduction to Megaco/H.248. Tom Taylor [email protected]. Media 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: - PowerPoint PPT Presentation
Citation preview
PTT-010426 Megaco/H.248 - 2
Media 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.
PTT-010426 Megaco/H.248 - 3
Media gateway control vs. call signalling
SG
MG
MGC SG
MG
MGC
SIPUser Agent
H.323Endpoint
PSTNPSTN
Call signalling
Media gateway control signalling
Media flows
SIP-T, ISUP in H.323, Q.BICC
SIP
H.323 callsignallingGateway
controlprotocol
Gatewaycontrolprotocol
PTT-010426 Megaco/H.248 - 4
Gateway control family tree
IPDC SGCP
MGCP (I-RFC 2705)
Megaco/H.248
MDCP
Early 1998
Late 1998
1999(Standard in 2000)
ASPEN
PTT-010426 Megaco/H.248 - 5
Gateway control functions
ConnectionBearer Mediation
Media Transcoding
Context
Terminations
Events and Signals
The context supportsmultiple media streamsif required for multimediaservice.
PTT-010426 Megaco/H.248 - 6
Basic concepts
• Connection model: terminations, streams, and the context
• Termination properties: descriptors
• Context properties
• Message structure: transactions, actions, and commands
• Event and signal processing
• Packages
PTT-010426 Megaco/H.248 - 7
Media 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
PTT-010426 Megaco/H.248 - 8
Context example: basic call
T1 T2
Medium=audio,
Mode=sendReceive
Medium=audio,
Mode=sendReceive
PTT-010426 Megaco/H.248 - 9
Context example: multimedia
Stream=1,medium=audio
Stream=1,medium=audio
Stream=2,medium=video
Stream=2,medium=video
T1 T2
T3
PTT-010426 Megaco/H.248 - 10
Descriptors
• 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
PTT-010426 Megaco/H.248 - 11
Context 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
PTT-010426 Megaco/H.248 - 12
Null 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
PTT-010426 Megaco/H.248 - 13
Message 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
PTT-010426 Megaco/H.248 - 14
Commands
• Megaco/H.248 provides the following commands
• For termination manipulation: Add, Subtract, Move, Modify
• For event reporting: Notify
• For management: AuditCapability, AuditValue, ServiceChange
PTT-010426 Megaco/H.248 - 15
Events
• 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
PTT-010426 Megaco/H.248 - 16
Signals
• 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.
PTT-010426 Megaco/H.248 - 17
Packages
• 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.
PTT-010426 Megaco/H.248 - 18
Example message flow
PSTN MGC MG Destination1. IAM
2. ADD (trunk, send only);ADD(RTP,both)
3. Reply
4. INVITE (local SDP)5. 180 Ringing (remote SDP)
7. ACM 6. MODIFY (RTP, remote SDP)
8. Reply
PTT-010426 Megaco/H.248 - 19
Example message flow (2)
PSTN MGC MG Destination10. 200 OK
12. MODIFY (trunk, both)11. ANM
13. Reply
15. BYE
14. ACK
16. REL17. SUBTRACT (trunk), SUBTRACT (RTP)18. Reply19. 200 OK20. RLC
PTT-010426 Megaco/H.248 - 20
Sample message (long text form)
MEGACO/1 <MGC1.gz.cn>Transaction=1432 {Context=$ {ADD=Ckt54/20 {Media= { LocalControl={mode=sendonly}, Local={v=0c=TDM NUL xxxxm=audio 0 31kHz/I230 basic },
PTT-010426 Megaco/H.248 - 21
Sample message (long text form) continued
Remote={v=0c=TDM NUL xxxxm=audio 0 UDI/I230 basic }}}}}
PTT-010426 Megaco/H.248 - 22
Sample message, compact text form
!/1 <MGC1.gz.cn> T=1432{C=${A=Ckt54/20{M={O={MO=so},L={v=0c=TDM NUL xxxxm=audio 0 31kHz/I230 basic},R={ v=0c=TDM NUL xxxxm=audio 0 31kHz/I230 basic}}}}}