Topic Last Modified: 2005-11-18

The Microsoft® Exchange Server Analyzer Tool reads the following registry entry to determine if the default Multipurpose Internet Mail Extensions (MIME) header limits in Exchange have been changed:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeIS\ParametersSystem\InternetContent

If the Exchange Server Analyzer finds that any value for LimitNestingLevels has been set, a non-default configuration message is displayed.

MIME bodyparts within a message item can be nested. If the nesting level is high, the conversion process requires more and more resources to decode the entire message. A single message with a MIME bodypart nested to 700 levels can take up to 10 minutes to process. When you receive messages from the Internet with nested MIME bodyparts, the conversion process for the MIME bodyparts may cause the slow delivery of these messages. As the messages are delivered, the server will require a large amount of system resources, especially memory. If a large number of these messages are received at the same time, the system may report it is running low on virtual memory.

Limiting the nesting levels of MIME refers to the number of MIME content types (such as multipart/mixed, or multipart/alternative) that can be nested within each other. Messages that are generated by most e-mail clients (including Microsoft Outlook® and Outlook Express) and e-mail servers contain very few nested MIME content types. For example, a typical message (even with multiple replies) will only be represented in a MIME message as a single content-type. Multiple nesting levels are usually the result of an automated process that builds MIME messages for specific uses (such as a workflow application), or of a malicious message constructed with the specific purpose of consuming resources on the mail server.

In addition to enforcing nesting levels according to content-type, Exchange Server will use the LimitNestingLevels value (whether defined as a registry value or as a default value in the store process) to enforce a limit on embedded messages. If the LimitNestingLevels registry value is not defined, the default value of 30 nesting levels is enforced. The embedded messages limit is defined by multiplying the LimitNestingLevels value by 16. Therefore, the default value for the number of embedded messages is 480. For example, if LimitNestingLevels is configured with a value of 5, a maximum of 80 attachments are accepted.

To revert to the default configuration

  • There is no action that needs to be taken. The Exchange Server Analyzer is displaying the non-default configuration for your information.

For more information about an Exchange 2000 Server hotfix related to the LimitNestingLevels registry value, see the Microsoft Knowledge Base article 289775, "XADM: Exchange 2000 Server Experiences Memory Leaks Because of Many Embedded Messages" (http://go.microsoft.com/fwlink/?linkid=3052&kbid=289775).