IP Library Granted Patent US 8,660,133
Granted Patent B2
US 8,660,133 · App. 13/342,843 · Granted Feb 25, 2014

Techniques to utilize queues for network interface devices

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,660,133
App. No.
13/342,843
Granted
Feb 25, 2014
Kind
B2
Abstract

In general, in one aspect, included are descriptions of providing a single network interface from physical network interfaces that provides a number of receive queues equal to the sum of the number of receive queues provided by each of the physical network interfaces.

Claims (28)

1. A method comprising:

providing capability to receive packets from a plurality of physical network interfaces, each of the physical network interfaces capable of providing a number of receive queues that is greater than or equal to one, each physical network interface comprising a DMA (Direct Memory Access) engine, a media access controller, a physical layer interface, and a Peripheral Component Interconnect (PCI) type interface;

providing a single network interface from the plurality of physical network interfaces that provides a number of receive queues equal to the sum of the number of receive queues provided by each of the plurality of physical network interfaces; and

for a received packet, selecting a one of the receive queues of the single network interface; and

queueing an entry to the selected one of the receive queues for the received packet, the entry corresponding to a packet transferred by DMA by a one of the plurality of physical network interfaces.

2. The method of claim 1 , further comprising:

performing a hash based on fields in a header of a packet.

3. The method of claim 2 , wherein the hash comprises a hash on, at least one of: (1) Internet Protocol source and destination addresses and (2) source and destination ports.

4. The method of claim 1 , wherein the single network interface comprises a virtual network interface.

5. The method of claim 1 , further comprising performing at least one of load balancing and link aggregation.

6. The method of claim 1 , further comprising enqueuing a packet received by a one of the network interfaces and selecting a receive queue provided by a different one of the network interfaces.

7. A system, comprising:

multiple processors;

multiple physical network interfaces, each physical network interface capable of providing a number of receive queues that is greater than or equal to one, each physical network interface comprising a DMA (Direct Memory Access) engine, a media access controller, a physical layer interface, and a Peripheral Component Interconnect (PCI) type interface; and

logic to

provide a single network interface from the plurality of physical network interfaces that provides a number of receive queues equal to the sum of the number of receive queues provided by each of the plurality of physical network interfaces;

for a received packet, select a one of the receive queues of the single network interface; and

queue an entry to the selected one of the receive queues for the received packet, the entry corresponding to a packet transferred by DMA by a one of the plurality of physical network interfaces.

8. The system of claim 7 , wherein the logic further comprises logic to perform a hash based on fields in a header of a packet.

9. The system of claim 8 , wherein the hash comprises a hash on, at least one of: (1) Internet Protocol source and destination addresses and (2) source and destination ports.

10. The system of claim 7 , wherein the single network interface comprises a virtual network interface.

11. The system of claim 7 , wherein the logic further comprises to perform at least one of load balancing and link aggregation.

12. The system of claim 7 , wherein the logic further comprises logic to select a receive queue provided by a second, different, one of the network interfaces for a packet received by a first one of the network interfaces.

13. A non-transitory computer-readable medium comprising instructions stored thereon which when executed by a machine cause the machine to: provide a single network interface based on a plurality of physical network interfaces, each of the plurality of physical network interfaces capable of providing a number of receive queues that is greater than or equal to one, each physical network interface comprising a DMA (Direct Memory Access) engine, a media access controller, a physical layer interface, and a Peripheral Component Interconnect (PCI) type interface, the single network interface to provide a number of receive queues equal to the sum of the number of receive queues provided by each of the plurality of physical network interfaces; and for a received packet, select a one of the receive queues of the single network interface; and queue an entry to the selected one of the receive queues for the received packet, the entry corresponding to a packet transferred by DMA by a one of the plurality of physical network interfaces.

14. The non-transitory computer-readable medium of claim 13 , wherein the instructions comprise instructions which when executed by a machine cause the machine to perform a hash based on fields in a header of a packet.

15. The non-transitory computer-readable medium of claim 14 , wherein the hash comprises a hash on, at least one of: (1) Internet Protocol source and destination addresses and (2) source and destination ports.

16. The non-transitory computer-readable medium of claim 13 , wherein the single network interface comprises a virtual network interface.

17. The non-transitory computer-readable medium of claim 13 , wherein the instructions comprise instructions which when executed by the machine cause the machine to perform at least one of load balancing and link aggregation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2022
From: INTEL CORPORATION
To: TAHOE RESEARCH, LTD.
Reel/Frame 061175/0176 →