[HN Gopher] Faster Linux 2.5G Networking with Realtek RTL8125B ___________________________________________________________________ Faster Linux 2.5G Networking with Realtek RTL8125B Author : geerlingguy Score : 36 points Date : 2021-12-21 20:45 UTC (2 hours ago) (HTM) web link (www.jeffgeerling.com) (TXT) w3m dump (www.jeffgeerling.com) | daneel_w wrote: | PCI-E cards with this chip cost about $15 today, and 2.5G | Ethernet switches just over $100. Post-gigabit networking has | become truly affordable. | gsich wrote: | What, where? | netr0ute wrote: | > just over $100 | | This is pretty expensive considering that you can get a 10G | switch instead for around $40 more. | makomk wrote: | Believe it or not, the fact that 2.5G switches are cheaper | than 10G switches at all is an improvement. There seems to be | a weird lack of interest in shipping it as a consumer | technology. | flemhans wrote: | Why do Ethernet standards mostly come in 10x orders of | magnitude, anyway? | | 10 -> 100 -> 1000 -> 10G -> 100G | | I know there are some oddball 25G, 40G, and 2.5G out there | too, but always wondered this. | cedivad wrote: | Not a copper one though. | mattst88 wrote: | I've always been confused by the situation with Realtek Linux | drivers. | | Does anyone know why they are not contributing to the kernel | directly? (Just a guess: their drivers are from the same codebase | as the Windows driver and use a bunch of abstraction layers that | wouldn't be acceptable in Linux) | KarlKemp wrote: | Do they publish source code or binary drivers? If it's the | latter, the article points at why they might not want their | competitors to read their source code: the drivers matter a | lot, and starting from theirs might well cut the development | costs for a competing product in half. | gsich wrote: | Source code and no BLOBs. | morning_gelato wrote: | Realtek does contribute directly to the kernel, but I think it | depends on which internal team is handling the device support. | For their PCIe 802.11ac and 802.11ax wifi cards Realtek devs | wrote and upstreamed rtw88[1] and rtw89[2] respectively. | | [1] | https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin... | | [2] | https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin... | pantalaimon wrote: | Wasn't rtw88 supposed to abstract away the transport so it | could be used with PCIe, USB and SDIO? [0] The later two | never materialized (there is the out of tree rtw88-usb [1] | but it's not very active and not maintained by Realtek) | | [0] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/ | lin... | | [1] https://github.com/ulli-kroll/rtw88-usb | formerly_proven wrote: | I'm guessing the story is overall similar to how gigabit ethernet | was ~ten years ago: Use Intel if you want working hardware and | drivers that actually achieve line-rate throughput. Back then the | RTL chips were a trashfire and couldn't do gigabit even on | Windows. Nowadays the RTL chips can do that. And here we are | again with bad / proprietary _network_ drivers for RTL chips. | gsich wrote: | The driver from Realtek is GPL2. Maybe the code quality is not | good enough for the kernel. | | https://www.realtek.com/en/component/zoo/category/network-in... | my123 wrote: | They are upstream nowadays. | | Supported mainline by the r8169 driver. | gsich wrote: | Yeah, but according to the blog post there must be some | difference. "Supported" but not "fully supported". Mainline | has 8k lines, Realteks driver has 15k lines in only 1 .c | file and there are some more. | my123 wrote: | For 2.5GbE, this became very much not the case. | | > Use Intel if you want working hardware | | Sadly Intel totally dropped the ball on this. | | i225-V (Foxville) NIC early steppings were awful. And no driver | can fix that, it required Intel to produce a new stepping... | countless motherboards are affected by that one... | | Realtek NICs are fine at this point in time. | makomk wrote: | Yeah, Intel managed to incorrectly implement the 2.5GbE | standard with the result that if you connected older | steppings of their NIC to a standards-compliant device | massive packet loss and effective data transfer speeds | apparently as low as kilobytes/sec in some cases ensued. The | only workaround was to force it to gigabit mode. They took an | age to release a stepping that fixed this and I think there | may have been other issues too, so a whole bunch of | motherboards ended up shipping with 2.5Gb support that was | effectively unusable. | bcrl wrote: | Not all Realtek NICs are fine at this point in time. For some | models of Realtek NIcs the Linux driver has to memcpy() data | for _every single packet_ in order to work around a hardware | bug. It 's entirely possible that the Linux driver has that | kind of workaround enabled for newer hardware that doesn't | need it anymore, but getting that kind of driver change | merged tends to be a bit of an uphill battle without having | the hardware manufacturer actively involved in maintenance of | the mainline open source driver. | nightfly wrote: | Isn't it the same for wifi? On nearly every laptop I've owned | I've ended up swapping for an Intel wireless card eventually. | formerly_proven wrote: | Yes, and even the generational changes can be quite worth it | - I recently swapped a 2016 Intel 8265 wifi card with a newer | AX210 (- which costs basically nothing) and even without | utilizing the updated standards I got 50-80 % more bandwidth | under exactly the same conditions. ___________________________________________________________________ (page generated 2021-12-21 23:00 UTC)