Cara terbaik untuk melakukan TCP / IP melalui USB di Linux

10

Saya ingin membuat tautan TCP / IP antara dua mesin Linux yang memiliki beberapa port USB 2.0 sebagai satu-satunya opsi koneksi. Karena port host dan slave tersedia, saya dapat menghubungkannya melalui kabel USB sederhana. Apa saja kemungkinan untuk meneruskan TCP / IP melalui kabel itu dan mana yang harus saya gunakan untuk mencapai bandwidth tertinggi?

Sejauh ini saya sudah mencoba meneruskan ADB (Android Debug Bridge), tetapi throughputnya buruk - hanya 30-40Mbps. Saya pikir itu harus dimungkinkan untuk mencapai setidaknya 150-200Mbps menggunakan driver khusus - USB hard drive sesekali memindahkan file pada 240-280Mbps dari 480 yang tersedia secara teoritis.

jons34yp
sumber
1
Anda bisa mendapatkan dua kartu jaringan USB (Anda bisa mendapatkan yang gigabit, tetapi mereka tidak akan maksimal dengan kecepatan penuh) dan hanya menggunakan tumpukan jaringan normal ..?
Mark Henderson
Harganya lebih mahal dan menambah biaya tambahan.
jons34yp
1
Nah, Anda tidak menyebutkan apa pun dalam pertanyaan Anda tentang persyaratan anggaran, dan mereka mungkin overhead tetapi akan lebih cepat dari 40Mbps.
Mark Henderson
Apa maksud Anda baik port master dan slave tersedia? PC hanya memiliki port master.
psusi
1
@MarkHenderson - "dapatkan dua kartu jaringan USB" - itu tidak (benar) disebut "kartu" ketika tidak lagi PCB telanjang (papan sirkuit cetak). Ketika itu terbungkus, maka itu adalah modul atau adaptor. Kalau tidak, saya setuju, sepasang adaptor USB-ke-Ethernet adalah solusi yang paling mudah (dan mungkin yang "terbaik"). Kecuali "terbaik" hanya berarti "tercepat".
serbuk gergaji

Jawaban:

11

Driver Ethernet over USB disertakan ke Linux. Driver ukuran host yang relevan adalah CDC_ETHER dan RNDIS. Rekan-rekan ukuran budak mereka (yang pada dasarnya meniru jembatan USB-Ethernet dalam perangkat lunak) adalah USB_ETH, USB_ETH_RNDIS. USB_G_ANDROID juga mendukung protokol RNDIS, yang sangat bagus dalam kasus saya, karena perangkat yang dimaksud menggunakan kernel Android, sehingga driver diaktifkan secara default.

Bandwidth yang diukur dari jembatan USB menggunakan driver USB_G_ANDROID ~ 130Mbps dari host ke slave dan ~ 90Mbps sebaliknya.

jons34yp
sumber