Tracking Prefixes of Values Associated with Different Rules to Generate Flows
US-2015078384-A1 · Mar 19, 2015 · US
US10949244B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10949244-B2 |
| Application number | US-201916445062-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 18, 2019 |
| Priority date | Feb 22, 2019 |
| Publication date | Mar 16, 2021 |
| Grant date | Mar 16, 2021 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Some embodiments provide novel methods for performing services for machines operating in one or more datacenters. For instance, for a group of related guest machines (e.g., a group of tenant machines), some embodiments define two different forwarding planes: (1) a guest forwarding plane and (2) a service forwarding plane. The guest forwarding plane connects to the machines in the group and performs L2 and/or L3 forwarding for these machines. The service forwarding plane (1) connects to the service nodes that perform services on data messages sent to and from these machines, and (2) forwards these data messages to the service nodes. In some embodiments, the guest machines do not connect directly with the service forwarding plane. For instance, in some embodiments, each forwarding plane connects to a machine or service node through a port that receives data messages from, or supplies data messages to, the machine or service node. In such embodiments, the service forwarding plane does not have a port that directly receives data messages from, or supplies data messages to, any guest machine. Instead, in some such embodiments, data associated with a guest machine is routed to a port proxy module executing on the same host computer, and this other module has a service plane port. This port proxy module in some embodiments indirectly can connect more than one guest machine on the same host to the service plane (i.e., can serve as the port proxy module for more than one guest machine on the same host).
Opening claim text (preview).
The invention claimed is: 1. A method for deploying a plurality of service nodes to provide services for data message flows, the method comprising: receiving a request to create a service attachment representing a logical service forwarding plane to forward data messages to the service nodes, the service attachment comprising a plurality of attributes including a type of attribute that is assigned to a first type value from a plurality of type values, each type value specifying a different type of logical service forwarding plane and the first type value specifying a first type of logical service forwarding plane; receiving requests to deploy service nodes to connect to the service attachment; generating configuration data to define a set of one or more logical forwarding elements (LFEs) to implement the logical service forwarding plane represented by the requested service attachment, each LFE spanning multiple computers; and deploying a plurality of service instances and associating the service instances with the set of LFEs, in order to deploy the service nodes and to connect the service nodes to the logical service forwarding plane. 2. The method of claim 1 , wherein the set of LFEs comprises a logical switch that spans multiple host computers executing machines that are sources or destinations of the data message flows on which the services have to be performed. 3. The method of claim 1 , wherein the set of LFEs comprises a logical router that spans multiple host computers executing machines that are sources or destinations of the data message flows on which the services have to be performed. 4. The method of claim 1 , wherein the set of LFEs comprises at least one logical switch and at least one logical router, with each spanning multiple host computers executing machines that are sources or destinations of the data message flows on which the services have to be performed. 5. The method of claim 1 , wherein the generated configuration data configures a plurality of software forwarding elements executing on a plurality of computers to implement the set of LFEs. 6. The method of claim 5 , wherein the generated configuration data configures at least one hardware forwarding element to implement the set of LFEs. 7. The method of claim 1 , wherein the logical service forwarding plane is a first forwarding plane, the method further comprising: receiving multiple requests to create multiple service attachments and to deploy multiple sets of service nodes for multiple different logical service forwarding planes; and for each requested service attachment, generating configuration data to define a set of one or more LFEs to implement a particular logical service forwarding plane represented by the requested service attachment; and deploying a plurality of service instances and associating the service instances with the set of LFEs, in order to deploy the service nodes and to connect the service nodes to the particular logical service forwarding plane wherein the first forwarding plane comprises a logical router; wherein at least one of the multiple different logical service forwarding planes does not comprise a logical router. 8. The method of claim 7 , wherein each service attachment, each service forwarding plane, each set of LFEs and each deployed plurality of service nodes are associated with a different tenant in a multi-tenant network. 9. The method of claim 7 , wherein each service attachment, each service forwarding plane, each set of LFEs and each deployed plurality of service nodes are associated with a different logical network, but all of the different logical networks process data messages originating or terminating on machines of one entity. 10. The method of claim 7 , wherein each service attachment, each service forwarding plane, each set of LFEs and each deployed plurality of service nodes are providing services with different QoS or SLA guarantees for different data message flows of one entity. 11. The method of claim 1 , wherein deploying the service instances comprises: specifying, for each service instance, a service attachment identifier that identifies the service attachment associated with the service node; and associating the service attachment identifier of each service instance with an LFE in the set of LFEs that implements the logical service plane. 12. The method of claim 11 , wherein associating the service attachment identifier comprises associating the service attachment identifier with a port on the associated LFE. 13. The method of claim 1 , wherein at least a first service node is implemented by a high availability pair of service instances while a second service node is implemented by just one service instance. 14. The method of claim 1 , wherein receiving the request to create the service attachment comprises receiving the request from a management plane server; wherein generating the configuration data comprises generating the configuration data at a control plane server in response instructions from the management plane server regarding the received request. 15. A non-transitory machine readable medium storing a program for execution by at least one processing unit and for deploying a plurality of service nodes to provide services for data message flows, the program comprising sets of instructions for: receiving a request to create a service attachment representing a logical service forwarding plane to forward data messages to the service nodes, the service attachment comprising a plurality of attributes including a type of attribute that is assigned to a first type value from a plurality of type values, each type value specifying a different type of logical service forwarding plane and the first type value specifying a first type of logical service forwarding plane; receiving requests to deploy service nodes to connect to the service attachment; generating configuration data to define a set of one or more logical forwarding elements (LFEs) to implement the logical service forwarding plane represented by the requested service attachment, each LFE spanning multiple computers; and deploying a plurality of service instances and associating the service instances with the set of LFEs, in order to deploy the service nodes and to connect the service nodes to the logical service forwarding plane. 16. The non-transitory machine readable medium of claim 15 , wherein the set of LFEs comprises a logical switch that spans multiple host computers executing machines that are sources or destinations of the data message flows on which the services have to be performed. 17. The non-transitory machine readable medium of claim 15 , wherein the set of LFEs comprises a logical router that spans multiple host computers executing machines that are sources or destinations of the data message flows on which the services have to be performed. 18. The non-transitory machine readable medium of claim 15 , wherein the set of LFEs comprises at least one logical switch and at least one logical router, with each spanning multiple host computers executing machines that are sources or destinations of the data message flows on which the services have to be performed. 19. The non-transitory machine readable medium of claim 15 , wherein the generated configuration data configures a plurality of software forwarding elements executing on a plurality of computers to implement the set of LFEs. 20. The non-transitory machine readable medium of claim 19 , wherein the generated configuration data configures at least
Address table lookup; Address filtering · CPC title
Profiles · CPC title
Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements · CPC title
using virtualisation of network functions or resources, e.g. SDN or NFV entities · CPC title
Assignment of logical groups to network elements · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.