Reliable 25 Gigabit Ethernet via Thunderbolt
57 points
4 days ago
| 7 comments
| kohlschuetter.github.io
| HN
consp
1 hour ago
[-]
I'm surprised you are only getting 20gbit/s. I did not expect PCIe to be be the limiting factor here. I've got a 100gbit cx4 card currently in a PCIe3 X4 slot (for reasons, don't judge) and it easily maxes that out. I would have expected the 25g cx4 cards to be at least able to get everything out of it. RDMA is required to achieve that in a useful way though.

Edit: forgot is isn't "true" PCIe but tunneled.

reply
kohlschuetter
1 hour ago
[-]
The limitation is Thunderbolt (32 Gbps theoretical limit for PCIe 3 tunneling).
reply
zokier
1 hour ago
[-]
Note that you can do point-to-point network links directly with thunderbolt (and usb4).

https://support.apple.com/guide/mac-help/ip-thunderbolt-conn... etc

reply
kohlschuetter
1 hour ago
[-]
Yes! However, I got around 15 Gbps with a Thunderbolt-only setup (TB3/TB4) = only 75% of the Ethernet setup.

You'd also mostly be limited to short cables (1-2m) and a ring topology.

reply
madduci
25 minutes ago
[-]
I still have issues under Linux (Kernel 6.14) and Thinderboldt 4 docking stations. The simply don't get recognised.

But this is a cool solution

reply
kohlschuetter
9 minutes ago
[-]
Thanks! Have you tried the boltctl/rescan setup I mentioned in the post? It should get you going, as long as your Thunderbolt/USB4 setup is correct.

If you're using an adapter card to add Thunderbolt functionality, then your mainboard needs to support that, and the card must be connected to a PCIe bus that's wired to the Intel PCH, not to the CPU.

reply
userbinator
2 hours ago
[-]
Thunderbolt is basically external PCIe, so this is not so surprising. High speed NICs do consume a relatively large amount of power. I have a feeling I've seen that logo on the board before.
reply
kohlschuetter
2 hours ago
[-]
I don't know how to measure the direct power impact on a MacBook Pro (since it's got a battery), but the typical power consumption of these cards is 9 W, not much more than Aquantia 10 GBit cards.

Also, if you remember where you saw that logo, please let me know!

reply
consp
1 hour ago
[-]
Plus 1-2.5w per active cable. You need the heatsinks as the cx4 cards expect active airflow, and active transceivers as well.

I have a 10gbit dual port card in a Lenovo mini pc. There is no normal way to get any heat out of there so I put a 12v small radial fan in there as support. It works great at 5v: silent and cool. It is a fan though so might not suit your purpose.

reply
xattt
2 hours ago
[-]
The PCI-E logo or the “octopus in a chip” logo? I’m more interested in the latter.
reply
otterpro
41 minutes ago
[-]
> reduces temperatures by at least 15 Kelvin, bringing the ambient enclosure temperature below 40 °C,

I had to do a double-take when it mentioned Kelvin since That is physically impossible.

reply
maratc
25 minutes ago
[-]
Isn't "reduces temperatures by 15 Kelvin" the same as "reduces temperatures by 15 Celsius"?
reply
sigio
26 minutes ago
[-]
reduces temperatures by at least 15 Kelvin == the same as reduces temperatures by at least 15 Celcius.

It 'reduces it by' ... not reduces it TO

reply
Nextgrid
1 hour ago
[-]
Neat, but the thermal design is absolutely terrible. Sticking that heatsink inside the aluminum case without any air circulation is awful.
reply
kohlschuetter
1 hour ago
[-]
Yeah, it's because the network card adapter's heatsink is sandwiched between two PCBs. Not great, not terrible, works for me.

The placement is mostly determined by the design of the OCP 2.0 connector. OCP 3.0 has a connector at the short edge of the card, which allows exposing/extending the heat sink directly to the outer case.

If somebody has the talent, designing a Thunderbolt 5 adapter for OCP 3.0 cards could be a worthwhile project.

reply
Nextgrid
1 hour ago
[-]
A Flex PCB connecting the OCP2 connector would allow to put the converter board behind the NIC board, allowing the NIC board to be exposed to the aluminum case to use the case itself as a heatsink (would need a split case so the NIC board can be screwed to one side of the case, pressing the main chip against it via a thermal pad).

As a stop-gap, I'd see if there was any way to get airflow into the case - I'd expect even a tiny fan would do much more than those two large heatsinks stuck onto the case (since the case itself has no thermal connection to the chip heatsink).

reply
kohlschuetter
1 hour ago
[-]
My goal was to get a fanless setup (for a quiet office).

If that's not a requirement just get the Raiden Digit Light One, which does have a fan (and otherwise the same network card).

If I could design an adapter PCB myself, I would go straight to OCP 3.0, which allows for a much simpler construction, and TB5 speeds.

Alternatively, there are DELL CX422A rNDC cards (R887V) that appear to have an OCP 2.0 connector but a better heatsink design.

