Patent ID: 7379453

Claim:
A method of transferring packets from communication hardware to a host computing device, the method comprising: receiving a set of packets at a communication interface; in a hybrid buffer of a host computing device, writing a first type II completion line configured to identify a first payload buffer in which payloads of a first subset of the packets are stored, wherein the type II completion line includes an address or index of a payload buffer and other information common to the set of packets; for each packet in the set of packets, writing a corresponding per-packet type I completion line in the hybrid buffer, wherein the type I completion line includes information about a length of the packet, a length and a storage location of a header for the packet, and other information useful for processing the packet; after writing said per-packet type I completion lines, writing a type 0 completion line, wherein a type 0 completion line indicates that no more packets are currently stored following the address or index indicated in the type II completion line; signaling the host computing device that a set of packets is ready to be processed by configuring a single completion descriptor to identify the hybrid buffer in which the completion lines were stored; and at the host computing device, reading the single completion descriptor and accessing the identified hybrid buffers to process the packets.