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?

  • poVoq@slrpnk.net
    link
    fedilink
    English
    arrow-up
    15
    ·
    edit-2
    1 day ago

    If you connect via 10gbit PCIe extension cards it is often a question of how many PCIe channels the CPU has and if the mainboard you are using has these connected directly to the CPU or needs to pass them through the mainboard chipset which is much slower.

    • kalleboo@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      1 day ago

      These ThinkCenter M720q machines I’m looking at all seem to have a single PCIe 3.0 8x card slot, regardless of the CPU, and that seems to be all that the Mellanox ConnectX cards need according to their spec sheets, so hopefully that is good.

    • cmnybo@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      4
      ·
      1 day ago

      For a dual port card, you will want an 8 lane PCIe 3.0 slot connected to the CPU. Almost any desktop CPU will have enough lanes since you won’t be using a graphics card. You can get by with a 4 lane slot, but you won’t be able to max out both ports bidirectionally at the same time.