Chapter 1. Cisco IP Telephony Solution Overview

This chapter provides a high-level overview of legacy networks and the Cisco Architecture for Voice, Video and Integrated Data (AVVID), including its components, underlying protocols, and technologies.

This chapter covers the following topics:

  • Legacy voice and data networks and next-generation multiservice networks

  • Signaling and transport protocols that are used to build Cisco IP telephony (IPT) networks

  • IPT components, applications, and terms used in Cisco IPT solutions

  • Components, applications, and terms used in Cisco IPT solutions

  • Cisco IPT deployment architectures and the criteria used to choose the deployment model

  • How various IPT components and protocols work together, including a look at various call-flow scenarios

The information that is presented in this chapter will help you to understand the operation of legacy voice networks and the evolution of IPT technology. You can use this while doing the planning, design, implementation, operation, and optimization (PDIOO) of Cisco IPT networks.

Legacy Voice and Data Networks

The term “legacy” refers to networks that have two separate infrastructures to support voice and data network services. A significant portion of many companies’ IT budget goes toward maintaining the distinct voice and data networks, which requires one staff dedicated to maintaining the legacy voice infrastructure, including PBXs and voice-mail systems, and another staff dedicated to supporting the data network infrastructure. Two other drawbacks associated with this approach is that these two separate infrastructures cannot share their resources with each other and have to be managed separately, both of which increase IT budgets. Figure 1-1 shows a common example of an enterprise that has separate data and voice networks.

Separate Voice and Data Networks

Figure 1-1. Separate Voice and Data Networks

Next-Generation Multiservice Networks

The desire of industry to combine distinct voice and data networks led to the development of several new concepts and technologies, such as packetized voice. Packetized voice comprises several standards and protocols. Applications use these protocols and standards to provide value-added and cost-effective services to users.

Packetized voice enables a device to send voice traffic (for example, telephone and fax) over an IP/Frame Relay/ATM network. In case of Voice over IP (VoIP), the digital signal processor (DSP) that is located on the voice gateway segments the voice signal into frames. The voice gateway combines these frames to form an IP packet and sends the packet over the IP network. On the receiving end, a reverse action converts the voice information that is stored in the IP packet into the original voice signal.

Across the IP network, these voice packets are transported by using the Real-Time Transport Protocol (RTP) and RTP Control Protocol (RTCP) stack and by using the User Datagram Protocol (UDP) as a transport layer protocol. RTP provides timestamps and sequence numbers in each packet to help synchronize the voice frames at the receiving side. RTCP provides a feedback mechanism that informs session participants of the received quality of the voice call and includes information such as delay, jitter, and lost packets.

It is important to note that most of the real-time applications use UDP as the transport layer protocol rather than TCP, for the following reasons:

  • TCP guarantees the retransmission of frames that are lost in the network, which is of no use in a packetized voice network because the late arrival of frames at the receiving end introduces delay. Hence, the capability of TCP to retransmit frames is not useful in packetized voice networks.

  • TCP introduces unnecessary delay by waiting for acknowledgements for every packet. This delay is not noticeable in the data networks but causes poor voice quality in packetized voice networks.

In addition to using RTP/UDP/IP as the protocol stack to carry voice calls across the IP network, VoIP networks use VoIP signaling protocols to set up and tear down the calls, carry the information to locate the users/phones, and exchange capabilities such as compression algorithms to be used during the conversation. The commonly used signaling protocols in VoIP networks are H.323, Media Gateway Control Protocol (MGCP), Session Initiation Protocol (SIP), and Skinny Client Control Protocol (SCCP).

Introducing “packetized voice” capability into the router shown in Figure 1-1 turns the router into a voice gateway and enables the router to do the packetization just described along with the duties required as a regular data router. This change allows you to provide additional services such as toll bypass.

Toll bypass enables you to reduce the overall telephony expenditure by routing long-distance interoffice calls over existing packet-based WANs, thus avoiding interexchange carrier (IXC) toll charges. As shown in Figure 1-2, when you make phone calls between the enterprise headquarters and a branch location, you can send the voice calls via the WAN data circuit as opposed to using the Public Switched Telephone Network (PSTN). The connection from the PBX is now terminated on the gateway, allowing the gateway to receive both incoming and outgoing calls. This architecture also allows routing of a voice call over the internal network to the closest gateway to the destination of the call and then connects into the public network as a local phone call. This is called Tail-End Hop-Off (TEHO). You need to be aware that TEHO is not allowed in all countries. Hence, when you are designing a VoIP network with toll bypass or TEHO, you need to check the local government regulations.

Toll-Bypass Application

Figure 1-2. Toll-Bypass Application

To ensure that the design of your toll-bypass application is effective, it must include a voice gateway that is able to support multiple types of call signaling as it interacts with the PSTN, WAN, and existing PBX systems. By maintaining a connection to the PSTN, as shown in Figure 1-2, the gateway can reroute calls to the PSTN if congestion or failure occurs within the packet network.

Tip

By having this voice gateway in the network, you eliminate the need to have a separate “tie line” for the voice-only traffic.

The DSPs that are located on the voice gateways also have the capability to handle different types of compression algorithms, such as G.711, G.723.1, G.726, G.728, and G.729 traffic. These compression algorithms maximize the throughput on the packet network. Compression techniques on gateways, such as compressed RTP (cRTP), reduce the amount of bandwidth per voice call. You should be aware of the side effects of enabling cRTP on the voice gateways. cRTP processing on voice gateways essentially compresses all outgoing voice packets and decompresses the incoming compressed voice packets. Hence, if you have numerous voice calls across the WAN links, the router has to perform many cycles of this task, which can increase the amount of CPU resources consumed for cRTP, thus leaving less CPU cycles for the other tasks.

In traditional voice networks, each call consumes a fixed amount of bandwidth. The PBX does not place more calls than it can handle through the trunks connecting to the PSTN, as shown on the left side of Figure 1-3. In packetized networks, if bandwidth is available to make only two good-quality calls, in the absence of a call admission control (CAC) mechanism, the voice gateway allows the third call to go through, as shown on the right side of Figure 1-3. This third call degrades the quality of the existing two good voice calls. Hence, gatekeepers are deployed in the packetized networks to control the number of calls that can be sent over the WAN links. The CAC mechanism in the gatekeeper ensures that the gateway does not place the third call. Gatekeepers perform CAC and bandwidth management in VoIP networks. Gatekeepers ensure that enough bandwidth is available before granting permission to a gateway to place a call across the IP WAN. After receiving permission from the gatekeeper, the originating gateway initiates a call setup with the terminating gateway over the packet network.

Call Control in Circuit- and Packet-Switched Networks

Figure 1-3. Call Control in Circuit- and Packet-Switched Networks

Tip

When you are using IP networks to carry packetized voice traffic, an optional but important consideration is to use proper admission and bandwidth control mechanisms.

Besides performing CAC and bandwidth management, gatekeepers can perform accounting, call authorization, authentication (via RADIUS), address lookup and resolution, and translation between E.164 numbers and the IP addresses.

Networks Based on Cisco AVVID

Networks no longer are limited to performing toll-bypass call routing. Today, many networks are replacing the legacy PBX systems with IP-based call-processing servers; replacing legacy voice-mail systems with IP-based voice-mail systems; replacing legacy phones with IP phones; and replacing legacy video transmission with IP-based video transmission. This strategy is also the Cisco AVVID vision of truly converged voice, video, and data networks. In Cisco AVVID, IPT is one of the solutions. If three components of the legacy network previously shown in Figure 1-2 are replaced as described in the following list, the network evolves into the network shown in Figure 1-4:

  • Legacy PBXs are replaced by IP-based call-processing servers, such as Cisco CallManager

  • Legacy voice-mail systems are replaced by IP-based voice-mail systems such as Cisco Unity

  • Legacy phones are replaced by Cisco IP Phones

Today’s Multiservice Networks

Figure 1-4. Today’s Multiservice Networks

The migration shown in Figure 1-4 is a big change from a legacy network. These types of migrations have been done on hundreds of networks around the world. Several organizations currently run and manage true IP-based networks for their data and voice traffic or are in the process of migrating to IPT solutions.

Figure 1-5 shows the high-level network architecture of an organization that has transitioned to a Cisco IPT solution. The IPT solution replaced all the legacy PBXs, voice-mail systems, and phones with a true end-to-end IP-based solution. This network supports thousands of users located in different parts of world, using IP-based devices communicating over IP infrastructure. To reach this goal, you have to follow a structured approach; the rest of the chapters in this book discuss the use of PDIOO methodology to build such an end-to-end IP-based telephony network.

End-to-End IPT Network

Figure 1-5. End-to-End IPT Network

Signaling and Transport Protocols

Now that you have a good understanding of the evolution of integrated voice and data networks, this section briefly discusses the concepts of different signaling and transport protocols used in IPT solutions.

Today, organizations use a PBX system or a key system as customer premises equipment (CPE) to provide voice services. Key systems are less expensive than PBX systems, but they typically support fewer users and do not have the rich functionality and feature sets available in PBX systems. If there are large numbers of users on the PBX system, it is not possible to forklift the PBX systems and replace them with IP-based call-processing servers. In these scenarios, the IPT solution should provide the integration with the existing PBX or key systems. Knowing the type of interfaces and signaling protocols supported on the PBX or key systems allows you to choose the right hardware and software components on the IPT solution so that the PBX or key systems can coexist with the IPT solution until migration to IPT is completed.

Telco Signaling Protocols

Conceptually, the signaling protocols that are used in the telco networks can be divided into three categories:

  • Subscriber-to-network signaling—. Used by end users to request the network to set up a call. The telephone companies (telcos) treat these interfaces as subscriber interfaces.

  • Intranetwork signaling—. Used between switches in the telco network to set up and tear down calls between telco switches.

  • Network-to-network signaling—. Used between two networks to set up and disconnect calls and to exchange billing and other related information. The types of network-to-network signaling are not new signaling types but rather are variants of the intranetwork signaling types.

Signaling is further divided into two types: analog and digital.

Analog Signaling

By definition, analog signals are sent over wires or through air and carry information through some combination of frequency, phase, and amplitude. You can find trunks that use analog signaling in small offices or in offices where the telco switch does not support digital signaling. Analog signaling types usually fall under the subscriber-to-network signaling category. The three common analog trunk types are loop start, ground start, and ear and mouth (E&M).

