1. A method for retrieving via a communication channel, buffer descriptors from a host memory for use by a peripheral device, comprising the steps of: providing a first descriptor cache that is accessible to the peripheral device without communication via the communication channel; establishing a first starting buffer descriptor read address for a first host memory descriptor queue from which to initiate retrieval of a first set of at least one buffer descriptor; retrieving the first set of buffer descriptors by DMA via the communication channel; and writing each buffer descriptor retrieved in the step of retrieving, into the descriptor cache at a descriptor cache buffer descriptor address derived from the sum of the first starting buffer descriptor read address and a count of the number of descriptors in the set of buffer descriptors that have been retrieved previously in the step of retrieving.