I have quite a few mini-PC that has only a single gigabit port. I’ve been considering and researching how to expand those to have an extra port. One of those options was using a USB to Ethernet adaptor.
Now, I’ve looked at this option before. Ang nakuha ko lang puro discouragement na hindi siya stable.
Why it’s not recommended
- Doesn’t offload all processing from the CPU, causing high CPU usage.
- Additional USB abstraction compared to PCIe.
I found this thread, they discussed different chipsets and they benchmarked it too: https://forums.macrumors.com/threads/macbook-air-usb-c-ethernet-unreliable.2287743/
CDC - Communication Device Class (USB)
NCM - Network Control Model
https://www.keil.com/pack/doc/mw/USB/html/group__usbd__cdc_functions__ncm.html
A CDC NCM compliant device exposes itself as a virtual NIC to the host operating system.
A CDC ECM is a predecessor of NCM that needs software implementation of other Ethernet standards, causing high CPU usage during transfer.
MacOS
AX88179A
AX88179A:
Bus: USB
Vendor Name: ASIX
Product Name: AX88179A
Vendor ID: 0x0b95
Product ID: 0x1790
USB Link Speed: Up to 5 Gb/s
Driver: com.apple.driver.usb.cdc.ncm
BSD Device Name: en4
MAC Address: 20:7b:d2:11:a4:e3
AVB Support: No
Maximum Link Speed: 2.5 Gb/s
- CPU heavy without driver on Mac. Driver: https://forums.macrumors.com/threads/macbook-air-usb-c-ethernet-unreliable.2287743/post-31123118
- AX88179 is different to AX88179A. The A at the end indicates macOS support using CDC NCM driver.
- Does not support VLAN with native CDC NCM driver.
Another recommended chipset is Realtek RTL8156B: https://khronokernel.github.io/macos/2021/11/22/PCIE-ETHERNET.html
Proxmox
Recommended chipset: RTL8153.
Issue with AX88179: starts not active. Solution is to create a bridge.