Description
The Gateway Control Protocol (GCP) is a master-slave protocol standardized by 3GPP, based on the ITU-T H.248 (also known as Megaco) standard. It operates over the Mc interface, which connects the Media Gateway Controller (MGC), a call state control entity, to the Media Gateway (MGW), a media processing entity. The MGC, acting as the controller, uses GCP commands to instruct the MGW, the controlled entity, on how to establish, modify, and terminate media streams. This includes creating and deleting logical entities called terminations (which represent media streams or endpoints) and placing them into contexts (which represent associations between terminations, like a call leg).
GCP uses a transactional model where the controller sends commands within transactions, and the gateway responds with replies. Commands include Add, Modify, Subtract, Move, and AuditValue. The protocol is transport-agnostic, commonly running over UDP, TCP, or SCTP, and uses a text or binary encoding format (ASN.1 PER) for messages. It supports packages, which are extensions that define properties, events, signals, and statistics for specific types of terminations, such as analog lines, TDM circuits, or RTP streams. This modularity allows GCP to control a wide variety of media gateway types.
In the 3GPP architecture, GCP is a cornerstone of the decomposed gateway model introduced with 3GPP Release 4. It enables the separation of the call control plane (handled by the MGC/MSC Server) from the user plane/media bearer plane (handled by the MGW). This separation is critical for network scalability, flexibility, and the efficient deployment of new services. The MGC uses GCP to instruct the MGW to allocate resources, apply codecs, handle echo cancellation, generate tones and announcements, and connect media streams for calls traversing different network types (e.g., TDM to IP).
Purpose & Motivation
GCP was created to address the limitations of monolithic switching systems where call control and media switching were tightly integrated within a single network node, such as a traditional circuit-switched MSC. This integration made networks inflexible, expensive to scale, and difficult to upgrade with new media processing capabilities. The primary motivation was to enable a decomposed, next-generation network (NGN) architecture.
By standardizing the control interface between the call control intelligence and the media switching fabric, 3GPP (adopting the ITU-T H.248 work) allowed these two functions to be developed, deployed, and scaled independently. This separation solves several key problems: it allows centralized control of distributed media resources, enables more efficient use of transmission resources (e.g., via TrFO and transcoder-free operation), and facilitates the introduction of packet-based (IP) media transport alongside or in place of legacy TDM. The creation of GCP/H.248 was a competitive and collaborative effort in the industry to define a robust, vendor-neutral protocol for media gateway control, ultimately becoming the successor to earlier proprietary or less capable protocols like MGCP.
Key Features
- Master-slave control model (MGC controls MGW)
- Transaction-based command/response structure
- Modular package system for extending functionality
- Transport independence (UDP, TCP, SCTP)
- Support for text and binary message encoding
- Control of contexts and terminations for media stream association
Evolution Across Releases
Introduced the Gateway Control Protocol (GCP) as the 3GPP-standardized profile of ITU-T H.248.1 for the Mc reference point. It defined the core protocol mechanisms, command set (Add, Modify, Subtract, Move, Audit), and the initial set of packages required for controlling 3GPP Media Gateways, enabling the decomposed MSC architecture.
Defining Specifications
| Specification | Title |
|---|---|
| TS 29.238 | 3GPP TS 29.238 |
| TS 43.903 | 3GPP TR 43.903 |