Dynamic generation of flow entries for last-hop processing
First Claim
1. For a first managed forwarding element that implements logical forwarding elements of a logical network, the logical network comprising at least one middlebox, a method comprising:
- receiving a first packet from a second managed forwarding element, the first packet comprising context information indicating a logical network destination that maps to a physical destination connected to the first managed forwarding element;
at the first managed forwarding element, dynamically generating a flow entry for processing subsequent packets received by the first managed forwarding element from the physical destination and sent to a source of the first packet; and
processing a second packet received by the first managed forwarding element from the physical destination with the dynamically generated flow entry, wherein the dynamically generated flow entry specifies to send the second packet to the second managed forwarding element before logically forwarding the second packet through the logical network.
1 Assignment
0 Petitions
Accused Products
Abstract
Some embodiments provide a method for a first managed forwarding element that implements logical forwarding elements of a logical network. The method receives a first packet from a second managed forwarding element. The first packet includes context information that indicates a logical network destination that maps to a physical destination connected to the first managed forwarding element. At the first managed forwarding element, the method dynamically generates a flow entry for processing subsequent packets received by the first managed forwarding element from the physical destination and sent to a source of the first packet. The method processes a second packet received by the first managed forwarding element from the physical destination with the dynamically generated flow entry. The dynamically generated flow entry specifies to send the second packet to the second managed forwarding element before logically forwarding the second packet through the logical network.
-
Citations
23 Claims
-
1. For a first managed forwarding element that implements logical forwarding elements of a logical network, the logical network comprising at least one middlebox, a method comprising:
-
receiving a first packet from a second managed forwarding element, the first packet comprising context information indicating a logical network destination that maps to a physical destination connected to the first managed forwarding element; at the first managed forwarding element, dynamically generating a flow entry for processing subsequent packets received by the first managed forwarding element from the physical destination and sent to a source of the first packet; and processing a second packet received by the first managed forwarding element from the physical destination with the dynamically generated flow entry, wherein the dynamically generated flow entry specifies to send the second packet to the second managed forwarding element before logically forwarding the second packet through the logical network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. For a first managed forwarding element that implements logical forwarding elements of a logical network, the logical network comprising a middlebox, the first managed forwarding element operating in a host machine, a method comprising:
-
processing a first packet received directly from a source machine of the first packet at the first managed forwarding element by (i) identifying the middlebox as a logical egress port of a first logical forwarding element and (ii) forwarding the first packet to a distributed middlebox element implementing the middlebox in the host machine, wherein the distributed middlebox element generates state information for a connection between the source of the first packet and a destination machine of the first packet; processing a second packet received from the distributed middlebox element by (i) identifying the destination machine as a logical egress port of a second logical forwarding element and (ii) forwarding the second packet to a second managed forwarding element to which the destination machine connects; and receiving a third packet from the second managed forwarding element, wherein the second managed forwarding element did not identify a logical egress port of the first logical forwarding element for the packet in order for the first managed forwarding element to perform logical network processing and send the third packet to the distributed middlebox element with the generated state information for the connection. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. For a network controller, a method for managing a logical network that comprises a plurality of logical forwarding elements and a middlebox, the method comprising:
-
generating a first set of flow entries for a first managed forwarding element, the first set of flow entries for use by the first managed forwarding element to perform logical forwarding to implement the plurality of logical forwarding elements when processing packets for which the first managed forwarding element is a first hop, wherein at least one of the flow entries of the first set specifies for the first managed forwarding element to forward a packet to a distributed middlebox element that implements the middlebox of the logical network; generating a second set of flow entries for a second managed forwarding element, the second set of flow entries for use by the second managed forwarding element to perform logical forwarding to implement the plurality of logical forwarding elements when processing packets for which the second managed forwarding element is a first hop; and generating a particular flow entry for the second managed forwarding element, the particular flow entry specifying for the second managed forwarding element to dynamically generate a new flow entry before delivering a packet received from the first managed forwarding element to a particular machine connected to the second managed forwarding element, wherein the new flow entry specifies for the second managed forwarding element to send packets received from the particular machine with a particular destination address to the first managed forwarding element without using the second set of flow entries to perform logical forwarding for the packets. - View Dependent Claims (20, 21, 22, 23)
-
Specification