Loop-start and ground-start trunks use the same wire pair for both audio and signaling. Most of the telephone connections to households around the world use loop-start signaling. E&M uses separate wire pairs for audio and signaling. You can find E&M signaling trunks in older PBX/central office switches.

The telephone system usually uses dual-tone multifrequency (DTMF) or dial pulse/digit transmission methods to transmit the digits that the subscriber dials. DTMF, which is the most popular method, uses two simultaneous voice-band tones for dialing, such as touch-tones. Dial pulse, which is an older method, uses a series of make and brake pulses to represent digits. In pulse dialing, an off-hook state is represented by a make state of the pulse, and an on-hook state is represented by a break state of the pulse.

Digital Signaling

Analog trunks require a physical set of wires per trunk and thus might not be the best method when provisioning a large number of trunks. Hence, higher-density digital trunks are used in larger organizations that have higher call volumes. There are two varieties of digital signaling trunk types: T1 and E1 circuits. When a network supports voice on T1 and E1 circuits (also used for data transmission), two types of signaling mechanisms are used:

Channel-associated signaling (CAS)

Common channel signaling (CCS)

CAS falls into the subscriber-to-network and CCS into intranetwork signaling.

CAS

In CAS, signaling information is carried in-band. This means that actual voice conversation travels along with the signaling information on the same circuit. One example of a CAS signaling system is Robbed Bit Signaling (RBS). RBS gets its name from the nature of its operation, in which some of the bits from the payload in each time-division multiplexing (TDM) slot are robbed and reused for signaling.

In the E1 facility, the signaling bits are arranged in time slot 16. CAS on the E1 facility also uses R1 (MF) and R2 (MF Compelled) types of signaling methods.

CCS

CCS separates signaling information from user data. Two examples of protocols in which you can find CCS signaling are ISDN and Q.SIG.

ISDN permits telephone networks to carry data, voice, and other types of traffic. ISDN has two types of variants:

  • Basic Rate Interface (BRI)—. Composed of two B (bearer) channels (used to carry data and voice traffic) and one D (data) channel (used for signaling), referred to as 2B+D. Each B channel provides 64 kbps, and the D channel provides 16 kbps for signaling. Two B channels combined can provide 128 kbps of bandwidth. Although the signaling is in a separate channel, it travels along with data.

  • Primary Rate Interface (PRI)—. Composed of 23 B channels and one D channel (23B+D) when using a T1 facility, and 30 B channels and a single 64-kbps D channel (30B+D) when using an E1 facility. Each B channel is 64 kbps.

The other example signaling standard that uses CCS, Q.SIG, has many variations in its feature implementations. Q.SIG is used in many PBX systems and in PBX internetworking.

VoIP Protocols

This section provides a brief overview of the operation of VoIP protocols and explains how these protocols play a role in IPT networks.

Two types of VoIP protocols exist:

  • Protocols that provide the call control and signaling

  • Protocols that carry voice payload (RTP, RTCP, UDP, and IP)

The job of the call-control and signaling protocols is to set up and tear down the connection between two or more endpoints in a VoIP network. The following is a list of the call-control and signaling protocols commonly found in IPT networks:

  • H.323—(peer-to-peer model)

  • Session Initiation Protocol (SIP)—(peer-to-peer model)

  • Media Gateway Control Protocol (MGCP)—(client/server model)

  • Skinny Client Control Protocol (SCCP)—(a lighter-weight Cisco proprietary protocol that uses the client/server model)

After the call setup process is complete, the source and destination endpoints can transmit and receive data by using the RTP/RTCP/IP/UDP protocol stack. A typical VoIP network uses any one or a combination of these protocols, depending on the endpoints involved. These protocols are needed at different points in an IPT network. As mentioned before, the gateway is an interface between the IP telephony network and the PSTN or a PBX. On one side, the gateway supports the signaling protocols needed to interface with the PSTN or a PBX. On the other side, the gateway supports the signaling and control protocols needed to interface with the IPT network via the CallManager. The CallManager also acts as a protocol translator. On one hand, the CallManager could be communicating with an IP phone using SCCP, and on the other hand, it could be communicating to the gateway using MGCP, H.323.

The following sections discuss briefly some basic functionality of the call control and signaling protocols that carry voice payload.

H.323

H.323 is an International Telecommunication Union (ITU) specification to carry real-time voice traffic such as telephone calls, video, and data over an IP network. The H.323 protocol specification describes how a session between two H.323 endpoints is created and maintained. The following are the main components of H.323:

  • H.225—. Scaled-down version of Q.931 to set up an IP connection between two H.323 endpoints.

  • H.245—. Allows H.323 endpoints to negotiate their capabilities (such as codecs available) with each other.

  • RAS—. H.323 endpoints use this protocol to communicate with H.323 gatekeepers to Manage Registration/Administration/Status.

The preceding three components use TCP for transport. The H.323 standard has gone through many revisions. The current standard is H.323 Version 4. Cisco CallManager 4.0 is compliant with H.323 Version 2 standards.

The “Call-Flow Scenarios” section later in this chapter discusses the call flow sequence between the IP phone and a voice gateway using the H.323 protocol.

SIP

SIP is an RFC standard (RFC 3261) from the Internet Engineering Task Force (IETF), the body responsible for administering and developing the mechanisms that comprise the Internet. SIP is one of the most talked about protocols these days because of its wide interoperability with other products.

SIP is a peer-to-peer protocol. The peers in a session are called user agents (UAs). A user agent can function in one of the following roles:

  • User agent client (UAC)—. A client application that initiates the SIP request

  • User agent server (UAS)—. A server application that contacts the user when a SIP request is received and returns a response on behalf of the user

Typically, a SIP endpoint is capable of functioning as both a UAC and a UAS, but it functions only as one or the other per transaction. Whether the endpoint functions as a UAC or a UAS depends on the UA that initiated the request. From an architectural standpoint, the physical components of a SIP network can be grouped into two categories: clients (endpoints) and servers. Figure 1-6 shows the SIP architecture.

SIP Architecture

Figure 1-6. SIP Architecture

In Figure 1-6, the SIP clients are phones such as Cisco SIP phones (7960, 7940, and ATA-18x can be configured as SIP phones by loading SIP firmware) and SoftPhones that are loaded on the user’s PC/laptop. The routing entities within the SIP architecture are called SIP servers. The following are the three types of SIP servers:

  • SIP proxy server—. An intermediate device that receives SIP requests from a client and then forwards the requests on the client’s behalf. Basically, proxy servers receive SIP messages and forward them to the next SIP server in the network. Proxy servers can provide functions such as authentication, authorization, network access control, routing, reliable request retransmission, and security. The role of a SIP proxy server is similar to that of a gatekeeper in an H.323 network.

  • Redirect server—. Provides the client with information about the next hop or hops that a message should take, after which the client contacts the next hop server or UAS directly.

  • Registrar server—. Processes requests from UACs for registration of their current location. Registrar servers are often co-located with a redirect or proxy server.

SIP uses six main messages for its basic functionality:

  • Register message—. Sent by the UAs to tell the network where they can be located. The location could be one or more addresses.

  • Invite message—. Sent by a UA to initiate a session.

  • ACK message—. Used to acknowledge that a successful session has been initiated.

  • Bye message—. Used to terminate a session that is already in progress and established.

  • Cancel message—. Used to terminate a session that is not yet established (for example, phone is still ringing).

  • Options message—. Used for an out-of-band mechanism to determine the capabilities of another UA.

Users in the SIP network are identified by a unique SIP address such as an e-mail ID. Figure 1-7 shows the basic call setup diagram of a successful call when a SIP proxy server is present in the network.

SIP Call Flow Using SIP Proxy Server

Figure 1-7. SIP Call Flow Using SIP Proxy Server

Figure 1-7 shows the following sequence of events:

  1. The calling party sends an Invite message to the called party.

  2. The SIP proxy server responds to the calling party with the informational response “100 Trying.”

  3. At the same time, the SIP proxy server sends an Invite message to the called party on behalf of the calling party.

  4. The called party responds with two informational responses: “100 Trying” and then “180 Ringing.”

  5. The SIP proxy server passes the informational response “180 Ringing” to the calling party.

  6. The called party responds with the response “200 OK” if the call is successful.

  7. The SIP proxy server passes the success response “200 OK” to the calling party.

  8. The calling party sends an ACK message.

  9. The SIP proxy server passes the ACK message to the called party.

After SIP successfully completes the signaling, a media path between the two endpoints is established.

Starting with CallManager 4.0, CallManager can communicate with SIP endpoints (SIP IP phones, SIP gateways) via SIP Proxy server. This feature, referred to as “SIP Trunk” and shown in Figure 1-8, allows any CallManager-controlled device to communicate with a SIP network. Future releases of CallManager might include the direct support of SIP so that CallManager can talk to the SIP endpoints directly without the need for a SIP proxy server.

SIP Support in CallManager

Figure 1-8. SIP Support in CallManager

MGCP

As previously discussed, H.323 and SIP are based on the peer-to-peer model, whereas MGCP is based on a client/server model. As defined in RFC 2705, “MGCP is designed as an internal protocol within a distributed system that appears to the outside as a single VoIP gateway.”

MGCP uses the Session Description Protocol (SDP, RFC 2327) to describe and negotiate media capabilities, which is also used in SIP. SDP functionality is similar to H.245 capability in H.323.

There are two main components of MGCP:

  • Media gateway (MG)—. Bridges networks that use different media types, such as circuit-switched, analog, and IP networks. An MG is also referred to as an endpoint (EP). An MG is an interface between a telephony network or a PBX and a VoIP network. Examples of Cisco media gateway products include 26xx/36xx/37xx series routers, Catalyst gateways such as WS-X-6608-T1/E1, and WS-6624-FXS gateways.

  • Media gateway controller (MGC)—. Controls the parts of the call state that relate to connection control for media channels in one or more media gateways. An MGC is also referred to as a call agent (CA) or as the industry term Softswitch. In the IPT networks, CallManager acts as a CA that provides call-processing functions and feature logic and controls the MG.

MGCP messages are sent over UDP/IP between the CA and MG. The client/server relationship is maintained between the CA and MG. Voice traffic (bearer channels) is carried over RTP/UDP/IP or other transmission media (e.g., ATM). MGCP is independent of transport media and can be used to control ATM or circuit-switched gateways.

