Applies to: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007
Topic Last Modified: 2007-07-26

In many organizations today, accessing e-mail and voice mail is critical to the success of daily operations. To provide continuous access to e-mail and voice mail, you must correctly plan and implement a solution for your Microsoft Exchange Server 2007 organization that will ensure the availability of the servers that provide these services.

To provide a highly scalable and available solution in Exchange 2007 Unified Messaging, you must understand how the Unified Messaging components can be scaled to support your users. You must also understand how to implement a solution that will make your Unified Messaging servers highly available.

Unified Messaging Server Scalability

Scalability is defined as the capability to increase resources to increase the capacity of a given service. There are two types of scalability that can be used to increase the capacity of Unified Messaging servers in your organization: horizontal and vertical. In Exchange 2007 Unified Messaging, when you scale vertically, you add hardware resources to a single Unified Messaging server or multiple Unified Messaging servers, such as the following:

  • Adding more hard disk space for message storage

  • Increasing the speed or number of processors

  • Increasing the amount or speed of RAM

  • Increasing the number of network adapters or increasing the number of local area network (LAN) ports in a single network adapter

In Unified Messaging, when you scale horizontally, you install the Unified Messaging server role on new Unified Messaging servers and add more Unified Messaging servers to a dial plan to increase the number of incoming concurrent calls that the system can accept. To scale your Unified Messaging environment horizontally, you can also increase the number of IP gateways. This increases the number of ports that are available to be used for incoming calls.

Exchange 2007 Unified Messaging provides an efficient and simple deployment model that is highly scalable without increasing the complexity of the deployment. There are many deployment models for Unified Messaging in your organization. But the recommended deployment model for Unified Messaging is to centralize your Unified Messaging servers. All the available deployment options for Unified Messaging have several steps in common that are required to create a scalable system to support large numbers of Unified Messaging users. These steps are as follows:

  1. Provision PBX lines   The first step in building a highly scalable UM solution is to provision PBX lines.

  2. Organize channels   After you have provisioned PBX-based voice channels, you can organize the channels as hunt groups.

  3. Deploy IP gateways   After you have organized your voice channels as hunt groups, you end these channels at IP gateways. IP gateways are used with a legacy PBX to convert the circuit-switched protocols found on a telephony network to IP-based packet-switched protocols.

  4. Add more Unified Messaging servers to a dial plan   If you have to increase the number of calls that can be handled by Unified Messaging, you can install and configure additional Unified Messaging servers and add them to a dial plan. In most cases, IP gateways will use DNS to load balance between the existing Unified Messaging servers and the additional Unified Messaging servers that have been installed.

Network Traffic

Every incoming call that is received from an IP gateway will generate IP-based network traffic and will consume some amount of your available network bandwidth. Before you deploy Unified Messaging, you should perform an analysis of the network traffic to determine current usage patterns and identify any potential issues. On most networks, bandwidth demand is not evenly distributed throughout business hours. Because all the IP-based calls are routed directly to your Unified Messaging servers from the IP gateways on your network and this IP-based network traffic consumes some available bandwidth, you should follow these recommendations and guidelines:

  • Place your PBXs physically close to your IP gateways.

  • Place your IP gateways and your Unified Messaging servers on the same well connected network or within the same physical site.

  • Place your Unified Messaging servers on the same well connected network or within the same physical site as other computers that have Exchange 2007 server roles installed, including Mailbox, Hub Transport, and Client Access servers.

  • Terminate your Wide Area Network (WAN) connections close to where your telephony equipment is located.

  • In branch office scenarios or over WAN connections, use the G.723.1 codec instead of the G.711u or G.711A codec to minimize the network traffic that is passed between your IP gateways and your Unified Messaging servers.

Unified Messaging Servers

