Too Many Connections to Remote Share May Cause RPC Failures

ID: Q221790


The information in this article applies to:

IMPORTANT: This article contains information about editing the registry. Before you edit the registry, make sure you understand how to restore it if a problem occurs. For information about how to do this, view the "Restoring the Registry" Help topic in Regedit.exe or the "Restoring a Registry Key" Help topic in Regedt32.exe.

SYMPTOMS

The following errors may occur when the maximum number of work contexts are exhausted on a particular server:

RPC 1792 - The remote procedure call failed and did not execute.
Netlogon 5719 - Unable to find domain controller.

These errors occur when you attempt to make any additional network connections to a server once the maximum number of work contexts is reached.


CAUSE

The server is running out of work contexts for a particular client.


WORKAROUND

To work around this problem, store the data locally or on another server.

This can also be alleviated somewhat by increasing the MaxMPXCt and MaxWorkItems on the server. Locate the Locate the following key in the registry:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer
\Parameters


WARNING: Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk.

For information about how to edit the registry, view the "Changing Keys And Values" Help topic in Registry Editor (Regedit.exe) or the "Add and Delete Information in the Registry" and "Edit Registry Data" Help topics in Regedt32.exe. Note that you should back up the registry before you edit it. If you are running Windows NT, you should also update your Emergency Repair Disk (ERD).


MaxMpxCt REG_DWORD

Range: 1 – 100 requests

Default: 50

This provides a suggested maximum to clients for the number of simultaneous requests outstanding to this server. A higher value can increase server performance, but requires higher use of server work items.


MaxWorkItems REG_DWORD

Range: 1 – 64 on Windows NT Workstation; 1 – 65,535 on Windows NT Server

Default: (depends on configuration)

This specifies the maximum number of receive buffers, or work items, the server can allocate. If this limit is reached, the transport must initiate flow control, with a significant impact on performance.


STATUS

Microsoft has confirmed this to be a problem in version for .


MORE INFORMATION

A computer running IIS can have multiple virtual directories pointing to shares on another Windows NT Server computer. The ASP Directory monitor uses the FindFirstChangeNotification() API to monitor for any changes to those directories on the other server. Each pending FindFirstChangeNotification() requires a work context on the server and there is only a limited number of work contexts available.

The number of work contexts is passed from the server to the client when the SMB level is negotiated. The redirector on the client keeps an internal count of the number of work contexts it is using on the server. The default number of work contexts is 50.

The number of work contexts is limited to keep the server process from consuming all non-paged pool. This can be raised, but then there is a limit to how many work contexts a particular client can consume.

This problem is not limited to IIS. Windows NT Explorer uses the same mechanism to monitor for directory changes.

Additional query words: rdr


Keywords          : 
Version           : winnt:4.0,5.0
Platform          : winnt 
Issue type        : kbbug 

Last Reviewed: April 6, 1999