Using transactions to compute and propagate network forwarding state
First Claim
1. For a controller for managing a network comprising a plurality of managed forwarding elements that forward data in the network, a method for configuring the managed forwarding elements, the method comprising:
- generating a first set of configuration data for configuring a managed forwarding element as a first-hop forwarding element for (i) receiving a packet directly from an end machine that is a source of the packet and (ii) forwarding the packet towards an end machine that is a destination of the packet;
generating a second set of configuration data for configuring a set of managed forwarding elements as non-first-hop forwarding elements for (i) receiving the packet not directly from the source end machine and (ii) forwarding the packet towards the destination end machine; and
sending the second set of configuration data to the set of managed forwarding elements prior to sending the first set of configuration data to the managed forwarding element.
1 Assignment
0 Petitions
Accused Products
Abstract
For a controller for managing a network comprising several managed forwarding elements that forward data in the network, a method for configuring a managed forwarding element is described. The method generates a first set of flow entries for defining forwarding behaviors of the managed forwarding element based on a current network policy for a logical network implemented in the several managed forwarding elements. The method sends the first set of flow entries to the managed forwarding element in order for the managed forwarding element to forward data that the managed forwarding element directly receives from an end machine based on the current network policy. The method generates a second set of flow entries for modifying forwarding behaviors of the managed forwarding element based on a new network policy for the logical network. The method sends the second set of flow entries to the managed forwarding element in order for the managed forwarding element to forward the data based on the new network policy.
-
Citations
27 Claims
-
1. For a controller for managing a network comprising a plurality of managed forwarding elements that forward data in the network, a method for configuring the managed forwarding elements, the method comprising:
-
generating a first set of configuration data for configuring a managed forwarding element as a first-hop forwarding element for (i) receiving a packet directly from an end machine that is a source of the packet and (ii) forwarding the packet towards an end machine that is a destination of the packet; generating a second set of configuration data for configuring a set of managed forwarding elements as non-first-hop forwarding elements for (i) receiving the packet not directly from the source end machine and (ii) forwarding the packet towards the destination end machine; and sending the second set of configuration data to the set of managed forwarding elements prior to sending the first set of configuration data to the managed forwarding element. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. For a controller for managing a network comprising managed forwarding elements that forward data in the network, a method for configuring a set of managed forwarding elements, the method comprising:
-
generating (i) a first set of flow entries for configuring the set of managed forwarding elements as first-hop forwarding elements that forward data received directly from a set of end machines and (ii) a second set of flow entries for configuring the set of managed forwarding elements as non-first-hop forwarding elements that forward data not received from the set of end machines; and sending the second set of flow entries to the set of managed forwarding elements prior to sending the first set of flow entries to the set of managed forwarding elements. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A non-transitory machine readable medium storing a program for configuring managed forwarding elements that forward data in a network, the program comprising sets of instructions for:
-
generating a first set of configuration data for configuring a managed forwarding element as a first-hop forwarding element for (i) receiving a packet directly from an end machine that is a source of the packet and (ii) forwarding the packet towards an end machine that is a destination of the packet; generating a second set of configuration data for configuring a set of managed forwarding elements as non-first-hop forwarding elements for (i) receiving the packet not directly from the source end machine and (ii) forwarding the packet towards the destination end machine; and sending the second set of configuration data to the set of managed forwarding elements prior to sending the first set of configuration data to the managed forwarding element. - View Dependent Claims (17, 18, 19, 20, 21)
-
-
22. A non-transitory machine readable medium storing a program for configuring a set of managed forwarding elements that forward data in a network, the program comprising sets of instructions for:
-
generating (i) a first set of flow entries for configuring the set of managed forwarding elements as first-hop forwarding elements that forward data received directly from a set of end machines and (ii) a second set of flow entries for configuring the set of managed forwarding elements as non-first-hop forwarding elements that forward data not received from the set of end machines; and sending the second set of flow entries to the set of managed forwarding elements prior to sending the first set of flow entries to the set of managed forwarding elements. - View Dependent Claims (23, 24, 25, 26, 27)
-
Specification