Managing data flows in overlay networks

US9692696B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9692696-B2
Application numberUS-201414501837-A
CountryUS
Kind codeB2
Filing dateSep 30, 2014
Priority dateDec 12, 2013
Publication dateJun 27, 2017
Grant dateJun 27, 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.

Embodiments relate to managing data flows at a virtual forwarding element. A method for managing data flows at a virtual forwarding element executing in a host that has a network interface card (NIC) is provided. The method receives, from a virtual machine executing in the host, a packet that belongs to a data flow originating from the virtual machine. The method identifies a network identifier for the data flow based on a mapping between a plurality of virtual machines executing in the host and a plurality of network identifiers. The mapping is provided by a network controller that configures the virtual forwarding element. The method encapsulates the packet with the network identifier and a tunnel header that includes network addresses of the host. The method sends the encapsulated packet to the NIC. The NIC transmits the encapsulated packet out of the host and towards a destination of the packet.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer implemented method for managing data flows at a virtual forwarding element executing in a host that has a network interface card (NIC), the method comprising: receiving, from a virtual machine executing in the host, a packet that belongs to a data flow originating from the virtual machine; identifying, at the virtual forwarding element and by the host, a network identifier for the data flow based on a mapping between a plurality of virtual machines executing in the host and a plurality of network identifiers, wherein the mapping is provided by a network controller that configures the virtual forwarding element; encapsulating the packet with the network identifier and a tunnel header that includes network addresses of the host; and sending the encapsulated packet to the NIC, wherein the NIC transmits the encapsulated packet out of the host and towards a destination of the packet. 2. The method of claim 1 further comprising determining that the packet is or is not to be sent out of the host. 3. The method of claim 2 , wherein the encapsulated packet is sent to the NIC based on the determination. 4. The method of claim 2 further comprising forwarding the packet, without encapsulating the packet, to another virtual machine executing in the host based on the determination. 5. The method of claim 2 , wherein a tunnel defined by the tunnel header terminates at another virtual forwarding element executing in another host, wherein the other virtual forwarding element forwards the packet to another virtual machine executing in the other host. 6. The method of claim 1 , wherein the NIC maps a plurality of tunnels to a plurality of data flows originating from the plurality of virtual machines using the plurality of network identifiers that the plurality of data flows carry. 7. The method of claim 6 further comprising: creating a plurality of queues for storing a plurality of data flows originating from the plurality of virtual machines; receiving a message from the NIC, the message indicating that a particular data flow needs a data rate adjustment; and adjusting a data rate for the particular data flow by using a particular queue. 8. The method of claim 7 , wherein the NIC sends the message to the virtual forwarding element upon receiving a congestion message from a network device that is downstream with respect to the NIC and the virtual forwarding element, wherein the NIC identifies the particular data flow using the congestion message and the mapping between the data flows and the virtual machines. 9. A computer program product for managing data flows at a virtual forwarding element executing in a host that has a network interface card (NIC), the computer program product comprising: a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising: receiving, from a virtual machine executing in the host, a packet that belongs to a data flow originating from the virtual machine; identifying, at the virtual forwarding element and by the processing circuit, a network identifier for the data flow based on a mapping between a plurality of virtual machines executing in the host and a plurality of network identifiers, wherein the mapping is provided by a network controller that configures the virtual forwarding element; encapsulating the packet with the network identifier and a tunnel header that includes network addresses of the host; and sending the encapsulated packet to the NIC, wherein the NIC transmits the encapsulated packet out of the host and towards a destination of the packet. 10. The computer program product of claim 9 , wherein the method further comprises determining that the packet is or is not to be sent out of the host. 11. The computer program product of claim 10 , wherein the encapsulated packet is sent to the NIC based on the determination. 12. The computer program product of claim 11 , wherein the method further comprises forwarding the packet, without encapsulating the packet, to another virtual machine executing in the host based on the determination. 13. The computer program product of claim 9 , wherein the NIC maps a plurality of tunnels to a plurality of data flows originating from the plurality of virtual machines using the plurality of network identifiers that the plurality of data flows carry. 14. The computer program product of claim 13 , wherein the method further comprises: creating a plurality of queues for storing a plurality of data flows originating from the plurality of virtual machines; receiving a message from the NIC, the message indicating that a particular data flow needs a data rate adjustment; and adjusting a data rate for the particular data flow by using a particular queue. 15. The computer program product of claim 14 , wherein the NIC sends the message to the virtual forwarding element upon receiving a congestion message from a network device that is downstream with respect to the NIC and the virtual forwarding element, wherein the NIC identifies the particular data flow using the congestion message and the mapping between the data flows and the virtual machines.

Assignees

Inventors

Classifications

  • Address processing for routing · CPC title

  • Interconnection of networks using encapsulation techniques, e.g. tunneling · CPC title

  • H04L45/72Primary

    Routing based on the source address · CPC title

  • for supporting virtual local area networks [VLAN] · CPC title

  • with rate being modified by the source upon detecting a change of network conditions · 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 US9692696B2 cover?
Embodiments relate to managing data flows at a virtual forwarding element. A method for managing data flows at a virtual forwarding element executing in a host that has a network interface card (NIC) is provided. The method receives, from a virtual machine executing in the host, a packet that belongs to a data flow originating from the virtual machine. The method identifies a network identifier…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification H04L45/72. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jun 27 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).