Distributed virtual appliance
First Claim
Patent Images
1. A method for allocating network traffic flows of a distributed virtual appliance, comprising:
- determining a first classification type associated with a packet of a first network traffic flow;
selecting a distribution algorithm selection logic based on the first classification type, the distribution algorithm selection logic including a first hash function;
applying the first hash function on at least a first subset of information from an identifier of the packet of the first network traffic flow to select a distribution algorithm that includes a second hash function;
applying the second hash function on at least a second subset of information from the identifier of the packet of the first network traffic flow;
determining an allocation of the packet of the first network traffic flow to a first data plane compute unit of the distributed virtual appliance based on a result of the second hash function, wherein the distributed virtual appliance includes a plurality of compute units, including the first data plane compute unit;
at the first data plane compute unit, determining if the first network traffic flow is a new network traffic flow, an existing network traffic flow allocated to the first data plane compute unit, or an existing network traffic flow allocated to a data plane compute unit other than the first data plane compute unit;
determining a second classification type associated with a packet of a second network traffic flow, the second classification type being different from the first classification type;
selecting a designated distribution algorithm based on the second classification type;
dynamically adding a second data plane compute unit in addition to the first data plan compute unit to the distributed virtual appliance;
updating stored data for reallocation of network traffic flows to include the addition of the second data plane compute unit;
dynamically removing the second data plane compute unit; and
updating the stored data for reallocation of the network traffic flows to include the removal of the second data plane compute unit.
2 Assignments
0 Petitions
Accused Products
Abstract
A distributed virtual appliance is disclosed, including: determining a classification type associated with the first flow; and determining an allocation of the first flow to the first data plane compute unit of the distributed virtual appliance based at least in part on the determined classification type and at least a subset of information of a first flow identifier, wherein the distributed virtual appliance includes a plurality of compute units, including the first data plane compute.
-
Citations
38 Claims
-
1. A method for allocating network traffic flows of a distributed virtual appliance, comprising:
-
determining a first classification type associated with a packet of a first network traffic flow; selecting a distribution algorithm selection logic based on the first classification type, the distribution algorithm selection logic including a first hash function; applying the first hash function on at least a first subset of information from an identifier of the packet of the first network traffic flow to select a distribution algorithm that includes a second hash function; applying the second hash function on at least a second subset of information from the identifier of the packet of the first network traffic flow; determining an allocation of the packet of the first network traffic flow to a first data plane compute unit of the distributed virtual appliance based on a result of the second hash function, wherein the distributed virtual appliance includes a plurality of compute units, including the first data plane compute unit; at the first data plane compute unit, determining if the first network traffic flow is a new network traffic flow, an existing network traffic flow allocated to the first data plane compute unit, or an existing network traffic flow allocated to a data plane compute unit other than the first data plane compute unit; determining a second classification type associated with a packet of a second network traffic flow, the second classification type being different from the first classification type; selecting a designated distribution algorithm based on the second classification type; dynamically adding a second data plane compute unit in addition to the first data plan compute unit to the distributed virtual appliance; updating stored data for reallocation of network traffic flows to include the addition of the second data plane compute unit; dynamically removing the second data plane compute unit; and updating the stored data for reallocation of the network traffic flows to include the removal of the second data plane compute unit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system for allocating network traffic flows of a distributed virtual appliance, comprising:
-
a processor configured to; determine a first classification type associated with a packet of a first network traffic flow; select a distribution algorithm selection logic based on the first classification type, the distribution algorithm selection logic including a first hash function; apply the first hash function on at least a first subset of information from an identifier of the packet of the first network traffic flow to select a distribution algorithm that includes a second hash function; apply the second hash function on at least a second subset of information from the identifier of the packet of the first network traffic flow; determine an allocation of the packet of the first network traffic flow to a first data plane compute unit of the distributed virtual appliance on a result of the second hash function, wherein the distributed virtual appliance includes a plurality of compute units, including the first data plane compute unit; determine, at the first data plane compute unit, if the first network traffic flow is a new network traffic flow, an existing network traffic flow allocated to the first data plane compute unit, or an existing network traffic flow allocated to a data plane compute unit other than the first data plane compute unit; determine a second classification type associated with a packet of a second network traffic flow, the second classification type being different from the first classification type; select a designated distribution algorithm based on the second classification type; dynamically add a second data plane compute unit in addition to the first data plane compute unit; update stored data for reallocation of network traffic flows to include the addition of the second data plane compute unit; dynamically remove the second data plane compute unit; update the stored data for reallocation of the network traffic flows to include the removal of the second data plane compute unit; and a memory coupled to the processor and configured to provide the processor with instructions. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A computer program product for allocating network traffic flows of a distributed virtual appliance, the computer program product being embodied in a non-transitory computer readable medium and comprising computer instructions for:
-
determining a classification type associated with a packet of a first network traffic flow; selecting a distribution algorithm selection logic based on the first classification type, the distribution algorithm selection logic including a first hash function; applying the first hash function on at least a first subset of information from an identifier of the packet of the first network traffic flow to select a distribution algorithm that includes a second hash function; applying the second hash function on at least a second subset of information from the identifier of the packet of the first network traffic flow; determining an allocation of the packet of the first network traffic flow to a first data plane compute unit of the distributed virtual appliance based on a result of the second hash function, wherein the distributed virtual appliance includes a plurality of compute units, including the first data plane compute unit; determining, at the first data plane compute unit, if the first network traffic flow is a new network traffic flow, an existing network traffic flow allocated to the first data plane compute unit, or an existing network traffic flow allocated to a data plane compute unit other than the first data plane compute unit; determining a second classification type associated with a packet of a second network traffic flow, the second classification type being different from the first classification type; selecting a designated distribution algorithm based on the second classification type; dynamically adding a second data plane compute unit in addition to the first data plan compute unit to the distributed virtual appliance; updating stored data for reallocation of network traffic flows to include the addition of the second data plane compute unit; dynamically removing the second data plane compute unit; and updating the stored data for reallocation of the network traffic flows to include the removal of the second data plane compute unit. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38)
-
Specification