This document describes how to provide redundancy to Cisco IP Phone
services such as Extension Mobility (EM) and Directory Services.
Cisco recommends that you have knowledge of Cisco Unified
Communications Manager 4.x.
The information in this document is based on Cisco Unified
Communications Manager 4.x.
The information in this document was created from the devices in a
specific lab environment. All of the devices used in this document started with
a cleared (default) configuration. If your network is live, make sure that you
understand the potential impact of any command.
Technical Tips Conventions for more information on document
In Cisco Unified Communications Manager, Cisco IP Phone services are
required in order to provide the IP Phone services menu to the phone. The menu
of subscribed phone services is displayed when the user presses the Services
button on the phone. This is necessary so that the user can select the EM phone
service. The node to which a phone points for the Cisco IP Phone service is
determined by the URL Services parameter. Only a single service URL can be
configured for each phone. By default, this parameter points to the publisher
Before redundancy considerations are discussed, it is helpful to know
how phone services are provisioned by default. When a user presses the Services
button, an HTTP GET message is sent from the IP Phone to the Cisco CallManager
getservicesmenu.asp script, by default. In order to specify a different script,
change the setting in the Cisco CallManager enterprise parameters. The
getservicesmenu.asp script returns the list of phone service URL locations that
are subscribed to by the individual user. The HTTP response returns this list
to the IP Phone. Any further phone service menu options chosen by the user
continue the HTTP messaging between the user and the web server that contains
the selected phone service application.
Default behavior of Cisco Unified Communications Manager is that there
is no redundancy for user-initiated IP Phone services because the Services
button is statically configured to a predetermined Cisco CallManager.
Redundancy is available for services like Idle URL. Idle URL location and
timeout value are saved on the TFTP server and downloaded to the IP Phone when
the phone registers.
In order to ensure reliable services for phone users, you must maintain
a high level of system availability, with a seamless transition to redundant
systems during a system failure. While most of the back-end processing of a
phone service occurs on a web server, the phones still depend upon Cisco
Unified Communications Manager to redirect them to the phone service. In the
case of Extension Mobility and Cisco Unified Communications Manager Assistant
phone services, the service actually runs on the Cisco Unified Communications
The server load balancing (SLB) feature is a Cisco
IOS® based solution that provides IP server load
balancing. With the Cisco IOS SLB feature, you define a virtual server that
represents a group of real servers in a cluster of network servers, known as a
server farm. In this environment, the clients are configured to connect to the
IP address of the virtual server. The virtual server IP address is configured
as a loopback address, or secondary IP address, on each of the real servers.
When a client initiates a connection to the virtual server, the Cisco IOS SLB
function chooses a real server for the connection based on a configured
Redundancy can be implemented with some type of server load balancing,
as illustrated in Figure 1, where a virtual IP
address is used to point to one or more Cisco Unified Communications Manager
servers. This virtual IP address is used in order to configure the URL Services
parameter. Thus, a Cisco Unified Communications Manager server failure does not
prevent the return of the IP Phone services subscription list to the phone when
the Services button is pushed. In addition, phone services, such as Extension
Mobility and Cisco Unified Communications Manager Assistant, that run on a
Cisco Unified Communications Manager server are also potentially made redundant
with this method.
Server Load Balancing for more information about Cisco IOS SLB.
An alternative to Cisco IOS SLB, DNS can be used to provide redundancy
for these components. In order to use DNS as a redundancy mechanism, a DNS A
record should be configured for each Cisco Unified Communications Manager
subscriber node with the same fully qualified domain name (FQDN) or host name.
This is necessary so that a DNS query for the FQDN or host name returns IP
addresses for multiple Cisco Unified Communications Manager subscriber nodes.
Thus, a phone that queries the DNS server for the FQDN or host name receives
multiple IP addresses. Given a node failure, these IP addresses can be
contacted one at a time in turn until a responding node is found. The drawback
to the use of DNS for EM redundancy is that if a node fails, a phone must wait
for a timeout before it attempts to contact the next IP address or node. This
timeout can take anywhere from 30 to 45 seconds and is repeated for each
attempt to contact a failed node. Therefore, significant delays can occur
during node failures before a response is received from a Cisco Unified
Communications Manager node.
DNS Service (SRV) records can also be used to provide