The USB provides communication services between a host and attached USB devices. However, the simple
view an end user sees of attaching one or more USB devices to a host, as in Figure 5-1, is in fact a little
more complicated to implement than is indicated by the figure. Different views of the system are required
to explain specific USB requirements from the perspective of different implementers. Several important
concepts and features must be supported to provide the end user with the reliable operation demanded from
today’s personal computers. The USB is presented in a layered fashion to ease explanation and allow
implementers of particular USB products to focus on the details related to their product.