Providing a virtual network topology in a data center
AssigneeHewlett-Packard Development Company, L.P.
InventorsYoshio Turner, Jeongkeun Lee, Myung Jin Lee
Life of this patent
Estimating the term…
Abstract
Topology input is used to identify a set of data flows as between a set of virtual machines (VMs), as well as one or more network services for one or more of the data flows. A determination is made as to a minimal number of network service virtual machines (NSVMs) for use in providing the one or more network services. An arrangement is determined for server resources and network resources of the data center network on which a virtual network topology is provided for the tenant, including the set of VMs and the number of NSVMs.
Claims11
A method for providing a virtual network topology in a data center network, the method being implemented by one or more processors and comprising:
- receiving topology input from a tenant of the data center network for the virtual network topology, the topology input including data flow information, corresponding to data flows indicating requirements of the virtual network topology, wherein the data flows include source and destination VMs, bandwidth requirements for data flows, and network services for data flows;
- based on the data flow information, determining a minimal number of network service virtual machines (NSVMs) required to implement the virtual network topology for the tenant, wherein determining the minimal number of NSVMs includes assigning, based on the data flows, each of a set of virtual machines (VMs) to one or more of the network resources based on a traffic demand associated with the assigned VM;
- determining, based on a monetary cost, an optimal arrangement of network resources of the data center network to service the minimal number of NSVMs, wherein the optimal arrangement is implemented to minimize the monetary cost using the number of NSVMs needed, the amount of server resources needed, and bandwidth constraints;
- and
- wherein determining the minimal number of NSVMs further includes (i) identifying, based on the data flow information, potential link congestion between the VMs and (ii) performing at least one of swapping or migrating one or more of the VMs to reduce bandwidth demand of the data flows.
A non-transitory computer-readable medium storing instructions for providing a virtual network topology in a data center network, wherein the instructions, when executed by one or more processors, cause the one or more processors to perform operations comprising:
- receiving topology input from a tenant of the data center network for the virtual network topology, the topology input including data flow information, corresponding to data flows indicating requirements of the virtual network topology, wherein the data flows include source and destination VMs, bandwidth requirements for data flows, and network services for data flows;
- based on the data flow information, determining a minimal number of network service virtual machines (NSVMs) required to implement the virtual network topology for the tenant, wherein determining the minimal number of NSVMs includes assigning, based on the data flows, each of a set of virtual machines (VMs) to one or more of the network resources based on a traffic demand associated with the assigned VM;
- determining, based on a monetary cost, an optimized arrangement of network resources of the data center network to service the minimal number of NSVMs, wherein the optimal arrangement is implemented to minimize the monetary cost using the number of NSVMs needed, the amount of server resources needed, and bandwidth constraints;
- and
- wherein determining the minimal number of NSVMs further includes (i) identifying, based on the data flow information, potential link congestion between the VMs and (ii) performing at least one of swapping or migrating one or more of the VMs to reduce bandwidth demand of the data flows.
A computer system for a data center network comprising:
- a memory storing instructions for providing a virtual network topology in the data center;
- one or more processors to execute the instructions, wherein the instructions, when executed by the one or more processors, cause the one or more processors to:
- receive topology input from a tenant of the data center network for the virtual network topology, the topology input including data flow information, corresponding to data flows indicating requirements of the virtual network topology, wherein the data flows include source and destination VMs, bandwidth requirements for data flows, and network services for data flows;
- based on the data flow information, determining a minimal number of network service virtual machines (NSVMs) required to implement the virtual network topology for the tenant, wherein determining the minimal number of NSVMs includes assigning, based on the data flows, each of a set of virtual machines (VMs) to one or more of the network resources based on a traffic demand associated with the assigned VM;
- determine, based on a monetary cost, an optimal arrangement of network resources of the data center network to service the minimal number of NSVMs, wherein the optimal arrangement is implemented to minimize the monetary cost using the number of NSVMs needed, the amount of server resources needed, and bandwidth constraints;
- and
- wherein determining the minimal number of NSVMs further includes (i) identifying, based on the data flow information, potential link congestion between the VMs and (ii) performing at least one of swapping or migrating one or more of the VMs to reduce bandwidth demand of the data flows.
Dependencies are inferred from the claim text.