Increase network speed through Windows 10 registry

Check out eight Windows 10 registry settings that will increase your network speed.

Internet speed

There are tons of apps that promise you higher network functionality and extreme Internet speeds. Usually, these apps present nothing more than a simple interface while sucking money from your wallet with no realistic benefit. Some of them may even be malware.

Here are some ways to increase your network speed without having to pay for these apps. Customizing your internet connection requires a lot more than some shiny app.

Warning: All of the following modifications involve editing the Windows registry. Consequently, you should proceed with caution and make copies of your registry before performing any of the modifications listed below. Accidental deletions and modifications may damage the functionality of your computer. It is better to back up your registry before proceeding.

IRPStackSize

IRPStackSize (I/O Request Packet Stack Size) represents how many 36-byte receive buffers your computer can use at once. It allows your computer to receive more data at once.

If you have a large Internet connection (over 10 Mbps), you will benefit from this. For those of you who have smaller ones online, you might not notice the slightest difference, so skip it.

Your system typically allocates 15 IRPs to its network stack. Most of the time, you'll benefit much more with 32, although you can configure up to 50. Try 32 first.

Run regedit and go to the location of the key in your registry:
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

irpstacksize regedit

Add the “IRPStackSize” as a “DWORD (32 bit)” value on the right side of the regedit window, change the base to “Decimal” and modify the value to 32.

YouReqBuf

SizReqBuf represents the size of raw receive buffers in a server environment. This means it will affect your ability to host something in a high latency environment.

Let's say you host a game server and a lot of people are complaining about lag. Modifying this value will help reduce the impact of latency. You will also benefit if you host a website or any other service, including sending files via instant messenger or Neo Modus Direct Connect.

Your system normally places this buffer at 16384 bytes. For most servers, this is quite efficient, but sometimes you are low on memory and can't keep up with the high volume of requests.

Run regedit and go to the location of the key in your registry:\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters

sizreqbuf regedit

Add “SizReqBuf” as a “DWORD (32 bit)” value to the right side of the regedit window. Change the base to “Decimal” and if you have a server with more than 512 MB of physical memory, modify the value to 17424. If you have less than 512 MB of memory, you should consider buying a new computer, but you can modify this value in the meantime to 4356.

What “SizReqBuf” does is set the DIR instruction buffer from 14000 to 65000.

DefaultTTL

Time to Live (TTL) tells routers how long a packet must remain in the air during a delivery attempt before giving up and discarding it. When the rate is often high, your computer spends more time waiting for a failed packet to be delivered, effectively reducing productivity on your network.

Without setting values, Windows waits 128 seconds for the transaction to complete. This makes your computer lag terribly if you're in the middle of something and your connection to a server becomes unexpectedly slow.

Run regedit and go to the location of the key in your registry:
\HKEY_LOCAL_MACHINE \SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

defaultttl regedit

Add “DefaultTTL” as a “DWORD (32 bit)” value to the “Parameters” key. Set the value to anything between 1 and 255 (in decimal). The best value is 64, although you can set lower values ​​if you want the packet to be killed faster.

TCP1323Opts

Tcp1323Opts allows you to use RFC 1323, known as “TCP Extensions for High Performance”, in 3 ways. This particular value works with timestamping and network window scaling.

Allows a TCP connection to negotiate a download window size with a server, allowing computers to specify download windows of up to 1 GB.

Go to the following location in your registry:

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

You should create TCP1323Opts as a “DWORD (32 bit)” value on the right side of the registry editor. Right-click and change this value to “1” (demical).

MaxFreeTcbs

MaxFreeTcbs is an incredible value. It determines how many active TCP connections your computer can handle at any given time based on the amount of physical memory you have and your computer's bandwidth performance.

If the number is too high, your computer may not be processing TCP transactions correctly due to the large number of active connections talking to the computer at the same time. However, if the number is too low, you cannot host or request as many connections as you want.

While the setting is arbitrary, you may want to increase the number when you upgrade your hardware or internet connection.

Navigate to the following path in your registry:
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

maxfreetcbs regedit

Create as value “DWORD (32 bit)” or edit “MaxFreeTcbs” and set its value to 65536. If you are using a computer with lower performance hardware, you can set it to a lower number, such as 16000.

MaxUserPort

When an application requests to open an available port from Windows, the operating system chooses a port from 1024 onwards, up to a specified maximum known as “MaxUserPort”. A port on your computer allows you to make TCP/UDP connections over the Internet and on your local network.

We all know that 5000 is less than 65534. What happens when you open more options in programs looking for a port? They find a port much faster than they would with only a few thousand options available.

