Configuring MGCP Fallback on Cisco IOS Router
Another method to provide redundancy to SCCP phones is configuring the MGCP fallback. This feature enables the MGCP gateway that loses connection to its CUCM servers to backhaul directly to the SRST gateway that resides on itself.
If the WAN link fails, the fallback feature keeps the gateway working as an H.323 or SIP gateway and rehomes to the MGCP call agent when the WAN link becomes active again. It is clear that SRST service needs to be configured beside MGCP fallback service.
We need to add an MGCP gateway to OzLab, configure it, and then configure MGCP fallback and SRST service. The network topology now changes as illustrated on the following picture:
The steps needed to configure this gateway on CUCM are really easy. Go to Device -> Gateway -> Add New, on CUCM Administrator platform, choose the gateway model, and MGCP as protocol. On the following window we just need to configure the Domain Name (IP Address), the description, optional, and a CUCM Group.
We could need also to configure other options, such as the VICs, Slots etc. in order to give permit to the CUCM to configure the gateway properly. Once finished we can press Save Button and go to the Command Line Interface on the Gateway to configure its side.
As we said before we have now to configure the router with MGCP. Its ip address will be 10.10.10.3/24 on FastEthernet0/0. We now have two choices to configure it. We could let the CUCM to automatically configure the router through an XML file present at the TFTP server. We can do this by entering just two commands:
ccm-manager config
ccm-manager config server <TFTP server address>
and let the router to download the entire configuration as defined during the steps just described while configuring it at CUCM side via TFTP.
However this choice is usually discarded because in this way CUCM automatically reserves all DSP resources for all digital channels present on the gateway. Potentially, this may not leave available DSP resources for hardware conference bridges or other hardware media resources.
Otherwise we can manually enter all the commands we need in our MGCP gateway. For a full list of all the MGCP commands please refer to the official Cisco documentation.
It is now possible to activate the MGCP fallback. This is done through the command
ccm-manager fallback-mgcp
as we can see from the CLI
R2_MGCP(config)#ccm-manager ?
application application specific
config MGCP download configuration
download-tones Enable Tone Download from TFTP server
fallback-mgcp Enable Fallback from MGCP to H.323 mode if no Call Manager is available
fax Enable fax protocol for MGCP
mgcp Enable Call Manager Application MGCP mode
music-on-hold Enable multicast Music-on-hold
redundant-host Redundant host list
sccp Enable Call Manager Application SCCP mode
shut-backhaul-interfaces Shutdown the backhauled interfaces if no Call Manager is available
switchback Configure switchback options for rehoming to higher-order Call Manager
We need also to enter another command to specify that the default voice application takes over if the MGCP call agent is unavailable. This allows a fallback to H.323 or SIP, which means that local dial peers are considered for call routing.
R2_MGCP#
R2_MGCP#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R2_MGCP(config)#application
R2_MGCP(config-app)#global
R2_MGCP(config-app-global)#service ?
alternate Define alternate service to use if configured service is unavailable
default Define default service for use when none configured via dial-peer
R2_MGCP(config-app-global)#service default
If we want we can preserve H.323 voice calls that are active during the WAN fault. This is not automatically provided by MGCP because it preserves calls only when analog or CAS protocols are used. For ISDN protocols call preservation is impossibile because Layer 3 of ISDN is disconnected from the MGCP call agent. In order to preserve H.323 calls we can configure H.323 call preservation in this way :
R2_MGCP(config)#voice service voip
R2_MGCP(conf-voi-serv)#h323
R2_MGCP(conf-serv-h323)#call preserve
now that MGCP fallback is configured we can configure SRST as we seen in this previous post, and everything works fine.
If the WAN link fails, the fallback feature keeps the gateway working as an H.323 or SIP gateway and rehomes to the MGCP call agent when the WAN link becomes active again. It is clear that SRST service needs to be configured beside MGCP fallback service.
We need to add an MGCP gateway to OzLab, configure it, and then configure MGCP fallback and SRST service. The network topology now changes as illustrated on the following picture:
The steps needed to configure this gateway on CUCM are really easy. Go to Device -> Gateway -> Add New, on CUCM Administrator platform, choose the gateway model, and MGCP as protocol. On the following window we just need to configure the Domain Name (IP Address), the description, optional, and a CUCM Group.
We could need also to configure other options, such as the VICs, Slots etc. in order to give permit to the CUCM to configure the gateway properly. Once finished we can press Save Button and go to the Command Line Interface on the Gateway to configure its side.
As we said before we have now to configure the router with MGCP. Its ip address will be 10.10.10.3/24 on FastEthernet0/0. We now have two choices to configure it. We could let the CUCM to automatically configure the router through an XML file present at the TFTP server. We can do this by entering just two commands:
ccm-manager config
ccm-manager config server <TFTP server address>
and let the router to download the entire configuration as defined during the steps just described while configuring it at CUCM side via TFTP.
However this choice is usually discarded because in this way CUCM automatically reserves all DSP resources for all digital channels present on the gateway. Potentially, this may not leave available DSP resources for hardware conference bridges or other hardware media resources.
Otherwise we can manually enter all the commands we need in our MGCP gateway. For a full list of all the MGCP commands please refer to the official Cisco documentation.
It is now possible to activate the MGCP fallback. This is done through the command
ccm-manager fallback-mgcp
as we can see from the CLI
R2_MGCP(config)#ccm-manager ?
application application specific
config MGCP download configuration
download-tones Enable Tone Download from TFTP server
fallback-mgcp Enable Fallback from MGCP to H.323 mode if no Call Manager is available
fax Enable fax protocol for MGCP
mgcp Enable Call Manager Application MGCP mode
music-on-hold Enable multicast Music-on-hold
redundant-host Redundant host list
sccp Enable Call Manager Application SCCP mode
shut-backhaul-interfaces Shutdown the backhauled interfaces if no Call Manager is available
switchback Configure switchback options for rehoming to higher-order Call Manager
R2_MGCP#
R2_MGCP#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R2_MGCP(config)#application
R2_MGCP(config-app)#global
R2_MGCP(config-app-global)#service ?
alternate Define alternate service to use if configured service is unavailable
default Define default service for use when none configured via dial-peer
R2_MGCP(config-app-global)#service default
If we want we can preserve H.323 voice calls that are active during the WAN fault. This is not automatically provided by MGCP because it preserves calls only when analog or CAS protocols are used. For ISDN protocols call preservation is impossibile because Layer 3 of ISDN is disconnected from the MGCP call agent. In order to preserve H.323 calls we can configure H.323 call preservation in this way :
R2_MGCP(config)#voice service voip
R2_MGCP(conf-voi-serv)#h323
R2_MGCP(conf-serv-h323)#call preserve
now that MGCP fallback is configured we can configure SRST as we seen in this previous post, and everything works fine.
very informative! thank you for sharing
ReplyDeleteWow, absolutely fantastic blog. I am very glad to have such useful information.
ReplyDeleteหนังผี