# Media gateway control protocol architecture

The media gateway control protocol architecture is a methodology of providing telecommunication services using decomposed multimedia gateways for transmitting telephone calls between an Internet Protocol network and traditional analog facilities of the public switched telephone network (PSTN). The architecture was originally defined in RFC 2805 and has been used in several prominent voice over IP (VoIP) protocol implementations, such as the Media Gateway Control Protocol (MGCP) and Megaco (H.248), both successors to the obsolete Simple Gateway Control Protocol (SGCP).
The architecture divides the functions required for the integration of traditional telecommunication networks and modern packet networks into several physical and logical components, notably the media gateway, the media gateway controller, and signaling gateways. The interaction between the media gateway and its controller is defined in the media gateway control protocol.
Media gateway protocols were developed based on the Internet model of networking, the Internet Protocol Suite, and are referred to as device control protocols. A media gateway is a device that offers an IP interface and a legacy telephone interface and that converts media, such as audio and video streams, between them. The legacy telephone interface may be complex, such as an interface to a PSTN switch, or may be a simple interface to a traditional telephone. Depending on the size and purpose of the gateway, it may allow IP-originated calls to terminate to the PSTN or vice versa, or may simply provide a means to connect a telephone to a telecommunication system via an IP network.
Originally, gateways were viewed as monolithic devices that had call control, using protocols such as H.323 and the Session Initiation Protocol, and hardware required to control the PSTN interface. In 1998, the idea of splitting the gateway into two logical parts was proposed: one part, which contains the call control logic, is called the media gateway controller (MGC) or call agent (CA), and the other part, which interfaces with the PSTN, is called the media gateway (MG). With this functional split, a new interface existed between the MGC and the MG, requiring a framework for communication between the elements, resulting in the media gateway control protocol architecture.
SIP and H.323 are signaling protocols, while media gateway control protocols are device control protocols. The architectural difference between SIP and H.323, and the media gateway control protocols is that the relationships between entities in SIP and H.323 are peer-to-peer, while the relationships between entities in media gateway control protocols use the master/slave (technology) model. SIP and H.323 handle call setup, connection, management, and tear-down of calls between like interfaces, whereas media gateway control protocols define the mechanisms of setup of media paths and streams between IP and other networks.

## Implementations

Several implementations of the media gateway control protocol are in common use. The names of the best-known protocols are abbreviations of the protocol group:
* The Media Gateway Control Protocol (MGCP) was first described in RFC 2705, and revised in RFC 3435.
* Megaco, or H.248, or Megaco/H.248, was first described in RFC 3525, which was revised and extended in various specifications, leading to its obsolescence as explained in RFC 5125.
Although similar in architecture, MGCP and H.248/Megaco are distinctly different protocols and are not interoperable. H.248/Megaco and MGCP protocols are complementary to H.323 and SIP, which both may be referred to as intelligent endpoint protocols. H.248/Megaco and MGCP may be referred to as device control protocols.
Other media gateway control protocols include the predecessors of MGCP, namely the Simple Gateway Control Protocol (SGCP) and the Internet Protocol Device Control (IPDC). A proprietary protocol using a similar architecture is the Cisco Skinny Client Control Protocol (SCCP).

## Network elements
### Media gateway

A media gateway is a device that converts media streams in the form of digital data or analog signals in telecommunication for services such as voice, video, and fax applications between two, usually dissimilar, interfaces using different technologies. One of the technologies usually is a packet, frame, or cell network. For example, it may convert voice telephone calls between a traditional analog telephone to a digital format for transmission over an Internet Protocol (IP) network, to facilitate voice over IP communications.

### Media gateway controller

