PowerPoint 프레젠테이션

advertisement
VoIP Protocol Introduction(MGCP)
PKT-SP-EC-MGCP-I10-040402
CONTENTS
1 SCOPE
2 INTROUDUCTION
3 MGCI
4 MGCP
SCOPE
 Describe Media Gateway Control Protocol(MGCP) for Packet Cable Embedded Client
Refer to as the Packet Cable NCS(Network-Based Call Signaling) Protocol
 Describe MGCI(Media Gateway Control Interface) and MGCP
 Based on the MGCP
ITU-T
IETF
Packet
Cable
MGCP 0.1
(Draft)
MGCP 1.0
(RFC 2705)
H.GCP
MGCP 1.0 bis
(draft)
NCS MGCP 1.0
MEGACO
(MGCP 2.0)
INTRODUCTION
Describe an abstract application programming interface (MGCI) and a corresponding protocol
(MGCP) for controlling media gateways from external call control elements called media gateway
controllers or Call Agents.
 Call Control Architecture
Call Agent : Call Control Element
Gateway : Conversion audio signals and data packets
 Connection Model
Basic constructs are endpoints and connections
Endpoints : A Terminal, Gateway, MCU
Connection : Point-To-Point(the one is the originator, the other is the terminator)
Point-To-Multipoint
MGCI
MGCI-Model
and Naming Conventions
 MGCI Functions…
Connection Control
Endpoint Control
Auditing
Status Reporting
Use Same System Model and Same Naming Conventions
 Model and Naming Conventions
 Endpoint Names
- local-endpoint-name@domain-name
 Call Names
- Call ID
- Created by Call Agent
 Connection names
- Connection ID
- Created by Gateway
MGCI
MGCI-Model
and Naming Conventions
 Model and Naming Conventions
 Digit Maps
Possible Dialing Numbers(Dial Plan)
0
00
xxxx
8xxxxxxx
Local operator
*xx
Long Distance Operator
91xxxxxxxxx
Local Exchange Number
9011 + up to 15 digits
Shortcut to local number at other corporate sites
Star services
Long Distance Number
International number
Above Dial Plan can be described in the following Digit Map
(0T | 00T | [1-7]xxx | 8xxxxxxx | #xxxxxxx | *xx | 91xxxxxxxxxxxxx | 9011x.T)
The Formal syntax of Digit Map
Digit
Timer
Letter
Range
Letters
Subrange
Position
StringElement
String
StringList
DigitMap
::= “0” | “1” | “2” | “3” | “4” | “5” | “6” | “7” | “8” | “9”
::= “T” | “t”
-- matches the detection of timer
::= Digit | Timer | “#” | “*” | “A” | “a” | “B” | “b” | “C” | “c” | “D” | “d”
::= “X” | “x”
-- matches any digit
| “[“ Letters “]”
-- matches any of the specified letters
::= Subrange | Subrange Letters
::= Letter
-- matches the specified letter
| Digit “-” Digit
-- matches any digit between first and last
::= Letter | Range
::= Position
-- matches an occurrence of the position
| Position “.”
-- matches an arbitrary number of occurrence
-- of the position, including 0
::= StringElement | StringElement String
::= String | String “|” StringList
::= String | “(“ StringList “)”
MGCI-Model and Naming Conventions
 Model and Naming Conventions
 Events and Signals
Notify Events(L/hd)
Call
Agent
Request Signals(L/dl)
Embedded
Client
L/hd : hook-off in line package for an analog access line
L/dl : dial-tone in line package for an analog access line

SDP USE
Provide the gateways with the description of connection parameters
(IP Address, UDP Port, RTP Profiles..)
MGCI-Gateway Control Functions
 Gateway Control Functions
Describe the commands of the MGCP

Notification Request(RQNT)
Used to request the gateway to send a notification upon the occurrence of
Specified events in an endpoint
← NotificationRequest(EndpointId
[, NotifiedEntity]
[, RequestedEvents]
, RequestIdentifier
[, DigitMap]
[, SignalRequests]
[, QuarantineHandling]
[, DetectEvents])
ex) RequestedEvents(R) : L/hu, L/ft, D/[0-9*#]…
RequestIdentifier(X) : Used to correlate this request
DigitMap(D) : X.T
SignalRequests(S) : rt, rg, bz..
QuarantineHandling(Q) : Optional Parameter
DetectEvents(T) : Optional Parameter
MGCI-Gateway Control Functions

Notifications(NTFY)
Send NTFY CMD by the gateway When an Observed event is to be notified
← Notify(EndpointId
[, NotifiedEntity]
, RequestIdentifier
, ObservedEvents)
ex) ObservedEvents(O) : Events that were requested in the RequestedEvents
Parameter, O:l/hu
Create Connection(CRCX)
Used to a create connection
← CreateConnection(CallId
, EndpointId
[, NotifiedEntity]
[, LocalConnectionOptions]
, Mode
[, RemoteConnectionDescriptor]
ex) Call ID(C) : Identify the call (or session) to which this connection belongs.
LocalConnectionOptons(L) : Encoding Method, Packetization Period,
Echo Cancel, Silence Suppression..
L:nt:IN, a:PCMA, e:on, s:off
RemoteConnectionDescriptor:SDP
MGCI-Gateway Control Functions

