this post was submitted on 07 Nov 2024
35 points (94.9% liked)

Selfhosted

39980 readers
735 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

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 are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 13 points 1 day ago (3 children)

This is why I came here. I think you'd need at least three. One to work while the other sleeps, and a spare in case one gets injured.

[–] [email protected] 8 points 1 day ago (2 children)

3 horses = 3 horsepower, which translates to a whopping 393.6 Duckpower.

Honestly, why are we still using horses as the standard here? Ducks are clearly the superior metric. So if you're like me and prefer a more feathered approach, just remember:

3 horses = 3 horsepower = 393.6 ducks You’re welcome.

(PS: Just imagine 393.6 ducks handling 10Gb... now that’s efficiency.)

[–] [email protected] 1 points 21 hours ago (1 children)

Hmm, is that waddling or flying power? Swimming?

Also, the only reason for the 3 horsepower is so the others can rest, so we'd probably need far fewer than 393.6 ducks, I think we could get away with <100, provided we can manage their sleep cycles properly.

[–] [email protected] 2 points 16 hours ago

Alright, let’s get into the nitty-gritty of Duckpower.

First, let's settle the "waddling vs. flying vs. swimming" debate. Horses aren't big on flying, so we’re talking waddling power here. Until someone locates a Pegasus, we're limited to the traditional land-bound horsepower. If you want swimming power, I guess you’d need to measure a seahorse?

Now, here’s where it gets serious: according to the brilliant minds at Art of Engineering, we can calculate Duckpower using a clever formula. They took the mass of a duck, compared it to a horse, and ran it through Kleiber’s Law. The answer? One horsepower = 131.2 Duckpower. So, back to our math:

3 horsepower = 3 x 131.2 Duckpower = 393.6 ducks waddling their hearts out.

But wait! We probably don’t need all 393.6 ducks if we give them some solid shift schedules. Horses only get 3 HP so two can rest; following this logic, we’d only need around 100 well-rested ducks, provided they get naps and stay hydrated.

So, let’s optimize our duck workforce with a shift schedule. Assuming we only need 100 ducks, here’s the plan:

Duckpower Shift Schedule:

Total Ducks: 100

Working Ducks per Shift: 25

Shift Duration: 2 hours on, 6 hours off (plenty of time for snacks and naps)

In a day, we’d run 4 shifts like this:

  1. Shift 1: 25 ducks start strong at 8:00 AM, waddling with purpose.

  2. Shift 2: Fresh 25 ducks take over at 10:00 AM while Shift 1 ducks hit the ducky lounge for snacks and a nap.

  3. Shift 3: At 12:00 PM, another 25 ducks clock in to keep those wheels turning.

  4. Shift 4: Finally, at 2:00 PM, the last 25 ducks take over while the others catch up on R&R.

With this cycle, each duck works only 2 hours out of every 8, staying energized, waddling at peak efficiency, and ready for action.

TL;DR: 3 horsepower = 393.6 ducks waddling but if we set up a 4-shift system, we can pull this off with only 100 ducks working 2 hours each, plus snack breaks.