Patent ID: 7293100

Claim:
In a target device, a method for partially reordering a plurality of data packets transmitted from a source device, said source device being coupled to said target device via a computer network, comprising: receiving a first set of data packets from said transmitted device; ascertaining whether said first set of data packets represents a set of data packets that said target device expects to receive next; and if said first set of data packets does not represents said set of data packets in an expected sequence number that said target expects to receive next, storing said first set of data packets in a memory buffer of said target device, said storing including arranging said first set of data packets in said memory buffer such that data packets in said memory buffer, including said first set of data packets, are in order in said memory buffer, wherein each packet of said plurality of data packets is associated with a sequence number, said sequence number determining a spatial relationship of said each packet relative to other packets in said plurality of data packets, said memory buffer is comprised of a plurality of storage structures for storing data packets of said plurality of data packets by their sequence numbers, and said each storage structure of said plurality of storage structures is configured to store a pointer to a memory location different from said memory buffer, said memory location being employed to store at least part of a packet received by said target device.