Battle of L2TP, RRAS vs SoftEther

Battle of L2TP, RRAS vs SoftEther
“A stolen picture from the West to grab attention”

In our previous articles, we discussed how to work with VDS Windows Server Core 2019 on our new UltraLight plan for 99 rubles per month. We offer another way to use this plan. This time, we will talk about what to choose if you need a VPN for casual use or a static IP address, which is, by the way, more convenient to use instead of Hamachi and everything else if you really want to play Heroes or Warcraft 3 over a local network. We won’t talk about setup, we will discuss performance.

Testing methodology

RRAS and SoftEther were chosen based on ease of installation, L2TP protocol support, and the ability to manage through a GUI.

For SoftEther and RRAS, an L2TP connection with a shared key was used through standard Windows tools. It was set up as tested.

The operating system for SoftEther is Ubuntu 18.04 LTS, and for RRAS it is Windows Server Core 2019. All operating systems received the latest updates as of November 21, 2019, before testing. 

1 GB of RAM was allocated to the Hyper-V second generation virtual machine, along with CPU limits. The order of the test group execution is as follows:

On all 8 cores:

  1. Unlimited
  2. Limit at 50%
  3. Limit at 25%
  4. Limit at 5%
  5. Limit at 1%

On 4 cores:

  1. Unlimited
  2. Limit at 50%
  3. Limit at 25%
  4. Limit at 5%
  5. Limit at 1%

On a single core:

  1. Unlimited
  2. Limit at 50%
  3. Limit at 25%
  4. Limit at 5%
  5. Limit at 1%

Default settings were applied on all VPN servers, and NAT was enabled. All virtual machines are on one host and the same virtual switch.

To assess network performance, testing was conducted between the server and client without a VPN connection.

The test was conducted using TamoSoft Throughput Test in TCP only mode, with the average values taken for tables and graphs. Data was collected over 5 minutes and 30 seconds for each test.

For a better understanding of the limits of both implementations, we will first test the bandwidth of the virtual switch.

Battle of L2TP, RRAS vs SoftEther
Here are the results from the testing software. All subsequent results will be wrapped in tables.

As we can see, the virtual switch is not a bottleneck in testing and nearly achieves the theoretical limit of 10 gigabits.

Battle of L2TP, RRAS vs SoftEther
How the test network looked 'physically'

Results:

On a single core:

Battle of L2TP, RRAS vs SoftEther
Battle of L2TP, RRAS vs SoftEther
In terms of single-core discipline, both servers perform equally.

On 4 cores:

Battle of L2TP, RRAS vs SoftEther
Battle of L2TP, RRAS vs SoftEther
On 8 cores:

Battle of L2TP, RRAS vs SoftEther
Battle of L2TP, RRAS vs SoftEther
Here we can clearly see which solution scales best with the number of cores. By reducing the performance of each core, RRAS compensated for losses with quantity, something SoftEther did not do.

Memory consumption by the system

Battle of L2TP, RRAS vs SoftEther
The amount of RAM consumed by SoftEther increased with the number of cores, rising from 122 MB to 177 MB, but is still less than that of RRAS.

The RRAS service itself consumes about 200 megabytes of memory, excluding the total system consumption.

Throughput under different conditions

Battle of L2TP, RRAS vs SoftEther
Total throughput without any CPU limitations.

Battle of L2TP, RRAS vs SoftEther
If you still haven't chosen the right solution for you, perhaps this table will help you decide. It shows the total throughput under CPU shortage conditions.

Battle of L2TP, RRAS vs SoftEther
Note that on four and one core, the performance of SoftEther is higher than on eight. Such low performance is not encountered anywhere, but the testing itself indicates how well the algorithm truly scales with the number of cores.

Conclusion:

Connecting to SoftEther with CPU restriction did not succeed on the first attempt; it was necessary to first increase the limit, connect, and then reduce the limit. This imposes a limitation on its deployment in very constrained environments. RRAS always logs in instantly.

If you have a machine with many cores, prefer RRAS. For SoftEther, you can leave it with 4 cores. The author would have, if used, allocated just one core to it.

What and where to place – you decide. If you have 99 rubles for VPS a Windows Server on board, RRAS is still the optimal choice. 

Battle of L2TP, RRAS vs SoftEther

Source: habr.com

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster