Patent ID: 8311059

Claim:
A method for delivering a plurality of received packets from an input/output controller (IOC) to a host for processing, comprising: storing the plurality of received packets in a local memory of the IOC; determining that the plurality of received packets are part of a same Transmission Control Protocol (TCP) connection; determining that the plurality of received packets were received in order and without gaps; combining headers and payloads of the plurality of received packets into a single coalesced packet if the plurality of received packets are part of the same TCP connection and were received in order and without gaps; automatically acknowledging at least every other received packet to be combined in the single coalesced packet by sending a TCP acknowledge packet from the IOC to a source of the received packet without host intervention, wherein the host includes a host processor and a host memory; and delivering the single coalesced packet to the host for processing after said automatically acknowledging at least every other received packet to be combined in the single coalesced packet.