media gateway control protocol
DESCRIPTION
Media Gateway Control Protocol. Introduction Media gateway Control Interface Entity Naming (Endpoint, Call, Connection, CA) Digit Maps Events Commands Protocol Description Call Flow for RGW to TGW Usage of Commands. Introduction. Components. SS7 Network. Internet. Signaling (SS7) - PowerPoint PPT PresentationTRANSCRIPT
Media Gateway Control Protocol
Introduction Media gateway Control Interface
Entity Naming (Endpoint, Call, Connection, CA) Digit Maps Events Commands
Protocol Description Call Flow for RGW to TGW Usage of Commands
Introduction Components
Signaling(SS7)
Gateway
TrunkingGateway
CallAgent
SCP
ResidentialGateway
InternetSS7 Network
STP
TrunkingGatewayTrunkingGatewayCOSwitch
ResidentialGatewayResidential
Gateway
MGCPMGCP
RTP
SIGTRAN
Introduction Types of Media Gateway
Trunking Gateway to CO/Switches Residential Gateway to PSTN Phones Access Gateway Business Gateway
Concept of Call Agent call control intelligent outside gateways
master/slave undefined CA to CA: maybe H.323, SIP+
Introduction Relation with H.323 Standards
COSwitch
Internet
CallAgent
Signaling(SS7)
Gateway
TrunkingGateway
Gatekeeper
Terminalor
Gateway
SS7/ISUP
RTP
H.225/RASH.225/Q.931H.245
SIGTRAN
MGCP
H323, SIP & MGCP H.323 , SIP
peer-to-peer internet oriented intelligent endpoint
optional GK decentralized
Problems maintenance
cost & scalability of large systems
signaling & media control are coupled
interoperability with SS7
MGCP client-server traditional telephony intelligent server
“dumb” terminal centralized
Concept gateway decomposed
separate call control from media ports
CA, MG, SG interoperability with
PSTN
Media gateway Control Interface
Endpoints Types
Digital Channel Analog line IVR endpoint
Naming: GW’s Domain Name + Local Name Local Name
physical interface name / circuit number e.g., galant.ccl.itri.org.tw/X35V3+A4/15
Wild-carded e.g., galant.ccl.itri.org.tw/X35V3+A4/* e.g., galant.ccl.itri.org.tw/X35V3+A4/$
DS0 endpoint
Analog endpoint
IVR endpoint
(Channel)
(Line) (Connections)
Media gateway Control Interface
Calls & Connections & Call Agents Call Identifier (Call ID)
Created by CA Unique in the Whole System
Connection ID Created by GW Unique under Its GW
Usage of a Connection ID on the same EP Waiting Period at least 3 minutes
CA Identifier (its domain name) Redundant CAs : reliability CA & GW keep “time-to-live” record they read from DNS
Media gateway Control Interface
Digit Map CA ask GW to collect user dialed digits
Created by CA Sent to Gateways
Usage Gateways detect digits, letters, or timer
e.g., (11x|080xxxxxx|03xxxxxxx|002x.T) Match accumulated digits
under-qualified, do nothing further matched, send the collected digits to CA over-qualified, send the digits to CA
Inter-digit Timer
Media gateway Control Interface
Events package name(o) / event name package:
Generic Media (G) DTMF (D) MF (M) Trunk (T) Line (L) Handset (H) RTP (R) Network Access Server (N) Announcement Server (A) Script
Gateway Supported packages
Trunk GW (ISUP)Trunk GW (MF)Network Access ServerCombined NAS/VOIP GWAccess GW (VOIP)Access GW (VOIP + NAS)Residential GWAnnouncement GW
G, D, T, RG, M, D, T, RG, M, T, NG, M, D, T, N, RG, M, D, RG, M, D, N, RG, D, L, RA, R
Media Gateway Control Interface
Commands 9 commands to handle Connection/Endpoints
EndpointConfiguration (coding charateristics) NotificationRequest (requested events) Notify (GW : detected events) CreateConnection ModifyConnection DeleteConnection (GW also) AuditEndpoint (query status) AuditConnection (query status) RestartInProgress (GW : taken in/out of service)
All commands are acknowledged.
EPCF RQNT NTFYCRCXMDCXDLCXAUEPAUCXRSIP
Protocol Description Transactions (simple text format)
commandheader
a command line (case insensitive) Action + TransId + Endpoint + Version
RQNT 1201 endpoint/[email protected] MGCP 1.0 a set of parameter lines parameter name (upper case): value
X: 0123456789B1 (RequestIdentifier) R: hd (requestedEvent: hang down) S: rg (signalRequest: ring tone)
session description
Protocol Description Transactions
responseheader
a response line Response code + TransId + Commentary
200 1201 OK a set of parameter lines (optional) after CreateCX(/MDCX/DLCX/Audit/Restart)
I: A3C47F21456789F0 (ConnectionId)session description
Session Description Protocol separated from header by an empty line
Call Flow for RGW to TGW
I nternetRGW
CA
TGW
Telephone
Telephone
Telephone
PS TNCO
Telephone
Telephone
Telephone
A: 5712836B: 5721043A calls B.
hrd3/ 15
rgw .w hatever.net;140.113.214.123
tgw .w hatever.net;140.113.65.24
card6/ 5
CA@ ca.w hatever.net
Call Flow for RGW to TGW
Call Flow for RGW to TGW RQNT(1) : NotificationRequest
RQNT 1201 hrd3/[email protected] MGCP 1.0 N: [email protected]:5678 X: 0123456789AC R: hd(E(R(hu(N)),S(dl),D/(D))) D: (11x|080xxxxxx|57xxxxx|002x.T)
ACK to RQNT(1) 200 1201 OK
N: NotifyEntityX: RequestIdentifierR: RequestEventsD: DigitMap
E: Embedded(enable) RequestR: Notification RequestN: Notify immediatelyS: Signal RequestD: Digit Map
Call Flow for RGW to TGW NTFY(2) : Notify from RGW
NTFY 2002 hrd3/[email protected] MGCP 1.0 N: [email protected]:5678 X: 0123456789AC O: 5721043
ACK to NTFY(2) 200 2002 OK
N: NotifyEntityX: RequestIdentifierO: ObservedEvent
Call Flow for RGW to TGW CRCX(3) : CreateConnection
CRCX 1204 hrd3/[email protected] MGCP 1.0 C: A3C47F21456789F0 L: p:10, a: G.711; G.726-32 M: recvonly X: 0123456789AD R: hu
ACK to CRCX(3) 200 1204 OK I: FDE234C8
Session Description
C: CallIdL: LocalCXOptions
p: packetize period(ms)a: Compression Algo.
M: ModeX: RequestIdentifierR: RequestEventsI: ConnectionId
Call Flow for RGW to TGW CRCX(4) : CreateConnection
CRCX 1205 card6/[email protected] MGCP 1.0 C: A3C47F21456789F0 L: p:10, a: G.711; G.726-32 M: sendrecv
Session Description from ACK(3)
ACK to CRCX(4) 200 1205 OK I: 32F345E2
Session Description
C: CallIdM: ModeI: ConnectionId
Call Flow for RGW to TGW MDCX(5) : ModifyConnection
MDCX 1206 hrd3/[email protected] MGCP 1.0 C: A3C47F21456789F0 I: FDE234C8 M: recvonly
Session Description from ACK(4)
ACK to MDCX(5) 200 1206 OK
C: CallIdI: ConnectionId M: Mode
Call Flow for RGW to TGW RQNT(6) : NotificationRequest
RQNT 1207 hrd3/[email protected] MGCP 1.0 N: [email protected]:5678 X: 012345789AE R: hu S: v (alerting)
ACK to RQNT(6) 200 1207 OK
N: NotifyEntityX: RequestIdentifierR: RequestEventsS: SignalRequests
Call Flow for RGW to TGW MDCX(7) : ModifyConnection
MDCX 1209 hrd3/[email protected] MGCP 1.0 C: A3C47F21456789F0 I: FDE234C8 M: sendrecv X: 012345789AF R: hu
ACK to MDCX(7) 200 1209 OK
C: CallIdI: ConnectionId M: Mode
Call Flow for RGW to TGW DLCX(8) : DeleteConnection
DLCX 1210 hrd3/[email protected] MGCP 1.0 C: A3C47F21456789F0 I: FDE234C8
ACK to DLCX(8) 200 1210 OK P: PS=1245, OS=62345, PR=780, OR=45123, PL=10, JI=27, LA=48
C: CallIdI: ConnectionId
PS: Packets sentOS: Octets sentPR: Packets receivedOR: Octets receivedPL: Packets lostJI: Average Jitter (ms)LA: Average Latency (ms)
Usage of Commands NotificationRequest()
EndpointId, [NotifiedEntity,] [RequestedEvents,] RequestIdentifier, [DigitMap,] [SignalRequests,] [QuarantineHandling,] [DetectEvents,] [encapsulated EndpointConfiguration]
Q: process/discard step/loop (notify)T: events to detect during quarantine
Request Request
Time
Quarantine Period
Notify
QT
Usage of Commands CreateConnection()
CallId, EndpointId, [NotifiedEntity,] [LocalConnectionOptiona,] Mode, [{RemoteConnectDescptr|SecondEndpointId}] [EncapsulatedNotificationRequest,] [encapsulated EndpointConfiguration]
Hairpin Connection
Usage of Commands DeleteConnection()
Delete one connection from Call AgentConnectionId in the parameter lineGW : Connection parameters
Multiple connection from Call agentonly EndpontId (and CallId) in the parameter lineGW: No connection parameter
From gatewayReason-Code & Connection-Parameters in Command
MGCP Applications (1)
Call AgentTGW
SGW
TGW
SGW
IP Networks
SS7 SS7
IP Switch
PSTNSwitch
IP SwitchIP PBX
PSTNSwitch
MGCP Applications (2) IP PBX
Call AgentTGW
TGW
SGW
IP Networks
SS7
PSTNPBX IP PBX PSTN
PBX