Similar to H.323, MGCP has undergone several revisions. As of CallManager 4.0, support for MGCP 0.1 is included. The current revision of MGCP is 1.0.

MGCP uses very simple commands in the negotiation process between the MG and CA and uses UDP as a transport layer protocol. The default port is UDP 2427, although it is configurable in the CallManager. Examples of the commands are CRCX (CreateConnection), MDCX (ModifyConnection), etc., and every command requires an acknowledgement. The following list describes commonly used MGCP commands, and Figure 1-8 shows the usage of these commands:

  • CRCX—. The CA can use the CreateConnection command to create a connection that terminates in an endpoint inside the MG.

  • MDCX—. The CA can use the ModifyConnection command to change the parameters associated with a previously established connection.

  • DLCX—. The MG can also use the DeleteConnection command to delete an existing connection. The MG can also use the DeleteConnection command. This command indicates that a connection can no longer be sustained.

  • RQNT—. The CA can issue a NotificationRequest command to a gateway to instruct the gateway to watch for specific events such as hook actions or DTMF tones on a specified endpoint.

  • NTFY—. The MG can use the Notify command to inform the CA when the requested events occur.

  • AUEP and AUCX—. The CA can use the AuditEndpoint and AuditConnection commands to audit the status of an endpoint and any connections associated with it.

  • RSIP—. The MG can use the RestartInProgress command to notify the CA that the MG, or a group of endpoints managed by the MG, is being taken out of service or is being placed back in service.

Table 1-1 shows the directions of the signaling messages exchanged between the CA and the endpoint or MG.

Table 1-1. MGCP Message Types and Flows

MGCP Command Code

MGCP Command Verb

Direction of the Command Flow

Endpoint Configuration

EPCF

CA -> EP

Creation Connection

CRCX

CA -> EP

ModifyConnection

MDCX

CA -> EP

DeleteConnection

DLCX

CA <-> EP

Notification Request

RQNT

CA -> EP

Notify

NTFY

CA <- EP

AuditEndpoint

AUEP

CA -> EP

AuditConnection

AUCX

CA -> EP

RestartIn Progress

RSIP

CA <- EP

The “Call-Flow Scenarios” section later in this chapter discusses the call-flow sequence between the IP phone and a voice gateway using the MGCP protocol.

SCCP

