Microsoft KB Archive/926646

From BetaArchive Wiki

Article ID: 926646

Article Last Modified on 8/29/2007



APPLIES TO

  • Microsoft Windows XP Professional



Important This article contains information about how to modify the registry. Make sure that you 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 Description of the Microsoft Windows registry


SYMPTOMS

This article discusses a problem that occurs when network users access files on a computer that is running Microsoft Windows XP Professional when the computer is being used as a file server.

By default, there is a restriction that prohibits more than 10 concurrent server message block (SMB) commands in the Windows XP Professional Server service. This restriction also applies to other Windows client computer operating systems. For example, an SMB command occurs when a call is made to open a file. Most SMB commands are processed immediately. For example, the file open command is processed immediately. Therefore, a maximum of 10 concurrent commands is typically not a problem.

However, there are some SMB commands that are named "long-term SMB requests." These long-term SMB requests remain open until they are answered. Typically, after an answer is received, another command of the same type is sent immediately.

Additionally, a long-term SMB request is a change notification. For example, if you open Windows Explorer, and then you click a specific folder on the network, a change notification is sent to the computer that hosts the folder. This occurs whenever something changes in this folder. Then, a change notification is sent back to the client computer so that Windows Explorer can update the window and display the new file. If a computer that is running Windows XP Professional hosts the folder, only 10 SMB commands can be used at the same time. All other requests are not answered. You may also receive an error message when the other requests try to open files over the network.

CAUSE

This problem occurs because of an intentional limitation in the Windows XP Professional Server service. Windows XP Professional is designed as a client computer operating system. Therefore, Windows XP Professional is not optimized for server tasks.

RESOLUTION

Hotfix information

To resolve this problem, a hotfix is available that enables you to configure the number of concurrent SMB commands by using the MaxMpxCt registry value. This hotfix enables you to configure the MaxMpxCt value to a maximum of 255. For more information, see the "Registry information" section and the "More Information" section.

A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

Prerequisites

You must install Windows XP Professional Service Pack 2 (SP2) to install this hotfix.

Restart requirements

You must restart the Server service after you apply this hotfix. If you are prompted, restart the computer after you install the hotfix.

Hotfix replacement information

This hotfix does not replace any other hotfixes.

Registry information

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 the operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

To enable this hotfix, follow these steps:

  1. Click Start, click Run, type regedit, and then click OK.
  2. Locate and then click to select the following registry subkey:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters

  3. On the Edit menu, point to New, and then click DWORD Value.
  4. Type MaxMpxCt, and then press ENTER.
  5. Right-click MaxMpxCt, and then click Modify.
  6. In the Value data box, type the desired value, and then click OK.

    Note You can set the number of concurrent SMB commands to a value that is between 10 and 255. The default value is 10. In Microsoft Windows Server 2003, you can set the number of concurrent SMB commands to a maximum value of 65,535.
  7. Close Registry Editor.

File information

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

File name File version File size Date Time Platform
Srvsvc.dll 5.1.2600.3019 96,768 19-Oct-2006 16:29 x86


STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

MORE INFORMATION

The actual value of maximum concurrent SMB commands is determined by the minimum of 2 values. These values are the MaxMpxCt value on the server side and the MaxCmds registry value on the client computer. By default, the MaxCmds value is set to 50 in Windows XP Professional. You cannot set this value to more than 65,535.

On the Windows XP computer that is acting as the server, the MaxMpxCt value, the MaxWorkItems value, and the Size value are located in the following registry subkey:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanserver\Parameters


On the Windows XP computer that is acting as the client computer, the MaxCmds value is located in the following registry subkey:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Lanmanworkstation\Parameters


You must set the following registry values on the Windows XP Professional-based computer that is acting as the file server. By doing this, you give the necessary resources to the Server service.

  • You must set the MaxWorkItems value to at least 4 times the MaxMpxCt value. By default, the MaxWorkItems value is set to 64 in Windows XP Professional. You can set this value to a maximum of 1,024. We recommend that you use this setting only on computers that have sufficient memory. The exact amount of memory that you must have depends on the configuration details. In this scenario, we recommend that you use at least 1 gigabyte (GB) of memory.
  • By default, the Size value is set to 1 in Windows XP Professional. You must set the Size value to at least 2. If you incur problems, you must set the Size value to 3. A Size value of 1 is used to optimize Windows XP Professional for local applications. A Size value of 2 is used to balance resource usage between local application and remote applications. A Size value of 3 is used to optimize Windows XP Professional for network activity.

For more information, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates


Keywords: kbwinxppresp3fix kbfix kbbug kbhotfixserver kbqfe kbpubtypekc KB926646