Thursday 23 August 2012

MGCP Gateway


MGCP is a master/slave protocol that allows a call control device such as Call Agent(CUCM) to take  control of a specific port on a Media Gateway. In MGCP context Media Gateway Controller is refereed to as Call Agent(CUCM). This has the advantage of centralized gateway administration and provides for largely scalable IP Telephony solutions. The distributed system is composed of a Call Agent, at least one Media Gateway (MG) that performs the conversion of media signals between circuits and packets Switched networks

MGCP is a signalling and call control protocol used within Voice over IP (VoIP) systems that typically inter-operate with the public switched telephone network (PSTN). As such it implements a PSTN-over-IP model with the power of the network residing in a call control center (softswitch, similar to the central office of the PSTN) and the endpoints being "low-intelligence" devices, mostly simply executing control commands.MGCP uses the Session Description Protocol (SDP) for specifying and negotiating the media streams to be transmitted in a call session and the Real-time Transport Protocol (RTP) for framing of the media streams

           Centralized Dial Plan and Administration
          Call processing is done by call agent such as Cisco Unified Communication Manager
          MGCP gateway handle the translation between audio signals and the packet network
           Call Agent(CUCM) in charge of the gateway
           master/slave relationship
          MGCP uses UDP for establish audio connections over the IP networks
           Enhanced call Survivability

An MGCP packet is either a command or a response. Every issued MGCP command has a transaction ID and receives a response. Commands begin with a four-letter verb. Responses begin with a three number response code.

There are nine (9) command verbs:  AUEP, AUCX, CRCX, DLCX, EPCF, MDCX, NTFY, RQNT, RSIP
Two verbs are used by a Call Agent to query (the state of) a Media Gateway:
 AUEP - Audit Endpoint
 AUCX - Audit Connection

Three verbs are used by a Call Agent to manage an RTP connection on a Media Gateway (a Media Gateway can also send a DLCX when it needs to delete a connection for its self-management):

 CRCX - Create Connection
 DLCX - Delete Connection
 MDCX - Modify Connection

One verb is used by a Call Agent to request notification of events on the Media Gateway, and to request a Media Gateway to apply signals:
 RQNT - Request for Notification

One verb is used by a Call Agent to modify coding characteristics expected by the "line-side" on the Media Gateway:
 EPCF - Endpoint Configuration

One verb is used by a Media Gateway to indicate to the Call Agent that it has detected an event for which the Call Agent had previously requested notification of (via the RQNT command verb):
 NTFY - Notify

One verb is used by a Media Gateway to indicate to the Call Agent that it is in the process of restarting:
 RSIP - Restart In Progress




MGCP Backhauling

  • Transports complete IP telephony signaling information using TCP
  • Terminates Q.921 signaling functions on the MGCP gateway
  • Ensures the integrity of the Q.931 signaling information
  • Framing and Layer 2 signaling terminates at the gateway
  • Layer3 signaling is backhauled to CUCM using TCP port 2428


MGCP PRI backhaul is a method for transporting complete IP telephony signaling information from an ISDN PRI interface on a MGCP gateway to Cisco Communication Manager through a Transmission Control Protocol (TCP) connection. MGCP PRI backhaul terminates all of the ISDN PRI Layer 2 (Q.921) signaling functions on the MGCP gateway and packages all of the ISDN PRI Layer 3 (Q.931) signaling information into packets for transmission to Cisco Communication Manager through an IP tunnel. In this way, MGCP PRI backhaul ensures the integrity of the Q.931 signaling information that passes through the network for managing IP telephony devices.

The MGCP gateway also establishes a TCP link to the backup (secondary) Cisco Communication Manager server. In the event of a Cisco Communication Manager switchover, the secondary Cisco Communication Manager server performs the MGCP PRI backhaul functions. During the switchover, all active ISDN PRI calls are preserved, and the affected MGCP gateway is registered with the new Cisco Communication Manager server through a ReStart In Progress (RSIP) message. In this way, continued gateway operation is ensured

MGCP-controlled backhaul of BRI signaling provides service to remote-office gateways that are connected by ISDN BRI trunks to a centralized Cisco Communication Manager. D-channel signaling information is backhauled to Cisco Communication Manager through a TCP session. All Q.931 messages are passed through the TCP connection between the Cisco MGCP gateway and Cisco Communication Manager.


MGCP configuration


MGCP configuration on Cisco gateway

! keep in mind hostname & domain name are important in MGCP configuration

Card type e1 0 0
!
network-clock-participate wic 0
network-clock-select 1 E1 0/0/0
!
isdn switch-type primary-net5 
!
controller E1 0/0/0
 framing no-crc4
 linecode hdb3
 pri-group timeslots 1-31 service mgcp
!
voice-port 0/0:15
!
mgcp call-agent 10.10.10.3
ccm-manager mgcp
ccm-manager redundant-host 10.10.10.2
ccm-manager music-on-hold
ccm-manager config
mgcp dtmf-relay voip codec all mode out-of-band
!
Mgcp
!
interface Serial0/0/0:15
 no ip address
 encapsulation hdlc
 isdn switch-type primary-net5
 isdn incoming-voice voice
 isdn bind-l3 ccm-manager
 no cdp enable
!

MGCP Gateway configuration in CUCM

To add the gateway to CUCM follow below instructions:

- From CUCM  Administration, choose  Device > Gateway.
- Click the Add New  button. The Add a New Gateway window will open.
- From the Gateway Type drop-down list, choose the appropriate MGCP gateway (2801, 2811, etc) and click next.
- Choose MGCP from the Protocol drop-down menu and click Next.
- Enter the hostname or fully qualified domain name of the gateway in the Domain Name field. The name has to match the hostname or the hostname and domain name (fully qualified domain name) of the Cisco IOS router.
- Enter a description for the gateway.
- Select a CUCM group.
- Configure the IDSN switch type.
- Click Save. Reset the gateway for the configuration changes to apply.
- Locate the Configured Slots, VICs, and Endpoints section, and select the voice hardware module placed in the slot.
- Click Save. The subunits (voice interface cards slots) of the selected voice module will display.
- For each subunit (voice interface cards slot), select the subunit. (show diag at th gateway will list modules  and interface cards that the gateway is equipped with)
- Click Save. The endpoints of the selected voice interface card will display.

To configure an MGCP endpoint, follow these steps:
- Click the endpoint identifier.
- Select the device protocol or signaling for the endpoint. T1 and E1 interfaces support channel associated signaling (CAS) or command channel signaling (CCS) via ISDN PRI. Analog interfaces support ground-start and loop-start signaling. Select the protocol that should be used on the endpoint and click Next.
- Enter a description for the endpoint
- Select the device pool that should be used by this endpoint.
- Click Save. Reset the gateway for configuration changes to be committed to the gateway


MGCP Gateway Registration Verification:

use show ccm-manager at the gateway to verify MGCP Gateway registration to  CUCM was successful
use show mgcp endpoints at the gateway to verify MGCP Endpoints have registered
 
Troubleshooting the IOS MGCP Gateway

One way call failure, on either outbound call or inbound calls individually, can occur in an IOS MGCP gateway. In order to resolve this issue, reconfigure the MGCP gateway. Generally, this involves a reconfiguration of the PRI interfaces and/or FXO interfaces. Then, a restart of the mgcp protocol on the gateway by issuing the no mgcp IOS command and the mgcp command in global configuration mode.

Cannot make calls from an analog phone connected to the MGCP IOS gateway. A busy tone is received.

Perform this procedure in order to resolve this problem:
1.   Make sure the application mgcpapp command is configured on the applicable port.
  
















 

No comments:

Post a Comment