There are four data transfer types defined in USB(USB中有4种数据传输类型). Each type is optimized to match the service requirements between the client software and the USB device. The four types are:
- Interrupt Transfers(中断传输) - Small data transfers used to communicate information from the USB device to the client software.(一般应用在少量数据的通信) The Host Controller Driver polls(轮询) the USB device by issuing tokens(令牌) to the device at a periodic interval(周期性间隔) sufficient for the requirements of the device.(USB主控制器驱动通过令牌周期性地轮询USB设备)
- Isochronous Transfers(同步传输) - Periodic data transfers with a constant data rate(数据速率不变的周期性数据传输?). Data transfers are correlated in time between the sender and receiver.
- Control Transfers(控制传输) - Nonperiodic data transfers used to communicate configuration/command/status type information between client software and the USB device.(用于USB主控制器和USB设备之间“配置、命令、状态等类型”的信息交换?)
- Bulk Transfers(批量传输) - Nonperiodic data transfers used to communicate large amounts of information between client software and the USB device.(大量数据的传输)
In OpenHCI the data transfer types are classified into two categories: periodic and nonperiodic(OpenHCI中,数据传输的类型分为周期性和非周期性两类).
- Periodic transfers are interrupt and isochronous(周期性传输为中断传输和同步传输) since they are scheduled to run at periodic intervals.
- Nonperiodic transfers are control and bulk(非周期性传输为控制传输和批量传输) since they are not scheduled to run at any specific time, but rather on a time-available basis.
《OpenHCI - Open Host Controller Interface Specification for USB》