Select the product you need help with
- Internet Explorer
- Windows Phone
- More products
Terminal Server Client Connections and Logon Limited by MaxWorkItem and MaxMpxCt Values
Article ID: 232476 - View products that this article applies to.
This article was previously published under Q232476
NoticeThis article applies to Windows 2000. Support for Windows 2000 ends on July 13, 2010. The Windows 2000 End-of-Support Solution Center
(http://support.microsoft.com/?scid=http%3a%2f%2fsupport.microsoft.com%2fwin2000)is a starting point for planning your migration strategy from Windows 2000. For more information see the Microsoft Support Lifecycle Policy
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
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.
You do not have access to logon to this session
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
Event ID: 1311
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.
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 NTImportant This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:
(http://support.microsoft.com/kb/322756/ )How to back up and restore the registry in Windows
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:
232890For additional information, click the article numbers below to view the articles in the Microsoft Knowledge Base:
(http://support.microsoft.com/kb/232890/EN-US/ )Windows 98 Client Unable to Connect to Windows NT Share
(http://support.microsoft.com/kb/271148/EN-US/ )MaxMpxCt and MaxCmds Limits in Windows 2000
Default MaxWorkItems ValueThis 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:
MB = Megabytes RAM on the serverFor example, a server with one processor that is configured for Maximum Throughput for File Sharing, the calculations for 24 MB and 56 MB of RAM are respectively:
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
(4 * ( 24 * 2 ) * 2 / 1) * 1 = 384
(4 * ( 56 * 2 ) * 2 / 1) * 1 = 896
Default MaxMpxCt valuesThis 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.
(http://support.microsoft.com/kb/317249/EN-US/ )How to Troubleshoot Event ID 2021 and Event ID 2022