摘要:
Some embodiments provide a method that processes network data through a network. The method receives a packet destined for a network host associated with a logical datapath set implemented by a set of managed edge switching elements and a set of managed non-edge switching elements in the network. The method determines whether the packet is a known packet. When the packet is a known packet, the method forwards the packet to a managed switching element in the set of managed edge switching elements for forwarding to the network host. When the packet is not a known packet, the method forwards the packet to a managed switching element in the set of managed non-edge switching elements for further processing.
摘要:
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.
摘要:
Some embodiments provide a novel method for forwarding a packet at a first managed interconnection switching element in a managed network of interconnection switching elements. The method receives a packet from a source machine on a first network segment in a first network. The packet identifies a destination machine located on a second network segment in a second, different network. The method removes a context tag that identifies the first network segment. The method uses the identification of the first network segment to determine a logical switching element that connects at least the first and second network segments. The method encapsulates the packet with a logical context identifier that identifies a logical port of the logical switching element. The logical port corresponds to the second network segment. The method transmits the twice-encapsulated packet towards a second managed interconnection switching element at the second network.
摘要:
A network control system that includes several controllers for managing several switching elements. Each controller includes a network information base (NIB) storage that stores data regarding the switching elements and a secondary storage for facilitating replication of at least a portion of data across the NIB storages of the different controllers. In some embodiments, the primary purpose for one or more of the secondary storage structures is to back up the data in the NIB. In these or other embodiments, one or more of the secondary storage structures serve a purpose other than backing up the data in the NIB. In some embodiments, the NIB is stored in system memory while the system operates for fast access of the NIB records. In some embodiments, one or more of the secondary storage structures are stored on disks which can be slower to access.
摘要:
A control system that includes several controllers for managing several switching elements. A first controller receives a request to modify a data tuple stored in a network information base (NIB) storage of the first controller that stores data for managing a set of switching elements. The first controller determines whether the received request to modify should be processed by the first controller. When the received request should be modified by the first controller, the first controller modifies the set of data in the NIB storage. The first controller updates a request list that is propagated between the controllers to disseminate requests to modify different data tuples that are stored in the NIB storages of the different controllers.
摘要:
In a hierarchical switching architecture that includes at least one lower level managed switching element that connects to several higher level managed switching elements, some embodiments provide a method of identifying a higher level managed switching element to which the lower level managed switching element forwards a packet for further processing. The method computes a value based on a set of attributes of the packet. The method identifies a record from a hierarchy traversal table based on the computed value. The record specifies (1) a first higher level managed switching element as a primary higher level managed switching element and (2) a second higher level managed switching element as a secondary higher level managed switching element. The primary and secondary higher level managed switching elements are for forwarding the packet for further processing. The method forwards the packet to one of the higher level managed switching elements.
摘要:
Some embodiments provide a control system for managing a network that includes several switching elements managed by the control system. The system includes several controller instances for managing the switching elements. Each particular controller instance includes a coordination manager for communicating with the coordination managers of the other controllers in order to partition control of the plurality of switching elements by electing a master controller for different sets of switching elements. The particular controller instance also includes a storage for storing control data for controlling the set of managed switching elements managed by the controller instance, and a switch interface for passing the control data to the set of managed switching elements.
摘要:
A network controller for managing a set of interconnection switching elements that connect segmented networks to a shared physical interconnection network. The network controller includes i) an interface for receiving a logical control plane definition of a logical switching element that couples to a set of network segments at different segmented networks; ii) a control application for translating the logical control plane definition of the logical switching element into a first set of flow entries in a logical forwarding plane; and iii) a virtualization application for translating the first set of flow entries into a second set of flow entries in a physical control plane. The flow entries in the physical control plane are for subsequent conversion by the managed interconnection switching elements into a third set of flow entries in a physical forwarding plane that directs the forwarding of network data by the managed interconnection switching elements.
摘要:
A network control system for generating physical control plane data for managing first and second managed forwarding elements that implement forwarding operations associated with a first logical datapath set is described. The system includes a first controller instance for converting logical control plane data for the first logical datapath set to universal physical control plane (UPCP) data. The system further includes a second controller instance for converting UPCP data to customized physical control plane (CPCP) data for the first managed forwarding element but not the second managed forwarding element.
摘要:
A network control system that includes several controllers for managing several switching elements and a distributed hash table (DHT) formed across the controllers for storing data regarding the switching elements that is accessible by the controllers. Each hash table serves as a DHT instance. In some embodiments, the DHT instances of all controller instances collectively store one set of records that is indexed based on hashed indices for quick access. These records are distributed across the different controller instances to minimize the size of the records within each instance and to allow for the size of the DHT to be increased by adding other DHT instances. According to this scheme, each DHT record is not stored in each controller instance. In fact, in some embodiments, each DHT record is stored in at most one controller instance.