Back Pressure in Exchange 2010 (Part 1)

If you would like to read the next part in this article series please go to Back Pressure in Exchange 2010 (Part 2).

Introduction

Exchange Server 2010 has a great resource monitoring feature known as back pressure. In fact, back pressure was also available with Exchange Server 2007 but in this article we’ll be focusing on the feature as it appears in Exchange Server 2010. The reason that back pressure is a great feature of Exchange Server 2010 is because it is designed to help ensure that the server it protects does not become unavailable when a resource is overused. For example, a transport server may start to delay responses to other servers or perhaps reject messages via the “MAIL FROM” SMTP commands; we will see an example of this rejection in part two of this article. The feature is designed to protect transport servers, so you’ll find it on both the Hub Transport and Edge Transport server roles. The two common system resources that back pressure monitors are disk space and memory usage. Here in this two-part article we’ll be looking at the feature and what to expect when it is activated.

Back Pressure Levels

There are three levels of back pressure that need to be understood by an Exchange server administrator. During normal operating conditions, it is expected that resources such as disk space and memory usage are fully available and therefore the utilization of these resources is said to be normal. The utilization of these resources moves to the medium level when they are being overused but not to the point where the system is completely overwhelmed. When that happens, some back pressure is applied by the system. Full back pressure is applied when the resource utilization moves to the high level. We will see what normal, medium and high means to back pressure as it relates to disk space and memory later in this article.

Back Pressure and Disk Space Utilization

Perhaps one common area that can catch administrators out is a lack of disk space on a server, although there are products such as System Center Operations Manager that can be used to monitor the disk space utilization on servers.

Back pressure will monitor the disk space utilization on the partitions that host the queue database and the queue database transaction logs. By default, both the queue database and queue database transaction logs will be found in the \Program Files\Microsoft\Exchange Server\V14\TransportRoles\data\Queue folder on the disk where Exchange Server 2010 has been installed.

Exchange Server 2010 monitors the disk space for the queue database and queue database transaction logs separately and uses different calculations to do so. To calculate the high, medium and normal back pressure threshold levels of disk space utilization for the transport server queue database, Exchange Server 2010 first determines the high threshold as a percentage of free disk space available on the disk housing the queue database. Once this has been determined, the medium and normal thresholds are then determined. To determine the high threshold, the following formula is used:

Free space percentage = (disk size – 500MB) / disk size

In the above formula, disk size is the size of the disk housing the queue database. 500MB is a fixed value that is used by Exchange Server 2010 for this particular calculation. If you were involved with Exchange 2007, you might remember that in the original Release To Manufacturing (RTM) version of Exchange 2007, the fixed value was originally 4GB but that was dropped to 500MB in Exchange 2007 Service Pack 1 and has remained in Exchange 2010.

Let’s now look at an example calculation for an Exchange 2010 server that has a 20GB disk partition on which the queue database is located. The calculation then becomes:

(20GB – 500MB) / 20GB = 0.975 or 97.5%

This figure is rounded down by Exchange to the nearest whole integer, which means that the high back pressure threshold level of disk space utilization for the transport server queue database is 97% in this example. Once this figure has been determined, the medium and normal back pressure threshold levels can be determined. These are calculated as follows:

  • Medium – this is set to be 2% lower than the high level, which will therefore be 95% in this example
  • Normal – this is set to be 4% lower than the high level, which will therefore be 93% in this example

Therefore, in an example configuration where the queue database is located on a 20GB partition, we know that the back pressure settings for disk space utilization will be as follows:

  • High – 19.4GB
  • Medium – 19GB
  • Normal – 18.6GB

We will go on to look at how a breach of these limits is displayed in the Event Viewer in part two of this article. Before we do that though, let’s cover the formula used for the queue database transaction logs. Don’t forget, it’s possible to alter the location of the queue database and queue transaction logs by modifying the contents of the EdgeTransport.exe.config file that can be found in the \Program Files\Microsoft\Exchange Server\V14\Bin folder on the drive where you installed Exchange Server 2010. Specifically, the parameters of interest within this file are the QueueDatabasePath and QueueDatabaseLoggingPath parameters as you can see from Figure 1-1.

 
Figure 1-1: Queue Database Path Control

However, rather than modifying important configuration files and running the risk of accidentally altering other values, you can use the Move-TransportDatabase.ps1 script to do the work for you. You will find this script in the \Program Files\Microsoft\Exchange Server\V14\scripts folder on the drive where you installed Exchange Server 2010. Be sure to understand where your queue database and queue database transaction logs are stored when considering back pressure caused by disk space usage.

As you can see from Figure 1-1, both the queue database and queue database transaction logs can be located on the same disk and so this is an important consideration for back pressure caused by disk space usage; we will be looking at this in just a moment.

The formula that Exchange Server 2010 uses to calculate the high back pressure threshold level of disk space utilization for the transport server queue database transaction logs is a little more complicated. First, it’s important to understand that the value of the DatabaseCheckPointDepthMax parameter from the EdgeTransport.exe.config file is used in the formula; this parameter has a default value of 512MB as you can see from Figure 1-2. This article isn’t about explaining parameters such as this in detail, it’s simply about explaining how Exchange Server 2010 calculates disk space utilization figures when determining when to apply back pressure. If you want to know more about the DatabaseCheckPointDepthMax parameter, you can read the information in the topic titled Understanding Transport Database Configuration Options; please note and observe any recommendations in that topic about modifying the default value of this parameter.


Figure 1-2: DatabaseCheckPointDepthMax Parameter

In part of its formula to determine the high threshold of the disk housing the queue database transaction logs, Exchange will use a figure of 3 x DatabaseCheckPointDepthMax up to a maximum of 5GB. Assuming that DatabaseCheckPointDepthMax is left at the default of 512MB, the full formula is as follows:

Free space percentage = (disk size – {3 x DatabaseCheckPointDepthMax}) / disk size

For example, if the DatabaseCheckPointDepthMax value is left at its default of 512MB, we know that 3 x 512MB = 1536MB. Therefore, this means that for a disk size of 20GB, the calculation will be as follows:

Free space percentage = (20GB – 1536MB) / 20GB = 0.923 or 92.3%

This figure is rounded down by Exchange to the nearest whole integer, which means that the high back pressure threshold level of disk space utilization for the disk housing the transport server queue database transaction logs is 92%. Once this figure has been determined, the medium and normal back pressure threshold levels can be determined. These are calculated as follows:

  • Medium – this is set to be 2% lower than the high level, which will therefore be 90% in this example
  • Normal – this is set to be 4% lower than the high level, which will therefore be 88% in this example

Therefore, in an example configuration where the queue database is located on a 20GB partition, we know that the back pressure settings for disk space utilization will be as follows:

  • High – 18.4GB
  • Medium – 18GB
  • Normal – 17.6GB

As you can see, the values for the queue database transaction log disk are lower than the values used when calculating the values used for the queue database disk. Therefore, this is something to consider when locating the queue database and queue database transaction logs on the same disk.

Summary

That completes part one of this article series where we have introduced the back pressure feature and gone on to see how it’s used when monitoring disk space utilization. In part two we’ll take a look at the event logs that are logged during back pressure events, plus have a look at the memory utilization back pressure configuration.

If you would like to read the next part in this article series please go to Back Pressure in Exchange 2010 (Part 2).

About The Author

Leave a Comment

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Scroll to Top