Troubleshooting guide
4-2
Cisco Broadband Local Integrated Services Solution Troubleshooting Guide
OL-5169-01
Chapter 4 Troubleshooting with Call Flows
Understanding MGCP
Understanding MGCP
Media Gateway Control Protocol (MGCP) is the protocol used between the Call Agent and the endpoints
within the network to establish, manage, and delete connections. Endpoints are defined by the call
topology:
• On-net to on-net—both calling and called parties are on the same provider’s network. In this case
the endpoints are MTAs.
• On-net to off-net (or off-net to on-net) via gateway—one party is on the service provider's network
and one is on the PSTN. In this case the endpoints are the MTA and the trunking gateway.
MGCP messages are transmitted over UDP. Requests are sent to one of the IP addresses defined in the
DNS for the specified endpoint. Responses are sent back to the source address of the requests. In the
absence of a timely response, requests are repeated.
It is the responsibility of the requesting entity to provide suitable time-outs for all outstanding requests,
and to retry requests when time-outs have been exceeded. Furthermore, when repeated requests are not
acknowledged, it is the responsibility of the requesting entity to seek redundant services or clear existing
or pending connections.
When tracing call flows in the course of troubleshooting a problem, these repeated messages are often
indications of where the problem is occurring.
MGCP Transactions
MGCP is implemented as a series of transactions, composed of a request and a mandatory response. All
requests and responses are composed of a request header, optionally followed by a session description.
Headers and session descriptions are each encoded as a set of text lines, separated by line feed characters.
Headers are separated from session descriptions by an empty line.
The request header is composed of:
• A request line, identifying the command (or verb), the endpoint from which the action is requested,
and the MGCP version
• A set of parameter lines, composed of a parameter name followed by a parameter value
The request line is composed of:
• The encoded name of the requested command
• The transaction ID (encoded as a string of up to 9 decimal digits)
• The name of the endpoint that should execute the request (in notifications, the name of the endpoint
that is issuing the notification).
Endpoint names are encoded as e-mail addresses, in which the domain name identifies the system
where the endpoint is located, while the left side identifies a specific endpoint on that system. For
example, 123456@gw23.whatever.net indicates circuit number 123456 in the Gateway 23 of the
Whatever network.
The name of the notified entity is expressed the same way, possibly followed by a port number; for
example, Call-agent@ca.whatever.net:5234.
• The protocol version