TCP: The hidden network brake in Windows 10 and 11

Despite ever faster computers, ever poorer network transfer performance? The IT service provider Alexander Fuchs was surprised by this feedback from customers, especially with the performance of RDP connections under Windows Server 2022, there were massive complaints about jerky RDP connections from Windows 10 or Windows 11 clients.



Discussions in various Internet forums such as administrator.de confirmed the impression. In particular, there were complaints that the TCP network connections on Windows 10/11 clients left a lot to be desired in terms of throughput, even with high-performance hardware.

It soon turned out that the default settings for TCP – and above all the specification of a profile called Internet for all TCP connections on the computer – represented a performance brake. TCP stands for Transmission Control Protocol, a network protocol that defines how data should be exchanged between network components. Almost all current operating systems master TCP and use it for data exchange with other computers or the Internet.

The protocol is a reliable, connection-oriented, packet-switched transport protocol in computer networks and is part of the Internet protocol family, the foundation of the Internet. During implementation, however, developers can specify numerous parameters to control the flow of TCP transmissions. Values ​​for an internal network are usually different from the TCP specifications for Internet connections.


However, many users are unaware of these details because the operating system developers use standard specifications for the TCP settings. Alexander Fuchs began to concern himself with the Windows specifications for TCP. After more than a year of research, he turned to the author of this article with his findings, who published it in a blog post here has documented.

Standard specifications as a brake

An analysis of the Transmission Control Protocol implementation on Windows 10 and Windows 11 yielded some surprising insights. The first thing I noticed was with the power shell command Get-NetTCPConnection queried TCP connections always returned the “Internet” profile.


TCP-Profil “Internet” (Screenshot: Alexander Fuchs) [1/1]

Microsoft also has a profile called Datacenter that has different TCP specifications but is not used in the standard configurations. Using the Internet profile for all TCP connections artificially slows down local network transfers (including via the latency of the ACK packets). Microsoft’s Dan Cuomo has the facts in an article described.

During further analysis, Alexander Fuchs found that the Internet and Datacenter TCP profiles of the current Windows 10/11 versions have default settings for Internet connection properties and speeds that were common at the time of Server 2012.

This may make sense in the sense of “always works”. From the point of view of the IT expert Fuchs, however, this makes no sense: “Instead of using the faster and therefore more suitable data center TCP profile as the default Windows TCP profile for today’s Internet and LAN speeds, the slower Internet profile is generally stored for current Windows versions.” Normal users cannot change anything about these specifications either.

Related Articles:  According to Russia, Sweden is hiding something about sabotage against the Nord Stream

TCP Optimization Approaches

For experienced admins there is the free tool SG TCP Optimizer for Windows, which can be used to customize the TCP parameters. However, the use requires some knowledge and manual optimization of individual parameters.

For his own needs, Alexander Fuchs has developed a Powershell script to automatically optimize the TCP settings for Windows 10 and Windows 11. It sets the TCP parameters independently so that under Windows 10 or Windows 11 the Internet profile is no longer used across the board, but the data center custom profile. In addition, by disabling certain TCP features, latencies are reduced, improving network throughput performance in many scenarios.

Experienced administrators who are struggling with network throughput problems, such as with RDP connections, on Windows 10/11 clients can benefit from the script solution. Feedback on the author’s blog and in communities show the great optimization potential.

The current version of the Powershell script W10ANDW11-NETWORK-TCP-DESUBOPTIMIZATION.ps1 was created by Alexander Fuchs Provided free of charge on Github. The script must be run with administrator privileges, otherwise errors will occur. According to Fuchs, it is only intended for optimizing Windows 10/11 and should not be run on a server operating system.

A warning at this point: the script is not a point-and-click solution that should be used by unskilled end users. Although it can create a backup of the registry values, it is advisable to make a system backup before using it in order to be able to restore the previous version in case of problems (at this point, of course, the note that the use of the script is at your own risk) . The changes made by the script can be understood from the comments in the source code.

After execution, the computer must be restarted in order to accept all settings cleanly. You should then see a significant performance improvement in the network connections, especially in local applications. The script author has published some performance measurements on administrator.dethere is also feedback from other administrators.

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.