Applies to: Exchange Server 2007 SP1, Exchange Server 2007
Topic Last Modified: 2008-06-09

This section provides information about how to isolate performance degradations in Microsoft Exchange Server 2007. Information is also provided about tools that may assist you in performance troubleshooting.

Having one or more subsystems that are underperforming may alter the responsiveness and behavior of a server. As a result, the server may become unresponsive or fall below what is considered acceptable operational behavior. This diminished performance jeopardizes the service level agreement (SLA), which ultimately means the organization itself may suffer.

Degraded Exchange 2007 performance can be caused by applications unrelated to Exchange, or applications that provide some support to, or build upon, Exchange. Generally, the following applications have a high impact on the performance of a server and should be examined as part of the troubleshooting process:

In addition, by using the information in this section, you can verify where network, CPU, or I/O utilization occurs. Identifying the location of such utilization helps you to rule out applications that are unrelated to Exchange. If the problem is related to Exchange, the effect should appear in one of the Exchange processes listed in Services Installed by Exchange Setup. If any excessive network, CPU, or I/O utilization comes from processes other than these Exchange processes, check to see if any known third-party issues could be causing the problem.

Use the information in the following topics to proactively monitor server performance and to make sure that a server is not degrading over time because of user actions, hardware issues, or malfunctions:

Note:
Although performance issues with the server generally lead to a poor user experience (such as slow client response), this is not always true and the reverse does not necessarily hold. Before you conclude that a poor user experience results from a poorly performing server, it is important to correlate the user issues with observed degradations on the server.

Tools for Troubleshooting Performance Issues

When troubleshooting the performance of a server that is running Exchange 2007, several tools may help you:

  • Microsoft Exchange Load Generator

  • Microsoft Exchange Server Stress and Performance (ESP)

  • Performance snap-in for the Microsoft Management Console (MMC)   

  • Microsoft Exchange Profile Analyzer

  • Network Monitor

  • Process Monitor

Exchange Load Generator and ESP are helpful when testing systems to ensure the health of the systems before going into production. You can use the other tools to help diagnose bottlenecks in production servers.

Exchange Load Generator

Exchange Load Generator simulates the performance load of MAPI clients. It is a useful tool for sizing servers and validating a deployment plan. Specifically, Exchange Load Generator helps you determine if each of your servers can handle the load that you intend them to carry. Another use for Exchange Load Generator is to help validate the overall solution.

However, when it comes to sizing servers, Exchange Load Generator does not account for all factors. Exchange Load Generator does not simulate the following factors that can affect your server capacity planning:

  • Incoming unsolicited commercial e-mail (also known as spam) from the Internet

  • Incoming Simple Mail Transfer Protocol (SMTP) mail flow from the Internet or other sites within your organization

  • Use of non-MAPI protocols for account access, such as Post Office Protocol version 3 (POP3) and Internet Message Access Protocol version 4rev1 (IMAP4)

  • Use of mobile devices

  • Public folder utilization

In addition, Exchange Load Generator does not give a complete picture with regard to user experience. Its results should not be interpreted in that aspect. For more information about Exchange Load Generator, see Overview of the Microsoft Exchange Load Generator.

Exchange Stress and Performance

You can use Exchange Stress and Performance (ESP) to simulate arbitrarily several client sessions concurrently accessing one or more Exchange 2007 servers. ESP provides the following modules that simulate client sessions over the following Internet protocols/APIs:

  • WebDAV (for Microsoft Office Outlook Web Access )

  • IMAP4

  • Lightweight Directory Access Protocol (LDAP)

  • Network News Transfer Protocol (NNTP)

  • POP3

  • SMTP

  • Outlook Web Access 

ESP is similar to Exchange Load Generator, but use ESP when you are validating deployments that use mobility features and Internet protocols that Exchange Load Generator does not cover. For more information about ESP, see Overview of the Microsoft Exchange Server Stress and Performance Tool.

Performance Snap-in for the MMC

Performance is a Microsoft Management Console (MMC) snap-in that enables monitoring of numerous subsystems and software over time. It provides a common infrastructure for reporting data based upon performance counters. For more information about the snap-in, see "Performance" in Getting the Correct Troubleshooting Tools in the Exchange Server 2003 technical documentation. The information about the snap-in is also relevant for Exchange 2007.

Exchange Profile Analyzer

You can use Exchange Profile Analyzer to collect estimated statistical information from a single mailbox store or across an Exchange organization. The collected data can be used for tasks like analyzing the performance and health of mailbox servers, improving capacity planning models, and improving testing methodologies and tools. For more information about Profile Analyzer, see Microsoft Exchange Server Profile Analyzer.

Network Monitor

Network Monitor enables you to detect and troubleshoot problems on LANs. Using Network Monitor, you can:

  • Identify network traffic patterns and network problems. For example, you can locate client-to-server connection problems, find a computer that makes a disproportionate number of work requests, and identify unauthorized users on your network.

  • Capture frames (packets) directly from the network.

  • Display, filter, save, and print the captured frames.

For instructions about using Network Monitor to troubleshoot performance, see Monitoring Traffic Between Two Computers. For more information about Network Monitor, see Microsoft Knowledge Base articles 294818, Frequently Asked Questions About Network Monitor and 148942, How to Capture Network Traffic with Network Monitor.

Note:
Security and compliance configurations using IPSEC and other security technologies may make capturing data with Network Monitor more difficult. You may need to temporarily disable encryption to capture sufficient information to troubleshoot some issues.

Process Monitor

Process Monitor is an advanced monitoring tool for Microsoft Windows that shows real-time file system, registry, and process/thread activity. It combines the features of two legacy tools, File Monitor and Registry Monitor, and adds rich and non-destructive filtering, comprehensive event properties such as session IDs and user names, reliable process information, full thread stacks with integrated symbol support for each operation, simultaneous logging to a file, and several other enhancements. For more information about Process Monitor, see Process Monitor.

For More Information

For more information about tools for troubleshooting, see Tools for Troubleshooting.

For more information about performance and scalability functionality in Exchange 2007, see New Performance and Scalability Functionality. For more information about how to monitor the performance of your Exchange 2007 environment, see Monitoring Server Performance.

For more information about troubleshooting other Exchange 2007 issues, see Troubleshooting. For information about troubleshooting issues with high availability, see Troubleshooting High Availability Deployments.