SCCP is a “lightweight” Cisco proprietary protocol that is based on a client/server model. In this model, all the intelligence is built into the server, which is a CallManager in the Cisco IPT solution. The client, which is a Cisco IP Phone, has minimal intelligence. In other words, the Cisco IP Phones have to do less work, thus requiring less memory and processing power. The CallManager, being the intelligent server, learns client capabilities, controls call establishment, clears calls, sends notify signals (i.e. message waiting indication (MWI), reacts to signals from the client (after the user presses the directory button on the phone), and so forth. CallManager communicates with the IP phones using SCCP and, if the call has to go through a gateway, communicates with the gateway using H.323 or MGCP.

RTP/RTCP

By now you should have a good operational understanding of signaling protocols such as H.323, SIP, MGCP, and SCCP. These protocols provide call-signaling and control functionality and are responsible for setting up and tearing down the connection between the endpoints. After the connection is set up between the two endpoints, the source and destination endpoints can transmit and receive data by using RTP/RTCP. As discussed in the “Next-Generation Multiservice Networks” section earlier in this chapter, RTP/RTCP uses UDP for transport.

Figure 1-9 shows the IP packet header information that transports the RTP/RTCP packets. As you can see, the IPv4 header is 20 bytes, the UDP header is 8 bytes, and the RTP header is 12 bytes, which means that a total of 40 bytes of header information is required to transport the single RTP packet. After this 40 bytes of IP header information, two 10-byte frames (10 bytes per frame for G.729 codec voice samples) of real voice payload are carried, for a total of 20 bytes of voice payload. (The Cisco implementation puts two frames into one packet.) A simple math calculation shows that the header has twice the number of bytes that are in the real payload. To address this particular issue, you can use RTP header compression technique on point-to-point links. You must apply the RTP header compression on a link-by-link basis. When enabled on a gateway, you can use the RTP header compression technique compresses the 40-byte header into 2 or 4 bytes. However, enabling compression increases the load of the CPU on the router. You need to make a decision based on the number of calls that you need to send out through that gateway.

RTP, UDP, and IP Protocol Headers

Figure 1-9. RTP, UDP, and IP Protocol Headers

IP Telephony Components

So far this chapter has focused on analyzing how legacy networks are migrating to integrated voice and data networks and on describing the various protocols used in the new multiservice networks. This section discusses the main components of Cisco AVVID and some of the key areas to look for when deploying the Cisco IPT solution. Key areas include the following:

  • Network infrastructure

  • Call processing

  • CallManager Directory Services

  • IPT endpoints

  • Call admission control

  • Fax

  • Media resources

  • Applications

Understanding the features and capabilities of these components will help you to design the network that meets the targeted organization’s requirements.

Network Infrastructure

Network infrastructure plays a key role in building multiservice networks such as Cisco AVVID. Integration of data and voice traffic puts strong requirements on packet loss, delay, and jitter (variable delay). When designing IPT networks, you should choose network infrastructure components in the LAN and WAN that support QoS mechanisms, in addition to faster convergence in case of network failures to avoid the delay, jitter, and so forth.

The addition of voice traffic on top of the existing data traffic increases the bandwidth requirements in both LANs and WANs. The bandwidth within the LAN is not a challenging issue because of the availability of the high-speed LAN switching technologies. However, when transporting the voice traffic across the WAN links, you need to ensure that adequate bandwidth is available to support the additional bandwidth required to transport voice calls. If the WAN links do not have adequate bandwidth, you need to increase their bandwidth to support the additional voice traffic. After the bandwidth is available, you can use QoS mechanisms to prioritize the voice traffic and reserve the bandwidth.

Chapter 4, “Planning Phase,” discusses the infrastructure requirement analysis in depth.

Call Processing

CallManager software is the main component of the Cisco IPT solution. CallManager handles all the call-processing requests received from various clients in the IPT network. CallManager software runs on the Microsoft Windows 2000 Server/Windows 2000 Advanced Server operating systems.

CallManager is installed on the Cisco Media Convergence Server (MCS). The selection of the hardware platforms depends on the size of the network in which they are going to be deployed, including its high-availability and performance requirements. Table 1-2 lists the maximum number of devices supported per server platform.

Table 1-2. Maximum Number of Devices per Server Platform

Server Platform

Maximum Number of Devices per Server

Cisco MCS-7845

7500

Cisco MCS-7835

2500

Cisco MCS-7825

1000

Cisco MCS-7815

300

CallManager Clustering

CallManager servers are grouped to form clusters to support more devices (IP phones, gateways, and so forth). Starting with CallManager Version 3.3, a CallManager cluster can have up to eight CallManager servers running the CallManager service.

In addition to eight call-processing servers, the cluster can have servers such as a publisher server, a Trivial File Transfer Protocol (TFTP) server, and a Music on Hold (MoH) server. A publisher server has the read/write database of Microsoft SQL that stores the CallManager configuration information. There can be only one publisher server in a cluster. All other servers in the cluster, referred to as subscribers, have the read-only database. Subscribers pull their up-to-date subscriptions from the publisher server. During normal operating conditions, when the publisher server is available, the subscriber database is not used.

If a publisher is offline, you cannot perform updates such as adding new devices, changing user passwords, speed dials, or any other features that require a write operation on the database, because it is the only server that has the read-write database. However, the phones and other devices will continue to function normally.

CallManager stores the configuration of the IP phones in the TFTP server. (The default is to store it in the memory. You can change this default by modifying the service parameters. Chapter 9, “Operations and Optimization,” discusses these techniques.) The configuration information is stored in the XML format. The configuration file contains information such as device pool associations, directory URLs, authentication URLs, language-specific information, and so forth. IP phones and many other endpoints in the Cisco IPT network download the firmware and configuration information from the TFTP server.

Failure of a TFTP server is not an issue for the devices that were already configured and functioning before the failure. The devices store the previously loaded configuration and firmware in memory and use the same if they fail to contact the TFTP server during the reboot. However, an update to a phone’s configuration information that is stored in the TFTP configuration file will fail if the TFTP server is unavailable. In addition, provisioning of new devices fails if a TFTP server is not available.

For networks that require high availability, you can deploy two TFTP servers to provide redundancy and load balancing in the network. Cisco IP Phones and other Cisco IPT endpoints receive the TFTP server information via the DHCP server in the custom option 150. You can configure an array of IP addresses for option 150 in the DHCP server, instead of one IP address, to communicate to the Cisco IPT endpoints the existence of the secondary TFTP server.

Tip

In a large IPT deployment, the recommendation is to have a dedicated publisher server that does not participate in the call processing and a separate server that provides TFTP services.

Device Weights

The devices in the IPT network consume different amounts of memory and CPU resources on the CallManager servers. Based on the amount of resource consumption, Cisco has assigned a weight to each device, as shown in Table 1-3. This information is based on CallManager Version 3.3.(3).

Table 1-3. Base Device Weights

Device Type

Weight per Session/Voice Channel

Session/DS0 per Device

Cumulative Device Weight

IP phone

1

1

1

Analog MGCP ports

3

Varies

3 per DS0

Analog SCCP ports

1

Varies

1 per DS0

CTI route point

2

Varies

Varies[1]

CTI client port

2

1

2

CTI server port

2

1

2

CTI third-party control[2]

3

1

3

CTI agent phone[2]

6

1

6

H.323 client

3

Varies

3 per call

Intercluster trunk gateway

3

Varies

3 per call

H.323 gateway

3

Varies

3 per call

Digital MGCP T1 gateway ports

3

24

72 per T1

Digital MGCP E1 gateway ports

3

30

90 per E1

MoH stream

10

20

200[3]

Transcoding resource

3

Varies

3 per session

Media Termination Point (MTP) (software)

3

24

72[4]

Conference resource (hardware)

3

Varies

3 per session

Conference resource (software)

3

24

72[4]

[1] Cumulative weight of the CTI (Computer Telephony Integration) route point depends on the associated CT ports used by the application.

[2] Includes the associated IP phone.

[3] When MoH is installed on the same server as CallManager, the maximum number of media streams is 20.

[4] When installed on the same server as CallManager, the maximum number of conference sessions is 24.

The devices that are registered with CallManager consume additional server resources during transactions, which are in the form of calls. A device that makes only 6 calls per hour consumes fewer resources than a device that makes 12 calls per hour. The device weights that are assigned to the devices in Table 1-3 are based on the assumption that the device makes 6 or fewer calls during the busy hour call attempts (BHCA).

BHCA is the number of call attempts made during the busiest hour of the day. Before deploying a Cisco IPT solution, you must determine the busiest hour of the day for an organization and then scale the type of devices that are going to be deployed within the Cisco IPT solution. The BHCA varies from organization to organization and depends on the type of business (which can vary by season) and on the sales/promotional periods. A thorough network audit or analysis of historical call detail records is required to determine an organization’s BHCA.

Each device that requires more than six BHCA has a multiplier applied to its base weight. Based on the BHCA multiplier table, Table 1-4, if an IP phone is making 16 BHCA, its multiplier is 3. The total weight of the IP phone with 16 BHCA is equal to its base weight 1 (refer to Table 1-3) multiplied by 3. The multiplier is applied only to station/client devices and not to devices that are a media resource or gateway.

Table 1-4. BHCA Multiplier

BHCA

0–6 BHCA

7–12 BHCA

13–18 BHCA

19–24 BHCA

25–30 BHCA

Multiplier

1

2

3

4

5

Example IP phone

1

2

3

4

5

Example CTI client port

2

4

6

8

10

The total number of device units that a single CallManager can control depends on the server platform. Table 1-2 gives the details of the maximum number of devices per platform based on CallManager Version 4.0. You have to deploy multiple CallManager clusters if the number of IP phones plus other devices exceeds the device weights limit supported by a single cluster.

Tip

In Table 1-2, the number provided in the Maximum Number of IP Phones per Server column is based on the assumption that all phones are configured with a single directory number. If the network that you are deploying is complex and involves multiple lines/directory numbers per IP phone or dial plan that includes numerous route patterns and translational patterns, you have to understand the concept of dial plan weights, as discussed in the following section.

Dial Plan Weights

Device weights determine the maximum number of physical devices that can be registered to a CallManager subscriber. Some IP phone models support multiple lines (directory numbers or line appearances). Many IPT deployments have directory numbers that are shared across multiple IP phones and a large number of dial plan entries that include route patterns; translational patterns require an extra amount of resources (CPU, memory) on the CallManager.

Dial plan weights provide the limit on the number of such dial plan entries configured in a CallManager subscriber. Dial plan weight calculations provide guidelines to size the cluster. Two types of dial plan weights are available:

  • Subscriber dial plan weights (include line appearances)

  • Global dial plan weights (include route patterns and translational patterns)

In larger IPT deployments, you should register all the endpoints to the subscribers and none to the publisher server. That way, you can prevent the publisher server from doing call-processing activity. Subscriber dial plan weights consist of the following main types:

  • IP phone weight—. Associated with the subscriber server to which the IP phone is normally registered. This weight is for the base device. The dial plan weight of an IP phone is independent of its device weight. (See Table 1-3.)

  • Line weight (unique or shared appearance)—. Associated with the subscriber server to which the device is normally registered.

  • Reachability weight—. Associated with all other subscribers in the cluster that have to be able to reach (call) a given line. Consider a CallManager cluster with two CallManager servers: CCM1 and CCM2. An IP phone ’A’ is registered to CCM1. Even though the IP phone is registered to CCM1, the CCM2, which is part of the same cluster, needs to know how to reach the phone ’A.’ CCM2 keeps this information in the memory. Reachability Weight accounts for this memory utilization on CCM2.

  • Global dial plan weights—. Consist of route pattern and translation pattern weights.

In summary, dial plan components contribute the weights outlined in Table 1-5.

Table 1-5. Base Dial Plan Weights

Subscriber Dial Plan Componenents

Dial Plan Weight

IP phone device (excluding line appearances)

5

Unique line appearance

5

Shared line appearance

4

Reachability per line appearance

3

Global Dial Plan Components

Route pattern

2

Translational pattern

1

To understand more about the dial plan weight calculations, consider Figure 1-10. When IP phone A (primary extension 2000), which is a unique line appearance, is registered with subscriber CCM A, the dial plan weight on subscriber CCM A is 10 units (5 units for the IP phone and 5 units for the unique line appearance (primary extension 2000). Subscriber CCM B in cluster 1 has a dial plan reachability weight of 3 units to reach extension 2000 on subscriber CCM A.

Dial Plan Weight Calculations

Figure 1-10. Dial Plan Weight Calculations

The secondary unique line appearance on IP phone A (secondary extension 2001) adds a dial plan weight of 5 units to subscriber CCM A and 3 units to subscriber CCM B located in cluster 1. Each shared line appearance (shared extension 2002) on IP phone A adds a dial plan weight of 4 units to subscriber CCM A and 3 units to subscriber CCM B located in cluster 1. A line appearance is called “shared” when the same unique line appears on multiple devices in the same partition.

Figure 1-10 also shows IP phone B with primary extension 2004, secondary extension 2005, and shared extension 2002, registered with subscriber CCM B in cluster 1. Note that shared extension 2002 has a dial plan weight of 4 units on subscriber CCM A and 3 units on subscriber CCM B, since the shared extension 2002 is primarily controlled by subscriber CCM A, thus requiring more resources.

In each cluster, the global dial plan weights apply to all subscriber servers. For example, a route pattern of 9.1xxxxxxxxxxx adds a dial plan weight of 2 units to each subscriber server in the cluster (refer to Table 1-5).

Table 1-6 lists guidelines for how much physical memory to install on a subscriber server, based on the number of phones, number of line appearances, and complexity of the dial plan that is configured on that server.

Table 1-6. Server Memory Requirements for Dial Plan Weights

Total Dial Plan Weight on a Subscriber

Server Memory Requirements

Up to 15,000

512 MB of RAM

Up to 35,000

768 MB of RAM

Up to 70,000

1 GB of RAM

Up to 140,000

2 GB of RAM

Up to 220,000

4 GB of RAM

Tip

When determining the server hardware and number of servers in the cluster, you should choose a server based on the size of the network, performance, and high-availability requirements. A properly sized cluster must satisfy both the device weight and dial plan weight requirements.

Starting with CallManager 4.0, Cisco has introduced a Cisco CallManager Capacity Tool to size the CallManager clusters. This is a web-based tool and is currently not available on Cisco Connection Online (CCO). In the back end, the tool uses device weights, dial plan weights, and the BHCA multipliers concept to calculate cluster sizing. The device weights and BHCA factors could change from one version of CallManager to another, but the concept remains the same.

CallManager Directory Services

CallManager is bundled with a Lightweight Directory Access Protocol (LDAP) compliant directory called DC Directory (DCD). DCD is a Cisco OEM product from Data Connection Limited.

CallManager stores system and device configurations in a Microsoft SQL database. The application scripts and the following information are stored in DCD:

  • User authentication and authorization

  • Extension Mobility profiles

  • Personal Assistant profiles

  • Internationalization information

  • Personal Address Book (PAB)

  • Spoken name

  • Fast dial

  • Call Forward All information

The DCD process replicates the information among the members of the cluster, as shown in Figure 1-11. This process is similar to Microsoft SQL replication.

DC Directory Replication Within a Cluster

Figure 1-11. DC Directory Replication Within a Cluster

Many organizations have already deployed LDAP-based directories to store the user-related information, such as user ID, password, authentication information, authorization information, e-mail ID, phone number, and address. There are two possible deployment scenarios for the CallManager directory:

  • Use the embedded DCD, which is part of CallManager

  • Use corporate directory integration, which allows CallManager to store the user-related information in a centralized, existing directory, instead of using DCD. CallManager supports the directory integration with Microsoft Active Directory 2000/2003, Netscape 4.x, iPlanet 4.x, or SunOne 5.x Server.

You do not need to perform additional planning or design tasks when using the embedded DCD. The publisher server stores the master copy of the directory database, and the subscribers have the replica of the publisher server’s directory database.

However, if you are considering integration of CallManager with an existing corporate directory, you must take extra care to achieve successful integration and functioning of the CallManager cluster. Corporate directory integration requires schema extensions to the existing corporate directory schema structure. The schema extension creates new objects and attributes in the existing corporate directory schema structure to store CallManager-specific information in the directory. The CallManager schema extensions use official object identifiers (OIDs) that are approved by the Internet Assigned Numbers Authority (IANA).

Many other Cisco IPT applications, such as Cisco Unity, IPCC Express, Personal Assistant (PA), and Cisco Emergency Responder (CER), support directory integration with external directories. Cisco Unity requires a special set of schema extensions when integrated with an external directory, and other applications create special directory trees and attributes in the corporate directory.

Note

The IPT planning team must consult the corporate directory team to discuss the effects of this schema extension and to determine the effects of the extra size of the directory database because of the addition of new objects and attributes. Note that the directory schema extension process requires higher user privileges.

CallManager integration with the corporate directory includes the following benefits:

  • You do not need to maintain two separate directories (one for the corporate directory and another for the CallManager directory), which results in minimal administration overhead

  • When deploying multiple CallManager clusters, you do not need to provide different services to look up users in different clusters.

  • Moves, adds, and changes are centralized.

IP Telephony Endpoints

In a Cisco IPT network, endpoints are the devices that accept or initiate a VoIP session. This section introduces the following endpoints that are used in a Cisco IPT network.

  • Cisco IP Phones

  • SoftPhones

  • Wireless IP Phones

  • Voice gateways

  • Survivable Remote Site Telephony (SRST)

  • CallManager Express (CME)

Cisco IP Phones

IP phones are one of the endpoints in Cisco AVVID. Various IP phone models are available, the selection of which depends on the end-user requirements and the overall budget for the project. Appendix A, “IP Phone Models and Selection Criteria,” provides a list of currently available IP phone models and selection criteria.

IP phones keep the connection to the primary and standby CallManager servers. CallManager redundancy groups (device pools) that are configured on the CallManager administration page provide this feature. Each CallManager redundancy group consists of more than one CallManager. The first CallManager listed in the CallManager redundancy group has the highest priority. IP phones attempt to register with the higher priority CallManager.

Just like any other networking device, IP phones require an IP address, subnet mask, default gateway, DNS server, and TFTP server information to communicate with CallManager. By default, IP phones are configured to obtain the IP address and the other network settings via the Dynamic Host Configuration Protocol (DHCP). This allows mobility and improves IP address manageability. The only downside is that critical IP address allocation information for many nodes is stored within one file or database on the DHCP server. You should have adequate support for DHCP services and treat the DHCP data as highly critical data.

Tip

Best practice is to keep the DHCP databases mirrored or backed up on a continual basis. In addition, have a plan in case DHCP services fail. In large deployments, separate the DHCP and TFTP server functionality to achieve stability and reliability.

If an organization has an existing DHCP server, it can extend the services to IPT endpoints, such as IP Phones. The only requirement is that the DHCP servers should also support adding custom option 150 or 66 for IP phone provisioning. The DHCP server uses one of these option fields to forward to the IP phones information about the TFTP server or array of TFTP servers.

Only option 150 supports specifying an array of IP addresses. Hence, if you are planning to use more than one TFTP server, you should use option 150. Specifying more than one TFTP server allows the endpoints to use the secondary server if the primary server fails. Also, you can achieve load balancing by configuring these TFTP servers in different orders in the DHCP scopes.

The DHCP and TFTP services can be collocated on the CallManager publisher server in a small IPT deployment. However, for larger deployments, separating these services from the publisher server provides greater performance.

Tip

To build a standalone TFTP server, you simply need to install the CallManager software, as you would do with any other subscriber, but activate only the TFTP and DataBase Layer (DBL) monitor services on that server.

Domain Name Service (DNS) is not mandatory in IPT environments. IP phones can use IP addresses to communicate with CallManager. However, DNS is useful for managing the overall network environment and provides redundancy/load balancing for the IP phones that require access to the application servers.

SoftPhones

SoftPhones are software-based applications that turn your computer into a full-featured Cisco IP Phone, allowing you to place, receive, and otherwise handle calls. These types of applications are useful for telecommuters or users who move within the campus. With the wireless connectivity to the PC, users can freely move to any location within the reach of the wireless and thus carry the phone with them.

Two types of soft phone applications are available:

  • Cisco IP SoftPhone

  • Cisco IP Communicator

Cisco IP SoftPhone is a Telephony Application Programming Interface (TAPI) application that communicates with CallManager via the Computer Telephony Interface (CTI), whereas Cisco IP Communicator communicates with CallManager via SCCP. The user interface for the Communicator phone looks like a Cisco 7970G IP Phone.

Table 1-7 lists the major differences between Cisco IP SoftPhone and Cisco IP Communicator.

Table 1-7. Differences Between Two Cisco SoftPhone Products

Feature

Cisco IP SoftPhone

Cisco IP Communicator

User interface

PC application look and feel

Cisco IP Phone 7970G look and feel

Communication protocol with CallManager

CTI

SCCP

Provisioning

Requires creation of CTI port and user association

Just like any other Cisco IP phone

Call-control features

Features are limited to the capability of CTI APIs

All features supported in the 7970G Phone, such as multiple lines and access to Cisco IP Phone services, are supported

As Table 1-7 indicates, Cisco IP SoftPhone uses CTI to communicate with CallManager. When deploying Cisco IP SoftPhone, you need to note the limitations on the number of CTI devices that can be provisioned on the CallManager depending on the hardware platform. Table 1-8 shows the CTI device limitations for CallManager 4.0 and assumes that the Cisco IP SoftPhones are configured with one line appearance, and no more than six BHCAs are made from the Cisco IP SoftPhones.

Table 1-8. CTI Device Limitations on CallManager

Hardware Platform

Number of CTI Devices per Server

Number of CTI Devices per Cluster

MCS-7825, MCS-7835

800

3200

MCS-7845

2500

10,000

The maximum CTI limits are shown in Table 1-8 and include any other provisioned CTI devices such as IP-IVR or third-party CTI-enabled applications.

Because Cisco IP Communicator uses SCCP, it is treated like any other Cisco IP Phone; hence, you can deploy Cisco IP Communicator phones up to the maximum allowed IP phone device limits per server.

Both Cisco IP SoftPhone and Cisco IP Communicator mark the voice and signaling packets (0xB8/EF for media and 0x60/CS3 for signaling). These applications run on the user’s laptop/PC connected to the PC port that is on the back of the IP Phone. Because the packets coming from the PC port on the IP phone are not trusted, when deploying these applications, you need to create the access lists on the access or distribution switches to identify and mark with proper Differentiated Services Code Point (DSCP) values the signaling and media packets coming from these applications. Chapter 4 discusses the QoS and markings in detail.

Wireless IP Phones

Cisco Wireless IP Phone 7920 works in conjunction with CallManager and Cisco Aironet 1200, 1100, and 350 Series Wi-Fi (IEEE 802.11b) access points.

The planning procedures for deploying wireless voice are different from those used to deploy wired IP phones. Wireless IP phone deployment involves the following major tasks:

  • Preparing a site survey to do the following:

    • —Determine the location of the access points

    • —Identify and eliminate the sources of interference

    • —Determine the power levels of the access points

    • —Identify and eliminate the rogue access points

  • Determining the number of access points required

  • Configuring QoS policy on access points

  • Configuring security

Voice Gateways

Voice gateways connect the IPT network to the PSTN or a PBX. CallManager supports a variety of voice gateways. Selection of the gateway depends on the specific site requirements. Geographical placement of the voice gateways determines the type of interfaces and link layer protocol selection.

CallManager communicates with gateways using any of the following protocols:

  • MGCP

  • H.323

  • SIP

MGCP-based gateways provide call survivability and do not require a local dial plan. All the dial plan configurations are required to be made on the CallManager, whereas with H.323 gateways, you need to configure the local dial plan on the router by configuring the voice dial peers.

Cisco offers a variety of voice gateways, which are essentially the routers and switch modules with interfaces that can connect to the PSTN or a PBX. These routers and switch modules support two types of signaling interfaces: analog and digital. Analog signaling interfaces use Foreign eXchange Office (FXO), Foreign eXchange Station (FXS), and E&M signaling protocols. Digital signaling interfaces use T1/E1 Primary Rate Interface (PRI), ISDN Basic Rate Interface (BRI), or T1 CAS. Most of the Cisco IOS voice gateways support H.323, MGCP, and SIP, whereas the majority of the Catalyst voice gateways support MGCP.

Survivable Remote Site Telephony

Survivable Remote Site Telephony (SRST) provides the fallback support for the IP phones that are connected behind a router running the Cisco IOS software version that supports SRST. This feature enables you to deploy the IPT at small branch offices with a centralized call-processing model. Figure 1-12 depicts a branch office deployment with SRST.

SRST Operation in a Branch Office

Figure 1-12. SRST Operation in a Branch Office

During normal operation, when the CallManager is active and the WAN link is available, IP phones at the branch behave the same way as the IP phones at the central site. The SRST feature on the router becomes active as soon as the IP Phones detect the failure of the WAN link. (The IP Phones miss three consecutive acknowledgements from the CallManager.) The IP phones attempt to register with the other CallManagers in the redundancy group before attempting the registration with the SRST router. So, the fallback process to the SRST router could take longer if other CallManagers are in the IP phone’s redundancy group. SRST provides the basic call handling and minimal features to the IP phones during the WAN failure. Without this feature, the IP phone users at these locations would not be able to make outside calls.

When the WAN link comes back online, IP phones detect the keep-alive acknowledgements from the CallManager and attempt to re-home back to the CallManager servers.

The number of IP phones supported in the SRST mode depends on the router platform, the Cisco IOS version, and the amount of memory. You have to choose the appropriate router model and amount of memory based on the number of phones being deployed at the branch office.

Cisco CallManager Express

Cisco CallManager Express (CME) is the new name given to the feature formerly known as IOS Telephony Services (ITS) on the Cisco IOS routers. CME is a licensed feature of Cisco IOS software that is available on many router hardware platforms. CME delivers key system functionality for small and midsize branch offices. In the CME solution, IP phones are registered to the CME router all the time. As shown in Figure 1-13, for a branch office/retail store that operates independently, the CME-based solution provides flexibility. Like SRST, the number of phones supported by the CME gateway depends on the router hardware, the Cisco IOS version, and the amount of memory.

CME Operation in a Branch Office

Figure 1-13. CME Operation in a Branch Office

Call Admission Control

In VoIP networks, CAC does the bandwidth management. CAC ensures that enough bandwidth is available before granting permission to a gateway for placing the call across the IP WAN. When deploying IPT solutions with multiple locations, you have two choices for implementing the CAC:

  • CallManager locations-based CAC

  • Gatekeeper CAC

CallManager Locations-Based CAC

CallManager locations-based CAC is one mechanism to limit the calls sent across an IP WAN in a single CallManager cluster deployment. Locations are configured in the CallManager and assigned a maximum bandwidth. The bandwidth assigned per location depends on the number of calls that are allowed to be made to a particular location and the type of codec used for that location. Before placing a new call, CallManager checks its location tables to determine if enough bandwidth is available to place the new call. If enough is available, the call is allowed and CallManager updates the available bandwidth for that location. Locations-based CAC is ideal for centralized call-processing deployments with a hub-and-spoke topology.

CallManager locations-based CAC is not scalable for multicluster CallManager deployments; gatekeeper CAC, discussed next, is recommended for such deployments.

Gatekeeper CAC

A Cisco IOS gatekeeper in Cisco AVVID networks provides call admission and call routing between the CallManager clusters in distributed call processing deployments. Gatekeeper CAC is suited for deployments that follow the hub-and-spoke topology and does not work with the meshed topologies. The following are some of the advantages of using the gatekeeper:

  • It simplifies the dial plan management by enabling you to quickly add or remove routes and devices.

  • It provides CAC between calls from different clusters, ensuring that the WAN bandwidth allocation is strictly enforced.

  • It reduces configuration overhead by eliminating the need to configure a separate H.323 device for each remote CallManager that is connected to the IP WAN.

  • It offers a choice of protocols for communicating with CallManager or H.225 gateways.

  • It can perform basic call routing in addition to call admission control.

You have two choices of deploying a gatekeeper with CAC:

  • Gatekeepers deployed with the Hot Standby Router Protocol (HSRP)

  • Gatekeeper clustering

Gatekeepers in HSRP mode do not share the CAC information, whereas gatekeeper clustering enables true redundancy and load balancing. Gatekeepers that are deployed in a cluster mode exchange the CAC information via the gatekeeper Update Protocol (GUP) and are the recommended deployment method.

Fax

One of the most important pieces in the transition to converged networks is support for fax communication. As network implementations increasingly provide for e-mail attachments and web-downloadable documents, fax communication nonetheless is still a significant method of immediate document delivery worldwide. Studies have shown that a large portion of long-distance minutes is fax traffic.

The frequent use and customer expectations of fax functionality and reliability demand a support for reliable fax transmissions across a converged network. Most Cisco voice gateways currently support three methods to transmit fax traffic across the IP network:

  • Fax Pass-Through—. In Fax Pass-Through mode, the gateways do not distinguish a fax call from a voice call

  • Cisco Fax Relay—. In Cisco Fax Relay mode, the gateways terminate the T.30 fax signaling.

  • T.38 Fax Relay—. This standard provides standards-based Fax Relay.

Fax Relay mode is the preferred method to transmit fax traffic. Because the T.38 Fax Relay protocol is standards-based, fax gateways that use this protocol can interoperate with third-party T.38-enabled gateways and gatekeepers in a mixed-vendor network. As of CallManager 4.0, T.38 Fax Relay is not supported. When deploying the fax over IP by using the CallManager, Cisco Fax Relay or Fax Pass-Through are the only choices that you can use on the gateways.

Similar to voice traffic, fax traffic is also sensitive to delay, jitter (variable delay), and packet loss. Hence, the network must be QoS enabled.

Media Resources

The function of media resource devices is to mix the multiple streams into a single output stream, converting the data stream from one compression type to another, and so forth. Examples of media resources are conferencing, transcoding, and MoH.

The media resources can be hardware or software. CallManager has built-in software media resources for conferencing, transcoding, and media termination. The limitation of software media resources is that they can’t combine the streams that use different compression techniques.

Hardware media resources have the same features as software media resources with an additional advantage of mixing the streams that use different compression types. Hardware media resources offer good performance and quality because the processing is done in the hardware.

MoH is another example of a media resource. MoH is an application that is installed by default on the CallManager servers (or you can install a standalone MoH server on a dedicated server for large deployments). As the name implies, MoH provides music or announcements when the users are put on hold.

When you are designing the IPT network, one of the tasks is to size the media resources and determine their placement within the network.

Applications

Cisco has a wide range of applications that can be deployed in an IPT network. These applications are optional, and their deployment adds more features and capabilities to the overall IPT network. Design and deployment of the applications, such as CRS and IP phone services, are discussed in Chapters 6, “Design of Call Processing Infrastructure and Applications,” and 7, “Voice-Mail System Design.”

Customer Response Solution

The Customer Response Solution (CRS) platform provides interactive telephony and multimedia services. It provides a multimedia (voice, data, and web) IP-enabled customer-care application environment. The CRS platform uses VoIP technology, so an organization’s telephony network can share resources with the data network.

The CRS platform uses an open architecture that supports industry standards. This enables application designers to integrate applications with a wide variety of technologies and products.

The CRS platform includes the following applications:

  • Cisco IP Auto Attendant (IP AA)

  • Cisco Interactive Voice Response (IP IVR)

  • Cisco IP Contact Center (IPCC) Express (formerly known as Integrated Contact Distribution, or ICD)

CRS has add-on components, including Automatic Speech Recognition (ASR) and Text-to-Speech (TTS).

IVR

IVR queues the callers, accepts the input, and does a database lookup based on the input. The open standards–based design of the CRS platform supports connectivity to various databases, such as Microsoft SQL, Oracle, Sybase, and IBM DB2 via Open DataBase Connection (ODBC) interface.

IPCC Express

Cisco IPCC Express provides enterprises with a contact management solution that is ideal to implement a small-scale contact center or internal help desk. IPCC Express provides Automated Call Distribution (ACD), IVR, and CTI functionality. The ACD queues and distributes incoming calls that are destined for groups of CallManager users. The IVR gathers caller data and classifies incoming calls based on user-entered information. IPCC Express includes a web-based real-time reporting system that monitors the system performance, Contact Service Queue (CSQ), and resource performance.

A Java Telephony API (JTAPI) connection manages communication between the CRS engine and CallManager Computer Telephony Integration Manager (CTIM) service.

The sizing of the CRS platform depends on the organization’s call volume.

Cisco Unity

CallManager integrates with many existing voice-mail systems that use the Simplified Message Desk Interface (SMDI) standard and other voice-mail systems from Lucent, Avaya, or Nortel that use proprietary protocols. CallManager uses the Cisco Digital PBX Adapter (DPA) 7630 to integrate with Lucent or Avaya voice-mail systems and DPA 7610 to integrate with Nortel voice-mail systems.

Cisco Unity is a voice-mail/unified messaging solution that delivers powerful unified messaging (e-mail, voice, and fax messages sent to one inbox) for Microsoft Exchange or Lotus Domino environments. Cisco Unity can integrate with CallManager and with many legacy PBXs. Cisco Unity communicates with CallManager via SCCP.

Likewise, CallManager server has guidelines on the maximum number of devices that can be registered; Cisco Unity server has guidelines on the number of subscriber accounts per Unity server. The capacity depends on the hardware platforms.

Redundancy is achieved in an IPT network by deploying the CallManagers in cluster configuration. To build the redundancy for Cisco Unity deployment, two Unity servers are deployed. Unlike CallManager, where the load can be shared on all the servers in the cluster, the Cisco Unity servers deployed in the failover model do not share the load. Only one server is active at a time.

Cisco Emergency Responder

An IPT network provides fiexibility to move the IP phones from one location to another location without the involvement of an administrator. This is attractive to many organizations and network administrators because it reduces the cost.

However, careful planning is required, which varies depending on the country where the telephony system is deployed and local government rules and regulations for routing emergency calls.

In the United States and Canada, users dial 911 (in other countries, this number varies) to make emergency calls to get the services of police, ambulance, and fire personnel. In a regular 911 system, also called a Basic-9-1-1 system, the emergency calls are sent to a public safety answering point (PSAP). No mechanism ensures that the call is sent to the correct PSAP, and the PSAP does not receive information about the location of the 911 caller. Enhanced 9-1-1, or E-9-1-1, sends 911 calls to the correct PSAP based on the location of the caller, and it ensures that the PSAP knows where the 911 caller is located (even without the caller providing directions). The location is determined by querying an Automatic Location Information (ALI) database that maps the phone number of the 911 caller to the caller’s physical location.

Large organizations that maintain their own phone systems (e.g. key systems, PBXs, and Cisco CallManagers) are responsible for maintaining the ALI database information and providing the updates to the ALI database to the local exchange carrier (LEC) from time to time.

Cisco Emergency Responder (CER) is designed to address the E-9-1-1 functionality requirements for multiline telephone systems (MLTSs) deployed in North America. CER dynamically tracks the device (IP phone or SoftPhone) movements and routes the emergency calls to the right PSAP based on the device’s current physical location.

Consider a case in which an employee in New York office location 1 moves the phone to New York office location 2. Assume that these two offices are served by different PSAPs. After the employee moves the phone to New York office location 2, if a user makes an emergency call, the call is routed to the PSAP for location 1. Because the user’s phone number originally registered with New York office location 1, the PSAP for location 1 dispatches emergency staff to New York office location 1, and the user at location 2 waits indefinitely for the help.

CER in an IPT network enables emergency agencies to identify the location of callers and eliminates the need for administration when phones or people move from one location to another.

The phone’s location is dynamically tracked by CER based on the switch ports to which the phone is attached. CER polls the switches via the Simple Network Management Protocol (SNMP) and updates the location database. Thus, in the previous example, when the phone is moved to New York office location 2, CER detects that the phone is now in New York office location 2, because it is connected to a switch that is in New York office location 2, and it routes the emergency calls to the PSAP that services New York office location 2.

Cisco Conference Connection

Cisco Conference Connection (CCC) is an application that allows users to schedule conferences. Users can schedule conferences via a simple web-based interface. Conference participants call in to a central number, enter a meeting identification, and are then placed into the conference.

IP Phone Services

You can provide additional services such as those listed here to the end users from their IP phones:

  • Calendar

  • Weather information

  • Airline information

  • Corporate directory lookup

  • Stock quotes

Offering these services on the IP phones requires a connection through an external web server such as Microsoft Internet Information Server (IIS) or Apache, as shown in Figure 1-14. The IP phone sends the requests in the HTTP packet to the web server. The request could be to get the latest stock quote, flight arrival/departure information, or some other information. The IP Phone services web server contacts the external web servers and sends the response in XML format back to the IP phones. IP phones parse the information contained within the XML tags and display it on the phone.

IP Phone Services

Figure 1-14. IP Phone Services

Note

In the Figure 1-14, “Step 2. HTTP Request” and “Step 3. HTTP Response” are used when accessing the IP phone services that require connection to the external web server. Examples of such services are stock quote and airline information.

The preceding concept can be extended to provide IP phone service to do a corporate directory lookup from the IP phone. The following steps explain how this service works:

  1. The IP phone user selects a corporate lookup directory service on the IP phone.

  2. The IP phone sends an HTTP request to the IP phone services web server.

  3. The IP phone services web server sends an LDAP request to the corporate LDAP server.

  4. The IP phone services web server passes the returned LDAP result to the IP phone in XML format.

  5. The IP phone parses the information and displays the search results on the IP phone.

For more information on providing such services, refer to the IP phone services Software Development Kit (SDK) documentation, available at http://www.cisco.com/pcgi-bin/dev_support/access_level/product_support.

IP Telephony Deployment Architectures

By using CallManager, organizations can eliminate PBX and replace it with IPT over a converged network. CallManager provides call-control functionality and, when used in conjunction with IP phone sets or a soft phone application, it can provide PBX functionality in a distributed and scalable fashion. Cisco IPT solution deployment models fall into one of the following categories:

  • Single-site deployment

  • Centralized call processing with remote branches

  • Distributed call-processing deployment

  • Clustering over the IP WAN

Selection of the deployment model depends on the organization’s requirements, such as the size of the network, features, and availability of the WAN bandwidth. This section provides information on various deployment models at a high level. To get detailed information on the benefits and limitations, refer to the IP Telephony Solution Reference Network Design for Cisco CallManager 4.0 on Cisco.com, available for download at http://www.cisco.com/go/srnd.

Single-Site Deployment

In this deployment model, shown in Figure 1-15, CallManager applications such as voice mail, IP-IVR, AutoAttendant (AA), Transcoding, and conferencing resources are located at the same physical location. All the IP phones are located within this single site. The PSTN is used to route the off-net calls.

Single-Site Deployment Model

Figure 1-15. Single-Site Deployment Model

Centralized Call Processing with Remote Branches

Figure 1-16 shows the centralized call-processing deployment with remote braches. All the call processing is done at the central site. This is suitable for organizations in which the majority of the workforce is concentrated at a single site and small numbers of employees work at the remote branches.

Centralized Call-Processing Model

Figure 1-16. Centralized Call-Processing Model

At each remote branch, SRST routers ensure that call processing is preserved in case of WAN link failure. The voice traffic travels via the IP WAN and falls back to the PSTN if not enough bandwidth is available across the WAN link, by using the Automated Alternate Routing (AAR) feature available in the CallManager.

You can avoid the oversubscription of the WAN bandwidth by using the locations-based CAC feature in the CallManager. This feature works for hub-and-spoke topologies. For example, as shown in Figure 1-16, the hub site is the headquarters and the braches are spokes. Each branch is defined as a location in CallManager, and maximum bandwidth is assigned to each location along with the codec to be used when placing calls between two locations. CallManager maintains the current state of the utilized bandwidth and checks the bandwidth availability before placing a new call to the locations.

With this deployment model, you can use the G.711 codec within the LAN. However, when placing the voice calls between the headquarters site and the branch sites or between the branch sites, you can use lower-bandwidth codecs such as G.729. The amount of bandwidth required per voice call depends on the type of codec chosen between the central and remote sites. Remote branch routers running Cisco IOS software along with the CallManager software can provide transcoding and conferencing functions locally. QoS configurations are required on the WAN links between the central site and each of the remote sites to prioritize the traffic. The traffic that requires priority includes the call-control traffic between the IP phones and the CallManager, the gateway signaling protocol (H.323, MGCP) traffic between the remote gateways and the CallManager, and the actual voice traffic.

This deployment model is cost effective and provides many benefits, such as a unified dial plan, less administrative overhead, and potential savings on communications costs as intersite calls use the IP WAN as first choice. The only limitation is that the remote sites will have limited features available if a WAN failure occurs while you are operating in the SRST mode.

Distributed Call Processing Deployment

In a distributed call-processing deployment, CallManager and applications are located at each site. Device weights and dial plan weight calculations determine the number of IP phones supported at each site.

Figure 1-17 depicts a distributed call-processing model in which headquarters and branch A IP phones are served by separate CallManager clusters and branch B is served by the Cisco CallManager Express (CME) feature that is enabled on the router. CME solution is suitable for a small branch.

Distributed Call-Processing Model

Figure 1-17. Distributed Call-Processing Model

Intercluster Trunks link CallManager clusters. The Cisco IOS gatekeeper ensures that only a permitted number of calls are sent across the IP WAN between the CallManager clusters. PSTN connections on the gateways route the local off-net calls from each location and serve as a backup connection to IP WAN when insufficient bandwidth is available to support additional calls.

Clustering over the IP WAN

The vital activities in any business are continuity planning and disaster recovery. Large and small disasters happen all the time. Events ranging from purely local disasters, such as flooding, fire, evacuations caused by a hazardous material spill, or a region-wide blizzard, all have potential impact on the organization’s business.

The Cisco IPT solution allows organizations to build disaster recovery sites by separating the single CallManager cluster across the WAN. CallManager servers in a cluster update the configuration information via the Microsoft SQL replication process. To ensure successful SQL replication and propagation of other critical information in real time, the round-trip time (RTT) between any CallManager servers in the cluster should not exceed 40 ms. You need to satisfy many other requirements before selecting this deployment model. Refer to the Cisco document, IP Telephony Solution Reference Network Design for Cisco CallManager 4.0, at http://www.cisco.com/go/srnd.

When using the clustering over the IP WAN deployment model, deploy voice gateways, media resources, and voice mail locally at each site. Essential services such as DHCP, DNS, and TFTP that are critical for the functioning of IP phones and other IPT endpoints must also be deployed locally. This configuration avoids dependency on a single site for crucial resources.

Tip

When using centralized DHCP services, you should configure the IP address lease intervals for IPT endpoints for long periods. Otherwise, the DHCP servers are not reachable to respond to the address renewal requests made by the IPT endpoints at the branch sites during a WAN failure.

Clustering over the WAN can support two types of deployments:

  • Local failover deployment model

  • Remote failover deployment model

Local Failover Deployment Model

In this model, each site contains a primary CallManager subscriber and at least one backup subscriber. All the servers are part of the same CallManager cluster. As depicted in Figure 1-18, the headquarters has a publisher server, a DHCP and TFTP server, subscriber 1, subscriber 2, and the backup subscriber 12. Branch A houses subscriber 3, subscriber 4, and backup subscriber 34.

Clustering over the IP WAN—Local Failover Deployment Model

Figure 1-18. Clustering over the IP WAN—Local Failover Deployment Model

Remote Failover Deployment Model

In this model, shown in Figure 1-19, each site contains at least one primary CallManager subscriber and might or might not have a backup subscriber. Branch A and branch B have only primary subscribers, and the backup subscriber is not located in each site.

Clustering over the IP WAN—Remote Failover Deployment Model

Figure 1-19. Clustering over the IP WAN—Remote Failover Deployment Model

Call-Flow Scenarios

So far, this chapter has discussed call signaling, media protocols, call-processing servers, and other IPT endpoints used in Cisco IPT. To understand how all of these components work together, this section discusses the following call-flow scenarios:

  • IP phone to IP phone call

  • Intracluster call

  • Intercluster call

  • Intercluster call with gatekeeper

  • Off-net calls

    • —Using MGCP gateway

    • —Using H.323 gateway with gatekeeper

IP Phone-to-IP Phone Call

In the first scenario, IP phone 1 and destination IP phone 2 are registered with the same CallManager, CCM1. Figure 1-20 shows the high-level sequence of steps that occur when source IP phone 1 calls destination IP phone 2.

IP Phone to IP Phone Call Flow

Figure 1-20. IP Phone to IP Phone Call Flow

Figure 1-21 shows the sequence of SCCP messages that are exchanged between the phones and the CallManager to establish and tear down the call.

IP Phone to IP Phone Call Flow—SCCP Messages

Figure 1-21. IP Phone to IP Phone Call Flow—SCCP Messages

The SCCP messages in Figure 1-21 are grouped together to correlate with the high-level sequence of steps shown in Figure 1-20.

The description of the sequence of steps is given here:

  1. Phone 1 goes off-hook. This triggers an event to the CallManager, which then instructs the phone to play a dial tone. The user then dials the extension 1002 of Phone 2. As soon as the user dials the first digit, CallManager instructs the phone to stop playing the dial tone. As the user dials the digits, the SCCP messages carry this information from the phone to the CallManager.

  2. After the user completes dialing the destination number, CallManager looks in its database to see if it can find the dialed destination number. This process is called digit analysis and takes place within the CallManager. The digit analysis process is similar to the functionality of a router wherein the router looks into its routing table to see if it has a valid route to forward the received packet to the destination. If CallManager cannot find the dialed number in its database or does not have the information to route the call to the dialed number, it generates a reorder tone to the calling party.

  3. After CallManager finds the valid number/destination (phone 2 in this case), it sends the call setup information to Phone 2.

  4. CallManager instructs phone 2 to ring and, at the same time, generates the ring-back or alerting tone to the calling party Phone 1.

  5. As soon as Phone 2 answers by going off-hook, CallManager sends to each phone a request for the IP address and the UDP port that it is listening to. This information is required to establish the media session between phones. In this step, CallManager also checks for the media capabilities of the phones, such as the codecs supported on each phone, and invokes the transcoder media resource device if both phones talk different codecs. If CallManager fails to invoke the transcoder device because no such device is configured, the users might experience one-way audio.

  6. IP Phones respond with IP address and UDP port information to the CallManager. CallManager communicates to each phone about the other phone’s IP address and UDP port number. After both phones receive the other phone’s IP address and UDP port, they start the media exchange directly between them.

  7. After the call is terminated by either phone, CallManager instructs the phone to tear down the RTP channel and updates the call state of the phones and the date and time on the IP phones.

As the preceding steps demonstrate, all the instructions come from the CallManager. The phone has little intelligence. In this scenario, after establishing an RTP stream between the two phones, the communication can continue even if the CallManager server goes down, because the CallManager is not involved in passing the media streams between the phones. However, if the CallManager server to which the phones are registered fails during a conversation, users will not be able to invoke some of the supplementary services—such as hold, park, and mute during the conversation—that require the participation of CallManager in signaling. The phones will be reregistered to the backup CallManager after hang-up of the active call.

Intracluster Call

In the second scenario, IP phones 1 and 2 are registered with CallManager CCM1, and Phone 3 is registered with CallManager CCM2. Both CCM1 and CCM2 are part of the same CallManager cluster. Figure 1-22 shows the intracluster call scenario when source IP Phone 2 calls destination IP phone 3. In this call scenario, CallManager and IP phone communication is done using SCCP, and CallManager-to-CallManager communication is based on Intra-Cluster Communication Signaling (ICCS). As the name implies, ICCS is a signaling protocol used between the CallManager servers in a cluster. The same sequence of events takes place between the IP phone and CallManager as described in the preceding section, “IP Phone-to-IP Phone Call.” As you can see, the other members of the cluster automatically know about the devices that are registered in the cluster because the database is the same across all the servers.

Intracluster Call Scenario

Figure 1-22. Intracluster Call Scenario

Intercluster Call

In the third scenario, shown in Figure 1-23, IP Phones 1 and 2 are registered with CallManager CCM1 in CallManager Cluster 1 and destination IP Phone 3 is registered with CallManager CCM2 in CallManager Cluster 2. CCM 1, and CCM 2 are part of different CallManager clusters and an ICT connects the two clusters. The ICT protocol is similar to the H.323 Version 2 protocol with some extensions. CallManager sends ICT protocol signaling directly to the other CallManager in another cluster without the involvement of a gateway and uses a TCP/IP connection path available between the two clusters.

Intercluster Call Flow

Figure 1-23. Intercluster Call Flow

When a phone call is made from Phone 2 to Phone 3, the CallManager node CCM1 establishes a TCP/IP connection to a CallManager node CCM2 in the destination cluster. CCM1 in the originating cluster sends the Setup message, and CCM2 responds with the Call Proceeding, Alerting, and Connect messages, which are similar to the H.323 messages that are exchanged between two H.323 endpoints as the call progresses and is answered.

Intercluster Call with the Gatekeeper

The fourth scenario is similar to the third scenario except for the addition of the gatekeeper for CAC purposes. Gatekeeper-controlled ICTs are required when the clusters are separated by a WAN link and you need to control the number of calls that can go through the WAN link. In a large deployment involving multiple CallManager clusters, the gatekeeper can also perform the call routing via the locally configured dial plan.

Figure 1-24 shows the call flow for this scenario. The IP phones communicate with the CallManager using SCCP. The CallManager communicates with the gatekeeper using the H.323 RAS protocol. CCM A and CCM B are part of CallManager Cluster 1, and CCM C and CCM D are part of CallManager Cluster 2. These two clusters are connected via the ICT through the gatekeeper. Phone 1 is registered with CCMB, and Phone 2 is registered with CCMC.

Intercluster Call Flow with Gatekeeper

Figure 1-24. Intercluster Call Flow with Gatekeeper

In Figure 1-24, the following sequence of events takes place:

  1. IP phone 1 dials the number of IP Phone 2.

  2. CCM B sends an Admission Request (ARQ) message to the gatekeeper.

  3. From the dial plan configured in the gatekeeper, the gatekeeper finds that CCM C is registered with prefix 2 and returns the Admission Confirmation (ACF) message to CCM B with an IP address of CCM C.

  4. CCM B sends an H.225 call setup message to CCM C with the phone number of Phone 2.

  5. CCM C sends an ARQ message to the gatekeeper asking permission to place the call across the ICT.

  6. The gatekeeper responds with an ACF message to CCMC. Before returning the ACF, the gatekeeper performs checks to ensure that it has enough resources to place the call across the ICT. If no resources such as bandwidth are available, the gatekeeper sends an Admission Reject (ARJ) message.

  7. CCM C initiates the call setup with phone 2 via SCCP.

  8. When phone 2 answers the call by going off-hook, CCM C sends an H.225 Connect message to CCM B and the audio path is made directly between IP phones in different clusters using RTP.

Off-Net Calls

Any call that is routed outside the CallManager cluster is treated as an off-net call. This section discusses two off-net call-flow scenarios with the following types of gateways:

  • MGCP gateway

  • H.323 gateway

Using MGCP Gateway

Before analyzing the off-net call flow with MGCP, it is important to understand how the CallManager achieves call survivability with MGCP-based gateways. CallManager uses the MGCP PRI backhaul mechanism to receive the signaling information from the ISDN PRI gateway to provide the call-control functionality and preserve the D channel (and thus call survivability) during the CallManager failover and switchover event. Figure 1-25 shows this mechanism.

MGCP PRI Backhaul with CallManager

Figure 1-25. MGCP PRI Backhaul with CallManager

As shown in Figure 1-25, the MGCP PRI gateway terminates the D channel link layer (Q.921) signaling. The Q.931 termination remains in the CallManager. The CallManager backhaul function transports the Q.931 messages over the IP network to and from the gateway.

With this backhaul functionality, during the CallManager switchover, because the Q.921 layer is terminated on the gateway, the D channel stays active during the CallManager failure; hence, the active calls are not dropped on that interface.

A UDP logical (UDP port 2427) connection exchanges MGCP messages, and a TCP connection (TCP port 2428) backhauls the Q.931 messages. The values of both default ports are configurable on the CallManager. The source port from the gateway is randomly chosen.

In Figure 1-25, if the physical interface to the PSTN central office switch on the MGCP gateway is other than PRI, such as T1 CAS, FXS, or FXO, the gateway translates these signaling types into MGCP messages and sends them to CallManager for call control.

You should take into account the call-survivability feature with MGCP gateways when choosing the signaling protocol for the voice gateways.

Now look at a call-flow example from an IP phone to a PSTN phone via an MGCP voice gateway. Figure 1-26 shows the CallManager cluster with a registered IP phone 1 and a MGCP gateway with a PRI interface to the PSTN CO switch. The IP phone user makes an off-net call to a PSTN phone (Phone Z). The CallManager routes the call via the MGCP gateway.

Off-Net Call Scenario with MGCP Gateway

Figure 1-26. Off-Net Call Scenario with MGCP Gateway

CallManager communicates with IP phones via SCCP and with the gateway via MGCP. Figure 1-27 shows the signaling messages exchanged between the IP phone, CallManager, and the MGCP gateway to route this call.

Off-Net Call Flow Using MGCP Gateway

Figure 1-27. Off-Net Call Flow Using MGCP Gateway

For purposes of clarity, in Figure 1-27, the initial messages from the phone, beginning with the off-hook event until the end of dialing, are not included. These steps are the same as the ones shown in Figure 1-21 that are labeled as Step 1.

The following steps describe the events of messages that take place when IP Phone 1 makes an off-net call through the MGCP gateway:

  1. Phone 1 goes off-hook and dials the number of Phone Z.

  2. CallManager performs the digit analysis and finds that the call has to be routed via the MGCP gateway.

  3. CallManager sends a MGCP CRCX command with inactive mode to reserve the B channel. The gateway responds with a MGCP CRCX ACK message with the Connection ID in the SDP portion of the MGCP that contains information such as IP address, UDP port number, and codec capabilities.

  4. CallManager sends an ISDN SETUP message to the PSTN switch. In Figure 1-27, the ISDN messages are shown as being sent from the CallManager to the gateway. Actually, these messages are sent to the PSTN through the gateway. CallManager receives an ISDN Call Proceeding message from the PSTN side.

  5. CallManager issues an MGCP MDCX command with recvonly mode to the gateway to open the receive channel and gateway acknowledges the MDCX command by responding with MDCX ACK message.

  6. CallManager sends an SCCP OpenReceiveChannel message to the IP phone. This message requests the phone to send its IP address and the UDP port number. The IP phone responds with its IP address and UDP port number in the OpenReceiveChannelACK message to the CallManager. At the same time, CallManager sends the IP address and UDP port number of the gateway received in Step 2 to the IP Phone via the Start Media Transmission SCCP message.

  7. CallManager sends the IP address and UDP port number of the IP phone to the gateway in another MGCP MDCX command with sendrecv mode to establish a full-duplex connection.

  8. At this moment, the IP phone user can hear the ring-back or alerting tones coming from the PSTN.

  9. After CallManager receives an ISDN PRI Connect message from the PSTN side, it acknowledges with a PRI Connect ACK message, after which a two-way communication path is open between the IP Phone and the PSTN Phone to begin the conversation. CallManager updates the display status on the IP Phone to Connected via the SCCP Update Call State Messages.

  10. After the call is terminated at either end (Figure 1-27 shows that IP Phone user terminated the call by pressing the End Softkey on the IP Phone), CallManager instructs the IP phone and the gateway to close the media channels and sends a DLCX (DeleteConnection) command to the gateway release the channel. At the same time, CallManager also sends PRI Disconnect message to the PSTN via the gateway to inform the PSTN switch the call termination event.

Using H.323 Gateway

Figure 1-28 shows the CallManager cluster with a registered IP phone 1 and an H.323 gateway. A gatekeeper is also registered with the cluster, and the off-net calls contact the gatekeeper before placing the call. The IP phone user makes an off-net call to a PSTN phone (Phone Z). The CallManager routes the call via the H.323 gateway.

Off-Net Call Scenario with H.323 Gateway

Figure 1-28. Off-Net Call Scenario with H.323 Gateway

The following steps describe the events of messages that take place when IP phone 1 makes an off-net call via the gatekeeper through the H.323 gateway. Figure 1-29 shows the exact call-signaling sequence.

Off-Net Call Flow Using H.323 Gateway

Figure 1-29. Off-Net Call Flow Using H.323 Gateway

  1. Phone 1 goes off-hook and dials the number of Phone Z.

  2. CallManager performs the digit analysis and finds that it has to contact the gatekeeper before placing the call.

  3. CallManager sends an ARQ message with the destination phone number. The gatekeeper responds with an ACF message and includes the IP address of the H.323 gateway.

  4. CallManager sends an H.225 Setup message to the gateway. This message includes the calling party name, calling party number, and called party number. CallManager receives an H.225 Call Proceeding message from the gateway.

  5. The gateway sends a Q.931 Setup message to the PSTN along with the calling party number, called party number, and calling party name and receives the Q.931 Call Proceeding message from the CO switch.

  6. The CO switch sends a Q.931 Alerting message to the gateway, and the gateway sends a H.225 Alerting message to the CallManager.

  7. CallManager and the gateway exchange the media capabilities using H.245. They exchange information such as the codecs supported on both ends; through this negotiation, they choose a common codec for the session.

  8. Later, CallManager sends a request to the IP phone (via SCCP OpenReceiveChannel message) and the gateway (via H.245 openLogicalChannel message) to respond with their respective IP address and the UDP port number. The IP Phone and gateway responds with IP address and the UDP port number information in the corresponding ACK messages. CallManager communicates to IP phone and the H.323 gateway about the other’s IP address and UDP port number. At this point the IP Phone has the IP Address and UDP port number of the H.323 gateway, similarly, the H.323 gateway has the IP Address and UDP port number of the IP Phone. Hence, the IP Phone user can hear the Call Progress tones coming from the PSTN.

  9. After the called party answers the phone, the CO switch sends a Q.931 Connect message, RTP streams are established between the IP phone and the H.323 gateway, and both parties can begin the conversation.

  10. A disconnect from either end causes the termination of audio channels, and CallManager sends a Disengage Request to the gatekeeper.

Summary

This chapter presented a high-level summary of how the legacy voice and data networks have transitioned to new-world multiservice networks and the corresponding evolution of the Cisco AVVID IPT network solution. This chapter provided an overview of telco and VoIP signaling protocols, call processing in Cisco IPT networks, and IPT components and applications. The introduction of the various IPT deployment models and their benefits and the detailed discussion of the call-flow scenarios should prepare you for the deployment of IPT in the real world.

Because this book is about planning, design, implementation, operation, and optimization (PDIOO) of Cisco IPT networks, the next chapter gives you a high-level introduction to different phases and steps of the PDIOO methodology. The next chapter explains how the PDIOO methodology helps you to achieve your goal of deploying a scalable and optimized IPT network in an orderly fashion.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset