My internet connection is getting upgraded to 10 Gbit next week. I’m going to start out with the rental router from the ISP, but my goal is to replace it with a home-built router since I host a bunch of stuff and want to separate my out home Wi-Fi, etc onto VLANs. I’m currently using the good old Ubiquiti USG4. I don’t need anything fancy like high-speed VPN tunnels (just enough to run SSH though), just routing IPv6 and IPv4 tunneling (MAP-E with a static IP) as the new connection is IPv6 native.
After doing a bit of research the Lenovo ThinkCenter M720q has caught my eye. There are tons of them available locally and people online seem to have good luck using them for router duties.
The one thing I have not figured out is what CPU option I should go for? There’s the Celeron G4900T (2 core), Core i3 8100T (4 core), and Core i5 (6 core). The former two are pretty close in price but the latter costs twice as much as anything else.
Doing research I get really conflicting results, with half of people saying that just routing IP even 10 Gbit is a piece of cake for any decently modern CPU and others saying they experienced bottlenecks.
I’ve also seen comments mentioning that the BSD-based routing platforms like pfSense are worse for performance than Linux-based ones like OpenWRT due to the lack of multi-threading in the former, I don’t know if this is true.
Does anyone here have any experience routing 10 Gbit on commodity hardware and can share their experiences?
You need at least one 10G port which is a pain on the Lenovo. There is a 10G passively cooled Mikrotik with sufficient power available.
many people just buy junk like this https://www.amazon.com/Mikrotik-Router-Switch-CRS305-CRS305-1G-4S/dp/B08437RDM1 it’s cheaper in the long run.
You will need a good 10Gb nic, I have been using Intel nic’s if you use a Intrusion Prevention System that can eat away at the CPU, also more RAM helps like 8GB’s or more for IPS, I use 16GB’s for IPS + ZFS and a nice Switch can help a lot as it can do DNS and the works, more or less i use a firewall box to a Switch and use a Layer 3 Switch for routing, some can do 20+Gb’s routing.
I can only look at Mikrotik gear in jealousy since they don’t have a reseller here, so all that’s available are overpriced, un-warrantied gray imports…
The product you linked is a cheap fanless 10G layer 2 switch. It’s ok for the price, as fanless 10G enterprise switches are hard to get used.
There are suitable 10G capable Mikrotik routers however. This one, for instance: https://www.amazon.de/MikroTik-RB5009UPr-S-IN/dp/B0BBW159WW If you want wirespeed 10G routing on two or more ports it’s going to get expensive and/or noisy fast. A good compromise is a single 10G port router in a router on a stick mode used with a cheap 10G layer 2 switch.
The one i linked is both a router and or switch, you can get cheap switches for like $300 that do really well.
Wire speed L2 in hardware is cheap, but layer 3 is not (and is typically limited to few k routes for campus type of switches). I have a Quanta LB 10G and a Brocade ICX 1G/10G/40G switches for lab use, which are hot and screamy but were cheap used. I would not trust software L3 implementations to not drop packets at high rates.
I am saddened to see that this thread had no mention of how many horses it takes to run a router. What do y’all think? Would one be enough? It would need to work in shifts to keep up time at 100%. Maybe 3 to be safe?
We also need to consider the practical aspects. Who mucks after the horses? Who feeds them? Do we need a stall? Does it need to be air conditioned in the summer/winter?
Core i3 is fine, celeron can route, but you don’t have as much headroom, or room for firewall rules, etc. Recommend Intel x520 or mellanox cx3 or newer, though the cx2 is perfectly fine.
The bs about bsd being slower is maybe 15 years old at best?
Bsd is a monster for routing.
Run 25gbe routing, still can get by on your 4 core, but I throw some serious xeons at it anyway.
Thanks for the Intel x520 recommendation, those are looking like a much better deal right now than the Mellanox cards I was looking at.
Glad to hear it about the BSD networking!
I’m still trying to avoid the Xeons for power consumption reasons, hehe, although it would be a lot more fun for sure!
Your uplink capabilities are way different than your actuality. Get the service first, do some measurements, then start planning.
Yeah I’m not ordering anything until I have the connection up and running, which is why I opted to rent the ISP router to begin with, but looking at results online that others on the same ISP have posted, I can probably expect up to around 7 Gbit real-world so I’ve been thinking that I will at least want something better than the standard 1 Gbit or even 2.5 Gbit stuff out there, hence why I’m trying to research what the hardware requirements actually are!
Very interesting, thanks for the links
I don’t know the answer, but I do know I’d at least start off looking for hardware with a dedicated ASIC for routing, not general-purpose PC hardware doing routing with the CPU.
The problem is that it all looks really $$$, even on the used market