This document identifies steps to troubleshoot delays that Cisco Unity subscribers experience when they log in, retrieve, forward, and delete messages over the Telephone User Interface (TUI). Delays may be intermittent or consistent for one or more users. Delays in the subscriber conversation can persist for a few seconds or for a significant duration. These delays impact the functionality of the Cisco Unity system.
This document assumes that Cisco Unity has a partner server (also known as the mailstore or home server) on a different server than the Unity installation. This document contains information on Microsoft Exchange versions 5.5, 2000, and 2003.
There are no specific requirements for this document.
This document is not restricted to specific software and hardware versions.
For more information on document conventions, refer to the Cisco Technical Tips Conventions.
Some or all Cisco Unity subscribers experience delays upon login to the mailbox. The subscribers may also experience delays when these users retrieve, forward, or delete messages over the TUI.
This problem may happen in any version of Cisco Unity in which the mailstore and the Unity server are in separate locations. This situation is common in Cisco Unity versions 3.0(x) or later.
For more information on network considerations when you deploy Cisco Unity, refer to Chapter 2: Network and Infrastructure Considerations of the Cisco Unity Design Guide.
You may find a delay when Cisco Unity answers a call. You hear either no prompts at all or only a ring tone. If this occurs, refer to these documents to verify the Cisco Unity telephony integration:
MbxSuite is a utility that accompanies the Cisco Unity installation. The utility determines if a delay relates to software or network performance.
This utility makes the same requests that Cisco Unity makes to Microsoft Messaging Application Programming Interface (MAPI). After you enter some information, MbxSuite.exe attempts a login to a mailbox.
You may not find this utility with your current version of Cisco Unity software (versions earlier than Cisco Unity 4.0). If you do not have the utility, complete the steps in this document to isolate the source of delay. If problems persist, contact Cisco Technical Support to determine if MbxSuite isolates this issue for your Cisco Unity version.
You may experience delays when you use this utility to monitor Exchange requests for a selected subscriber. If you have delays, you probably need to further verify the network configuration settings or Exchange performance.
Sometimes, you can use ping to reveal problems with network throughput (data transfer rate). Look at the latency when you send a large packet through ping. Latency is the time necessary for a packet to reach a destination. If a sizeable packet takes a long time to send, you may have throughput problems.
To use ping to test network connectivity between Cisco Unity and Exchange for problems with latency (round-trip time [RTT]) and lost packets, perform these steps:
From a command prompt on the Cisco Unity server, issue ping exchange_server_name -l 1048 -n 999 to ping the Exchange server.
Note: In this command, l is the send buffer size, and n is the number of echo requests to send. For example, the command ping exchange -l 1048 -n 999 sends 999 ping requests to the server with the name "exchange". Each ping request has a buffer size of 1048.
Watch the ping requests and confirm that the response time stays less than 10 ms or so.
If the time fluctuates, or if packets are lost, assume that the problem is either with bandwidth or that Exchange responds to the ping requests slowly.
Note: If the delay problem is intermittent, complete this procedure several times to see if your results vary. Try the procedure again during peak usage times.
If you do not notice a delay or packet loss, send a larger packet.
From a command prompt on the Cisco Unity server, issue ping exchange_server_name –l 65500 to ping the Exchange server.
Note: In this command, l is the send buffer size.
Check the RTT.
An average RTT that is a large number (for example, greater than 30 ms) indicates problems with network throughput.
Caution: The ping may time out during this test if the router restricts ping packet size. With this packet-size restriction, the test does not tell you anything about throughput. Be cautious if you go through a router because most routers restrict the ping packet size to approximately 1400 bytes.
If the ping response times fluctuate, compare the Cisco Unity server and Exchange with the Cisco Unity server and another Exchange server (or any other server on the network) that is in the same subnet as the Exchange server.
From the Cisco Unity server, issue ping exchange -l 1048 -n 999 to ping the other server.
Check for latency or packet loss.
If you observe latency or packet loss, the problem is most likely in the network. If there are no delays or packet loss, the problem is most likely with the Exchange server.
Complete these steps:
Copy a large file from the Cisco Unity server to another PC through the network.
Note the number of Mbps you receive.
If the transfer of data does not occur at the expected rate, check the network interface card (NIC) settings on:
If you find network interface duplex mismatches, correct these as described in the NIC Set to Auto Detect Line Speed and Duplex, Which Results in Low Throughput section of this document.
You can view the number of Kbps that transferred. Open the network interface local area connection status to view the packets sent and received. Windows performance monitor counters also can provide a longer-term view of network bandwidth throughput and usage.
A NIC that you set to Auto Detect Line Speed and Duplex on the Cisco Unity server or on any Exchange server or switch to which Unity connects can cause delays. The delays occur if the card negotiates less than 100 Mbps, full duplex.
Set the NIC to 100 Mbps, full duplex, even if the local area connection status indicates 100 Mbps. You cannot rely on the local area connection status (shown in this example) to indicate the actual throughput:
To check your LAN settings, choose from the Windows Start menu: Control Panel > Network and Dial Up Connections > Local Area Connection > Properties > Configure > Advanced > Link Speed and Duplex.
Note: NICs or switches set to Auto Negotiate may cause duplexing and alignment errors on the switch.
On the Ethernet switch, check the ports that Cisco Unity, Exchange, and Cisco CallManager occupy for any errors. Switch errors may point to an issue with a NIC.
Determine if there is a router device between Cisco Unity and Exchange. If a router device exists, confirm that there are no errors on the ports for the router. Also, verify the programming on the router. Determine if you have trunking enabled on the ports, and determine what the duplex settings are. These settings should match the server NIC settings. If there are no errors on the device and programming is accurate, determine the priority of packet traffic that goes through the router. For more information, refer to the document Troubleshooting Switch Port and Interface Problems.
You may find that a router device connects Cisco Unity and Exchange and that you have the voice traffic prioritized higher than the Exchange traffic. In this case, one of these two options may resolve the delay issue:
Move Cisco Unity to the same subnet as Exchange. This eliminates the router and allows Exchange (remote-procedure call [RPC]) traffic to flow directly between the servers without the delay that router prioritization causes.
Change the configuration of the router such that packets from the Cisco Unity server to Exchange have equal priority or higher priority than voice traffic. As with any QoS change, monitor utilization to determine any impact on voice quality.
Each of the known issues described in this section is a potential cause of the delay that a subscriber hears when the subscriber calls Cisco Unity. Also, the time of network requests and network/partner server response times may compound some of these causes.
Refer to Cisco bug ID CSCea68581 (registered customers only) for details on this cause of delay.
A subscriber reports a delay after the subscriber enters the password or during message retrieval, delivery, forward or reply.
MAPI accepts requests from Cisco Unity in a serialized manner. If a single MAPI request experiences a delay for any reason, subsequent requests also delay until this request is complete. Reasons for the initial delay of any request via MAPI to an Exchange server include:
Network connectivity and latency between the Cisco Unity and Exchange server (or servers) or between two or more Exchange servers.
Exchange message index activity. An example is when Exchange services count the number of subscriber inbox messages that have particular states, or that are of a certain type, to present to one or more client applications. Exchanges services may count new or read messages, urgent priority or normal priority messages, or voice mail, e-mail, fax, and receipt. For more information, see the Mailbox Index Creation Delays—CSCdy36517 section of this document.
Exchange performance degradation due to improper Exchange disk configuration or high utilization. (Refer to the Microsoft documents XADM: Log Stalls/sec Are Regularly Greater Than 0 (Zero) and XADM: White Paper - Troubleshooting Exchange 2000 Performance .)
Correct any initial condition for the increase in MAPI request response time.
Upgrade to Cisco Unity 4.0(4). This version makes simultaneous requests for as many Exchange servers as exist in the environment. For example, Cisco Unity 4.0(4) does not sequentially queue five MAPI requests for five different Exchange servers; instead, this version sends a single request to each of the five Exchange servers at the same time.
Refer to Cisco bug ID CSCdy36517 (registered customers only) for details on this cause of delay.
A subscriber enters the password and reports a delay.
When the Cisco Unity partner server is an Exchange mailstore (version 5.5, 2000, or 2003), the index creation process for a subscriber inbox may cause a delay after the subscriber enters the password.
When the user completes the first login, Exchange creates an index of read/unread messages as well as the types of message (voice, e-mail, fax, or receipts). The number of messages in the inbox of the subscriber affects how quickly Exchange can return the message counts to Cisco Unity. For example, a few thousand messages in the inbox may incur only a 10–15 second delay. However, tens of thousands of messages may delay the subscriber request for a few minutes.
This index may expire or may experience an overwrite. The expiration occurs most often in Exchange 5.5. The overwrite occurs most often with Exchange 2000 or 2003 because of the multiple clients of the Exchange services. A recreation of the index causes a similar time delay.
Decrease the number of messages in the inbox of the subscriber or subscribers who experience the delay.
Upgrade to Cisco Unity 4.0(4).
If you use Exchange version 5.5, run Exchange Performance Optimizer. Refer to Microsoft Knowledge Base Article - 266051 for instructions.
Note: If you run Exchange Performance Optimizer but Optimizer does not help, or if you use Exchange 2000, refer to the document 3 Basics of Exchange Server Performance .
Mailboxes with a large number of messages may experience intermittent login delays if Exchange needs to reindex the mailbox. For more information, refer to these articles:
Message forward or deletion copies a file from the Exchange inbox to the Exchange drafts folder or deleted items folder. If the subscriber attempts these actions over the TUI, noticeable delays may occur during the message copy to Exchange.
The workarounds that this section provides may minimize message deletion and message forward delay.
Confirm that you have disabled the Deleted Messages are Copied to the Deleted Items Folder option in the user class of service (CoS). If you uncheck this box, the messages delete immediately. Otherwise, they copy to the deleted items folder, which can cause noticeable delays.
To disable the move of messages to the deleted items folder, perform these steps:
From the Cisco Unity System Administration window, click Class of Service under the Subscribers heading.
Uncheck the Deleted Messages are Copied to the Deleted Items Folder check box.
Perform Steps 2 and 3 for each CoS that the subscribers are in.
Upgrade to Cisco Unity 3.1(3). Cisco Unity 3.1(3) delays the copy of attachments until after the submission of the message (instead of before the submission). This avoids copy latency in the event of a message cancellation before the submission of the message. From a user perspective, the delay appears after the Press 2 to Submit prompt (instead of after the user presses 5 to forward and before the user hears the addressing prompts). This change helps the conversation flow better. However, it does not remove the delay; it just moves it to another area of the conversation.
You can enable G.729 compression to reduce the delay. If you reduce the sampling to 8 kilohertz (kHz), you increase the speed by approximately 30 percent. A move to G.729a likely resolves the problem (due to compression), but this can result in a decline in voice quality.
Mailboxes with a large number of messages can cause login delays if Exchange needs to reindex the mailbox. (The size of the messages is not necessarily a factor.) Exchange may need to reindex a mailbox the first time a user logs in to the mailbox after Exchange server maintenance. Users with a large number of messages in the mailbox may wish to archive older messages into a Microsoft Outlook personal folders (.pst) file.