reply
consp
1 hour ago
[-]
I'd be more worried about cooling the transceivers properly.
reply
kohlschuetter
32 minutes ago
[-]
My optical transceiver gets to around 52 °C (measured via IR camera), well below its design limit, so that's not bad.

If truly concerned, one could use SFP28 to SFP28 cage adapters to have the heat outside the case, and slap on some extra heatsinks there.

reply
cs02rm0
2 hours ago
[-]
Now I just have to contrive the circumstances where this is useful to me. :)
reply
mcny
2 hours ago
[-]
I don't know about the Ethernet part but it bothers me that even wifi has become faster than the wired USB port on our phones.

All I want to do is copy over all the photos and videos from my phone to my computer but I have to baby sit the process and think whether I want to skip or retry a failed copy. And it is so slow. USB 2.0 slow. I guess everybody has given up on the idea of saving their photos and videos over USB?

reply
diogocp
2 hours ago
[-]
> USB 2.0 slow

Many phones indeed only support USB 2.0. For example the base iPhone 17. The Pro does support USB 3.2, however.

> I guess everybody has given up on the idea of saving their photos and videos over USB?

Correct.

reply
jacquesm
2 hours ago
[-]
Wifi is fast but the latency is terrible and the reliability is even worse. It can go up and down like a yo-yo. USB is far more predictable even if it is a bit slower.
reply
drawfloat
1 hour ago
[-]
I feel like this is an artifact from the late 2010s when the talk was of removing the port completely from phones, where that was being touted alongside swapping speakers with haptic screen audio as a way to make them completely waterproof.

As wireless charging never quite reached the level hoped – see AirPower – and Google/Apple seemingly bought and never did anything with a bunch of haptic audio startups, I figure that idea died....but they never cared enough to make sure the USB port remained top end.

reply
ranguna
2 hours ago
[-]
Why don't you get a phone with 3.0+ USB?

My last two phones in the last 4 years had at least USB 3.1

reply
walterbell
1 hour ago
[-]
> given up on the idea of saving their photos and videos over USB?

Until USB has monthly service business to compete with cloud storage revenue.

reply
cirrusfan
2 hours ago
[-]
> but I have to baby sit the process and think whether I want to skip or retry a failed copy

Do you import originals or do you have the "most compatible" setting turned on?

I always assumed apple simply hated people that use windows/linux desktops so the occasional broken file was caused by the driver being sort-of working and if people complain, well, they can fuck off and pay for icloud or a mac. After upgrading to 15 pro which has 10 gbps usb-c it still took forever to import photos and the occasional broken photos kept happening, and after some research it turns out that the speed was limited by the phone converting the .heic originals into .jpg when transferring to a desktop. Not only does it limit the speed, it also degrades the quality of the photos and deletes a bunch of metadata.

After changing the setting to export original files the transfer is much faster and I haven’t had a single broken file / video. The files are also higher quality and lower filesize, although .heic is fairly computationally-demanding.

Idk about Android but I suspect it might have a similar behavior

reply
consp
1 hour ago
[-]
I recently did a complete disk backup/clone which only took 15 minutes instead of hours. Maxed the SSD which was being backed up at about 2.5GB/s.
reply
rbanffy
2 hours ago
[-]
Wouldn’t this be useful for clustering Macs over TB5? Wasn’t the maximum bandwidth over USB-cables 5Gbps? With a switch, you could cluster more than just 4 Mac Studios and have a couple terabytes for very large models to work with.
reply
kohlschuetter
1 hour ago
[-]
I was hoping somebody would suggest that (and eventually try it out).

With TB5, and deep pockets, you might probably also benchmark it against a setup with dedicated TB5 enclosures (e.g., Mercury Helios 5S).

TB5 has PCIe 4.0 x4 instead of PCIe 3.0 x4 -- that should give you 50 GbE half-duplex instead of 25 GbE. You would need a different network card though (ConnectX-5, for example).

Pragmatically though, you could also aggregate (bond) multiple 25 GbE network card ports (with Mac Studio, you have up to 6 Thunderbolt buses, so more than enough to saturate a 100GbE connection).

reply
rbanffy
1 hour ago
[-]
Too bad Jeff Geerling returned his Mac Studios to Apple. Would be lovely to see how 5x faster RDMA impacts the performance.
reply
notrustincloud
1 hour ago
[-]
rsync...grsync...a solution for broken partial batch transfers since forever
reply
sschueller
1 hour ago
[-]
Would be useful if I had to debug my internet link and I only had a laptop.
reply
kohlschuetter
1 hour ago
[-]
It also works on iPad Pro :)
reply
kohlschuetter
1 hour ago
[-]
Remote Time Machine backups are snappier than ever before :)
reply
e40
2 hours ago
[-]
Porn?
reply
leosanchez
2 hours ago
[-]
What kind of porn requires 25 gigabits ?
reply
LeoPanthera
2 hours ago
[-]
A lot of porn.
reply