Internet Speed

How to Optimize Internet Speed While Using PureVPN

6 Mins Read

PureVPN UpdatesHow to Optimize Internet Speed While Using PureVPN

PureVPN default settings and recommended locations are optimized for internet speed. Therefore, in most cases, users won’t need to do anything after launching the app to enjoy a flawless user experience. In rare circumstances where the default settings fail to provide optimized internet speeds, users have the option to tweak their settings to get good speeds.

Optimize Internet Speed

Internet download speed recommendations

As per Netflix, here are the internet download speed recommendations per stream for playing TV shows and movies through Netflix.

  • 0.5 Megabits per second – Required broadband connection speed
  • 1.5 Megabits per second – Recommended broadband connection speed
  • 3.0 Megabits per second – Recommended for SD quality
  • 5.0 Megabits per second – Recommended for HD quality
  • 25 Megabits per second – Recommended for Ultra HD quality

That means if you have 25 Mbps, it’s good enough to stream any quality of video without buffering. 

Factors that affect internet speed

There are multiple factors that can affect the internet speed. The factors are: 

  1. The base speed provided by your Internet Service Provider (ISP)
  2. The distance between you and the server you are connecting to
  3. The network health of the network between you and the server you are connecting to

How to measure internet download/upload speed

There are multiple services to measure internet speed, Speedtest.net is one such service. Speedtest.net offers multiple servers at multiple locations to test internet speed. 

The base speed can be approximated by choosing the nearest location. For example, the following is the result of measuring the speed from a Windows 10 machine based in Germany by connecting to a SpeedTest server that is connected in Germany.

But when running the same test by connecting to a server in Los Angeles, California, the speed has significantly decreased. This is because speeds diminish the further away you are from the server, and California and Germany aren’t particularly geographically close. The distance has increased, which has caused the speed to be reduced.

Factors that affect internet speed when connected to a VPN

When a machine is connected to the VPN, apart from the reasons that affect internet speed in general, we need to be mindful of some additional factors. The most important factor is that on a VPN, every packet that is sent is encrypted while every packet received is decrypted. For internet speeds below 50 Mbps, encryption/decryption degrades the internet speed by merely 20 to 30%. But for base speeds above 50Mbps, the encryption/decryption process can saturate the CPU, so network cards might have to wait significantly for the CPU to process data before sending/receiving more data. The ratio with which the internet speed degrades grows higher when the base speed gets higher. Simply put, there’s a lot of processing power to consider when it comes to making sure your data packets are processed efficiently. 

Another factor that affects internet speed while connected to a VPN is IP header translation. The client origin IP is tunnelled inside VPN IP on the client end, similarly its un-tunnelled at VPN server while traffic goes upstream. Similar steps are applied to traffic coming downstream. This ensures your IP doesn’t get leaked, maintaining your user experience, but doesn’t sacrifice your user experience.

Apart from general encryption/decryption and IP header tunneling/un-tunneling, we also need to consider the factors that further affect internet speeds when connected to a VPN: the location of your VPN server and the VPN protocol.

Location of VPN server

As was seen in the case of speedtest.net, changing the location of speedtest server had an effect on the internet speed, and the same is the case when it comes down to the location of a VPN server

In the example below, a VPN is connected to a server in Germany, and the speed is tested on a server also located in Germany.

But in this example, the VPN is connected to a server in Germany, while the speed is tested with a server in Los Angeles.

And here, we’re connected to a VPN server located in Los Angeles, while the speed is tested with a server in Los Angeles.

VPN protocol

Multiple sets of VPN protocols are offered on different platforms. On Windows, OpenVPN UDP, OpenVPN TCP, and IKev2 are offered. 

Here’s the internet speed using the IKEv2 protocol on Windows:

Here’s the internet speed using the UDP protocol on Windows:

Here’s the internet speed using the TCP protocol on Windows:

On macOS, Ikev2 and IPsec are offered.

Here’s the base speed on macOS without a VPN:

Here’s the internet speed using the IKEv2 protocol on macOS:

Here’s the internet speed using the IPsec protocol on macOS:

On Linux, OpenVPN TCP and UDP are offered.

Here’s the base speed on Linux without a VPN

Here’s the internet Speed when connected to a VPN on OpenVPN UDP:

Here’s the internet Speed when connected to a VPN on OpenVPN TCP:

As can be seen, different protocols offer different internet speeds. Normally OpenVPN UDP and IKev2 have better internet speeds than OpenVPN TCP. But one can always test which of the protocols are performing better with which location. 

Tweaking data encryption settings on Windows

The VPN application doesn’t provide a way to change the strength of the cipher, but Windows does provide a mechanism to change the settings for IKev2 protocol. To do that, you will have to disconnect from the App and manually change the settings and connect to the VPN manually using an app called rashpone.

As can be seen, the more stronger the cipher, the lower the internet speed with a VPN.

Tweaking transmit and receive queue length on Linux (Ubuntu)

To change the transmit queue length on Linux, you will want to look at the txqueuelen variable. TIncreasing the size of the transmit queue has a direct effect on the upload speed as can be seen following screenshots below:

Txqueuelen = 100

Txqueuelen = 1000

Txqueuelen = 5000

The command to modify txqueuelen is ifconfig tun0 txqueuelen 5000

Similarly, the receive queue size is specified by system parameter netdev_max_backlog. The command to modify the netdev_max_backlog is sysctl -w net.core.netdev_max_backlog=1000.

Conclusion

When connected to a VPN, speeds degradation are expected, and for base speeds of 50 Mbps, the degradation would be somewhere between 10% to 30%. As the base speeds grow higher than that, so does the degradation ratio. That being said, there are still some configurations that can be played with to get the maximum speed possible when connected to a VPN. Consider choosing a location closer to you and testing all available protocols on the given platform so you can find what combination works best for you. You can also tweak some settings on Linux and Windows operating systems to get the maximum speed.

Have Your Say!!

Join 3 million+ users to embrace internet freedom

Signup for PureVPN to get complete online security and privacy with a hidden IP address and encrypted internet traffic.