Patent ID: 7760741
Filing Date: 2010-07-20
Classification: H04L

Abstract:
1. Apparatus for network acceleration, comprising: a host interface, which is configured to communicate with a consumer application running on a host CPU by exchanging work queue elements via send and receive queues and completion queue elements via a completion queue, and which is configured to receive a doorbell from the consumer application; an acceleration engine, which is adapted to exchange Transport Control Protocol (TCP) packets belonging to a given connection with a network and to apply TCP data movement operations to the packets; a protocol processor, which operates asynchronously with respect to the acceleration engine and is adapted, in response to the doorbell, to apply TCP control operations to the packets of the given connection simultaneously with the data movement operations applied to the packets of the given connection by the acceleration engine; and an asynchronous queue interface, which is separate from the host interface and comprises a command queue and an event queue linking the acceleration engine to the protocol processor, so as to enable processing of the packets, wherein the acceleration engine is configured to exchange data conveyed by the TCP packets with the consumer application via the queues of the host interface and to communicate with the protocol processor by reporting events to the protocol processor via the event queue and receiving commands from the protocol processor via the command queue.