← Back to context

Comment by adrian_b

11 hours ago

10 Gb/s Ethernet interfaces do not require 20 Gb/s USB ports for reaching maximum performance, they already reach that on 10 Gb/s USB ports, despite of what the writer of TFA believes.

The main application of 20 Gb/s USB ports is to connect external NVMe SSDs, when faster USB 4 or Thunderbolt ports and SSDs are not available.

For an external NVMe SSD on USB, a 20 Gb/s USB port will double the throughput, unlike for a 10 Gb/s Ethernet interface where any improvements are completely negligible.

I do not think that 20 Gb/s USB Type C ports are "very rarely supported". Every mini-PC or desktop motherboard that I have bought during the last 10 years had at least one such USB port.

Such ports appear to be rare only on laptops, because most laptops have very few USB ports.

> 10 Gb/s Ethernet interfaces do not require 20 Gb/s USB ports for reaching maximum performance, they already reach that on 10 Gb/s USB ports, despite of what the writer of TFA believes.

While this may be theoretically (almost) possible, I’m quite sure this is absolutely not the case in practice.

For example see these benchmarks of one of the more recent USB to Ethernet chipsets [1], that can reach ~9.5 Gb/s on USB 3.2 Gen 2x2 but only between ~6.2 to ~7.3 on 3.2 Gen 2x1 laptops.

1. https://www.jeffgeerling.com/blog/2026/new-10-gbe-usb-adapte...

Edit: Haha, didn’t realise TFA was by the same author as these benchmarks but he’s done a lot of testing and benchmarking of these kind of devices over a long time, and it agrees with all the other benchmarking from other people I’ve seen too!

In Ethernet, "10 Gbps" refers to the actual Ethernet frame throughput. The raw physical coding rate is usually somewhere around 10.3125 Gbps to account for this.

In USB 3.2 Gen 2x1, the actual USB packet throughput is 9.697 Gbps and the "10 Gbps" refers to the raw encoding rate.

This difference means you are guaranteed to lose at least a few hundred Mbps off maximum performance. It's not really a practical concern, but it's not an error to say 10 Gb/s USB ports lack the bandwidth needed to support the maximum performance of a 10 Gbps USB Ethernet adapter.

If you read carefully (emphasis mine):

> The main problem is USB-C's bandwidth complexity - especially when paired with the Realtek RTL8159 Ethernet controller, which requires USB 3.2 Gen 2x2 (20 Gbps) to get the full rated 10 Gbps speeds

Jeff's statement wasn't that 10 Gb/s Ethernet requires 2x2. It's that that requirement comes from a very specific controller.

>Every mini-PC or desktop motherboard that I have bought during the last 10 years had at least one such USB port.

Are you talking about USB 3.2 Gen 2x2 though? Because I've never seen any MiniPC with this port and as for motherboards, I checked my local retailer and only ~15% of currently sold ones have Gen 2x2 (mostly high-end ones).

  • Most of my mini-PCs have been Intel NUCs (or more recently an ASUS NUC). I also had some Gigabyte and Zotac mini-PCs and a few others from less well-known vendors. IIRC almost all had one such 20 Gb/s USB Type C port, unless they had one or two faster Thunderbolt ports.

    With mini-PCs, I frequently use external SSDs, so I certainly used those ports at their full speed.

    The only mini-PCs that I had in recent years without such a fast USB port were Arm-CPU based, as those are typically starved in fast peripheral interfaces in comparison with the Intel/AMD CPUs.

Ethernet is duplex though. 20Gb/s is the max throughput a 10Gb NIC can achieve.

> 10 Gb/s Ethernet interfaces do not require 20 Gb/s USB ports for reaching maximum performance, they already reach that on 10 Gb/s USB ports, despite of what the writer of TFA believes.

The first half is true, the second half is not. Remember overhead. You don't need 20GB/sec, but you need to take into account the USB overhead.

What about overhead? Can you truly do 10Gb/s networking on a 10Gb/s USB port? Would having such NIC on a 20Gb/s USB port not result in higher speeds?

  • Both 10 Gb/s Ethernet and 10 Gb/s USB have bit data rates that are 3% lower than 10 Gb/s, due to encoding (64/66 bits for Ethernet, 128/132 bits for USB).

    So the their maximum speed is approximately 9.7 Gb/s.

    Then for Ethernet there is a protocol-dependent overhead, e.c. depending on whether TCP or UDP is used, and depending on whether standard packets or jumbo packets are used.

    The TCP overhead can reach in the worst case up to close to another 3%, reducing the achievable TCP throughput to around 9.4 Gb/s.

    The USB frames add some extra overhead, but it is normally not important in comparison with other factors that can reduce the throughput.

    All that a 20 Gb/s USB port can do is to reduce the overhead of the USB frames, but that is a negligible improvement. Using jumbo Ethernet frames (which are 6 times bigger than standard frames), if both ends support them, is likely more useful for increasing the throughput, than using a 20 Gb/s USB port.

    • 10 Gig ethernet is 10GBps usable rate (before packet overhead). The line rates are higher to accommodate this. For 10GBase-R, it's typically 10.3125 GBps, with a 64/66 encoding. For 10GBase-T, it's 4 lanes with PAM-16 at 800 MBaud -> 12.8 Gbps raw.

  • It uses 128b/132b encoding so 10Gb/s USB ≈ 9.69Gb/s you do then have USB framing overhead but it's probably around 2% on typical 1500B ethernet frames. So all in you are losing probably 5% or so to overhead.

    I am of the opinion that 5Gbe is a much more sensible speed for a laptop adapter right now as it uses half the power and can obviously run full wack on 10Gb/s USB so you're looking at like 5Gbe vs ~9.4Gbe.

    • Stop insisting on Cat.6A (and related) copper cables for speeds beyond 1000BASE-T (maybe beyond 2.5G by now), just use dumb multi mode fiber it's way easier technology-wise and if you want power you can have that as well.

      At distances where Cat.6A is even an option the demands on the fiber are very low. And it uses less power than the BASE-T PHY. The cable at least without integrated power is very thin as well, unless you can't respect it enough to not kink it, in which case you'd want a thicker one just to prevent you from being able to break the fiber.

      1 reply →