-
Notifications
You must be signed in to change notification settings - Fork 1
Problem with USBIP
yshui edited this page Nov 6, 2020
·
2 revisions
There's already a more general solution exists for device forwarding, USB/IP. However, there are several problems with USB/IP which has driven me to roll my own wheel.
- No graceful handling of disconnect. If the receiving end dropped, user have to bind/unbind the forwarded device at the sending end to regain the ability of using that device.
- USB/IP blocks suspension. User have to setup suspension hooks to attach/detach the device when suspending/resuming. This is error prone.
- Race conditions when attaching/detaching multiple devices at the same time.
- Exclusive. Device cannot be used when it's bound to USB/IP.
- No authentication/encryption. Anyone one the network can grab/eavesdrop on the USB device.
- Based on TCP. TCP is a poor fit for input devices, but because USB/IP has to support general USB devices, it has to use TCP to have the same level of data loss guarantee as USB.