Optimizing the file sharing network to handle more traffic

MaxCmds specifies the maximum outstanding network requests for the client to the server, which is used when negotiating a Server Message Block (SMB) connection with a server.

[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \LanmanWorkstation \Parameters]
MaxCmds = 100 (Range 0 - 255(NT4) - 65535(Win2k). Default is 50 (NT4 = 15))

MaxMpxCt specifies the maximum outstanding network requests for the server per client, which is used when negotiating a Server Message Block (SMB) connection with a client. Note if the value is set beyond 125 older Windows 9x client will fail to negotiate.

[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \LanmanServer \Parameters]
MaxMpxCt = 100 (The range is 0 - 100(NT4) - 65535(Win2k) and the default is 50)

More Info MS KB232890
More Info MS KB926646 (XP is limited to 10 without hotfix).

MaxWorkItems specifies how many active requests the server will handle at once (Besides those outstanding) before it starts to reject or throttle incoming requests. Note the default value is calculated and is based upon the total amount of RAM and CPU’s, and it should only be changed on servers where the calculated value is not enough to handle all client requests (The value should at least be 4 times the value of MaxMpxCt).

[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \LanmanServer \Parameters]
MaxWorkItems = 512 (The range is 0 - 64(Prof.) - 65535 (Srv.))

The MaxFreeConnections and MinFreeConnections controls how many connection objects, which are preallocated. The preallocation requires extra memory, but enables faster handling of network requests.

[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \LanmanServer \Parameters]
MinFreeConnections = 4 (2 = Minimize, 2 = Balance, 4 = Sharing, 4 = Network Applications)
MaxFreeConnections = 8 (2 = Minimize, 4 = Balance, 8 = Sharing, 8 = Network Applications)

More Info MS KB245080
More Info MS KB909262

The MaxThreads specifies how many threads is allowed to run at once, each thread allows one outstanding operation. By increasing this you can increase the amount of simultaneous work. Each extra execution thread will take 1 Kbyte of additional nonpaged pool memory.

[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \LanmanWorkstation \Parameters]
MaxThreads = 30 (The range is 0-255 and the default is 17)

More Info MS KB115522

The MaxCollectionCount specifies how much data there can be stored in a named pipe before a write operation is triggered. Increase this value can increase performance for applications which uses named pipes, as it will lower the amount of write operations.

[HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \LanmanWorkstation \Parameters]
MaxCollectionCount = 32 (The range is 0-65535 and the default is 16)

Related Configure the file server request buffer size
Related Configure the memory usage of the Server service

More Info MS KB102967
More Info MS KB221790
More Info MS KB232476
More Info MS KB271148
More Info MS KB317249

Credits regedit.com