Generally, Unified Messaging scalability is determined by the number of concurrent calls. By default, a single Unified Messaging server can accept a maximum of 100 concurrent voice calls and 100 concurrent incoming fax calls. These calls can be either incoming or outgoing and can be generated when a user leaves a voice mail message, when an Outlook Voice Access user accesses their Exchange 2007 mailbox, or by a user who uses the Play on Phone feature to listen to their voice messages. Although the number of concurrent calls is an important factor to consider when you build a scalable Unified Messaging infrastructure, you must also determine the best codec to use to encode the voice messages and the types and number of users who you have to support.

  • Number of concurrent calls   Although, by default, a Unified Messaging server can accept 100 concurrent voice messages and 100 concurrent fax messages, a single Unified Messaging server can be configured to accept a maximum of 200 concurrent voice messages and 200 concurrent incoming fax messages. When you increase the number of concurrent connections on a single Unified Messaging server, more system resources are required than if you decrease the number of concurrent connections. It is especially important to decrease this setting on low-end, slower computers on which the Unified Messaging server is installed. Performance counters are available and the Get-UMActiveCalls cmdlet can also be used to monitor the current number of concurrent calls that are connected to a Unified Messaging server.

    If the number of concurrent calls required by your organization is larger than the number that is supported by a single Unified Messaging server, you can scale horizontally and increase the capacity of concurrent calls by installing the Unified Messaging server role and then adding the Unified Messaging server to a dial plan.

  • Voice mail storage codec   The term "codec" is a combination of the words "coding" and "decoding" and relates to digital data. A codec is a computer program or software that transforms digital data into an audio file format or streaming audio format.

    In Exchange Unified Messaging, there are two general types of codecs: the codec that is used between IP gateways and the codec that is used to encode voice messages. The Windows Media Audio (WMA), Group System Mobile (GSM) 06.10, and G.711 Pulse Code Modulation (PCM) Linear audio codecs are used to create .wma and .wav audio files for voice messages. However, the file type that is used depends on the audio codec that is used to create the voice message audio file. In Exchange Unified Messaging, the .wma audio codec creates .wma audio files and the GSM 06.10 and G.711 PCM Linear audio codecs produce .wav audio files. However, depending on the codec that is used, an audio file in .wma or .wav format is sent together with the e-mail message to the intended voice mail recipient. The size of Unified Messaging voice messages depends on the size of the attachment that holds the voice data. Additionally, the size of the attachment depends on the following factors:

    • The duration of the voice mail recording

    • The audio codec that is used

    • The audio file storage format

    The following figure illustrates how the size of the audio file depends on the duration of the voice mail recording for the three audio codecs that you can use in Unified Messaging.

    Note:
    In the following figure, the average length of a call-answered voice message is approximately 30 seconds.

    UM_Message_SizingThe sample bit rate (bit/sec) and compression properties for each audio codec that is used in Unified Messaging are as follows:
    • WMA – 16-bit – compressed file

    • G.711 – 16-bit – uncompressed file

    • GSM 06.10 – 8-bit – compressed file

    Using the WMA codec, we estimate that each Unified Messaging server can handle 60 to 75 concurrent IP-based calls. This estimate is also based on the assumption that 14 percent of all the IP-based calls arrive during the single busiest hour of a day. Based on these two assumptions, and assuming that your users access their voice messages frequently by using Outlook Voice Access, we estimate that each Unified Messaging server can support between 2,000 and 10,000 users.
    Generally, you should allow for the following number of concurrent calls per Unified Messaging server:
    • 60 if the default dial plan codec is WMA

    • 75 if the default dial plan codec is GSM

    Audio file size
  • Types of users   There are two types of users who access the Unified Messaging system: authenticated users and unauthenticated users. These two types of users consume Unified Messaging resources. When you build a scalable Unified Messaging environment, you must consider the effect that these users will have and the resources that each of these users will consume.

    • Authenticated   Authenticated users are UM-enabled and can access their mailbox by using Outlook Voice Access. Authenticated users consume Unified Messaging server resources in several ways, including by directly calling in to a subscriber access number, logging on to their mailboxes, accessing their messages, calendar, contacts or the directory, and by using a Unified Messaging server to play voice messages over a telephone using the Play on Phone feature. They can also indirectly consume resources by transferring a call, sending a voice message, or calling a user's extension number and leaving a voice message or sending a fax.

    • Unauthenticated   Users who call in to a Unified Messaging auto attendant or call in to a subscriber access number but do not log on to their mailbox are unauthenticated callers. However, Unified Messaging resources are used to service their requests. Every time that a caller calls in to a UM auto attendant or uses a subscriber access number but does not log on to their mailbox, they still consume resources by transferring a call, sending a voice message, transferring to another auto attendant, transferring to another telephone number, or listening to recorded audio prompts.

IP Gateways

Unified Messaging relies on the ability of the IP gateway to translate TDM or telephony circuit-switched based protocols, such as Integrated Services Digital Network (ISDN) or QSIG, from a PBX to protocols based on VoIP or IP, such as SIP, RTP, or T.38 for real-time facsimile transport.

IP gateways are available from multiple manufacturers in sizes and models that range from 4 ports to 32 ports. You can deploy as many IP gateways as necessary to provide for capacity and fault tolerance. If the number of calls or ports that are required is larger than the number of calls or ports that are supported by a single IP gateway, you can scale horizontally and increase the number of calls that can be accepted or the number of ports by installing and configuring additional IP gateways, creating the UM IP gateway object, and configuring the appropriate hunt groups to support your environment.

It is equally important to match the number of IP gateways that you have in your environment to the number of Unified Messaging servers that are available. For example, you should not configure 10 IP gateways that are each connected with a T-1 line to a single Unified Messaging server. This would mean that the Unified Messaging server would have to support 240 concurrent incoming calls. You should consider this and scale your IP gateways to Unified Messaging servers appropriately.

Unified Messaging Availability

