Method and apparatus for interacting with a network information base in a distributed network control system with multiple controller instances
First Claim
1. A non-transitory machine readable medium for a first controller, the medium storing a program for managing a set of managed forwarding elements, the program comprising sets of instructions for:
- storing a set of data in a local network information base (NIB) storage of the first controller, wherein the local NIB storage stores data for managing the set of managed forwarding elements;
registering a second controller for receiving a notification when the set of data changes in the local NIB storage, wherein the first controller is a master of the set of data in the local NIB storage and the second controller is for managing a particular managed forwarding element of the set of managed forwarding elements, wherein the set of managed forwarding elements implements a logical forwarding element, wherein the first and second controllers execute on separate physical machines from the managed forwarding elements managed by the controllers;
changing the set of data in the local NIB storage; and
sending the notification to the second controller of the change to the set of data in the local NIB storage, wherein the second controller propagates a corresponding change to the particular managed forwarding element to modify forwarding behaviors of the particular managed forwarding element based on the corresponding change.
2 Assignments
0 Petitions
Accused Products
Abstract
A control system including several controllers for managing several switching elements. A first controller registers a second controller for receiving a notification when a data tuple changes in a network information base (NIB) storage of the first controller that stores data for managing a set of switching elements. The first controller changes the data tuple in the NIB. The first controller sends the notification to the second controller of the change to the data tuple in the NIB. The first and second controllers operate on two different computing devices. Each controller receives logical control plane data for specifying logical datapath sets and converts the logical control plane data to physical control plane data for enabling the switching elements to implement the logical datapath sets.
330 Citations
26 Claims
-
1. A non-transitory machine readable medium for a first controller, the medium storing a program for managing a set of managed forwarding elements, the program comprising sets of instructions for:
-
storing a set of data in a local network information base (NIB) storage of the first controller, wherein the local NIB storage stores data for managing the set of managed forwarding elements; registering a second controller for receiving a notification when the set of data changes in the local NIB storage, wherein the first controller is a master of the set of data in the local NIB storage and the second controller is for managing a particular managed forwarding element of the set of managed forwarding elements, wherein the set of managed forwarding elements implements a logical forwarding element, wherein the first and second controllers execute on separate physical machines from the managed forwarding elements managed by the controllers; changing the set of data in the local NIB storage; and sending the notification to the second controller of the change to the set of data in the local NIB storage, wherein the second controller propagates a corresponding change to the particular managed forwarding element to modify forwarding behaviors of the particular managed forwarding element based on the corresponding change. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of managing a set of managed forwarding elements of a plurality of managed forwarding elements managed by a plurality of controllers in a network control system, the method comprising:
-
at a first controller, changing the set of data stored in a local network information base (NIB) storage of the first controller, wherein the local NIB storage stores data for managing the set of managed forwarding elements; and from the first controller, sending a notification to a secondary storage of a second controller of the change to the set of data in the local NIB storage of the first controller after recording the change in a secondary storage of the first controller, wherein the second controller updates a local NIB storage of the second controller after detecting the change in the secondary storage of the second controller and propagates a corresponding change to a particular managed forwarding element of the set of managed forwarding elements to modify forwarding behaviors of the particular managed forwarding element based on the corresponding change, wherein the first and second controllers execute on separate physical machines from the managed forwarding elements managed by the controllers. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A distributed network control system comprising:
-
a first controller computer that executes a first controller instance for execution by at least one processing unit, the first controller instance for managing a first set of data in a first network information base (NIB) storage of the first controller instance regarding a set of managed forwarding elements and making changes to the first set of data in the first NIB storage based on detected changes in the set of managed forwarding elements; and a second controller computer that executes a second controller instance for execution by at least one processing unit, the second controller instance for managing a second set of data in a second NIB storage of the second controller instance regarding a logical forwarding element that is implemented on the set of managed forwarding elements, wherein the second controller instance registers to receive notifications from the first controller instance when the first set of data in the first NIB storage changes, wherein the first and second controller computers are separate physical machines from the set of managed forwarding elements. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26)
-
Specification