4_제너 VoIP Protocol Introduction(MGCP)

Embed Size (px)

Citation preview

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    1/29

    VoIP Protocol Introduction(MGCP)

    PKT-SP-EC-MGCP-I10-040402

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    2/29

    CONTENTS

    1 SCOPE2 INTROUDUCTION

    3 MGCI

    4 MGCP

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    3/29

    SCOPE

    Describe Media Gateway Control Protocol(MGCP) for Packet Cable Embedded Client

    Refer to as the Packet Cable NCS( Network-Based Call S ignaling) Protocol Describe MGCI(Media Gateway Control Interface) and MGCP Based on the MGCP

    MGCP 0.1(Draft)

    MGCP 1.0(RFC 2705)IETF

    MEGACO(MGCP 2.0)

    ITU-T H.GCP

    MGCP 1.0 bis(draft)

    PacketCable

    NCS MGCP 1.0

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    4/29

    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 ArchitectureCall Agent : Call Control ElementGateway : Conversion audio signals and data packets

    Connection ModelBasic 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

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    5/29

    MGCI

    MGCI Functions Connection Control

    Endpoint ControlAuditingStatus ReportingUse 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-Model and Naming Conventions

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    6/29

    MGCI

    Model and Naming Conventions Digit Maps

    The Formal syntax of Digit MapDigit ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 Timer ::= T | t -- matches the detection of timerLetter ::= Digit | Timer | # | * | A | a | B | b | C | c | D | d Range ::= X | x -- matches any digit

    | [ Letters ] -- matches any of the specified lettersLetters ::= Subrange | Subrange LettersSubrange ::= Letter -- matches the specified letter

    | Digit - Digit -- matches any digit between first and last

    Position ::= Letter | RangeStringElement ::= Position -- matches an occurrence of the position| Position . -- matches an arbitrary number of occurrence

    -- of the position, including 0String ::= StringElement | StringElement StringStringList ::= String | String | StringList DigitMap ::= String | ( StringList )

    Above Dial Plan can be described in the following Digit Map(0T | 00T | [1-7]xxx | 8xxxxxxx | #xxxxxxx | *xx | 91xxxxxxxxxxxxx | 9011x.T)

    Possible Dialing Numbers(Dial Plan)0 Local operator *xx Star services00 Long Distance Operator 91xxxxxxxxx Long Distance Numberxxxx Local Exchange Number 9011 + up to 15 digits International number8xxxxxxx Shortcut to local number at other corporate sites

    MGCI-Model and Naming Conventions

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    7/29

    MGCI-Model and Naming Conventions

    Model and Naming Conventions Events and Signals

    SDP USEProvide the gateways with the description of connection parameters(IP Address, UDP Port, RTP Profiles..)

    CallAgent

    EmbeddedClient

    Notify Events(L/hd)

    Request Signals(L/dl)

    L/hd : hook-off in line package for an analog access lineL/dl : dial-tone in line package for an analog access line

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    8/29

    MGCI-Gateway Control Functions

    Gateway Control FunctionsDescribe the commands of the MGCP

    Notification Request(RQNT)Used to request the gateway to send a notification upon the occurrence ofSpecified 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 requestDigitMap(D) : X.TSignalRequests(S) : rt, rg, bz..QuarantineHandling(Q) : Optional ParameterDetectEvents(T) : Optional Parameter

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    9/29

    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 RequestedEventsParameter, 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

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    10/29

    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 connectionRecvOlny, Send/recv..

    MGCI-Gateway Control Functions

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    11/29

    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 OKP:PS=2, OS=0, PR=306, OR=7344, PL=0, JI=5, LA=0

    MGCI-Gateway Control Functions

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    12/29

    Auditing(AUEP, AUCX)

    AuditEndPoint(AUEP): Used by the Call Agent to determine the status of an endpointAuditConnection(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 EndpointIdF: ES, A, I ES : Event Status

    A : Capabilities200 TID OK I : Connection IDES:I/huA: a:PCMU;G723;G729, s:off

    MGCI-Gateway Control Functions

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    13/29

    Restart in Progress(RSIP)

    Used by the gateway to signal that an endpoint, or a group of endpoints, istaken 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 abruptlyRestart : 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-Gateway Control Functions

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    14/29

    All MGCP commands receive a response. The response carries a return codethat 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 Definitions100 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-Return Codes and Error Codes

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    15/29

    MGCI-Use of Local Connection Options and connection Descriptors

    CRCX(Local Connection Option)

    200 OKSDP:Local Connection Descriptor

    200 OKSDP:Local Connection Descriptor

    CRCX(Local Connection Option)SDP:Remote Connection Descriptor

    200 OKSDP:Local Connection Descriptor

    MDCX(Local Connection Option)

    SDP:Remote Connection Descriptor

    Codec andpacketization period selection

    CRCX(L: a:G723)RCD(m=4 18 0 8)

    200 OKLCD(m=4)

    EX)

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    16/29

    MGCP- General Description

    General Description Command

    Ex)CRCX 2005 aaln/[email protected] MGCP 1.0 NCS 1.0

    C: 0L: p:20, a:PCMU;PCMA;G.723.1-5.3;G.723;G.729A, s:on, e:onM: recvonlyX: 3R: huS: rt

    TID Transaction ID) : Value between 1 and 999999999Correlate commands and responses

    Head Body

    cmd tid Endpoint Name version parameters SDPs

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    17/29

    MGCP- General Description

    General Description Response

    EX)200 2005 OK

    I: 686B

    v=0o=- 26731 2005 IN IP4 218.232.96.222s=-c=IN IP4 218.232.96.222t=0 0m=audio 3456 RTP/AVP 0 8 4 18a=recvonlya=ptime:20

    Head Body

    tid comment parameters SDPsReCode

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    18/29

    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 bythe endpoint

    CRCX (MGC MG) Create Connection between two endpoints

    DLCX (MGC MG) Terminate connection

    MDFY (MGC MG) Modify the characteristics of gateways view of aconnection

    RQNT (MGC MG) Request the gateway to send NTFY upon occurrence ofspecified events in an endpoint

    NTFY (MGC MG) Notification

    RSIP (MGC MG) Signal to the MGC that an endpoint, or a group ofendpoint, is take in or out of service

    MGCP- Command Header

    Command Line

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    19/29

    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 theGateway to use for a connection. These parameters are p, a, s, e etc.

    RequestedEvents(R)Provides the list of events that have been requestedR: 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 requestedS: ci(10/14/17/26, 555 1212, CableLabs) S : rgS : rt

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    20/29

    MGCP- Command Header

    Parameter Line ObservedEvents(O)

    Provide the list of events that have been observedO: 8,2,9,5,5,5,5,T 0:hf

    RequestInfo(F)Contain a comma separated list of parameter codesF: ES,I,A

    CallId(C) ,DigitMap(D)EX)CRCX 1120660 isup/1/1/[email protected] MGCP 1.0C: 22002a4L: nt:IN, a:G723, fx:t38, e:on, s:off

    M: sendrecvD: ([0-9*#])X: 22002a4R: fxr/t38, D/[0-9*#](D)

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    21/29

    MGCP- Response Header Formats

    Create ConnectionThe Response line is followed by a Connection-Id parameter witha successful

    response(code 200). A LocalConnectionDescriptor is furthermore transmittedwith a positive response

    Ex)200 1204 OKI: FDE234C8

    v=0o=- 25678 753849 IN IP4 128.96.41.1s=-c=IN IP4 128.96.41.1t=0 0

    m=audio 3456 RTP/AVP 96 97 0a=rtpmap:96 G726-32/8000a=rtpmap:97 telephone-event/8000a=mptime: 10 - 10

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    22/29

    MGCP- Response Header Formats

    ModifyConnectionThe response line is followed by a LocalConnectionDescriptor

    Ex)200 1207 OKv=0o=- 25678 753849 IN IP4 128.96.41.1s=-

    c=IN IP4 128.96.41.1m=audio 3456 RTP/AVP 0a=mptime: 20

    DeleteConnectionThe response line may be followed by a Connection Parameters parameter line

    Ex)250 1210 OKP: PS=1245, OS=62345, PR=780, OR=45123, PL=10, JI=27, LA=48

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    23/29

    MGCP- Response Header Formats

    NotificationRequest/NotifyNot include any additional response parameters

    AuditEndpointThe response line may be followed by information for each of the parametersRequested each parameter will appear on a separate line.

    Ex)

    200 1200 OKA: a:PCMU; p:10, e:on, s:off, t:1, v:L,

    AuditConnectionThe Response may be followed by information for each of the parameters requested

    Ex)200 1203 OKC: A3C47F21456789F0P: PS=622, OS=31172, PR=390, OR=22561, PL=5, JI=29, LA=50,

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    24/29

    MGCP- Response Header Formats

    RestartInProgressThe 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 CallAgent as in:

    521 1204 RedirectN: [email protected]

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    25/29

    MGCP- Session Description Encoding

    SDP Avdio Service UseProtocol Version(V=)

    Origin(o=)Session Name(s=)Connection Data(c=)Media Announcements(m=)Attributes(a=)

    Ex)v=0c=IN IP4 218.232.19.236m=audio 24830 RTP/AVP 4a=ptime:30a=cdsc : 1 image udpt I t38

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    26/29

    MGCP- Piggy-Backing

    Separated by a line of text that contains a single dot

    200 2005 OK.DLCX 1244 aaln/[email protected] MGCP 1.0 NCS 1.0C: A3C47F21456789F0I: FDE234C8

    Used to guarantee in-order delivery of messagesUsed to Fate-Sharing of message delivery

    k

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    27/29

    MGCP- Event Packages

    Line PackagePackage 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 R id i l G R

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    28/29

    MGCP- Residential Gateway Restart

    rsip 1001 *@TEST.0000 MGCP 1.0

    RM:restartRD:0

    200 1001 OK

    AUEP 216 aaln/[email protected] MGCP 1.0F: ES,A,I

    200 216 OKES:l/huA: a:PCMU;G726-32;G723; gc:0, s:off

    RQNT 217 aaln/[email protected] MGCP 1.0S:X: 210000eQ: discardR: L/hd

    200 217 OK

    RMG Call Agent

    Q ti ?

  • 8/13/2019 4_ VoIP Protocol Introduction(MGCP)

    29/29

    Questions ?