Windows sets this value to 5000 by default, but you can set it to any number from 5000 to 65534.

The location where “MaxUserPort” should be created is in the following registry path:
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

maxuserpost regedit

Create a value called “MaxUserPort” as a “DWORD (32 bit)” value and set it to 65534 in decimal. That's it!

GlobalMaxTcpWindowSize

This price has a big name, but you won't regret changing it if you have a large internet connection (10 Mbps and above) and often upload content. This value represents how much data can be sent by your computer without receiving an acknowledgment (ACK) packet.

Every time you send small bits of data over the internet, your computer has to wait for that packet, which says to your end of the network, “Everything is fine! Send it already!".

Sometimes, due to latency and insufficient peering, this may not be ideal. So you can edit this value to allow more data to be sent without waiting for that packet to arrive.

Create a 32(bit) DWORD named “GlobalMaxTcpWindowSize” in the following registry path:
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

Set the value to 65535 in decimal and you're done! This will make the computer able to send 64 kilobytes without waiting for an acknowledgment. After modifying this setting, if you notice a drop in network speed instead of an increase, either remove the value or try increasing it slightly to 128 kilobytes (by setting the value to 131072).

MTU

MTU affects the upstream speed more than the downstream speed. Taking care of the upstream is just as important, ensuring that larger chunks of data are sent at a time.

While this number is normally automatically set by the your network, you can adjust it based on your internet connection speed.

Setting this value is difficult. First, you need to find out your optimal MTU value, which is the one that does not require packet fragmentation due to limitations in your internet connection speed.

You can do this by going to the Command Prompt and entering the following:
ping -f -l mtu your_gateway

Replace “mtu” with a number from 88 to 65500. Replace “your_gateway” with the gateway your network adapter uses to connect to the Internet. If you don't know your gateway, type ipconfig at the command line to find out its value under “ Gateway” (Default Gateway), which appears under the network adapter you use for the Internet.

ipconfig

For us it is 192.168.100.1 and it refers to the second physical adapter, since the first one is virtual.

When you ping, you'll know you've reached too high a number when the response contains the following message: Packet needs to be fragmented but DF set.

ping packets

For us the limit is 1472, as with 1473 it gave us the message “Packet needs to be fragmented but DF set” (The packet needs to be fragmented but DF set)

As long as you choose a number that doesn't require packet hashing, you're fine. Choose the highest possible number without packet fragmentation and you will have the optimal MTU.

Now, to set this number, go to the following path in your registry:
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces

There you will see various keys in brackets of the style 08522fb12-9db5-121f-a8aa-1fabda205bad. You should find the one that corresponds to your router.

Just browse through the various GUIDs listed under “Interfaces” and look at the information on the right side of the regedit window to see if they match the details of the network card you use to connect to the web.

Logically they should have in “dhcpIPAddress” the IP of your computer and to “DhcpServer” the IP of your router

There can be many "network cards" installed in a computer, especially when you use it as a router.

Enter the GUID responsible for your internet connection and there add “MTU” as a DWORD (32 bit) and set it to the number you found with the ping command above (use the decimal system). That should fix a lot.

mtu regedit

These registry tweaks are more than enough to increase network speed in Windows 10.

iGuRu.gr The Best Technology Site in Greecefgns

every publication, directly to your inbox

Join the 2.086 registrants.
network, speed, speed, internet, internet, regedit

Written by Dimitris

Dimitris hates on Mondays .....

5 Comments

Leave a Reply
  1. Try changing the channel on the router and when you play, turn off anything that eats a lot of bandwidth, such as a SmartTv.
    Also do a scan with an antivirus to see if you have a virus that is eating up your bandwidth.

  2. Good evening,
    Will I see a change in ping in a gaming environment if I do this whole process? I have 200mbps fiber optic, and I have slightly higher ping than when I had 50s with copper, how is this explained?

      • I agree my brother, I wish I didn't have a government grant and I didn't put in 200..to my question, do you know anything about this with ping? How is it explained that I had 50_50ping with the 60 and 200-70 with the 80?!? I play cs go, valorant and tekken 7. they all need terrible accuracy and even 1ms makes a difference. I don't play for long hours or often, but when I do I want it to be complete, do you know how to fix it? I asked them for fast path and they say that this possibility does not exist in optical fiber and that everything is already at its maximum..

Leave a reply

Your email address is not published. Required fields are mentioned with *

Your message will not be published if:
1. Contains insulting, defamatory, racist, offensive or inappropriate comments.
2. Causes harm to minors.
3. It interferes with the privacy and individual and social rights of other users.
4. Advertises products or services or websites.
5. Contains personal information (address, phone, etc.).