Terminal Server Client Connections and Logon Limited by MaxWorkItem and MaxMpxCt Values (232476)
The information in this article applies to:
- Microsoft Windows 2000 Server
- Microsoft Windows NT Server 4.0 Terminal Server Edition
This article was previously published under Q232476 IMPORTANT: This article contains information about modifying the registry.
Before you modify the registry, make sure to back it up and make sure that you
understand how to restore the registry if a problem occurs. For information
about how to back up, restore, and edit the registry, click the following
article number to view the article in the Microsoft Knowledge Base: 256986 Description of the Microsoft Windows Registry
SYMPTOMS After multiple Terminal Server clients establish a session
with a server running Microsoft Windows NT Server 4.0, Terminal Server Edition,
additional clients cannot connect. When this occurs, in some cases, clients
cannot browse certain servers or domain controllers after a specific number of
client sessions have been established. They may not exhibit the same symptoms,
but this issue may be corrected by the solution below. This behavior
is not affected by either the number of licenses in position or the License
Logging Service on either the Terminal Server computer or domain controller.
This problem can occur with either Independent Computing Architecture or Remote
Desktop Protocol clients, and the clients may receive one of the following
error messages: System could not log you on because
domain domainname is not available -or-
You do not have access to logon to this session
Clients can use the net view, net use, or the ping command to contact other servers and domain resources without
difficulty. In some cases, after 20 or 30 minutes, additional clients can log
on before new connections are refused again. CPU usage is typically very low,
and this can occur regardless of the CPU speed, number of CPUs, or amount of
Random Access Memory (RAM) installed on either the Terminal Server computer or
domain controllers. If the Terminal Server computer is a member
server, no Event Viewer System log entries may appear. On the domain
controllers, the Terminal Server computer's Event Viewer System log may contain
one or both of the following entries: Error 1727: The
remote procedure call failed and did not execute -or- Event ID: 1311 Source: NetLogon Description: There are
currently no logon servers available to service the logon request.
Other RPC error messages that may appear are: Error
1722: The RPC server is unavailable. Error
1723: The RPC server is too busy to complete this operation. Error 1721: Not enough resources are available to complete this
operation. Netlogon Event ID 5719: No
Windows NT Domain Controller is available for domain domain_name. The
following error occurred: There are currently no logon servers available
to service the logon request. RESOLUTION To resolve this issue, you must either edit the existing
values or add the following registry entries for both MaxWorkItems and MaxMpxCt to the servers from which the clients are requesting resources.
By default, MaxWorkItems and MaxMpxCt do not appear under the parameters key although they are in
effect. MaxMpxCt permits a server to provide a suggested maximum number of
simultaneous client requests to itself, and then enforces those limits. Because
each client connection generates multiple instances (for example, Windows shell
and Explorer.exe), with multiple clients connecting to the server, they can be
greater than the default MaxMpxCt setting of 50. As soon as this limit is reached for that server,
additional requests are refused until it drops below the set limit again.
Note: These values must be added with such a ratio that the value for MaxWorkItems is at least four times as large as that for MaxMpxCt. For example, if MaxMpxCt has a value of 1024, then MaxWorkItems needs to have a value of at least 4096.
Windows NTWARNING: If you use Registry Editor incorrectly, you may cause serious
problems that may require you to reinstall your operating system. Microsoft
cannot guarantee that you can solve problems that result from using Registry
Editor incorrectly. Use Registry Editor at your own risk. - Start Registry Editor.
- Locate the following key in the registry:
HKEY_LOCAL__MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters - Double-click the MaxWorkItems value, type
4096, click Decimal, and then click
OK.
The number value you enter is arbitrary, and you
can also enter 8192, 16384, or 32768 if you want to. However, Microsoft
recommends that you start at the lower levels and work up as needed, doubling
the value each time. The range for this value is one through 65535. If this
value already exists, but you are experiencing problems similar to those
outlined earlier, then edit this entry and double its current value but select
a minimum value of 4096. For example, if it shows a value of 2048, then change
it to 4096. If the problems persist, then continue this process until the issue
subsides.
Note: This value must be at least four times as large as the MaxMpxCt value. - If the MaxWorkItems value does not exist in the
Parameters key, on the
Edit menu, click Add Value, and then add the
following registry value:
Value Name: MaxWorkItems Data Type: REG_DWORD Value: 4096 - Double-click the MaxMpxCt value, type
1024, click Decimal, and then click
OK.
The default value for MaxMpxCt is 50, but remember that MaxWorkItems must be set at least four times as high as the number used for MaxMpxCt.
Note: Windows 95 and Windows 98 clients can interpret this registry
entry differently than Windows NT, so apply this value according to which
client is being used.
For additional information about how
Windows 95 and Windows 98 interpret the registry entry differently than Windows
NT, click the article number below to view the article in the Microsoft
Knowledge Base: 232890 Windows 98 Client Unable to Connect to Windows NT Share
- If the MaxMpxCt value does not exist in the Parameters key, on the
Edit menu, click Add Value, and then add the
following registry value:
Value Name: MaxMpxCt Data Type: REG_DWORD Value: 1024 (Decimal) Important: When you add this value to the registry of a computer running
Windows 95, Windows 98, and Windows 98 Second Edition, set this value to 510
Decimal (or 1fe Hexadecimal). If Windows 95, Windows 98, and Windows NT clients
are present, then the value for MaxMpxCt must be set to the default used for Windows95 and Windows 98,
because Windows NT reads the value without problems. - Quit Registry Editor and restart the computer.
Windows 2000Note: You may experience a slow network response, and slow file copy
performance when many people are using the Terminal server. On a
computer that is running Windows 2000 SP2 or later, follow these steps:
- Start Registry Editor.
- Locate, and then click the MaxCmds value
under the following key in the registry:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation \Parameters - On the Edit menu, click
DWORD, type 500, and then click
OK.
- Quit Registry Editor.
- On the remote server, start Registry Editor.
- Locate, and then click the following key in the registry:
HKEY_LOCAL__MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters - On the Edit menu, click Add
Value, and then add the following registry values:
Value name: MaxWorkItems Data type: REG_DWORD Radix: Decimal Value data: 8192
-and-
Value name: MaxMpxCt Data type: REG_DWORD Radix: Decimal Value data: 500 Note: You may have to increase these values if the registry key does
not work. - Quit Registry Editor.
- Restart both servers.
For
additional information about clients being unable to connect, click the article
number below to view the article in the Microsoft Knowledge Base: 232890 Windows 98 Client Unable to Connect to Windows NT Share
For additional information, click the article numbers
below to view the articles in the Microsoft Knowledge Base: 271148 MaxMpxCt and MaxCmds Limits in Windows 2000
MORE INFORMATIONDefault MaxWorkItems Value This value specifies the maximum number of receive buffers, or
work items, that the Server service is permitted to allocate at one time. If
this limit is reached, then the transport must initiate flow control, which can
significantly reduce performance. In some cases, this problem may also become
evident by not permitting new connections to be made to the server.
There is no set default value for this entry, because it is determined by the
computer's hardware configuration and the Server service, and may have to be
adjusted. Third-party programs may also require this value to be set at a
higher number. Windows NT uses the settings for Server Service
Optimization and the hardware configuration to help determine what the default
value for MaxWorkItems is. The Server Optimization choices are found in the Server
properties when you click the Services tab in Control Panel Network tool.
Windows NT configures the value in the following manner:
(4*(MB*SMBServerPerfSetting)*OSVersion/1)*(#Processors)
where:
MB = Megabytes RAM on the server
SMBServerPerfSetting = .5 if "Minimize Memory Used"
SMBServerPerfSetting = 1 if "Balance"
SMBServerPerfSetting = 2 if "Maximize Throughput for File Sharing"
OSVersion = 2 if running NTServer with > 16MB RAM
#Processors = is the number of processors in the system
For example a server with one processor that is configured for
Maximum Throughput for File Sharing, the calculations for and 24 MB and 56 MB
of RAM are respectively:
(4 * ( 24 * 2 ) * 2 / 1) * 1 = 384
(4 * ( 56 * 2 ) * 2 / 1) * 1 = 896
Default MaxMpxCt values This permits a server to provide a suggested
maximum number of simultaneous outstanding client requests to a particular
server. During negotiation of the Server Message Block dialect, this value is
passed to the client's redirector where the limit on outstanding requests is
enforced. A higher value can increase server performance, but requires more use
of server work items ( MaxWorkItems). Because each client can consume multiple instances, this may be
greater than the default maximum of 50. 317249 How to Troubleshoot Event ID 2021 and Event ID 2022
Modification Type: | Major | Last Reviewed: | 3/14/2003 |
---|
Keywords: | kbenv kbnetwork kbprb KB232476 |
---|
|