Switching methods and systems for a network interface card

US9800524B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9800524-B1
Application numberUS-201514864323-A
CountryUS
Kind codeB1
Filing dateSep 24, 2015
Priority dateSep 24, 2015
Publication dateOct 24, 2017
Grant dateOct 24, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods and systems for network communication are provided. One method includes, receiving a network packet at a first network interface card (NIC) operationally coupled to a computing device; identifying a second NIC as a destination for the network packet; placing the network packet by the first NIC at a host memory location, without utilizing resources of a processor of the computing device; notifying the second NIC that the network packet has been placed at the host memory location; retrieving the network packet by the second NIC from the host memory location; transmitting the network packet by the second NIC to another destination; notifying the first NIC by the second NIC that the packet has been transmitted by the second NIC; and freeing the host memory location by the first NIC.

First claim

Opening claim text (preview).

What is claimed is: 1. A machine implemented method, comprising: receiving a network packet at a first network interface card (NIC) operationally coupled to a computing device; identifying a second NIC as a destination for the network packet; placing the network packet by the first NIC at a host memory location, without utilizing resources of a processor of the computing device; notifying the second NIC that the network packet has been placed at the host memory location; retrieving the network packet by the second NIC from the host memory location; transmitting the network packet by the second NIC to another destination; notifying the first NIC by the second NIC that the packet has been transmitted by the second NIC; and freeing the host memory location by the first NIC. 2. The method of claim 1 , further comprising: freeing up space at a send queue used for notifying the second NIC that the network packet has been placed at the host memory. 3. The method of claim 1 , wherein the first NIC and the second NIC are coupled to the computing device using a PCI-Express link. 4. The method of claim 1 , wherein the first NIC and the second NIC use an Ethernet based networking protocol for network communication. 5. The method of claim 1 , wherein the first NIC and the second NIC are converged network adapters that can process both network and storage traffic. 6. The method of claim 1 , wherein the first NIC maintains a data structure to determine that the second NIC is the destination for the network packet. 7. The method of claim 1 , wherein the computing device processes the network packet when a flow associated with the network packet is not offloaded to the first NIC. 8. A non-transitory, machine readable storage medium having stored thereon instructions for performing a method, comprising machine executable code which when executed by at least one machine, causes the machine to: receive a network packet at a first network interface card (NIC) operationally coupled to a computing device; identify a second NIC as a destination for the network packet; place the network packet by the first NIC at a host memory location, without utilizing resources of a processor of the computing device; notify the second NIC that the network packet has been placed at the host memory location; retrieve the network packet by the second NIC from the host memory location; transmit the network packet by the second NIC to another destination; notify the first NIC by the second NIC that the packet has been transmitted by the second NIC; and free the host memory location by the first NIC. 9. The non-transitory, storage medium of claim 8 , further causing the machine to: free up space at a send queue used for notifying the second NIC that the network packet has been placed at the host memory. 10. The non-transitory, storage medium of claim 8 , wherein the first NIC and the second NIC are coupled to the computing device using a PCI-Express link. 11. The non-transitory, storage medium of claim 8 , wherein the first NIC and the second NIC use an Ethernet based networking protocol for network communication. 12. The non-transitory, storage medium of claim 8 , wherein the first NIC and the second NIC are converged network adapters that can process both network and storage traffic. 13. The non-transitory, storage medium of claim 8 , wherein the first NIC maintains a data structure to determine that the second NIC is the destination for the network packet. 14. The non-transitory, storage medium of claim 8 , wherein the computing device processes the network packet when a flow associated with the network packet is not offloaded to the first NIC. 15. A system comprising: a computing device having a processor for executing instructions out of a host memory device and coupled to a first network interface card (NIC) and a second NIC; wherein the first NIC receives a network packet at the first network interface card (NIC) operationally coupled to a computing device; identifies the second NIC as a destination for the network packet; places the network packet at a host memory location, without utilizing resources of the processor of the computing device; and notifies the second NIC that the network packet has been placed at the host memory location; and wherein the second NIC retrieves the network packet from the host memory location; transmits the network packet to another destination; notifies the first NIC that the packet has been transmitted by the second NIC; and the first NIC frees the host memory location. 16. The system of claim 15 , wherein the first NIC frees up space at a send queue used for notifying the second NIC that the network packet has been placed at the host memory. 17. The system of claim 15 , wherein the first NIC and the second NIC are coupled to the computing device using a PCI-Express link. 18. The system of claim 15 , wherein the first NIC and the second NIC use an Ethernet based networking protocol for network communication. 19. The system of claim 15 , wherein the first NIC and the second NIC are converged network adapters that can process both network and storage traffic. 20. The system of claim 15 , wherein the first NIC maintains a data structure to determine that the second NIC is the destination for the network packet for network communication. 21. The system of claim 15 , wherein the computing device processes the network packet when a flow associated with the network packet is not offloaded to the first NIC.

Assignees

Inventors

Classifications

  • using an external memory or storage device · CPC title

  • Electricity · mapped topic

  • Storing data temporarily at an intermediate stage, e.g. caching · CPC title

  • Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9800524B1 cover?
Methods and systems for network communication are provided. One method includes, receiving a network packet at a first network interface card (NIC) operationally coupled to a computing device; identifying a second NIC as a destination for the network packet; placing the network packet by the first NIC at a host memory location, without utilizing resources of a processor of the computing device;…
Who is the assignee on this patent?
Qlogic Corp
What technology area does this patent fall under?
Primary CPC classification H04L49/9078. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Oct 24 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).