TekLager router performance comparison
This article has been updated on January 2, 2024.
Note: the text of this article is periodically updated to include the new hardware we continously bring to the store. Occasionally, the text will be out of date when new router models appear and we did not yet have time to update the article.
The data and charts in the spreadsheet are always up to date - if you are looking for the new models view the source-data spreadsheet. It's being updated on an ongoing basis.
---------
If you plan to run an OpenVPN server/client on your router or IPS/IDS software, you may be interested in exact CPU performance before making a purchase. For that reason, we have executed a CPU benchmark on all routers offered in the store.
Methodology
All tests have been executed using sysbench 1.0.18 and openssl 1.1.1d on the Debian 10 4.19.0-9-amd64 system.
The following commands have been executed to measure raw CPU performance. Note, we measure 1 thread, 2 threads, and 4 threads.
sysbench --test=cpu --cpu-max-prime=50000 --time=30 run --threads=1 sysbench --test=cpu --cpu-max-prime=50000 --time=30 run --threads=2 sysbench --test=cpu --cpu-max-prime=50000 --time=30 run --threads=4
And these commands were executed to measure the encryption/decryption performance.
openssl speed -elapsed -evp aes-128-cbc openssl speed -elapsed -evp aes-256-cbc openssl speed -elapsed -evp aes-128-gcm openssl speed -elapsed -evp aes-256-gcm
Data
The raw results are available to download on each product page, but that's a little dry to read and analyze, so here's a read-only google spreadsheet with the data and charts https://docs.google.com/spreadsheets/d/1szYC2-mia33DI27LQ4iH-gQxBFNmIa3Ih9hrkVaLSTg
Single-core CPU performance
The single-thread performance is essential for applications that can only take advantage of one CPU core. For example, Snort and OpenVPN are single-threaded. While single-core performance is still an important factor when choosing hardware, it's becoming less important as the new generation of software takes advantage of multiple CPU cores. Suricate (IDS/IPS) and Wireguard VPN are modern alternatives to Snort and OpenVPN.
APU routers used to be the golden standard for open-source routers, but as the chart above shows, CPU performance is not competitive in 2024. While the J6412 model is similarly priced, it's also 3.5x more performant.
The N100 model is the first representative of the next-generation hardware with DDR5 memory and 13th generation CPU. It's slightly more expensive than J6412 but about 2x as performant in single-threaded applications.
Multi-core CPU performance
Multiple-core performance is important for multi-thread applications such as Suricata or Wireguard VPN.
Most software can take advantage of multiple cores, so this chart is more important to most users.
The comparison between the low-end APU and the high-end 20-core Xeon CPU shouldn't be made. These two devices have completely different applications and price points.A comparison between APU and J6412 or N100 should be made instead. These three models are aimed at the regular home/office users needing solid router hardware.
The N100 clearly wins in this test. It's about 8x of APU performance and about 2x of J6412.
If you want to run IDS/IPS or multiple VMs, the N305 model has the horsepower to be quite a powerful server.
Of course, if you need a rack server with 128G memory, the Xeon W-1290 is better.
CPU performance summary
The results speak for themselves. When looking at the CPU power, APU is no longer competitive. You still may want to buy it for other reasons, such as its small size and low energy consumption.
The numbers for i5-10210U are surprisingly low. I'll re-run the tests later to verify it's not a blip.
Encryption/Decryption performance
All CPUs have AES-NI support, so the encryption/decryption should be relatively fast. Let's compare two popular algorithms AES-CBC and AES-GCM.
AES-CBC performance comparison
The AES-CBC performance follows roughly the CPU performance from the previous chart. No big surprises here.
The AES-CBC performance scales roughly with CPU performance.
AES-CBC is an older, less performant algorithm. It's also less secure than AES-GCM, so we should not pay too much attention to these numbers, as everyone is encouraged to use AES-GCM these days.
AES-GCM performance comparison
I expected the AES-GCM test to be proportional to the CPU test, but that's not the case. Intel CPUs have much better AES-GCM acceleration than APU.
J6412 is 5x better than APU, N100 is 10x better.
APU2 can achieve roughly 140Mbit/s throughput on OpenWRT with AES-128-GCM.
Based on this chart, we estimate that J6412 should be able to achieve ~840Mbps, and N100 can run at 1.4 Gbps.
Power consumption comparison
Power consumption is an important factor for devices that are always on 24/7/365.
All routers we offer have efficient, low-power CPUs. I'm excluding the Xeon Rack server from this comparison because you don't buy that hardware to save on electricity.
There are many ways to measure power consumption. One can look at the TDP numbers published by the CPU manufacturers. These numbers should be relatively close to idle power consumption on most hardware, but that's not always the case, as our testing shows.
We execute our own tests in 3 workloads
- Idle - the router is booted, but doesn't do much work at all beyond running the operating system.
- 1 thread load test - the router utilizes 1 CPU core to 100%.
- Stress test - the router utilizes all CPU cores at 100%. This is not realistic in real life, but it's good to see what is the maximum power consumption in case you plan to mine crypto or something like this...
Some general notes about the results
- While APU consumes around 6W idle and under load, other routers are significantly more energy-demanding.
- APU is about 40-100% more energy efficient than J6412.
- Both APU and N100 CPUs are rated at 6W TDP, but the real-life test results show vastly different energy profiles. APU is 70-270% more energy efficient.
Assuming that the router is operating around the clock, APU consumes 58.7kWh/year, J6412 consumes about 94.6kWh, and N100 about 114kWh. This isn't really significant in comparison to other appliances running at home. It's in a similar range as running one modern light bulb 24/7.
Summary
Originally, when I wrote this comparison 4-5 years ago, the APU router came on top due to the price and energy consumption. Things have changed. APU did not improve in performance, and the price increased considerably due to component shortages. APU hardware production will also be discontinued by the end of 2024. It's time to move on to other devices.
The J6412 and N100 are here to take APU's place. They have more CPU power, faster memory, more memory, and faster network interfaces.
If you need 10Gbps network interfaces, C3558R and W-1290 are good options.
If you plan to run multiple VMs with Proxmox or VMWare, consider N305 and 10210U due to 8 CPU cores and high memory capacity.