Almost two years ago, we wrote it was possible to add 10GbE to your system with a M.2 network card based on a Marvell AQC113 chip for about $170. But I’ve now been made aware prices may have come down a lot as another M.2 10GbE network based on the Marvell AQC107 chipset is now selling for $86 including shipping (to Thailand).
Just like the previous model, the M.2 card does not include an RJ45 port, instead, it’s included in a separate board that’s mountable to a standard PC plate and connected through a flat cable to the M.2 module.
Specifications:
- Network controller – Marvell AQC107
- PCIe Gen3 x4 10Gbps Ethernet controller supporting 10GBASE-T, 5GBASE-T, 2.5GBASE-T, 1000BASE-T, and 100BASE-T (but not 10BASE-T)
- Aquantias AQrate PHY up to 10GbE using Cat 6a cables, as well as 5 GbE and 2.5 GbE over 100 meters with Cat 5e cables
- Energy Efficient Ethernet (EEE)
- IEEE1588v2 precision time protocol
- Large send offload (LSO), receiver scaling (RSS), direct cache access (DCA), and headers’ checksumming
- IPv4, IPv6 and IPv6/UDP checksum offload
- Jumbo frames up to 16kbytes
- Quality of Service (QoS)
- Up to eight traffic classes and Data Center Bridging (DCB)
- Management functions – IPMI pass-through via SMBus or NC-SI, iSCSI boot, Wake-on-LAN, PXE remote boot, VLAN filtering
- RJ45 port via external board connected over FPC cable
- Misc – Heatsink for cooling
- Dimensions – M.2 B+M key module
- Temperature Range – Operating: 0 to 55°C; storage: -40 to 70°C
- Humidity – 90% RH, non-condensing at 35°C
The M.2 10GbE network card is said to come with a CD (for drivers?) and a “short iron piece” for mounting. The seller says it can work with desktop PCs, workstations, servers, and embedded systems with a spare M.2 Key-B or Key-M socket. Supported operating systems include Windows 7/8/8.1/10/Server 2012/Server 2016 32 or 64-bit and Linux distributions with kernel 3.10 and above. Windows 11 is not listed, but I don’t see why it would not work…
Thanks to Willy for the tip.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
I was thinking that plugging this into one of the M.2 ports on FriendlyElec’s CM3588 NAS Kit ( https://www.cnx-software.com/2023/11/27/friendlyelec-cm3588-nas-kit-four-m2-key-m-2280-pcie-gen-3-x1-sockets/ ) would bring slightly less than 8 Gbps of networking capacity with 3 NVME SSD modules, which is clearly not bad at all, especially for the price (i.e. around $200 for a ~8 Gbps NAS). I don’t think there’s any competing solution in that price range 😉
Have you ever tested such a Gen3 x4 card behind just two or one lanes? To confirm in practice what we would expect theoretically: 1/2 or 1/4 the bandwidth and latency remaining (almost) the same?
I started such tests few years ago with LSI HBAs but the test setup was flawed and then no spare time left to retest but the intermediate results were these x8 cards showing way lower performance than expected in a x4 slot…
The bandwidth should not be divided, it should just cap around the lane’s performance. For example when you use a 100G NIC in a PCIe x8 Gen3 slot, you reach the saturation around 62.5 Gbps with a MaxPayload set to 4 kB, a bit less at the default 512. The PCIe controller sends data frames over the links and there’s no 1:1 correlation between these and the network frames. These are just memory accesses for a given size bounded to 512-4096 at once depending on the settings. Thus over 8 lanes, even a single 1.5kB network frame can be spread over 3 different PCIe frames traveling on individual lanes, possibly mixed with two other network frames on the other lanes.
I don’t know what happened for your test, but I’ve already seen some cards downgrade to a lower generation when having some pins not connected, typically when a x8 card is connected into an open-ended x4, probably just to save power and avoid pulling too much from the remaining ones. Maybe in your case something like this happened ?
That’s indeed possible. When I get the chance to repeat the tests this is the first thing to look for 🙂
Boy, that sounds attractive! I’m not an advanced user like you guys and a lot of your stats and followup commentary goes a bit over my head – but I have full 3GBPS unlimited Fiber connection here and I would love to run an inexpensive NAS, just as you mentioned.. i wonder if I could figure it out 😵💫
Yes, I think that you can. I am in the very beginning stages of building what I hope will eventually a personal cloud for data storage, high performance computing, and a database in my home office. If you actually need to do much, it winds up being cheaper than paying for cloud storage and processing in the long run. I will be filming the process on just my phone and expect them to be some of the first uploads to my YouTube channel Alittlebitofeverything when I start posting them sometime this spring. This website has been invaluable to me in planning the hardware and software for the project!
You have absolutly no chance for me to bring this bandwith.Jean Luc have to test this board with all these configuration. I would love to be in the mistake, and it’s near the fist time I dont think in the same way as you and Tkaiser so it’s very interresting ! We will see 🙂
I’ve ordered one anyway so I’ll see.
BTW you didn’t say why you think it will not work, maybe you have some info about that NIC that you’d want to share ?
Last year I pulled 26 Gbps (single direction) and ~23 Gbps (bidirectional) out of the Rock5B (same SoC) from the M2 slot with a 4-port 10G NIC using 4 PCIe3 lanes. So the PCIe controllers are pretty much capable, even in this scenario where the CPUs were saturated, that was still around 7G per PCIe lane. Ah, I just found the link: https://forum.radxa.com/t/rock-5b-debug-party-invitation/10483/289
@Willy: I read your post on the Radar forum. Thank you for posting this. But I do have a question. Is there any way that you could provide the names of the bridge adapter and/or networking card? I would like to try to replicate this, or else possibly try using a 25 Gigabit card with reliable drivers for Ubuntu on (RK3588) ARM, with an occulink cable. I would be thrilled if anyone has suggestions.
Basically I am trying to experiment with clusters on this platform.
Thanks in advance.
What you call the “bridge adapter” is the M2->PCIe ? I can’t find it anymore but it’s quite easy to find, however this one has the particularity to be an open-ended PCIe x4, which thus accepts wider cards. The one on the photo I ordered first was open-ended and not the one I received, but I found another one a week later. Ah, this one looks OK: https://www.ebay.com/itm/383422671249 but better ask the vendor. Regarding the network card, it was an xl710 (4x10G). There’s the xxv710 variant that’s 2×25, but you’d rather use a more modern one based on the E810-xxvda2.
Be careful when you build the drivers, I remember that there’s a dependency on PTP1588 which combined with GNSS which is enabled in the default kernel, fails to build due to a dependency on some x86 specific code that’s not needed. You’ll need to disable the detection of the GNSS stuff during the config. I don’t remember how I proceeded, to be honest, it took me 15mn but I got it to work fine eventually. I didn’t take notes because it was just a quick test.
The AQC107 runs a lot hotter than the AQC113, as that’s the original Aquantia part, with the AQC113 being the second generation, that runs cooler and is more power efficient.
And even with AQC113 people report overheating…
I wouldn’t be surprised, seeing the size of these heat sinks. But I already have an AQC107 on a regular PCIe board, it has a wide heat sink but works OK. Also maybe one should consider providing a thermal contact with the metal enclosure with such boards. All 10G NICs are hot anyway, I remember the intel 540 on 10GbaseT, I had to wait for it to cool down before unplugging it from the server, it was running way too hot for me to just touch it! 10GbaseT like all modern high-speed network encodings uses a particularly power-inefficient coding (PAM16) that has more to do with analog than digital and requires, by nature, more power to encode and to decode than old ones, and sadly, I don’t expect to see a 10G port that remains cold to the touch :-/
Thank you for pointing this out. I think that I will cheat and stick a fan over the heatsink.
I’ve been running a pair of original Aquantia AQC107 cards for a few years now, so yeah, I’m well aware, hence why I pointed it out. It’s by no means insane temperatures, but they need some airflow which might not be as easy with an M.2 card in a mini-ITX board.
Ideal for the wyse 5070! Hopefully someone will design a 3D printed bracket like some of the other adapters
Still waiting and hoping to soon be able to buy 10GbE USB 4.0 and USB 3.2 Gen2 (Gen 2×2) adapters.
There are already several 20Gbps USB 3.2 Gen2 (Gen 2×2) M.2 adapters for NvME available on the market.
You also can already buy 10GbE Thunderbolt adapters but they are all very expensive and they are only compatible with Thunderbolt capable computers.
same hope
I doubt that it makes sense for you to do, but something makes me think that I saw an open source project to do exactly that using an FPGA. If I could just remember where… Crowdsupply.com ? GitHub? One of the California state universities? Sorry, I don’t know.
10 Gbps will most likely still use a bridge chip and run hot, but Realtek has a low-power and relatively inexpensive 5 Gbps option coming. The PCIe version has just started to appear on some motherboards, so the USB version shouldn’t be too far behind.
https://www.techpowerup.com/309465/realteks-5-gbps-ethernet-solutions-will-reduce-cost-and-power-draw-significantly
5Gbps USB adapters have been available for years but is not efficient when have a NAS with 10Gbps and 10Gbps switch but computers without Thunderbolt and no built-in 10GbE
Not at the price point that these will be at. Nor as cool running.
I’m surprised by the ribbon cable between the connector and the board: pairs not twisted, no shielding, that must not be ideal for performance, especially at those speeds, or is it really not a problem?
It’s still differential and if you have GND between every pair it’s not likely an issue.
Twisted pair is only needed for long distances, the purpose is to affect both polarities by the same perturbations so they can be cancelled. In practice flat wire works reasonably fine over short distances. For example in my home I’m running 100 Mbps over straight telephone wire for about 15 meters, and have already run Gbps speeds over completely reassembled cables on a few meters. Even 10 Gbps run on a 1-meter cat-3 cable worked fine. Yeah I know, it’s totally insane, but who cares as long as it works 😉
€117,32 to the Netherlands, EU, incl VAT … +50%
They’ve decided to increase the price. It’s now $100.58 without VAT.
Ouch! I was right to order mine before passing the link! 79EUR shipping incl to France. There were other less expensive ones around $95, that should be easy to find by looking for about the same description.
This one is still 94 EUR: https://www.aliexpress.com/item/1005005927670688.html + 7 for shipping, and there’s another one at 91+10.
Funny: Ali presents other M.2 ethernet setups: 2.5Gbps … for only 14 Euro incl VAT, plus shipping 1.5 Euro
M.2 A+E KEY 2.5G Ethernet LAN Card RTL8125B Industrial Control Network Card PCI Express Network Adapter
I have to find out if I can put into one of my NUCs. Fingers crossed.
Yeah I noticed numerous ones, including RTL8125B, i225 (to avoid), i226 (supposedly OK), all were reasonably cheap. But I was more focused on 10G 😉