Media Gateway Control Protocol (MGCP) is a VOIP protocol used between elements of a decomposed multimedia gateway which consists of a Call Agent, which contains the call control "intelligence", and a media gateway which contains the media functions, e.g., conversion from TDM voice to Voice over IP.
Media gateways contain endpoints on which the Call Agent can create, modify and delete connections in order to establish and control media sessions with other multimedia endpoints. A media gateway is typically a network element that provides conversion between the audio signals carried on telephone circuits and data packets carried over the Internet or over other packet networks. The Call Agent can instruct the endpoints to detect certain events and generate signals. The endpoints automatically communicate changes in service state to the Call Agent. Furthermore, the Call Agent can audit endpoints as well as the connections on endpoints.
MGCP assumes a call control architecture where the call control "intelligence" is outside the gateways and handled by Call Agents. The MGCP assumes that Call Agents, will synchronize with each other to send coherent commands and responses to the gateways under their control. MGCP does not define a mechanism for synchronizing Call Agents. MGCP is, in essence, a master/slave protocol, where the gateways are expected to execute commands sent by the Call Agents.
MGCP assumes a connection model where the basic constructs are endpoints and connections. Endpoints are sources and/or sinks of data and can be physical or virtual. Creation of physical endpoints requires hardware installation, while creation of virtual endpoints can be done by software.
Connections may be either point to point or multipoint. A point to point connection is an association between two endpoints with the purpose of transmitting data between these endpoints. Once this association is established for both endpoints, data transfer between these endpoints can take place. A multipoint connection is established by connecting the endpoint to a multipoint session. Connections can be established over several types of bearer networks.
In the MGCP model, the gateways focus on the audio signal translation function, while the Call Agent handles the call signaling and call processing functions. As a consequence, the Call Agent implements the "signaling" layers of the H.323 standard, and presents itself as an "H.323 Gatekeeper" or as one or more "H.323 Endpoints" to the H.323 systems.
Protocol Structure
The MGCP is a text based protocol. The transactions are composed of a command and a mandatory response. There are eight types of commands:
- MGC --> MG: CreateConnection: Creates a connection between two endpoints; uses SDP to define the receive capabilities of the paricipating endpoints.
- MGC --> MG: ModifyConnection: Modifies the properties of a connection; has nearly the same parameters as the CreateConnection command.
- MGC <--> MG: DeleteConnection: Terminates a connection and collects statistics on the execution of the connection.
- MGC --> MG: NotificationRequest: Requests the media gateway to send notifications on the occurrence of specified events in an endpoint.
- MGC <-- MG: Notify: Informs the media gateway controller when observed events occur.
- MGC --> MG: AuditEndpoint: Determines the status of an endpoint.
- MGC --> MG: AuditConnection: Retrieves the parameters related to a connection.
- MGC <-- MG: RestartInProgress: Signals that an endpoint or group of endpoints is take in or out of service.
Related protocols: UDP, TCP, RTSP, SIP, RTP, H.323, Megaco/H.248
Sponsor Source: MGCP is a Cisco protocol.
Reference:
http://www.javvin.com/protocol/rfc3435.pdf: Media Gateway Control Protocol (MGCP) Version 1.0.
http://www.javvin.com/protocol/rfc3661.pdf: Media Gateway Control Protocol (MGCP) Return Code Usage.
