USB HUB用于设备扩展连接,所有USB DEVICE都连接在USB HUB的端口上。一个USB HOST总与一个根HUB (USB ROOT HUB)相连。USB HUB为其每个端口提供100mA电流供设备使用。同时,USB HUB可以通过端口的电气变化诊断出设备的插拔操作,并通过响应USB HOST的数据包把端口状态汇报给USB HOST。一般来说,USB设备与USB HUB间的连线长度不超过5m,USB系统的级联不能超过5级(包括ROOT HUB)。
USB Hub的下游各个接口会平分上游接口带宽,加上USB Hub本身也需要传输控制信号,所以下游各个设备的带宽是必然要小于上游设备的总带宽。
USB Hub负责整合下游设备的各种传输信号,其中同步传输有一定限制,如果超过总带宽的某个比例(记忆中是20%),那么超出比例的同步传输将被丢弃;中断传输和控制传输占用的是保留带宽,不允许丢弃;Bulk传输占用剩下的带宽,如果没有同步传输,那么Bulk传输大概能占到90%以上的总带宽。
USB Hub整合数据以后向上游设备发送,如果上游还有USB Hub,那么上游的设备还会继续做同样的操作。另外:需要说明的是,通常来说主机上的USB接口,本身就是一个Root Hub,如果一个PC上有多个接口,可能是多个接口共用一个控制器,每个控制器上有一个Root Hub。
所以USB Hub相当于重新封装了各种数据包,类似于网络设备里的路由器,而不像交换机或者集线器(Hub)那么简单。