Linux에서 USB를 통한 TCP / IP를 수행하는 가장 좋은 방법


10

유일한 연결 옵션으로 여러 개의 USB 2.0 포트가있는 두 Linux 시스템간에 TCP / IP 링크를 설정하려고합니다. 호스트 및 슬레이브 포트를 모두 사용할 수 있으므로 간단한 USB 케이블을 통해 연결할 수 있습니다. 해당 케이블을 통해 TCP / IP를 전달할 수있는 가능성은 무엇이며 가장 높은 대역폭을 달성하기 위해 사용해야하는 것은 무엇입니까?

지금까지 ADB (Android Debug Bridge) 전달을 시도했지만 처리량이 30-40Mbps에 불과합니다. 전문 드라이버를 사용하여 최소 150-200Mbps를 달성 할 수 있다고 생각합니다 .USB 하드 드라이브는 이론적으로 사용 가능한 480 개 중 240-280Mbps로 파일을 이동하는 경우가 있습니다.


1
두 개의 USB 네트워크 카드를 얻을 수 있습니다 (기가비트 카드를 얻을 수는 있지만 최대 속도로 최대 속도를 초과하지는 않음). 일반적인 네트워킹 스택 만 사용하십시오.
마크 헨더슨

비용이 많이 들고 오버 헤드가 추가됩니다.
jons34yp

1
예산 요구 사항에 대한 귀하의 질문에 대해서는 언급하지 않았으며 오버 헤드가있을 수 있지만 40Mbps보다 빠릅니다.
마크 헨더슨

마스터 및 슬레이브 포트를 모두 사용할 수 있다는 것은 무엇입니까? PC에는 마스터 포트만 있습니다.
psusi

1
@MarkHenderson- "두 개의 USB 네트워크 카드를 얻습니다" – 더 이상 나체 PCB (인쇄 회로 기판)가 아닌 경우 "올바른"카드가 아닙니다. 포장되어 있으면 모듈 또는 어댑터입니다. 그렇지 않다면, 한 쌍의 USB- 이더넷 어댑터가 가장 간단한 솔루션 일 것입니다. "최고"가 "가장 빠름"을 의미하지 않는 한.
톱밥

답변:


11

이더넷 오버 USB 드라이버는 Linux에 포함되어 있습니다. 관련 호스트 크기 드라이버는 CDC_ETHER 및 RNDIS입니다. 슬레이브 크기의 상대방 (기본적으로 소프트웨어에서 USB- 이더넷 브리지를 에뮬레이트하는)은 USB_ETH, USB_ETH_RNDIS입니다. USB_G_ANDROID는 RNDIS 프로토콜도 지원합니다. RNDIS 프로토콜은 문제의 장치가 Android 커널을 사용하므로 드라이버가 기본적으로 활성화되어 있기 때문에 제 경우에는 좋습니다.

USB_G_ANDROID 드라이버를 사용하여 측정 된 USB 브리지의 대역폭은 호스트에서 슬레이브까지 ~ 130Mbps이고 다른 방법으로 ~ 90Mbps입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.