Minimum uptime requirements may vary among organizations. However, every organization wants to achieve a high level of up time, especially for their telephony system. An organization's telephony system is frequently business-critical and must be highly available to users. One of the factors that you must consider when you deploy a Unified Messaging system is the ability for the system to provide services for users when a key component such as a Unified Messaging server or an IP gateway becomes unavailable.

  • Unified Messaging servers   In Exchange 2007, Unified Messaging is designed to run as a service and a worker process. This means that, if the service is using lots of system resources or has become unresponsive, the worker process can be recycled. The UM worker process is responsible for dealing with outages in Mailbox servers, Hub Transport servers, and domain controllers. If, for example, a Mailbox server for a user is unavailable, the Unified Messaging server will continue to accept calls on behalf of the user. However, the user's custom greeting will not be played. Instead, a standard greeting will be used for calls to that user. Additionally, if the Hub Transport server is unavailable, the Unified Messaging server will continue to accept calls and queue the calls, depending on how you have configured the queuing limit, until the Hub Transport server is available. However, in a situation where all domain controllers are unavailable, the Unified Messaging server will be unable to accept calls.

    Unified Messaging deployments can be made more resilient and more available by adding Unified Messaging servers to a single dial plan in an N+1 configuration. This means that, if you need two Unified Messaging servers, you would install and configure an additional Unified Messaging server so that you would have a Unified Messaging server to take the place of a Unified Messaging server that is failing or must be taken offline.

    When you add multiple servers to a single dial plan, the IP gateway will try to connect to a Unified Messaging server that is listed in the configuration on the IP gateway by IP address, or by fully qualified domain name (FQDN) for TLS deployments. If the Unified Messaging server is unavailable, the IP gateway will try to connect to the Unified Messaging server again after 5 seconds. If there is no response from the Unified Messaging server, the IP gateway will try to connect to the next Unified Messaging server in the list that is configured on the IP gateway.

  • IP gateways   If you want to create redundancy to provide for IP gateway availability, you should add multiple IP gateways in an N+1 configuration. This means that, if you need two IP gateways, you would install and configure an additional IP gateway so that you would have an IP gateway to take the place of an IP gateway that is failing or must be taken offline.

    You must configure your PBX so that it will send the incoming calls that it has received to different IP gateways. After you configure the PBX, the PBX will detect a failure or no signal or that a port is not answering call. This will enable the PBX to redirect calls to an IP gateway that can answer incoming calls.

    The IP gateways that are supported by Unified Messaging can be configured to route calls to Unified Messaging servers in a round-robin manner. To enable an IP gateway, you must configure each IP gateway with the IP addresses for your Unified Messaging servers that will be answering calls from the IP gateway. These are the Unified Messaging servers that are associated with the same dial plan as the UM IP gateway object that logically represents the IP gateway. This will enable all the UM IP gateways to forward incoming calls to the Unified Messaging servers that are associated with the same dial plan. Then, if an IP gateway fails, the PBX will send the call to an IP gateway that can answer the call. The IP gateway, in turn, will forward the call to a Unified Messaging server within the same dial plan. If the call is sent to a Unified Messaging server that is not available, the IP gateway will try to contact the Unified Messaging server again. If it is unsuccessful in contacting the Unified Messaging server, it will then use the next Unified Messaging server in the list that is configured on the IP gateway to answer the call. However, not all supported IP gateways can be configured to support both load balancing and to be able to detect if a server has been taken offline or is failing.

Load Balancing in Unified Messaging

Exchange 2007 Unified Messaging deployments can be made more resilient by deploying multiple Unified Messaging servers to a single dial plan to balance the load of incoming calls. The IP gateways that are supported by Unified Messaging can be configured to route calls in a round-robin manner to balance the load between multiple Unified Messaging servers that are within a dial plan.

Round robin is a method for distributing the workload among multiple servers. However, round robin does not by itself enable an IP gateway to detect a server failure. If one of the Unified Messaging servers fails and if the IP gateway cannot detect that a Unified Messaging server is unavailable, the IP gateway will continue to send incoming calls to the Unified Messaging server until you detect the failure and remove the server from the dial plan. After you remove the Unified Messaging server from the dial plan, you should also remove the IP address or FQDN for the Unified Messaging server from the configuration on the IP gateway.

Unified Messaging does not use round-robin DNS or Network Load Balancing (NLB) to distribute incoming calls. Round-robin DNS can be used on multi-homed computers and can be used to distribute the load for other services, but not for Unified Messaging. NLB is used with other services to distribute client requests and to automatically detect whether a server is unavailable, and then to redistribute other client requests to the remaining server. However, it also cannot be used with Unified Messaging. The only way to distribute or balance the load between Unified Messaging servers in a dial plan is for the IP gateway to be configured with the IP addresses or FQDNs of the Unified Messaging servers in the dial plan. The IP gateway will use the list to distribute the load across all the Unified Messaging servers in the dial plan and can also detect a server failure if the IP/VoIP supports this functionality.

Another way to load balance your Unified Messaging deployment is to configure PBX hunt groups to connect to multiple IP gateways and then configure the hunt groups to load balance across the IP gateways.

For More Information

For more information about Exchange 2007 Unified Messaging, see the following resources: