How to Improve Network Speed ​​Using SMB Compression in Windows 11

SMB, or Server Message Block, is a protocol used to transfer files over a network. Next comes SMB compression which compresses the file size to ensure that large file transfer can speed up further. The advantage of using SMB compression is that you don’t need to use third-party software to compress and decompress when moving files between servers and even to the client PC.

How to Improve Network Speed ​​Using SMB Compression

Here is the set of registry values ​​that the IT admin can modify on their Windows 11 client or server to speed up the transfer process.

1]Aggressive compression

On the client PC, open Registry Editor and navigate to the following path:

HKEY_LOCAL_MACHINESystemCurrentControlSetServicesLanManWorkstationparameters

Right-click and create a new REG_DWORD value name: CompressibilitySamplingSize

Set to a decimal value of: 4294967295

Create a new REG_DWORD value name: CompressibleThreshold

Set to a value of: 0

Close regedit.

This setting takes effect immediately, no reboot is required.

2] Smb2CreditsMin and Smb2CreditsMax

HKLMSystemCurrentControlSetServicesLanmanServerParametersSmb2CreditsMin
HKLMSystemCurrentControlSetServicesLanmanServerParametersSmb2CreditsMax

You can modify the minimum and maximum values ​​of these parameters which may limit the client within the specified values. You can increase the value so that the throughput can increase and ultimately increase the file copy speed.

3] Additional Critical Worker Threads

HKLMSystemCurrentControlSetControlSession ManagerExecutiveAdditionalCriticalWorkerThreads

By increasing the value of it, you can get more additional worker threads which will allow more queued I/O in the storage subsystem. This will in turn improve the performance of I/O devices. If you are using high-end storage hardware that has its own logical system, it will improve further.

4]MaxThreadsPerQueue

HKLMSystemCurrentControlSetServicesLanmanServerParametersMaxThreadsPerQueue

If you have too many requests, i.e. concurrent requests, increasing the value of this queue will increase the scale. You should see more work done in less time with improved performance and response times.

5]Asynchronous Credits

HKLMSystemCurrentControlSetServicesLanmanServerParametersAsynchronousCredits

This key can increase the number of concurrent asynchronous SMB commands allowed on a single connection. Some file transfer scenarios require running a large number of commands, increasing this will improve performance.

Learn more about SMB compression at the official document.

What are SMB performance counters?

You can use the following counters to see if you are getting the speed you expected after optimization. The list includes; Client shares, server shares, server sessions. and Direct Connections.

Why is SMB compression important?

Along with getting rid of an extra tool, SMB compression ensures that the process takes less network bandwidth, time and in turn lowers the cost of using the CPU. All in all, it saves a lot of time and energy, making it a cost effective process.

According to Microsoft, the process is most efficient with a 1 Gbps Ethernet or WiFi network and an uncongested 100 Gbps Ethernet network.

SMB Compression

Kevin M. Risinger