Patent ID: 7818362

Claim:
A computer-implemented method for maintaining the correlation of a byte sequence number in a windowed byte stream to a source address of a host memory buffer, comprising: maintaining a send work queue context for a send work queue, wherein the send work queue context includes a last data segment identifier and a last acknowledgment identifier; adding a quantity to the last acknowledgment identifier in response to receiving an acknowledgment to generate an updated last acknowledgment identifier, wherein the quantity is a length of a last data segment minus a last segment offset; determining if the updated last acknowledgment identifier is less than a received acknowledgment identifier; responsive to the updated last acknowledgment identifier being less than the received acknowledgment, setting the last data segment identifier in the send work queue context to point to a next consecutive data segment and setting the last segment offset to zero; repeating the maintaining, adding, determining, and setting steps until the updated last acknowledgment identifier is greater than the received acknowledgment identifier; and responsive to the updated last acknowledgment being greater than the received acknowledgment identifier, adding a difference between the last acknowledgment identifier and the received acknowledgment identifier to the last segment offset, and setting the last acknowledgment identifier equal to the received acknowledgment identifier.