====== MGCP ======
* Gateway is controlled by a call agent e.g. CUCM
* Unique features
* Centralized provisioning
* QSIG supplementary services
* Allow the passing of features transparently between PBX?
* Centralized CDR (DS0 granularity)
* MLPP
* Boot someone off for a higher priority call
* Hookflash transfer with CUCM
===== Endpoint Indentifier =====
* MGCP identifier can addresses down to the individual port
{{cucm-mgcp1.png|}}
===== PRI BackHaul =====
* D-channel call-setup signals need to be carried in their raw form back to the Unified CM to be processed.
* Gateway terminates the data link layer and passes the rest of signals (Q.931 and above) to Unified CM via TCP port 2428
* D-channel will be down unless it can communicate with Unified CM
{{cucm-mgcp3.png|}}
===== Channel Selection Order =====
* The default selection order is **Bottom Up** which starts from channel 23.
{{cucm-mgcp11.png|}}
===== Configuration Server =====
* Cisco recommended way of configuring MGCP
* The gateway download the XML config file and parses it to convert to IOS commands
* When a changes is made on the CUCM, it will notify the MGCP gateway to download the config
{{cucm-mgcp2.png|}}
===== Configuration CUCM =====
==== MGCP Gateway ====
* Add an MGCP gateway
{{cucm-mgcp4.png|}}
* Configure the MGCP gateway
* The domain name must matches the hostname of the MGCP gateway including any domain names
* The product specific detail is only used if we are using MGCP auto configuration
{{cucm-mgcp5.png|}}
==== MGCP Endpoints ====
* Add MGCP endpoints by selecting voice modules and voice interface cards (VIC)
* Use show inventory on the gateways to figure out the type and position of VIC
MGCPRouter# show inventory
NAME: "chassis", DESCR: "2801 chassis"
PID: CISCO2801 , VID: V05 , SN: FHK1244F23Y
NAME: "WIC/VIC/HWIC 1", DESCR: "WAN Interface Card - HWIC Serial 2T"
PID: HWIC-2T , VID: V02 , SN: FOC14324S4N
NAME: "WIC/VIC/HWIC 3", DESCR: "VWIC2-1MFT-T1/E1 - 1-Port RJ-48 Multiflex Trunk - T1/E1"
PID: VWIC2-1MFT-T1/E1 , VID: V01 , SN: FOC124101BJ
NAME: "VIC 0", DESCR: "MFT-EC-32 - 32 Channel Hardware Echo Canceller"
PID: EC-MFT-32 , VID: V01 , SN: FOC12302R0G
NAME: "PVDM 0", DESCR: "PVDMII DSP SIMM with Two DSPs"
PID: PVDM2-32 , VID: V01 , SN: FOC1431436B
NAME: "PVDM 1", DESCR: "PVDMII DSP SIMM with one DSP"
PID: PVDM2-16 , VID: V01 , SN: FOC10443V5U
ccie-srst-gw#
MGCPRouter#
{{cucm-mgcp6.png|}}
* Configure MGCP endpoints
{{cucm-mgcp7.png|}}
{{cucm-mgcp8.png|}}
===== Configuration Gateway =====
==== Common Steps ====
* Configure [[..:gw:gw-t1-e1|T1 / E1]]
* Configure hostname and domain name
hostname mgcp-gw
ip domain name iptel.in.telstra.com.au
==== Recommended method ====
* Specify IP address of CUCM TFTP server hosting the configuration XML file
* Enable configuration download
ccm-manager config server
ccm-manager config
* Optional: Modify automatically applied MGCP configuration
{{cucm-mgcp10.png|}}
==== Manual method ====
* Configure the T1/E1 controller to be controlled by MGCP
controller T1 0/1/0
pri-group time-slots 1-10, 24 service mgcp
* Configure q931 backhaul to call manager
interface Serial0/1/0:23
isdn bind-l3 ccm-manager
* To enable the gateway to communicate with Cisco CallManager through the Media Gateway Control Protocol (MGCP
* Specify primary and redundant call agent
ccm-manager mgcp
ccm-manager redundant-host
mgcp call-agent
* [Optional] Configure other MGCP parameters
ccm-manager switchback immediate
mgcp bind control source-interface lo0
mgcp bind media source-interface lo0
mgcp dtmf-relay voip codec all mode out-of-band
* Enable MGCP
mgcp
===== Busy Out Ports =====
* **Enable status poll** - The advanced Service Parameter Change B-Channel Maintenance Status allows you to busy out unavailable b-channels on up to five MGCP voice ports. In order for this service parameter to work properly, you must enable status polling
* **Inhibit restarts at PRI initialization** - To allow restarts, uncheck this box. a RESTART or SERVICE message confirms the status of the ports on a PRI span. If RESTART or SERVICE messages are not sent, CUCM assume that the ports are in service.
{{cucm-mgcp12.png|}}
* **Advanced Service Parameters** - In a production environment, you should always busy out unused b-channels on fractional circuits.
{{cucm-mgcp13.png|}}
===== Debug =====
* Debug MGCP
Router# debug mgcp packets
Sep 25 08:00:48.247: MGCP Packet sent to 10.80.101.72:2427--->
RSIP 855851633 *@ccie-srst-gw.iptel.in.telstra.com.au MGCP 0.1
RM: restart
<---
Sep 25 08:00:48.251: MGCP Packet received from 10.80.101.72:2427--->
200 855851633
<---
Sep 25 08:00:48.255: MGCP Packet received from 10.80.101.72:2427--->
AUEP 24 S0/SU3/DS1-0/1@ccie-srst-gw.iptel.in.telstra.com.au MGCP 0.1
F: X, A, I
<---
...
...
Sep 25 08:00:48.323: MGCP Packet sent to 10.80.101.72:2427--->
NTFY 855851635 *@ccie-srst-gw.iptel.in.telstra.com.au MGCP 0.1
X: 0
O:
<---
Sep 25 08:00:48.327: MGCP Packet received from 10.80.101.72:2427--->
200 855851635
<---
Sep 25 08:00:50.258: MGCP Packet sent to 10.80.101.72:2427--->
RSIP 855851632 *@ccie-srst-gw.iptel.in.telstra.com.au MGCP 0.1
RM: restart
<---
Sep 25 08:00:50.258: MGCP Packet received from 10.80.101.72:2427--->
200 855851632
<---
...
...
Router#
* L3 backhaul stuck in TEI. Seems to happen when we bind the source to loopback0
I've seen this is a common problem of everyone.
There are other methods but this method seems to be efficient enough to fix it without rebooting the router.
Assumptions; you'r ccm is properly bounded to loopback0 [confirm it using show mgcp command], your config are pointed to ccm properly.
Problem;
---------
show isdn status layer3 doesn't come up[multiple frames established], instead State = TEI_ASSIGNED
summary;
config t
int loopback0
shut
controller t1 0/2/0
shut
no mgcp
then once all those 3 are shut, no shut them one by one;
e.g.
int loop0
no shut
controller t1 0/2/0
no shut
conf t
mgcp