All my problems gone, life is good.
The TP-Link and Netgear switches had the least issues for me in that I only had to force a particular speed to avoid sometimes negotiating at 100mb. I am not sure people will notice the negotiating bugs unless their family are heavy bandwidth users. I noticed it because of streaming and gaming at the same time plus I shut down my machines at night so I have a coin-flip chance of negotiating incorrectly every day.
Damn. That's pretty much a requirement for any upcoming home lab gear here, so I'd better be careful about this aspect when researching.
Thanks. :)
[1] Ironically, in this case the Intel has to have a fancy feature, intended for increasing performance, disabled in order to increase performance.
For 1G realteks, I've had ok luck with them, but I do see some issues. I recall having some problem with them while running the Linux tree drivers, but I've since switched to all FreeBSD. With my current realtek NICs and FreeBSD 13.1, I have the choice of the kernel driver where sometimes the NIC will stop processing packets, and the NIC acknowledges reset, but doesn't actually immediately reset and sometimes processes old packets after resetting, resulting in wild writes and bad behavior. There's a vendor driver, which doesn't seem to get into that bad state, but it does enable ethernet PAUSE frames which are an abomination. The vendor driver is full of undocumented magic values and there's no public documentation on the NICs at all, so figuring out what to frob to make the NIC not get stuck, but not send out PAUSE frames would be an exercise in frustration, that I'm not willing to do.
Either way, the interrupt design is deficient: there's a shared interrupt for rx, tx and administration, and the status register doesn't really work right either --- it's possible for the host and device to disagree about what irqs were acknowleged and then things will get stuck (that doesn't seem to be the FreeBSD driver issue though; you can work around the stuck status communications by just assuming something probably happened aftet a few seconds, or checking for descriptor progess on rx and tx on any interrupt, etc). Having only a single interrupt means you can't meaningfully process incomming packets and finished outgoing descriptors in parallel which makes it hard to get full throughput in both directions simultaneously.
Anyway --- if they work for you, great. I'm going to avoid them where practical, and be careful with them elsewhere.
At the end, Debian reverted Intel's patches and shipped a modified version which probably didn't enable some features on the newer NICs, but didn't break the older ones in the process.
It's ironic that the underdog Realtek has much more reliable cards which doesn't shudder under constant load and/or very long uptime scenarios. Realtek won't cut in server scenarios, but Intel's and Broadcom's server class NICs are completely different beasts when compared to Intel's consumer NICs, too.
Wish they had given some more attention to them while developing their drivers.
There is plenty if you search around, and they're one of the recommended NICs if you want to write an OS/driver because of that; they also show up in virtual form in various VM hosting software due to their simplicity:
https://wiki.osdev.org/RTL8139
It's an OK NIC to work with hobby wise, although I quickly ran into issues with the status register, and I can only hope one day I'll get enough throughput to overwelm the nic. And then I'll move to an Intel nic of which I have several.
consensus is Intel went down the shitter quality wise, just one example https://www.youtube.com/watch?v=DXNyHFOWx_k