Flow generation from second level controller to first level controller to managed switching element

US9444651B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9444651-B2
Application numberUS-201213589043-A
CountryUS
Kind codeB2
Filing dateAug 17, 2012
Priority dateAug 17, 2011
Publication dateSep 13, 2016
Grant dateSep 13, 2016

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.

A network control system that includes a first set of network controllers for (i) receiving a logical control plane definition of a logical switching element that couples to both a first set of network hosts in a first domain and a second set of network hosts in a second domain, (ii) translating the logical control plane definition of the logical switching element into a first set of flow entries in a first logical forwarding plane, and (iii) translating the first set of flow entries into a second set of flow entries in a second logical forwarding plane. The network control system includes a second set of network controllers in the first domain for (i) receiving a portion of the second set of flow entries and (ii) translating the portion of the second set of flow entries into a third set of flow entries in a physical control plane.

First claim

Opening claim text (preview).

We claim: 1. For a first set of network controllers, a method for managing a network, the method comprising: receiving a definition of a logical switching element that couples to both a first set of network hosts in a first domain and a second set of network hosts in a second domain; using a rules engine to generate a first set of lookups at a higher-level logical forwarding plane for implementing the logical switching element by converting a first set of input tables to a first set of output tables; using the rules engine to generate a second set of lookups at a lower-level logical forwarding plane based on the first set of lookups by converting a second set of input tables to a second set of output tables; distributing a first portion of the second set of lookups to a second set of network controllers that manage the first domain; and distributing a second portion of the second set of lookups to a third set of network controllers that manage the second domain. 2. The method of claim 1 , wherein distributing the first and second portions of the second set of lookups comprises publishing the lookups to a database that stores network state information. 3. The method of claim 2 , wherein the second and third sets of network controllers subscribe to updates from the database. 4. The method of claim 1 , wherein the first set of input tables for generating the first set of lookups comprises the definition of the logical switching element converted into a particular database table format and the first set of output tables comprises the first set of lookups. 5. The method of claim 1 , wherein the logical switching element is a higher-level logical switching element, the second set of input tables for generating the second set of lookups comprises the first set of lookups and bindings between ports of the higher-level logical switching element and ports of at least one lower-level logical switching element, and the second set of output tables comprises the second set of lookups. 6. The method of claim 5 , wherein the second set of output tables further comprises (i) lookups for mapping ingress ports of the lower-level logical switching element to ingress ports of the higher-level logical switching element and (ii) lookups for mapping egress ports of the higher-level logical switching element to egress ports of the lower-level logical switching element. 7. A non-transitory machine readable medium storing a program for execution by at least one processing unit of a network controller instance in a set of network controller instances for managing a network, the program comprising sets of instructions for: receiving a definition of a higher-level logical switching element that couples to both a first set of network hosts in a first domain and a second set of network hosts in a second domain; using a rules engine to generate a first set of lookups at a higher-level logical forwarding plane for implementing the higher level logical switching element by converting a first set of input tables to a first set of output tables; using the rules engine to generate a second set of lookups at a lower-level logical forwarding plane based on the first set of lookups by converting a second set of input tables to a second set of output tables; distributing a first portion of the second set of lookups to a second set of network controller instances that manage the first domain, the first portion of the second set of lookups for implementing the higher-level logical switching element and a first lower-level logical switching element that couples to the first set of network hosts in the first domain; and distributing a second portion of the second set of lookups to a third set of network controller instances that manage the second domain, the second portion of the second set of lookups for implementing the higher-level logical switching element and a second lower-level logical switching element that couples to the second set of network hosts in the second domain. 8. The non-transitory machine readable medium of claim 7 , wherein the sets of instructions for distributing the first and second portions of the second set of lookups comprise a set of instructions for publishing the lookups to a database that stores network state information. 9. The non-transitory machine readable medium of claim 8 , wherein the second and third sets of network controllers subscribe to updates from the database. 10. The non-transitory machine readable medium of claim 7 , wherein the first set of input tables for generating the first set of lookups comprises the definition of the higher-level logical switching element converted into a particular database table format and the first set of output tables comprises the first set of lookups. 11. The non-transitory machine readable medium of claim 7 , wherein the second set of input tables for generating the second set of lookups comprises the first set of lookups and bindings between ports of the higher-level logical switching element and ports of the first and second lower-level logical switching elements, and the second set of output tables comprises the second set of lookups. 12. The non-transitory machine readable medium of claim 11 , wherein the second set of output tables further comprises (i) lookups for mapping ingress ports of the first and second lower-level logical switching elements to ingress ports of the higher-level logical switching element and (ii) lookups for mapping egress ports of the higher-level logical switching element to egress ports of the first and second lower-level logical switching elements. 13. A network controller computer, of a set of network controller computers, comprising: a set of processing units; and a non-transitory machine readable medium storing a program for execution by at least of the processing units, the program comprising sets of instructions for: receiving a definition of a logical switching element that couples to both a first set of network hosts in a first domain and a second set of network hosts in a second domain; using a rules engine to generate a first set of lookups at a higher-level logical forwarding plane for implementing the logical switching element by converting a first set of input tables to a first set of output tables; using the rules engine to generate a second set of lookups at a lower-level logical forwarding plane based on the first set of lookups by converting a second set of input tables to a second set of output tables; distributing a first portion of the second set of lookups to a second set of network controller instances that manage the first domain; and distributing a second portion of the second set of lookups to a third set of network controller instances that manage the second domain. 14. The network controller computer of claim 13 , wherein the sets of instructions for distributing the first and second portions of the second set of lookups comprise a set of instructions for publishing the lookups to a database that stores network state information. 15. The network controller computer of claim 14 , wherein the second and third sets of network controllers subscribe to updates from the database. 16. The network controller computer of claim 13 , wherein the first set of input tables for generating the first set of lookups comprises the definition of the logical switching element converted into a particular database table format and the first set of output tables comprises the first set of lookups. 17. The network controller computer of claim 13 , wherein the logical switching element is a higher-level

Assignees

Inventors

Classifications

  • Interdomain routing, e.g. hierarchical routing · CPC title

  • comprising hierarchical management structures · CPC title

  • H04L12/66Primary

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

  • Electricity · mapped topic

  • of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV] · 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 US9444651B2 cover?
A network control system that includes a first set of network controllers for (i) receiving a logical control plane definition of a logical switching element that couples to both a first set of network hosts in a first domain and a second set of network hosts in a second domain, (ii) translating the logical control plane definition of the logical switching element into a first set of flow entri…
Who is the assignee on this patent?
Koponen Teemu, Casado Martin, Thakkar Pankaj, and 3 more
What technology area does this patent fall under?
Primary CPC classification H04L12/66. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Sep 13 2016 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 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).