Hi guys, I have been playing with win10 Internet templates and various congestion provider values.
So finally I can conclude that over at Microsoft, people work for free or they are drunk all the time.
Instead of making the system tunable, they locked it but left only partial commands unlocked.
So here it gores:

WHAT STICKS IN WIN10

There are various Internet templates in win10.
Automatic (????), Internet, InternetCustom, DataCenter, DataCenterCustom and Compat.
You can see their settings with Get-NetTCPSetting
or current Internet template settings with Get-NetTransportFilter

What is absurd you can use only 2 Internet templates in win10: Internet and Compat !

To change the current Internet template you can use:

netsh int tcp set supplemental template=STRING
valid STRING values are:
STRING = Internet - set template Internet
OR
STRING = Compat - set template Compat

Now comes the good part. Each Internet template has a different values for congestionprovider,
and even more absurdly a different way of setting them.

FOR INTERNET
netsh int tcp set supplemental template=internet congestionprovider= "STRING"

valid STRING valuse are:
STRING = default ..... default is CUBIC
STRING = CTCP
STRING = DCTCP

FOR COMPAT
netsh int tcp set supplemental template=compat congestionprovider= "STRING"

valid STRING valuse are:
STRING = default ..... default is NEWRENO
STRING = CTCP
STRING = DCTCP

So now you can play with different congestion providers but unfortunately you are tied to a specific Internet template.
It is unfortunate because you cant change all settings inside a particular Internet template, but only some.

What buggs us the most in this forum, you cant change :
delayedacktimeout - Controls TCP delayed ack timeout. 10 to 600 msec.
delayedackfrequency - Controls TCP delayed ack frequency. 1 to 255.

Although by looking at syntax it should be changeable.

So now you can play with different congestion providers although by checking out the following links (fresh from Microsoft)
The CUBIC congestion provider should be the best as it is the new kid on the block. But if you want to have CUBIC you are tied to
"Internet" internet template.

From: https://blogs.technet.microsoft.com/...or-windows-10/
CUBIC is a TCP Congestion Control (CC) algorithm featuring a cubic congestion window (Cwnd) growth function.
The Cubic CC is a high-speed TCP variant and uses the amount of time since the last congestion event instead of ACK
clocking to advance the Cwnd. In large BDP networks the Cubic algorithm takes advantage of throughput much faster than ACK
clocked CC algorithms such as New Reno TCP. There have been reports that CUBIC can cause bufferbloat in networks
with unmanaged queues (LTE and ADSL). In the Creators Update, we are introducing a Windows native implementation of CUBIC.
We encourage the community to experiment with CUBIC and send us feedback.

Also check this PDF
https://datatracker.ietf.org/meeting...nts-in-windows

For our new followers (BTW nice to have you here) - all above commands are entered through Windows PowerShell(Admin) .