Patent application number | Description | Published |
20120120964 | NETWORK CONTROL APPARATUS AND METHOD FOR POPULATING LOGICAL DATAPATH SETS - For a network control system that receives, from a user, logical datapath sets that logically express desired forwarding behaviors that are to be implemented by a set of managed switching elements, a controller for managing several managed switching elements that forward data in a network that includes the managed switching elements is described. The controller includes a set of modules for detecting a change in one or more managed switching elements and for updating logical datapath set based on the detected change. The logical datapath set is for subsequent translation into a set of physical forwarding behaviors of the managed switching elements. | 05-17-2012 |
20130058215 | NETWORK VIRTUALIZATION APPARATUS AND METHOD WITH A TABLE MAPPING ENGINE - Some embodiments provide a virtualizer for managing a plurality of managed switching elements that forward data through a network. The virtualizer comprises a first set of tables for storing input logical forwarding plane data and a second set of tables for storing output physical control plane data. It also includes a table mapping engine for mapping the input logical forwarding plane data in the first set of tables to output physical control plane data in the second set of tables by performing a set of database join operations on the input logical forwarding plane data in the first set of tables. In some embodiments, the physical control plane data is subsequently translated into physical forwarding behaviors that direct the forwarding of data by the managed switching elements. | 03-07-2013 |
20130058225 | DISTRIBUTED NETWORK CONTROL APPARATUS AND METHOD - Some embodiments provide a distributed control system for controlling managed switching elements of a network. The distributed control system comprises a first controller for converting a first set of input logical control plane data to a first set of output logical forwarding plane data. It also includes a second controller for converting a second set of input logical control plane data to a second set of output logical forwarding plane data. The logical forwarding plane data is translated into physical forwarding behaviors that direct the forwarding of data by the managed switching elements. | 03-07-2013 |
20130058228 | NETWORK VIRTUALIZATION APPARATUS AND METHOD - Some embodiments provide a network virtualizer for managing several managed switching elements that forward data in a network. The virtualizer includes an interface for receiving input logical forwarding plane data. It also includes a converter for converting the input logical forwarding plane data to output physical control plane data. In some embodiments, the physical control plane data is translation into physical forwarding plane data that direct the forwarding of data by the managed switching elements. | 03-07-2013 |
20130058229 | METHOD AND APPARATUS FOR ROBUST PACKET DISTRIBUTION AMONG HIERARCHICAL MANAGED SWITCHING ELEMENTS - For a network that includes several managed edge switching elements and several managed non-edge switching elements that are for implementing a logical switching element, some embodiments provide a method of distributing packet processing across the several managed non-edge switching elements. The method receives a packet for processing through the logical switching element. Based on a determination that the packet needs to be processed by a managed non-edge switching element, the method determines a particular managed non-edge switching element of the several managed non-edge switching elements to forward the packet. The method forwards the packet to the particular managed non-edge switching element for the particular managed non-edge switching element to process the packet. | 03-07-2013 |
20130058250 | HIERARCHICAL MANAGED SWITCH ARCHITECTURE - Some embodiments provide a method for managing several managed switching elements in a network. The method determines configurations for the several managed switching elements to implement a first logical data path set. Based on the determined configurations, the method configures a first set of the several managed switching elements to implement the first logical data path set. The method configures a second set of the several managed switching elements to implement a second logical data path set. | 03-07-2013 |
20130058252 | MESH ARCHITECTURES FOR MANAGED SWITCHING ELEMENTS - Some embodiments provide a network architecture that includes several lower level managed switching elements for forwarding network data to several of network hosts. The network architecture includes a set of higher level managed switching elements. The several lower level managed switching elements and the set of higher level managed switching elements implement several logical datapath sets. Communication channels are established among the several lower level managed switching elements and the set of higher level managed switching elements based on a mesh topology. | 03-07-2013 |
20130058339 | NETWORK CONTROL APPARATUS AND METHOD - Some embodiments provide a controller for managing several managed switching elements that forward data in a network. The controller includes an interface for receiving input logical control plane data. It also includes a converter for converting the input logical control plane data to output logical forwarding plane data. The logical forwarding plane data for subsequent translation into a set of physical forwarding behaviors that direct the forwarding of data by the managed switching elements. | 03-07-2013 |
20130058340 | NETWORK CONTROL APPARATUS AND METHOD WITH TABLE MAPPING ENGINE - Some embodiments provide a controller for managing a plurality of managed switching elements that forward data through a network. The controller comprising a first set of tables for storing input logical control plane data, and a second set of tables for storing output logical forwarding plane data. It also includes a table mapping engine for mapping the input logical control plane data in the first set of tables to output logical forwarding plane data in the second set of tables by performing a set of database join operations on the input logical control plane data in the first set of tables. The logical forwarding plane data is subsequently translated into physical forwarding behaviors that direct the forwarding of data by the managed switching elements. | 03-07-2013 |
20130058348 | DISTRIBUTED NETWORK CONTROL SYSTEM WITH ONE MASTER CONTROLLER PER MANAGED SWITCHING ELEMENT - A network control system for managing several switching elements. The network control system includes first and second controllers for generating data for managing first and second sets of switching elements. The first controller is further for serving as a master controller of the first set of switching elements. The second controller is further for serving as a master controller of the second set of switching elements. The master controller for a particular set of switching elements is the only controller that is allowed to propagate data to the particular set of switching elements data for managing the particular set of switching elements. | 03-07-2013 |
20130058351 | USE OF TUNNELS TO HIDE NETWORK ADDRESSES - For a managed network including first and second managed switching elements that implement logical data path sets, some embodiments provide a method that establishes, from the first managed switching element, a network tunnel through a network to the second managed switching element. The network includes a set of unmanaged switching elements. Through the network tunnel, the network forwards logical network data to the set of unmanaged switching elements for the set of unmanaged switching elements to forward to the second managed switching element. The logical network is hidden from the set of unmanaged switching elements when the logical network data is forwarded through the tunnel. | 03-07-2013 |
20130058354 | MANAGED SWITCHING ELEMENTS USED AS EXTENDERS - Some embodiments provide a network system that includes a first network and a second network. The first network includes several unmanaged switching elements. The second network includes several managed switching elements. The network system includes a particular managed switching element for communicating network data between the first and second networks. | 03-07-2013 |
20130058357 | DISTRIBUTED NETWORK VIRTUALIZATION APPARATUS AND METHOD - Some embodiments provide a distributed control system for controlling managed switching elements of a network. The distributed control system comprises a first network virtualizer for converting a first set of input logical forwarding plane data to a first set of output physical control plane data. It also includes a second network virtualizer for converting a second set of input logical forwarding plane data to a second set of output physical control plane data. In some embodiments, the physical control plane data is translated into physical forwarding behaviors that direct the forwarding of data by the managed switching elements. | 03-07-2013 |
20130060818 | PROCESSING REQUESTS IN A NETWORK CONTROL SYSTEM WITH MULTIPLE CONTROLLER INSTANCES - 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. | 03-07-2013 |
20130060819 | DISTRIBUTED NETWORK CONTROL SYSTEM WITH ONE MASTER CONTROLLER PER LOGICAL DATAPATH SET - A network control system for managing a plurality of switching elements that implement a plurality of logical datapath sets. The network control system includes first and second controllers for generating requests for modifications to first and second logical datapath sets. The first controller is further for determining whether to make modifications to the first logical datapath set. The second controller is further for determining whether to make modifications to the second logical datapath set. Each controller is further for receiving logical control plane data that specifies logical datapath sets and for converting the logical control plane data to physical control plane data for propagating to the switching elements. | 03-07-2013 |
20130060940 | NETWORK VIRTUALIZATION - Some embodiments of the invention provide a robust scaling-out of network functionality by providing a software layer, called the network hypervisor, that sits between the network forwarding functions (i.e., the forwarding plane) and the network control interfaces (i.e., the control plane). The network hypervisor of some embodiments provides a logical abstraction of the network's forwarding functionality, so that network operators make their control decisions in terms of this abstraction, independent of the details of the underlying networking hardware. The network hypervisor of some embodiments may then “compile” commands placed against this abstraction into configurations of the underlying hardware. Accordingly, in some embodiments, there are two design challenges: (1) the choice of the network abstraction, and (2) the technology needed to compile the logical “abstract” controls into low-level configurations. | 03-07-2013 |
20130117428 | PHYSICAL CONTROLLERS FOR CONVERTING UNIVERSAL FLOWS - Some embodiments provide 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. 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 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. Each controller instance includes a network information base (NIB) storage for storing data and exchanging data with the other controller instance. | 05-09-2013 |
20130117429 | CHASSIS CONTROLLERS FOR CONVERTING UNIVERSAL FLOWS - 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 (1) a first controller for converting logical control plane data for the first logical datapath set to universal physical control plane (UPCP) data, (2) a second controller for converting UPCP data to customized physical control plane (CPCP) data for the first managed forwarding element but not the second managed forwarding element, and (3) a third controller for receiving UPCP data generated by the first controller instance, identifying the second controller as the controller instance responsible for generating the CPCP data for the first managed forward element, and supplying the received UPCP data to the second controller. Each controller includes a network information base (NIB) storage for exchanging data with another controller instance. | 05-09-2013 |
20130125120 | MIGRATING MIDDLEBOX STATE FOR DISTRIBUTED MIDDLEBOXES - A controller of a network control system for configuring several middlebox instances is described. The middlebox instances implement a middlebox in a distributed manner in several hosts. The controller configures, in a first host, a first middlebox instance to receive a notification from a migration module before a virtual machine (VM) running in the first host migrates to a second host and to send middlebox state related to the VM to the migration module. | 05-16-2013 |
20130212244 | COMMUNICATION CHANNEL FOR DISTRIBUTED NETWORK CONTROL SYSTEM - For a particular controller for managing managed forwarding elements that forward data in a network, a method for computing forwarding state using a set of inputs from a first controller and a second controller that is a back up controller for the first controller is described. The method receives a first subset of the set of inputs from the first controller. After failure of the first controller, the method receives a second subset of the set of inputs from the second controller. At least one input of the second subset of the set of inputs is duplicative of an input in the first subset. The method computes forwarding state using the first and second subsets of the inputs but without using the duplicative input. | 08-15-2013 |
20140351432 | USING TRANSACTIONS TO MINIMIZE CHURN IN A DISTRIBUTED NETWORK CONTROL SYSTEM - A particular network controller receives a first set of inputs from the first controller and a second set of inputs from the second controller. The particular controller then starts to compute a set of outputs using the first set of inputs. After a failure of the first controller, the particular controller receives a third set of inputs from the second controller. The third set of inputs and the first or second set of inputs makes up a group of inputs for being processed together and separately from another group of inputs. The particular controller then receives an indicator from the second controller, which indicates that all inputs of the group of inputs have arrived at the particular controller. After receiving the indicator and after computing the set of outputs completely, the particular controller sends the set of outputs to a fourth controller or to a managed forwarding element. | 11-27-2014 |
20150019748 | METHODS AND APPARATUS FOR STATELESS TRANSPORT LAYER TUNNELING - Some embodiments of the invention provide a method of tunneling a data packet by encapsulating the data packet with a protocol header and specifying information in the fields of the header in a manner that a network switch can offload processing tasks to its network interface controller. The switch on a transmit side sends the processed data packet through the tunnel to another switch on a receive side. The two sides represent the two ends of the tunnel established between the two switches. Each of the transmit and received side switches is controlled by a switch controller, which in some embodiments is implemented as software. The switch controllers and network interface controllers together process the data packet which is being transferred through the tunnel between the switches. | 01-15-2015 |
20150049632 | Hitless Upgrade for Network Control Applications - A method for upgrading a set of controller nodes in a controller cluster that manages a plurality of forwarding elements in a way that minimizes dataplane outages. The method of some embodiments upgrades the control applications of a subset of the controller nodes before upgrading a decisive controller node. Once the decisive controller node is upgraded, the method switches the controller cluster to use a new version of the control applications. | 02-19-2015 |