ModifyConnection(MDCX)
Used to modify the connection
← ModifyConnection(CallId
, EndpointId
, ConnectionId
[, NotifiedEntity]
[, LocalConnectionOptions]
[, Mode]
[, RemoteConnectionDescriptor]
[, RequestedEvents]
[, RequestIdentifier]
[, DigitMap]
[, SignalRequests]
ex) Mode(M) : Indicates the mode of operation for this side of the connection
RecvOlny, Send/recv..
MGCI-Gateway Control Functions

DeleteConnection(DLCX)
Used to terminate a connection
← DeleteConnection(CallId
, EndpointId
, ConnectionId
[, NotifiedEntity]
[, RequestedEvents]
[, RequestIdentifier]
[, DigitMap]
[, SignalRequests]
[, QuarantineHandling]
[, DetectEvents])
The gateway returns a list of parameters that describe the status of the connection.
ex) Connection Parameters(P)
250 TransactionID OK
P:PS=2, OS=0, PR=306, OR=7344, PL=0, JI=5, LA=0
MGCI-Gateway Control Functions

Auditing(AUEP, AUCX)
AuditEndPoint(AUEP): Used by the Call Agent to determine the status of an endpoint
AuditConnection(AUCX): Used by the Call Agent to obtain information about a connection
← AuditEndPoint(EndpointId
[, RequestedInfo] |
{ [, SpecificEndPointID]
[, MaxEndPointIDs] })
← AuditConnection(EndpointId
, ConnectionId
[, RequestedInfo])
ex) RequestedInfo(F) :
AUEP TID EndpointId
F: ES, A, I
200 TID OK
ES:I/hu
A: a:PCMU;G723;G729, s:off
※ ES : Event Status
A : Capabilities
I : Connection ID
MGCI-Gateway Control Functions

