Scheduling distribution of logical forwarding plane data

US9300593B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9300593-B2
Application numberUS-201313756483-A
CountryUS
Kind codeB2
Filing dateJan 31, 2013
Priority dateOct 25, 2011
Publication dateMar 29, 2016
Grant dateMar 29, 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 controller for managing several managed switching elements that forward data in a network is described. The controller includes an interface for receiving input logical control plane data in terms of input events data. The controller includes a converter for converting the input logical control plane data to output logical forwarding plane data by processing the input events data. The logical forwarding plane data is for subsequent translation into physical control plane data. The controller includes an input scheduler for (1) categorizing the input events data into different groups based on certain criteria and (2) supplying the input events data into the converter in a manner that each different group of input events data is processed separately by the converter.

First claim

Opening claim text (preview).

What is claimed is: 1. A controller computer for managing a plurality of managed forwarding elements that implement different logical networks, the controller computer comprising: an interface that receives input logical control plane data in terms of input events, said input logical control plane data comprising updates to logical control planes of logical networks, wherein each logical network is implemented by a set of managed forwarding elements; a converter that converts the input logical control plane data for each logical network to output logical forwarding plane data for the logical network by processing the input events, said logical forwarding plane data for subsequent translation into physical control plane data for the set of managed forwarding elements that implements the logical network; and an input scheduler that (i) categorizes the input events into different groups related to different logical networks, and (ii) defines a schedule for supplying each group of the input events for each logical network to the converter in a manner that ensures that each group of input events related to each logical network is processed together by the converter. 2. The controller computer of claim 1 , wherein a particular input event represents a change in a state of at least one managed forwarding element in the set of managed forwarding elements. 3. The controller computer of claim 1 , wherein the input logical control plane data are at least partially supplied by at least one user. 4. The controller computer of claim 1 , wherein the set of managed forwarding elements implements each logical network by forwarding data packets between a set of end machines that are logically connected through logical forwarding elements of the logical network, wherein the set of managed forwarding elements forwards the data packets between the end machines according to forwarding rules defined by the output logical forwarding plane data. 5. The controller computer of claim 4 , wherein each managed forwarding element in at least a subset of managed forwarding elements operates on a different host machine that also hosts one or more end machines in the set of end machines. 6. The controller computer of claim 1 further comprising a classifier for assigning a priority level to data for each input event, wherein the input scheduler supplies an input event with a higher priority level ahead of a group of input events with lower priority level. 7. The controller computer of claim 1 , wherein the output logical forwarding plane data is converted into output physical control plane data to be sent to a plurality of other controllers through a plurality of communication channels, the controller computer further comprising an output scheduler for (i) queuing the output physical control plane data in a plurality of storage structures each of which corresponds to one of the other controllers and (ii) sending the output physical control plane data to the other controllers from the corresponding storage structures. 8. The controller computer of claim 7 , wherein the output scheduler sends output physical control plane data from a particular storage structure when the particular storage structure has more than a threshold amount of output physical control plane data. 9. The controller computer of claim 7 , wherein the output scheduler sends output physical control plane data from a particular storage structure periodically. 10. The controller computer of claim 1 , wherein each logical network comprises a set of logical forwarding elements that logically connects a set of end machines to each other, wherein the logical forwarding plane data comprises a plurality of logical flow entries that specify forwarding rules for forwarding data between logical addresses of each set of logical forwarding elements that are is implemented by the set of managed forwarding elements. 11. The controller computer of claim 1 , wherein the translated physical control plane data is universal physical control plane data that define a set of forwarding rules that is common for every managed forwarding element in the set of managed forwarding elements. 12. The controller computer of claim 11 , wherein a set of other controllers performs the further translations of the universal physical control plane data to a set of customized physical control plane data that is customized for each managed forwarding element in the set of managed forwarding elements. 13. The controller computer of claim 12 , wherein each controller in the set of other controllers executes on a same host machine on which a corresponding managed forwarding element operates. 14. The controller computer of claim 12 , wherein each the controller in the set of other controllers is a controller computer that is separate from a host machine on which a corresponding managed forwarding element operates. 15. A non-transitory machine readable medium of a controller computer that stores a program which when executed by at least one processing unit of the controller computer manages a plurality of managed forwarding elements that implement different logical networks, the program comprising sets of instructions for: receiving input logical control plane data in terms of input events, said input logical control plane data comprising updates to logical control planes of logical networks, wherein each logical network is implemented by a set of managed forwarding elements; categorizing the input events data into different groups related to different logical networks; defining a schedule for supplying each group of the input events for each logical network to a converter in a manner that ensures that each group of input events related to each logical network is processed together by the converter; and converting, by the converter, the input logical control plane data for each logical network to output logical forwarding plane data for the logical network, said logical forwarding plane data for subsequent translation into physical control plane data for the set of managed forwarding elements that implements the logical network. 16. The machine readable medium of claim 15 , wherein a particular input event represents a change in a state of at least one managed forwarding element in the set of managed forwarding elements. 17. The machine readable medium of claim 15 , wherein the input logical control plane data are at least partially supplied by at least one user. 18. The machine readable medium of claim 15 , wherein the set of managed forwarding elements implements each logical network by forwarding data packets between a set of end machines that are logically connected through logical forwarding elements of the logical network, wherein the set of managed forwarding elements forwards the data packets between the end machines according to forwarding rules defined by the output logical forwarding plane data. 19. The machine readable medium of claim 18 , wherein each managed forwarding element in the set of managed forwarding elements operates on a different host machine that also hosts one or more end machines in the set of end machines. 20. The machine readable medium of claim 15 , wherein each logical network comprises a set of logical forwarding elements that logically connects a set of end machines to each other, wherein the logical forwarding plane data comprises a plurality of logical flow entries that specify forwarding rules for forwarding data between logical addresses of each set of logical forwarding elements that is implemented b

Assignees

Inventors

Classifications

  • Initialisation or configuration control {(processor initialisation G06F9/4405)} · CPC title

  • comprising distributed management centres cooperatively managing the network · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

  • Flow based routing · CPC title

  • Mapping or translating multiple network management protocols · 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 US9300593B2 cover?
A controller for managing several managed switching elements that forward data in a network is described. The controller includes an interface for receiving input logical control plane data in terms of input events data. The controller includes a converter for converting the input logical control plane data to output logical forwarding plane data by processing the input events data. The logical…
Who is the assignee on this patent?
Nicira Inc
What technology area does this patent fall under?
Primary CPC classification H04L47/50. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 29 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).