| CPC G06F 3/0611 (2013.01) [G06F 3/0646 (2013.01); G06F 3/0683 (2013.01); G06F 13/28 (2013.01); G06F 15/17331 (2013.01); G06F 2213/3808 (2013.01)] | 14 Claims |

|
1. A network interface card, comprising:
at least one processor, configured to: in response to a doorbell signal of a controller, obtain a work queue element (WQE) from a send queue (SQ) corresponding to the controller, wherein the doorbell signal indicates that there is a to-be-sent message in a storage space to which at least one WQE points in the SQ, the WQE comprises indication information, and the indication information indicates a type of a first remote direct memory access (RDMA) packet scheduled by the WQE, wherein the type of the first RDMA packet comprises an initial packet, an intermediate packet, a tail packet, or a single packet of I/O data; and
a transceiver, configured to: when the indication information indicates that the type of the first RDMA packet is a tail packet or a single packet of I/O data, send, to a host client before the at least one processor polls an SQ of a next controller, the first RDMA packet and a second RDMA packet scheduled by a next WQE of the WQE in the SQ,
wherein the at least one processor is further configured to perform data integrity function (DIF) check on the first RDMA packet; and
the transceiver is further configured to: when the indication information indication that the type of the first RDMA packet is the trail packet or the single packet of the I/O data, and the DIF check succeeds, send, to the host client before the at least one processor polls the SQ of the next controller, the first RDMA packet and the second RDMA packet scheduled by the next WQE of the WQE in the SQ.
|