UA5000
UA5000
248 Protocol
ISSUE 1.0
The H.248 protocol is more outstanding in flexibility, and thus is replacing MGCP gradually to grow to be the standard of media gateway control protocols.
Internal Use
Object
Upon completion this course, you will be able to: understand the architecture of H.248 protocol grasp the uses of commands in the H.248 protocol
grasp the meanings and uses of command parameters in the H.248 protocol
Internal Use
References
Internal Use
Contents
Chapter 1 Overview
Internal Use
Overview
H.248 and MeGaCo are actually the same protocol, which results from the close cooperation between ITU and IETF. ITU-T calls it H.248, while IETF calls it MeGaCo. Developed from the Media Gateway Control Protocol (MGCP), H.248 integrates the features of other media gateway control protocols.
MGCP does not have a good description capability, which limits its application in large-scale gateways. H.248 is a good choice for large-scale gateways.
MGCP has the message transmission based on UDP packets over the broadband IP network, while H.248 may have its signaling messages transmitted over multiple bearers such as UDP/TCP/SCTP/ATM.
Internal Use
ANTENA SATELITAL
MGs SIEMENS
SoftX3000
HIE9200
Telfono de prueba
Mirror
BBIP
MIRROR PSTN
Telfono de prueba
CENTRAL LOCAL
6
Internal Use
Question
Internal Use
Summary
This chapter mainly introduces the basic ideas of architecture of the gateway control protocol and where the H.248 gateway control protocol is located in the NGN architecture. After learning this chapter, you have a preliminary understanding of the function of the gateway control protocol.
Internal Use
Contents
Chapter 1 Overview
Internal Use
Contents
Chapter 2 Protocol Introduction
Section 1 Two Important Conceptions
Section 2 Message Structure Section 3 Command and Descriptor
Internal Use
10
The connection model defined by H.248/Megaco including two entities: Context and Termination. A context should include at least one termination; otherwise, it will be deleted. A termination can belong to only one Context at any time.
Internal Use
11
Termination
termination is a logical entity on an MGW which is the source and/or sink of media and/or control streams. For example, it may indicate a timeslot (CIC circuit), an IP port (IP address + port No.) or an ATM port (VPI/VCI).
Internal Use
12
Termination
Terminations
are generally classified into two types. One is semi-permanent termination, which indicates a physical termination. For example, a TDM channel exists all the time as long as it is configured in the MGW, and the corresponding termination will disappear only when the configuration information is deleted. The other is ephemeral termination, which indicates ephemeral information flow, for example, the RTP flow. An ephemeral terminal is created when it is needed, and is deleted after it is used. An ephemeral termination can be created by the ADD command and cleared by the SUBTRACT command. When a semi-permanent termination is added to a specific context, it is obtained from the NULL context. When it is deleted from a specific context, it is returned to the NULL context. ROOT termination, which generally refers to an MGW.
Termination
ID : allocated by an MG. It may have 64 bits in the binary encoding mode, or may have 64 characters in the text encoding mode.
Internal Use
13
Context
Context
describes the relations in a termination set. A context that involves multiple terminations will describe the topology formed by these terminations and the parameters for media hybrid exchange. A context may be created by the Add command and deleted by the Subtract command. A context must have a termination in it.
Internal Use
14
Context Attributes
Context
ID 32bits, to identify a context uniquely throughout the gateway. Context ID is determined by the MG and is unique throughout the MG.
- $
Internal Use
15
* * *
Context
Termination RTP Stream
Context
Termination RTP Stream Termination SCN Bearer Channel
Internal Use
16
Question
What are two important conceptions in H248 protocol? How many termination types in H.248 protocol ? What is the difference between them ?
Internal Use
17
Contents
Chapter 2 Protocol Introduction
Section 1 Two Important Conceptions
Section 2 Message Structure Section 3 Command and Descriptor
Internal Use
18
Structure
Megaco/H.248 message ....
Header
Trans Hdr
Action
....
Action
Ctx Hdr
Ctx Properties
Command
....
Command
Trans Hdr
Descriptor
....
Descriptor
Internal Use
19
Message
A message is an information unit sent or received by the H.248 protocol. A message starts with a header which is followed by
several transactions.
The header contains a Message Identifier (MID) and a Version Number. A message contains one or more transactions.
Internal Use
20
Transaction
Commands between the MGC and the MG are grouped into Transactions, each of which is identified by a TransactionID.
Transactions
include requests and responses, and responses are divided into two types: TransactionReply and TransactionPending. A transaction contains one or more actions and each action includes one or more commands related to a single Context.
A
Transaction starts with a TransHdr. The TransHdr contains a transaction Identifier, which is assigned by sender and is unique within the scope of the sender. Transactions guarantee ordered Command processing. transactions in a message are treated independently. There is no order implied.
The
Internal Use
21
Transaction Supplement
At the first failing of Command in a Transaction, processing of the remaining Commands in that Transaction stops. (except Optional command). About transaction Response , whether there is information in transaction is the difference between transaction replay and transactionpending.
Internal Use
22
Transaction Request structure TransactionRequest(TransactionId { ContextID {Command ... Command}, ... ContextID {Command ... Command } }) Transaction Reply structure
T r a n s a c t i o n R e p l y ( T r a n s a c t i o n I D { C o n t e x t I D { R e s p o n s e . . . R e s p o n s e } , . . . C o n t e x t I D { R e s p o n s e . . . R e s p o n s e } } )
Internal Use
23
Transaction Response
Transactions include requests and responses, and responses are divided into two types: TransactionReply and TransactionPending. Transaction Reply is a response of the transaction receiver to the Transaction Request. Every transaction should have its Reply. A TransactionRequest stops being executed either if all commands in the TransactionRequest have been carried out successfully or a failure is encountered during the execution of a non-optional command.
Internal Use
24
Transaction Pending
Transaction Pending indicates that the transaction is actively being processed. It is used to prevent the sender from sending the same message several times. The structure of Transaction Pending is as follows:
TransactionPending (TransactionID { } )
Corresponding
response to a TransactionRequest is received in a single reply, possibly preceded by a number of TransactionPending messages.
Internal Use
25
An
action begins with the Context header (CtxHdr) . ContextID is assigned by the MG and is unique within the scope of the MG. The MGC shall use the ContextID in all subsequent transactions relating to that Context.
Commands
are the major contents in an H.248 message. They control the Context and Termination attributes. A command is composed of the command header (CMDHdr) and command parameters.
Internal Use
26
Message Mechanism
Message
TransactionI ContextID1
CMD1 Des-1 Des-n
... CMDn
...
ContextIDn
TransactionIDn
Internal Use
27
Contents
Chapter 2 Protocol Introduction
Section 1 Two Important Conceptions
Section 2 Message Structure Section 3 Command and Descriptor
Internal Use
28
Commands
Command: As main contents of H.248 messages, commands control the context and termination attributes: specify the termination to report detected events, notify the termination of which signals to use and which actions to take, and specify topology for a context. A command comprises the header (CMDHdr) and parameters. In H.248, command parameters are organized into descriptors. H.248 defines eight commands, of which, Notify is sent by an MG to an MGC, ServiceChange may be sent by an MG or an MGC, and the other commands are sent by an MGC to an MG.
Internal Use
29
Commands: Add/Modify/Subtract
ADD (abbreviated to A in messages): Used to add a Termination to a Context. If no Context ID is specified (or when a Termination is added for the first time), a Context will be generated and then the Termination is added to the Context. MODIFY (abbreviated to MF in messages): Used to modify attributes, events and signal parameters of a Termination. For example, modify the encoding type for a Termination, notify a Termination of detecting the off-hook/on-hook event, and modify the topology for a Termination (bidirectional/unidirectional/isolation) SUBSTRACT (abbreviated to S in messages): Used to delete a Termination from a Context and to return the statistical status of the Termination. If the Context does not have any other Termination in it, it will be deleted.
Internal Use
30
Commands: Move/AuditValue/AuditCapabilities
MOVE: To move a Termination from a Context to another Context. AUDITVALUE (abbreviated to AV in messages): To return the current Properties, Events, Signals and Statistics of a Termination. AUDITCAPABILITIES: To return the capability set of Termination features in an MG.
Internal Use
31
Commands: Notify/ServiceChange
NOTIFY (abbreviated to N in messages): To allow an MG to notify an MGC of the detected events. For example, the MGW reports the detected off-hook event to the MGC. SERVICECHANGE (abbreviated to SV in messages): For an MG to notify an MGC that a termination or terminations will exit from or participate in the service. It is used for an MG to register with an MGC or send a restart notice to the MGC. The MGC may use ServiceChange to restart an MG or to notify an MG of deregistering a Termination or partial Terminations.
Internal Use
32
Descriptors
Descriptors Command parameters Some commands may share one or several descriptors. Descriptor may act as the output return value for a Command. In most cases, a Descriptor, being the return value, only has the Name but not any other item. Generally, a Descriptor is in the following form: DescriptorName=<someID> { parm = value, parm = value }
Internal Use
33
Descriptors
Internal Use
34
Descriptors
Descriptors (continued) Signals descriptor (SG) Audit descriptor (AT) ServiceChange descriptor (SC) DigitMap descriptor (DM) Statistics descriptor (SA) Packages descriptor (PG) ObservedEvents descriptor (OE) Topology descriptor (TP) Error descriptor (ER)
Internal Use
35
Descriptors
Media: To describe media stream. This descriptor comprises the TerminationState and Stream descriptors.
The TerminationState descriptor describes the Termination attributes (independent of the Stream). One or more Stream Descriptors describe a Media Stream. Stream is identified by StreamID. StreamID links the Steams in a Context.
The Stream descriptor has three sub-descriptors: Local, Remote and LocalControl, which may be directly included in the Media Descriptor when there is not a Stream descriptor. The composition is as follows:
Media Descriptor TerminationStateDescriptor Stream Descriptor LocalControl Descriptor Local Descriptor
Remote Descriptor
Internal Use
36
Descriptors
Local :A parameter to indicate the media stream received by an MGW from a remote entity.
remote : A parameter to indicate the media stream sent by an MGW to a remote entity.
LocalControl : A parameter to describe the exchange between an MGC and an MGW.
Internal Use
37
Descriptors
Events : To describe Events to be detected by an MG and how the detected Events will be handled.
EventBuffer
Singals Audit
: After the Events buffer is activated, it is used to describe the events detected by an MG.
: To describe the AND/OR operation of signals in a Termination (for example, busy tone) : In the AuditValue command, it returns a list of Packages identifiable by the Termination.
Packages
Internal Use
38
Descriptors
DigitMap : To define relations between events. When an MG detects such an event (which
matches the pre-set one), the MG will report it to the MGC (for example, when the MG detects the in-band DTMF signal).
ServiceChange :To describe why ServiceChange occurs. ObservedEvents :Used in the Notify or AuditEvents command to report the observed events. Statistics : When a Termination is audited or deleted, this descriptor reports the statistical value
Internal Use
39
Question
What is the Message structure? How many commands are defined in the H.248 protocol? Please list the commands. If all commands are sent from MGC? What is the function of NOTIFY command? What is a command composed of? Which two parts does the command descriptor consist of?
Internal Use
40
Summary
Chapter content review: Two key conceptionsContext and Termination Two key conceptions : Context and Termination Message structure message-transaction-action (context)-command-descriptors Eight command: Servicechange ,Modify ,Notify , Add Substract , Auditvalue , Auditcapabilities , move Descriptors
Internal Use
41
Contents
Chapter 1 Overview
Internal Use
42
Contents
Chapter 3 Basic Control Procedures
Section 1 Gateway Registration / CANCELATION/INITIALIZATION Procedure
Internal Use
43
Rigistration/Cancelation
MG
SoftX3000
SVC_CHG_REQ
SVC_CHG_REPLY
Internal Use
44
Initialization
MG SoftX3000
MOD_REQ
MOD_REPLY
After the MG completes a successful registration procedure, the MGC will modify the properties of all semi-permanent Terminations of the MG contained in the null Context and instruct the MG to detect off-hook events. At this time, the Termination can receive or originate calls.
45
Internal Use
Contents
Chapter 3 Basic Control Procedures
Section 1 Gateway Registration / CANCELATION/INITIALIZATION Procedure
Internal Use
46
SoftX300
H.248
M3UA/SCTP
SG7000
Core Network
AMG1
SS7/PRI
AMG2
TMG2
PSTN
Internal Use
47
Internal Use
48
SoftX3000
Termination2
UserB
2 MOD_REQ MOD_REPLY
3 NTFY_REQ NTFY_REPLY 4 ADD_REQ ADD_REPLY
dialing
5 ADD_REQ ADD_REPLY 6 MOD_REQ MOD_REPLY 8 NTFY_REQ NTFY_REPLY 9 MOD_REQ MOD_REPLY Ringing Off-hook
7 MOD_REQ
Ringback tone
MOD_REPLY
Internal Use
49
Conversation
On-hook 11 NTFY_REQ NTFY_REPLY 12 MOD_REQ MOD_REPLY 13 SUB_REQ SUB_REPLY 15 MOD_REQ MOD_REPLY 14 MOD_REQ MOD_REPLY
Busy-tone
16 NTFY_REQ NTFY_REPLY
17 SUB_REQ SUB_REPLY
On-hook
18 MOD_REQ MOD_REPLY
Internal Use
50
Question
Can you introduce the whole call processing ? Please repeat the severalbasic control procedures.
Internal Use
51
Summary
Chapter content review:
Basic
control procedures:
Internal Use
52
Contents
Chapter 1 Overview
Internal Use
53
CLIPMOD message which after MGC create a new context contain this information SG{andisp/dwa
Ring mode : this information occur in the MOD message after MGC create a context . MEGACO/1[192.168.20.12]:2944T=372798426{C=35{MF=A34{E=369184257{al /*},SG{andisp/dwa{ddb=040F303230373135333038383838333335E0,patter n=1}}}}}
Internal Use
54
Reverse polarity MGC send to MG include in MOD message after callee off-hook : SG{xal/las
MEGACO/1[192.168.20.12]:2944T=372793180{C=16{MF=A34{E=369184268{ al/*},SG{xal/las}}}}
Only have data in MGC without data in MG MEGACO/1 [192.168.20.12]:2944 T=372791464{C={MF=A2{E=369150470{al/*},SG{}}}} MEGACO/1 [192.168.20.21]:2944 P=372791464{C=-{ER=430{"Unknown TerminationID"}}}
Internal Use
55
Authentication
Internal Use
56
Unsupport syntax
Because mfd is not the basic packet, the UA5000 cannot identify it. The UA5000 looks dd/ce including pluse dial event .
Internal Use
57