Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

MTA fanout slows on multiprocessor servers and messages back up in information store


View products that this article applies to.

This article was previously published under Q265186
Important This article contains information about how to modify the registry. Make sure to back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:
256986 (http://support.microsoft.com/kb/256986/) Description of the Microsoft Windows registry

↑ Back to the top


Symptoms

When you run Exchange Server 5.5 on a multiprocessor server, the message transfer agent (MTA) fanout may slow down or stall. Messages back up in the private information store but nowhere else. When you try running Performance Optimizer (Perfwiz.exe), the overall performance of Exchange Server slows down.

↑ Back to the top


Cause

This behavior can occur because Performance Optimizer does not properly optimize the MTA and information store when you run it on multiprocessor servers. Specifically, it does not allocate enough information store threads to increase the routing capacity of the MTA. Performance Optimizer also resets any changes that you make.

↑ Back to the top


Resolution

There are two ways to resolve this behavior.

Run Performance Optimizer in Verbose Mode to Modify Thread Counts

To resolve this behavior, run Performance Optimizer in verbose mode (perfwiz -v) to modify thread counts:
1. At a command prompt, switch to the Exchsrvr\Bin directory, type perfwiz -v, and then press ENTER to start Performance Optimizer in verbose mode.
2.In the Microsoft Exchange Performance Optimizer, click Next until you find the property page that includes the Users on this server and Users in organization boxes. In these boxes, be sure to allocate enough resources to handle your work load. If the number of users falls in the high end of a range, select the next higher range. Under Memory Usage, do not limit Exchange Server memory usage.
3.Click Next until you find the # of background threads box. Note this value but do not change it, and then click Next.
4.In the Public and Private Information Store box, increase each of the four send and delivery thread values to 8.
5.Click Back to return to the # of background threads box, and then increase that value accordingly. For example, if you increase each of the four send and delivery thread values from 2 to 8, increase the background threads value by 24.

Note You can make these changes manually in the registry, but these values are not visible by default. Running perfwiz -v automatically adds the values for you and eliminates any worry about spelling and case sensitivity.
6.Click Next until you find the # of submit/deliver threads box. The MTA uses these threads to pass mail off to the information store. Increase this value to 8 also; its maximum default setting is 4.
7.On the same page, specify the following values:
Dispatcher threads: 8
Kernel threads: 8
RTS threads: 8
Transfer threads: 8
Increasing these values to 8 allows for a larger pipe between the MTA and the information store, yielding more efficient clearing of the message backlog under high-traffic conditions.
8.Click Next until you see the # of TCP/IP control blocks box. Make sure that the value that is in this box is not reset to 20 (unless that is the correct value). If there are more than two X.400 connectors that are installed on the Exchange 5.5 computer, Microsoft recommends that you increase this registry value to [10 * (number of X.400 connectors+ 10)] for the appropriate protocol stack.

For example, if there are five X.400 connectors installed on Exchange Server, set this registry string to a value of 60 (decimal). This gives you 10 control blocks for each X.400 connector. This is the maximum number of permitted associations per X.400 connector. The maximum total that is permitted is 2,000 control blocks.

Note If you are also using X.25 as a messaging protocol stack, the total number of X.25 control blocks and of TCP/IP control blocks can be no greater than 1,250. If these values are increased beyond the acceptable ranges, the MTA will not start.

Note Note that perfwiz -v tries to reset the TCP control blocks parameter to the default of 20. Compare settings before you commit changes.
9.Click Next, click Finish, and then restart services. Monitor the MTA queue to the information store to verify that the changes affect the queue.

Modify the Registry

Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.
To resolve this behavior, create or change the following in the Windows NT registry:
1.Start Registry Editor (Regedt32.exe).
2.Locate and click the following key in the registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeMTA\Parameters
NOTE: The above registry key is one path; it has been wrapped for readability.
3.On the Edit menu, click Add Value, and then add the following registry value:
Value Name: Allow fuzzy proxy search
Data Type: REG_DWORD
Value: 2
Note If this registry value does not exist in the registry, the MTA assumes a value of 1 for this setting and enables fuzzy proxy searches.
4.Double-click the Concurrent XAPI Sessions value.

Note By default, this value is set to 50 hexadecimal (80 decimal). If Performance Optimizer is run with default settings selected, the value is set to 30. However, we recommend that this value be set to 50 hexadecimal (80 decimal).
5.In the Radix area, click Hex, type 50 in the Data box, and then click OK.
6.Quit Registry Editor.
7.Stop and then restart the Microsoft Exchange Message Transfer Agent (MTA) service.

↑ Back to the top


More information

For more information, click the following article number to view the article in the Microsoft Knowledge Base:
327260 MTA slows down or stalls in Exchange Server 5.5 and messages back up in the private information store


"Fanout" is the process of placing objects into the various queues.

Verbose mode stops all services and offers options not available in normal mode. You do not need to analyze hard disks or move files; this procedure presents the opportunity to change some resource (thread) settings from the defaults.

To view the current settings for Users on this server and Users in organization without stopping services, at a command prompt, run perfwiz -r. You can also use the Perfopt.log file in the Winnt\System32 folder to view any changes that Performance Optimizer makes to the system.

For more information about MTA fanout, messages in the information store, and improving MTA network performance, click the following article number to view the article in the Microsoft Knowledge Base:
176046 Routing issues with Microsoft Exchange Server, version 5.0
159184 MTA does not deliver messages with high directory service activity
234280 How to increase the ability of the MTA to pass mail over slow network connections
234702 MTA queue to information store processing slowly
Concerning Knowledge Base article Q234702, note that if you change the public and private send and deliver threads, you must also check the concurrent XAPI sessions to make sure that value is set adequately. Otherwise, you may experience new performance issues and may receive an error message about Event ID 3120 from the MTA.

↑ Back to the top


Keywords: KB265186, kbprb, kbenv

↑ Back to the top

Article Info
Article ID : 265186
Revision : 9
Created on : 10/28/2006
Published on : 10/28/2006
Exists online : False
Views : 283