Earlier this week, we had a discussion on how to increase the speed and efficiency of your network through a couple of added registry values. As discussed before, there’s no practical reason to use a program that promises to speed up your Internet connection. While some applications actually work, most of them just occupy resources in your computer and suck your bank account dry without any regret. As long as you play smart, you can edit your registry to help achieve the same effect. This time, we’re going to discuss the rest of the options you have to increase your network’s efficiency.
Note: If you don’t feel comfortable editing your registry, don’t do it. If you feel like learning, don’t forget to back up your registry.
Tcp1323Opts lets you use RFC 1323, known as “TCP Extensions for High Performance”, in 3 ways. This particular value works with timestamping and network window scaling. This allows the TCP connection to negotiate a receive window size with a server, letting computers specify receive windows of up to 1 GB. This means that you’ll be able to receive up to 1 GB at a time through a connection. Of course, such a high number is unrealistic in today’s standards, but we have the possibility when we need it. The option you’re editing is a two-bit value (no pun intended). The lower bit specifies whether you want to use window scaling, and the higher bit specifies whether you want to use timestamps. Let’s edit that value, shall we?
Windows sets this value to “3” by default. You’re going to create the value in the registry and set it to “1.”
Navigate to the following location in your registry:
Add TCP1323Opts as a “DWORD” value on the right-hand side of the registry editor once you reach the path in the registry. Modify this value to “1.”
MaxFreeTcbs is an iffy value. It determines how many active TCP connections your computer can handle at any given time based on how much physical memory you have and how much performance your computer has bandwidth-wise. If the number is too high, your computer might not properly process TCP transactions because of the high amount of active connections talking to the computer at the same time. However, if the number is too low, you can’t host or request as many connections as you’d like. While the setting is arbitrarily determined, you might want to bump up the number when you upgrade your hardware or Internet connection.
Often times, your computer will perform best with a MaxFreeTcbs number of 65536, although you should still limit the amount of connections your computer has on applications that host and request several simultaneous connections, such as uTorrent.
To reach the location for the value, go to the following path in your registry:
Create or edit “MaxFreeTcbs” and place its value at 65536. If you’re using an older computer with lower-performance hardware, you can set this at a lower number, like 16000.
When an application requests an available port to open from Windows, the operating system chooses one port from 1024 to a specified maximum known as “MaxUserPort”. A port on your computer allows you to establish TCP/UDP connections through the Internet and in your local network. I could get into more detail, but we really should get moving. Well, we all know that 5000 is less than 65534. What happens when you open more options to programs seeking a port? They find a port much faster than they would with only a couple thousand available choices.
Windows sets this value to 5000 by default, but you can set it up for any number from 5000 to 65534.
The location where MaxUserPort must go is in the following registry path:
Create a value called “MaxUserPort” and set it to 65534. That’s it!
This value has a long name, but you won’t regret modifying it if you have a big Internet connection (10 Mbps and up) and upload stuff a lot. This value represents how much data can be sent from your computer without receiving an acknowledgement (ACK) packet. Every time you send small chunks of data on the Internet, your computer has to wait for this packet, which tells your end of the network, “Everything’s OK! Send more!” Sometimes, due to latency and poor peering, this might not be ideal. So, you can edit this value to allow more data to be sent without waiting for that packet to come.
Place GlobalMaxTcpWindowSize in the following registry path, on the right side of the window.:
Set the value to 65535 and you’re done! This will make the computer able to send 64 kilobytes without waiting for acknowledgement. If you feel a drop in speed after modifying this, either remove the value or try raising it slightly, to 128 kilobytes (by setting the value to 131072).
One of the most common ways to increase the speed of an Internet connection is adjusting the maximum transmission unit (MTU). This value represents the maximum size of a packet transmitted from your computer. It affects your upstream speed more than your downstream speed, but taking care of upstream is just as important, ensuring that larger chunks of data are sent at a time. While this number is normally set automatically by your network card, you can adjust this based on your Internet connection speed.
Setting this value is tricky. First, you have to find out your optimal MTU value, which is one that doesn’t require packet fragmentation because of limitations in your Internet connection speed. You can do this through the command line with “ping -f -l <mtu> <your gateway>.” Replace “<mtu>” with a number from 88 to 4294967295. Replace “<your gateway>” with the gateway your network adapter uses to connect to the Internet. If you don’t know your gateway, type “ipconfig” in your command line to find out its value, under “Default Gateway,” which shows up under the network adapter you use for the Internet.
When pinging, you’ll know you reached too high of a number when the response contains the following message: Packet needs to be fragmented but DF set.
As long as you choose a number that doesn’t require packet fragmentation, you’re fine. Choose the highest possible number without packet fragmentation, and you have the most optimal MTU.
Now, to set this number, go to the following path in your registry:
See the above image for an example of how I found my own principal network interface. There could be other network interfaces installed in a computer, especially when you use it as a router.
Replace “Interface ID” with the GUID for your network interface. Just browse across the different GUIDs that show up under “Interfaces” and look at the information on the right side of the regedit window to see if it matches the details of the network interface you use to connect to the Web.
Once you reach that interface, add “MTU” as a DWORD and set it at the number you got when pinging your gateway. That should fix plenty.
And We’re Done!
I really hope you got something out of this tutorial and learned how to properly speed up your Internet connection. If you follow the instructions to the letter, I guarantee you will feel a positive effect, albeit small, on your Internet connection. Don’t forget to do this to every computer on your local network if you have more than one! Leave a comment below if you have any questions about this. We’ll answer them as quickly as we can!