Restart in Progress(RSIP)
Used by the gateway to signal that an endpoint, or a group of endpoints, is
taken out of service or is being placed back in service.
← RestartInProgress(EndpointId
, RestartMethod
[, RestartDelay]
[, ReasonCode])
ex) Restart Method(RM) :
Graceful : That the specified endpoint(s) will be taken out of service after
The specified “restart delay(RD)”
Cancel-graceful : Indicates that a gateway is canceling a previously issued
"graceful“ restart method for the same endpoints
Forced : Indicates that the specified endpoints are taken out of service abruptly
Restart : Indicates that service will be restored on the endpoints after the
Specified “restart delay”
Disconnected : Indicates that the endpoint has become disconnected
Established connections are not affected
MGCI-Return Codes and Error Codes
All MGCP commands receive a response. The response carries a return code
that indicates the status of the command.
. value 000 indicates a response acknowledgement24,
. values between 100 and 199 indicate a provisional response,
. values between 200 and 299 indicate a successful completion,
. values between 400 and 499 indicate a transient error,
. values between 500 and 599 indicate a permanent error.
Return Code Definitions
100 The transaction is currently being executed. An actual completion message
will follow later.
200 The requested transaction was executed normally.
~
401 The phone is already off hook.
~
500 The transaction could not be executed because the endpoint is unknown.
501 The transaction could not be executed because the endpoint is not ready.
~
521 Endpoint redirected to another Call Agent.
534 Codec negotiation failure.
MGCI-Use of Local Connection Options and connection Descriptors
CRCX(Local Connection Option)
200 OK
SDP:Local Connection Descriptor
MDCX(Local Connection Option)
SDP:Remote Connection Descriptor
200 OK
SDP:Local Connection Descriptor
CRCX(Local Connection Option)
SDP:Remote Connection Descriptor
200 OK
SDP:Local Connection Descriptor
Codec and
packetization period selection
EX)
CRCX(L: a:G723)
RCD(m=4 18 0 8)
200 OK
LCD(m=4)
MGCP- General Description
 General Description
 Command
Head
cmd
tid Endpoint Name version
Body
parameters
SDPs
 Ex)
CRCX 2005 aaln/1@mta2.icablesystem.com MGCP 1.0 NCS 1.0
C: 0
L: p:20, a:PCMU;PCMA;G.723.1-5.3;G.723;G.729A, s:on, e:on
M: recvonly
X: 3
R: hu
S: rt
 TID(Transaction ID) : Value between 1 and 999999999
Correlate commands and responses
MGCP- General Description
 General Description
 Response
Head
ReCode
tid
comment
Body
parameters
 EX)
200 2005 OK
I: 686B
v=0
o=- 26731 2005 IN IP4 218.232.96.222
s=c=IN IP4 218.232.96.222
t=0 0
m=audio 3456 RTP/AVP 0 8 4 18
a=recvonly
a=ptime:20
SDPs
MGCP- Command Header
 Command Line
Command
Direction
Description
AUCX
(MGC  MG)
Retrieve the parameters attached to the connection
AUEP
(MGC  MG)
Find out the status of a given endpoint
EPCF
(MGC  MG)
Specify the encoding of signals that will be received by
the endpoint
CRCX
(MGC  MG)
Create Connection between two endpoints
DLCX
(MGC  MG)
Terminate connection
MDFY
(MGC  MG)
Modify the characteristics of gateway’s view of a
connection
RQNT
(MGC  MG)
Request the gateway to send NTFY upon occurrence of
specified events in an endpoint
NTFY
(MGC  MG)
Notification
RSIP
(MGC  MG)
Signal to the MGC that an endpoint, or a group of
endpoint, is take in or out of service
MGCP- Command Header
 Parameter Line
 RequestIdentifier(X)
Correlate a Notify command with the NotificationRequest that triggered it

Local Connection Options(L)
Describe the operational parameters that the Call Agents instructs the
Gateway to use for a connection. These parameters are p, a, s, e etc.

