Packet processing with reduced latency
AssigneeIntel Corporation
InventorsEliezer Tamir, Jesse C. Brandeburg, Anil Vasudevan
Life of this patent
Estimating the term…
Abstract
Generally, this disclosure provides devices, methods and computer readable media for packet processing with reduced latency. The device may include a data queue to store data descriptors associated with data packets, the data packets to be transferred between a network and a driver circuit. The device may also include an interrupt generation circuit to generate an interrupt to the driver circuit. The interrupt may be generated in response to a combination of an expiration of a delay timer and a non-empty condition of the data queue. The device may further include an interrupt delay register to enable the driver circuit to reset the delay timer, the reset postponing the interrupt generation.
Claims26
A non-transitory computer readable medium to store a set of instructions for execution by a processor coupled to a network interface, the set of instructions to cause the processor to:
- initiate a first queue lock on a data queue of the network interface in response to a determination that the network interface is in a polling state;
- retrieve a packet from the data queue in response to the first queue lock;
- determine whether a yield was initiated against the first queue lock, the yield to indicate that a process was not able to obtain a lock on the data queue;
- and
- release the first queue lock.
A system comprising:
- a network interface comprising a data queue;
- a processor component coupled to the network interface;
- and
- a memory, the memory comprising instructions for execution by the processor, the instructions to cause the processor to:
- initiate a first queue lock on the data queue in response to a determination that the network interface is in a polling state;
- retrieve a packet from the data queue in response to the first queue lock;
- determine whether a yield was initiated against the first queue lock, the yield to indicate that a process was not able to obtain a lock on the data queue;
- and
- release the first queue lock.
A method comprising:
- initiating a first queue lock on a data queue of a network interface in response to determining that the network interface is in a polling state;
- retrieving a packet from the data queue in response to the first queue lock;
- determining whether a yield was initiated against the first queue lock, the yield to indicate that a process was not able to obtain a lock on the data queue;
- and
- releasing the first queue lock.
A non-transitory computer readable medium to store a set of instructions for execution by a processor coupled to a network interface, the set of instructions to cause the processor to:
- initiate a first queue lock on a data queue of a new application programming interface (NAPI) compliant network interface in response to a determination that the network interface is in a polling state;
- retrieve a packet from the data queue in response to the first queue lock;
- determine whether a yield was initiated against the first queue lock, the yield to indicate that a process was not able to obtain a lock on the data queue;
- and
- release the first queue lock.
Dependencies are inferred from the claim text.