A media gateway controller (MGC), also known as a call agent, controls the media gateways. It monitors the gateways for events, such as an off-hook state when a user intends to initiate a telephone call, and issues requests to the gateway to initiate or complete sessions, to alert the called party, or to terminate a call. The protocols used for this interaction between the gateway and its controller have evolved through various types and versions. The Simple Gateway Control Protocol (SGCP) and the Internet Protocol Device Control (IPDC) have been replaced by the Media Gateway Control Protocol (MGCP) and Megaco, which is also known as H.248.
Some MGCs interface with other signaling protocols, such as Signalling System No. 7 (SS7), for interconnection with the traditional telephone system, H.323, and the Session Initiation Protocol (SIP).

## Protocols

The device control protocols evolved through several versions. MGCP emerged from a group now called the International SoftSwitch Consortium. This group started early with Level 3 Communications (through its acquisition of Xcom) and Telcordia (BellCore).
In July 1998, Telcordia (Bellcore) and Cisco Systems created a protocol called Simple Gateway Control Protocol (SGCP) for controlling Telephony Gateways from external call control elements. Meanwhile, in mid-1998, Level 3 created a Technical Advisory Council (TAC), composed of a dozen leading communications equipment manufacturers. The TAC proposed a device protocol called Internet Protocol Device Control (IPDC) in August 1998. IPDC was intended to be used between a media gateway and a media gateway controller. Media gateway were capable of acting as a voice over IP gateway, voice over ATM gateway, dialup modem media gateway, circuit switch, or cross- connect. In October 1998, Simple Gateway Control Protocol (SGCP) was combined with Internet Protocol Device Control (IPDC), resulting in MGCP.
MGCP was submitted to the IETF’s MeGaCo working group in October 1998. In November 1998, Lucent Technologies submitted a draft for third device protocol, called Media Device Control Protocol (MDCP) to use by media gateways and their controllers. IETF merged MGCP and MDCP and proposed a new and improved protocol named MeGaCo protocol (also known as H.248) in April 1999.
The first "official" version of MGCP is defined in RFC 2705 as informational. RFC 3435 obsoleted RFC 2705. MGCP currently is purely informational rather than a standard-track protocol, although it includes protocol specification. Even while MGCP was still an Internet Draft, many companies developed included MGCP with their own development rather than wait for a standardized protocol. Therefore, the decision was made to release MGCP as an informational RFC in October 1999. IETF development of MGCP has stopped, although companies continue to implement MGCP, driven by the efforts of the PacketCable development of Network-based Call Signaling.
Further standardization of MGCP effort was pursued in the IETF, in the MEGACO working group, and also in the ITU-T/SG16, under the code name H.GCP. RFC 3015 standard tracks the MEGACO protocol (also H.248) and
The motivation of Megaco was the need to satisfy various requirements that were not addressed properly by MGCP. Megaco is an evolution of MGCP. It is a combination of MGCP and MDCP, and was published as Standard in RFC 3015 in November 2000. Megaco and MGCP are different and not interoperable.
H.248 (H.248.1 Gateway Control Protocol version 3) is published by International Telecommunication Union Telecommunication (ITU-T) as a protocol standard. The ITU-T has published three versions of H.248.1. The IETF published it as Gateway Control Protocol Version 1 in informational RFC 3525.
Both H.248 and MGCP are protocol for controlling media gateways using a media gateway controller or call agent. In a VoIP system, H.248 and MGCP are used with SIP or H.323. SIP or H.323 provide intercommunication between gateway controllers and MGCP is used to manage media establishment in the media gateways.

## Standards documents

* RFC 2805 Media Gateway Control Protocol Architecture and Requirements, April 2000 (Informational)
* RFC 2705 Media Gateway Control Protocol (MGCP) Version 1.0, October 1999 (Informational)
* RFC 3435 Media Gateway Control Protocol (MGCP) Version 1.0, (supersedes RFC 2705) (Informational)
* RFC 3015 Megaco Protocol Version 1.0, November 2000, (Standard Track)
* RFC 3525 Gateway Control Protocol Version 1, June 2003 (Obsoletes: RFC 3015) (Standard)