Найкращий спосіб зробити TCP / IP через USB в Linux


10

Я хочу встановити TCP / IP-зв’язок між двома машинами Linux, які мають кілька портів USB 2.0 як єдиний варіант з'єднання. Оскільки і хост, і підлеглий порт доступні, я можу з'єднати їх за допомогою простого USB-кабелю. Які можливості переслати TCP / IP через цей кабель і який я повинен використовувати для досягнення максимальної пропускної здатності?

Поки я намагався переадресацію ADB (Android Debug Bridge), але пропускна здатність погана - всього 30-40 Мбіт / с. Я думаю, що слід досягти принаймні 150-200Mbps за допомогою спеціалізованого драйвера - жорсткі диски USB періодично переміщують файли зі швидкістю 240-280Mbps з 480 теоретично доступних.


1
Ви можете отримати дві мережеві карти USB (ви можете отримати гігабітні, але вони не вийдуть на повну швидкість) і просто використовувати звичайний мережевий стек ..?
Марк Хендерсон

Вони коштують дорожче і додають додаткові накладні витрати.
jons34yp

1
Ну, ви нічого не згадали у своєму запитанні щодо бюджетних вимог, і вони можуть бути накладними, але це буде швидше 40 Мбіт / с.
Марк Хендерсон

Що ви маєте на увазі, як доступні, так і портові порти? На ПК є лише головні порти.
psusi

1
@MarkHenderson - "отримати дві мережеві карти USB" - це не (правильно) називається "карткою", коли це вже не гола друкована плата (друкована плата). Коли він укладений в комір, то це модуль або адаптер. Інакше я згоден, пара адаптерів USB-Ethernet - це найпростіше (і, можливо, «найкраще») рішення. Якщо тільки "кращий" означає лише "найшвидший".
тирса

Відповіді:


11

Ethernet через драйвери USB включені до Linux. Відповідні драйвери розміру хоста - CDC_ETHER і RNDIS. Їхніми аналогами в розмірі рабовласницьких (які по суті емітують міст USB-Ethernet в програмному забезпеченні) є USB_ETH, USB_ETH_RNDIS. USB_G_ANDROID також підтримує протокол RNDIS, що в моєму випадку чудово, оскільки у відповідних пристроях використовується ядро ​​Android, тому драйвер увімкнено за замовчуванням.

Виміряна пропускна здатність USB-мосту за допомогою драйвера USB_G_ANDROID становить ~ 130 Мбіт / с від хоста до підлеглого та ~ 90 Мбіт / с навпаки.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.