Back Next
Four general types of transfer frames.
  Control (message) - configure devices, give commands, check status.

  Isochronous (stream) - used with time sensitive devices - phones, sound. 
    Precise time intervals but no re-transmit on error.

  Bulk (stream) - large data transfers to/from non-time sensitive devices
    e.g printers, hard drive. Error checking in effect.

  Interrupt (stream) - for devices that need a quick response. Small packets
    of data (keyboard, mouse, etc.). 

    USB does not support device initiated interrupts. 

    Master hub polls devices for interrupt requests every 00 mSec in round 
      robin fashion.

    Device ids itself as interrupt driven (possibly when 1st plugged in).  
      Keyboard/mouse - yes
      USB drive - no

    "Interrupt" driven devices may be polled more often than other devices.

    Size of packet sent by device limited in size. 


A certain amount of bandwidth is reserved for interrupt handling once devices are identified by the controller hub. Also, a portion of bandwitdth is reserved if an Isochronous device is detected. In some cases, if the available bandwidth is insufficient for the device, it may refuse to connect. When a root hub has detected that