在 Linux 上通过 USB 执行 TCP/IP 的最佳方式

在 Linux 上通过 USB 执行 TCP/IP 的最佳方式

我想在两台 Linux 机器之间建立 TCP/IP 链接,这两台机器只有几个 USB 2.0 端口作为连接选项。由于主机和从属端口都可用,我可以通过一条简单的 USB 电缆连接它们。通过该电缆转发 TCP/IP 的可能性有哪些?我应该使用哪一种来实现最高带宽?

到目前为止,我尝试过 ADB(Android 调试桥)转发,但吞吐量很差——只有 30-40Mbps。我认为使用专门的驱动程序应该可以实现至少 150-200Mbps——USB 硬盘偶尔会以 240-280Mbps 的速度移动文件,而理论上可用的速度为 480Mbps。

答案1

Linux 中包含了 USB 以太网驱动程序。相关的主机大小驱动程序是 CDC_ETHER 和 RNDIS。它们的从属大小对应驱动程序(本质上是在软件中模拟 USB 以太网桥)是 USB_ETH、USB_ETH_RNDIS。USB_G_ANDROID 还支持 RNDIS 协议,这对我来说非常好,因为相关设备使用 Android 内核,因此默认情况下启用该驱动程序。

使用 USB_G_ANDROID 驱动程序测量的 USB 桥接器的带宽从主机到从机约为 130Mbps,反之约为 90Mbps。

相关内容