RequestedEvents(R)
Provides the list of events that have been requested
R: hu(N), hf(N) Notify on-hook, notify hook-flash.
R: hu(N), [0-9#T](D) Notify on-hook, accumulate digits according to
Digitmap
SignalRequests(S)
Provides the name of the signals that have been requested
S: ci(10/14/17/26, “555 1212”, CableLabs)
S : rg
S : rt

MGCP- Command Header
 Parameter Line
 ObservedEvents(O)
Provide the list of events that have been observed
O: 8,2,9,5,5,5,5,T
0:hf

RequestInfo(F)
Contain a comma separated list of parameter codes
F: ES,I,A
 CallId(C) ,DigitMap(D)
EX)
CRCX 1120660 isup/1/1/18@x-mg1.hanaro.com MGCP 1.0
C: 22002a4
L: nt:IN, a:G723, fx:t38, e:on, s:off
M: sendrecv
D: ([0-9*#])
X: 22002a4
R: fxr/t38, D/[0-9*#](D)
MGCP- Response Header Formats
 Create Connection
The Response line is followed by a Connection-Id parameter witha successful
response(code 200). A LocalConnectionDescriptor is furthermore transmitted
with a positive response
Ex)
200 1204 OK
I: FDE234C8
v=0
o=- 25678 753849 IN IP4 128.96.41.1
s=c=IN IP4 128.96.41.1
t=0 0
m=audio 3456 RTP/AVP 96 97 0
a=rtpmap:96 G726-32/8000
a=rtpmap:97 telephone-event/8000
a=mptime: 10 - 10
MGCP- Response Header Formats
 ModifyConnection
The response line is followed by a LocalConnectionDescriptor
Ex)
200 1207 OK
v=0
o=- 25678 753849 IN IP4 128.96.41.1
s=c=IN IP4 128.96.41.1
m=audio 3456 RTP/AVP 0
a=mptime: 20
 DeleteConnection
The response line may be followed by a Connection Parameters parameter line
Ex)
250 1210 OK
P: PS=1245, OS=62345, PR=780, OR=45123, PL=10, JI=27, LA=48
MGCP- Response Header Formats
 NotificationRequest/Notify
Not include any additional response parameters
 AuditEndpoint
The response line may be followed by information for each of the parameters
Requested–each parameter will appear on a separate line.
Ex)
200 1200 OK
A: a:PCMU; p:10, e:on, s:off, t:1, v:L,
 AuditConnection
The Response may be followed by information for each of the parameters requested
Ex)
200 1203 OK
C: A3C47F21456789F0
P: PS=622, OS=31172, PR=390, OR=22561, PL=5, JI=29, LA=50,
MGCP- Response Header Formats
 RestartInProgress
The response to a RestartInProgress may include the name of another Call Agent to
Contact, for Instance when the Call Agent redirects the endpoint to another Call
Agent as in:
521 1204 Redirect
N: CA-1@ca.whatever.net
MGCP- Session Description Encoding
 SDP Avdio Service Use
Protocol Version(V=)
Origin(o=)
Session Name(s=)
Connection Data(c=)
Media Announcements(m=)
Attributes(a=)
Ex)
v=0
c=IN IP4 218.232.19.236
m=audio 24830 RTP/AVP 4
a=ptime:30
a=cdsc : 1 image udpt I t38
MGCP- Piggy-Backing
Separated by a line of text that contains a single dot
200 2005 OK
.
DLCX 1244 aaln/2@rgw.whatever.net MGCP 1.0 NCS 1.0
C: A3C47F21456789F0
I: FDE234C8
Used to guarantee in-order delivery of messages
Used to Fate-Sharing of message delivery
MGCP- Event Packages
 Line Package
Package Name : L
Used to identify events and signals for the “line” package for “analog Access Line”
bz – Busy Tone, dl – Dial Tone, ft – Fax Tone, hd – Off Hook, hu – On Hook,
hf – Flash Hook, ot – Off Hook Warning Tone, rg – Ringing, rt – Ring Back Tone,
sl – Stutter Dial Tone, wt – Call Waiting Tone
MGCP- Residential Gateway Restart
Call Agent
RMG
rsip 1001 *@TEST.0000 MGCP 1.0
RM:restart
RD:0
200 1001 OK
AUEP 216 aaln/1@test.0000 MGCP 1.0
F: ES,A,I
200 216 OK
ES:l/hu
A: a:PCMU;G726-32;G723; gc:0, s:off
RQNT 217 aaln/1@test.0000 MGCP 1.0
S:
X: 210000e
Q: discard
R: L/hd
200 217 OK
Questions ?
Download