Techniques for connecting an external network coprocessor to a network processor packet parser
US-9215125-B2 · Dec 15, 2015 · US
US9407566B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9407566-B2 |
| Application number | US-201313756485-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 31, 2013 |
| Priority date | Oct 25, 2011 |
| Publication date | Aug 2, 2016 |
| Grant date | Aug 2, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
For a controller of a distributed network control system comprising several controllers for managing forwarding elements that forward data in a network, a method for managing the forwarding elements is described. The method changes a set of data tuples stored in a relational database of the first controller that stores data tuples containing data for managing a set of forwarding elements. The method sends the changed data tuples to at least one of other controllers of the network control system. The other controller receiving the changed data tuples processes the changed data tuples and sends the processed data tuples to at least one of the managed forwarding elements.
Opening claim text (preview).
What is claimed is: 1. For a first controller computer of a distributed network control system comprising a plurality of controllers for managing a plurality of forwarding elements that forward data in a network, a method for managing a set of forwarding elements, the method comprising: changing a set of data tuples stored in a relational database of the first controller computer that stores data tuples containing data for managing the set of forwarding elements in order to implement a set of logical forwarding elements of a logical network; and sending the changed data tuples to at least a second controller computer of the network control system, wherein the second controller computer processes the received changed data tuples to customize the changed data tuples for at least one of the managed forwarding elements in the set and sends the processed data tuples to the managed forwarding element in order for the managed forwarding element to implement the set of logical forwarding elements and forward the logical network data. 2. The method of claim 1 further comprising receiving a request to change the set of data tuples from at least one user of the network control system. 3. The method of claim 1 further comprising receiving a network event requiring the set of data tuples to be changed. 4. The method of claim 3 , wherein the changed data tuples includes universal physical control plane data that is common for every managed forwarding element in the set, wherein the second controller converts the received universal physical control plane data to customized physical control plane data that is specific to the managed forwarding element. 5. The method of claim 3 , wherein the changed data tuples includes universal physical control plane data, wherein the second controller computer relays the universal physical control plane data to the managed forwarding element through a controller application for converting the universal physical control plane data to customized physical control plane data for the forwarding element. 6. The method of claim 5 , wherein the controller application and the managed forwarding element both execute on a same computing device. 7. The method of claim 1 , wherein each of the first and second controllers comprises a secondary storage, the method further comprising storing the changed and processed data tuples in the secondary storage of the first and second controllers, respectively. 8. The method of claim 7 , wherein the secondary storages of the first and second controllers replicate each other. 9. The method of claim 7 , wherein the secondary storage of each controller comprises a persistent transactional database. 10. A non-transitory machine readable medium of a particular controller computer of a network control system that comprises a plurality of computers for managing a plurality of forwarding elements, each of the computers having a relational database for storing data regarding at least a subset of forwarding elements, the machine readable medium of the controller computer storing sets of instructions for execution by at least one processing unit of the controller computer, the sets of instructions for: receiving a set of data tuples relating to a particular forwarding element for which the particular controller computer is a master, the set of data tuples for directing the particular forwarding element on how to implement a set of logical forwarding elements of a logical network in order to forward the logical network data; storing the received set of data tuples in the relational database of the particular controller computer; modifying at least one data tuple in the received set of data tuples stored in the relational database; and propagating the modified data tuple to the particular forwarding element. 11. The machine readable medium of claim 10 , wherein the set of data tuples are received from another controller computer of the plurality of controller computers that is a master of the logical network for which the particular forwarding element implements the set of logical forwarding elements. 12. The machine readable medium of claim 11 , wherein the other controller computer generates the set of data tuples based on user inputs specifying the logical network. 13. The machine readable medium of claim 12 , wherein the other controller computer generates other data tuples to send to a set of other master controllers of other forwarding elements in the subset that implement the logical network. 14. A non-transitory machine readable medium of a first controller computer storing a program which when executed by at least one processing unit of the first controller computer, manages a plurality of managed switching elements that forward data through a network, the program comprising sets of instructions for: changing a set of data tuples stored in a relational database of the first controller computer that stores data tuples containing data for managing the set of forwarding elements in order to implement a set of logical forwarding elements of a logical network; and sending the changed data tuples to at least a second controller computer of the network control system, wherein the second controller computer processes the received changed data tuples to customize the changed data tuples for at least one of the managed forwarding elements in the set and sends the processed data tuples to the managed forwarding element in order for the managed forwarding element to implement the set of logical forwarding elements and forward the logical network data. 15. The machine readable medium of claim 14 , wherein the program further comprises a set of instructions for receiving a request to change the set of data tuples from at least one user of the network control system. 16. The machine readable medium of claim 14 , wherein the program further comprises a set of instructions for receiving a network event requiring the set of data tuples to be changed. 17. The machine readable medium of claim 16 , wherein the changed data tuples includes universal physical control plane datathat is common for every managed forwarding element in the set, wherein the second controller converts the received universal physical control plane data to customized physical control plane data that is specific to the managed forwarding element.
Interconnection of networks using encapsulation techniques, e.g. tunneling · CPC title
Layer 2 routing, e.g. in Ethernet based MAN's · CPC title
Flow based routing · CPC title
Involving tunnels, e.g. MPLS · CPC title
Mapping or translating multiple network management protocols · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.