Multiple active L3 gateways for logical networks

US10003534B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10003534-B2
Application numberUS-201715420683-A
CountryUS
Kind codeB2
Filing dateJan 31, 2017
Priority dateSep 4, 2013
Publication dateJun 19, 2018
Grant dateJun 19, 2018

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.

Some embodiments provide a method for a network controller in a network control system that manages a plurality of logical networks. The method receives a specification of a logical network that comprises a logical router with a logical port that connects to an external network. The method selects several host machines to host a L3 gateway that implements the connection to the external network for the logical router from a set of host machines designated for hosting logical routers. The method generates data tuples for provisioning a set of managed forwarding elements that implement the logical network to send data packets that require processing by the L3 gateway to the selected host machines. The data tuples specify for the managed forwarding elements to distribute the data packets across the selected host machines.

First claim

Opening claim text (preview).

We claim: 1. A method, performed by a managed forwarding element that operates in a first host machine to implement a logical network that includes a logical router, the method comprising: receiving a packet sent by an end machine of the logical network, the end machine residing on the first host machine; performing distributed logical router processing for the packet to determine that a destination for the packet is external to the logical network; in response to the determination that the destination for the packet is external to the logical network, selecting one of a plurality of L3 gateways to which to send the packet, wherein each of the plurality of L3 gateways operates on a different host machine and implements a centralized connection to an external network for the logical router; and sending the packet to a second host machine on which the selected L3 gateway is implemented. 2. The method of claim 1 , wherein the end machine is a virtual machine. 3. The method of claim 1 further comprising performing logical switch processing for the packet to identify that a logical egress port of a logical switch is a logical port that interfaces with the logical router, prior to performing the distributed logical router processing. 4. The method of claim 1 , wherein performing the distributed logical router processing comprises performing a logical routing operation to identify that a logical egress port of the logical router is a logical port that attaches to an external network. 5. The method of claim 1 , wherein selecting the L3 gateway comprises: calculating a value based on a set of characteristics of the received packet; and selecting the L3 gateway from the plurality of L3 gateways based on the calculated value. 6. The method of claim 5 , wherein the calculated value is a hash value. 7. The method of claim 5 , wherein the set of characteristics comprises a source IP address of the packet, a destination IP address of the packet, a source transport port number of the packet, a destination transport port number of the packet, and a transport protocol of the packet. 8. The method of claim 1 , wherein the managed forwarding element receives packets from the end machine having different sets of characteristics, wherein the same L3 gateway is selected for a plurality of packets having the same set of characteristics. 9. The method of claim 8 , wherein different L3 gateways are selected for a first packet having a first set of characteristics and a second packet having a second set of characteristics. 10. The method of claim 1 , wherein sending the packet to the second host machine on which the selected L3 gateway is implemented comprises encapsulating the packet in a tunnel between the managed forwarding element and the second host machine. 11. A non-transitory machine readable medium storing a managed forwarding element for execution by at least one processor of a first host machine to implement a logical network that includes a logical router, the managed forwarding element comprising sets of instructions for: receiving a packet sent by an end machine of the logical network, the end machine residing on the first host machine; performing distributed logical router processing for the packet to determine that a destination for the packet is external to the logical network; in response to the determination that the destination for the packet is external to the logical network, selecting one of a plurality of L3 gateways to which to send the packet, wherein each of the plurality of L3 gateways operates on a different host machine and implements a centralized connection to an external network for the logical router; and sending the packet to a second host machine on which the selected L3 gateway is implemented. 12. The non-transitory machine readable medium of claim 11 , wherein the end machine is a virtual machine. 13. The non-transitory machine readable medium of claim 11 , wherein the managed forwarding element further comprises a set of instructions for performing logical switch processing for the packet to identify that a logical egress port of a logical switch is a logical port that interfaces with the logical router, prior to performing the distributed logical router processing. 14. The non-transitory machine readable medium of claim 11 , wherein the set of instructions for performing the distributed logical router processing comprises a set of instructions for performing a logical routing operation to identify that a logical egress port of the logical router is a logical port that attaches to an external network. 15. The non-transitory machine readable medium of claim 11 , wherein the set of instructions for selecting the L3 gateway comprises sets of instructions for: calculating a value based on a set of characteristics of the received packet; and selecting the L 3 gateway from the plurality of L 3 gateways based on the calculated value. 16. The non-transitory machine readable medium of claim 15 , wherein the calculated value is a hash value. 17. The non-transitory machine readable medium of claim 15 , wherein the set of characteristics comprises a source IP address of the packet, a destination IP address of the packet, a source transport port number of the packet, a destination transport port number of the packet, and a transport protocol of the packet. 18. The non-transitory machine readable medium of claim 11 , wherein the managed forwarding element receives packets from the end machine having different sets of characteristics, wherein the same L3 gateway is selected for a plurality of packets having the same set of characteristics. 19. The non-transitory machine readable medium of claim 18 , wherein different L3 gateways are selected for a first packet having a first set of characteristics and a second packet having a second set of characteristics. 20. The non-transitory machine readable medium of claim 11 , wherein the set of instructions for sending the packet to the second host machine on which the selected L3 gateway is implemented comprises a set of instructions for encapsulating the packet in a tunnel between the managed forwarding element and the second host machine.

Assignees

Inventors

Classifications

  • of virtual routers · CPC title

  • Arrangements for connecting between networks having differing types of switching systems, e.g. gateways · CPC title

  • using hashing · CPC title

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

  • Distributed routing · 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 US10003534B2 cover?
Some embodiments provide a method for a network controller in a network control system that manages a plurality of logical networks. The method receives a specification of a logical network that comprises a logical router with a logical port that connects to an external network. The method selects several host machines to host a L3 gateway that implements the connection to the external network …
Who is the assignee on this patent?
Nicira Inc
What technology area does this patent fall under?
Primary CPC classification H04L45/7453. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jun 19 2018 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 10 related publications on this page (citations in our corpus or others sharing the same primary CPC).