IP Library › Granted Patent US 9,632,810
Granted Patent B2
US 9,632,810 · App. 14/570,185 · Granted Apr 25, 2017

Managing virtual machines according to network bandwidth

Inventors: Casimer M. DeCusatis (Poughkeepsie, NY); Edward S. Suffern (Chapel Hill, NC); Laura A. Weaver (Chapel Hill, NC)
Assignee: International Business Machines Corporation
G06F9/45558G06F9/5077H04L41/0896H04L43/0817H04L67/10G06F2009/4557G06F2009/45595H04L41/5096H04L43/16H04L47/821
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,632,810
App. No.
14/570,185
Granted
Apr 25, 2017
Kind
B2
Abstract

A server cloud contains multiple physical servers. A NIC controller device is on a first physical server in the server cloud. The NIC controller device establishes a maximum network bandwidth percentage for the first physical server in the server cloud. The maximum network bandwidth percentage is a percentage of a total network bandwidth capability designed for the first physical server. Response time for operational requests to one or more virtual machines on the first physical server changes beyond a predefined differential in response to the maximum network bandwidth percentage being reached. In response to the NIC controller device on the first physical server determining that the maximum network bandwidth percentage for the first physical server is exceeded, a cloud service hypervisor device moves one or more virtual machines on the first physical server to a second physical server in the server cloud.

Claims (40)

1. A computer program product for managing virtual machines that execute on physical servers in a server cloud, wherein said computer program product comprises a computer readable storage medium having program code embodied therewith, wherein said computer readable storage medium is not a transitory signal per se, and wherein said program code is readable and executable by a processor to perform a method comprising:

establishing a first maximum network bandwidth percentage for a first physical server in the server cloud, wherein the first maximum network bandwidth percentage is a percentage of a total network bandwidth capability designed for the first physical server, wherein a response time for operational requests to one or more virtual machines on the first physical server changes beyond a predefined differential in response to the first maximum network bandwidth percentage being reached, and wherein the predefined differential is a rate of change in response delay times for the first physical server compared with changes in network bandwidth capacity percentages for the first physical server;

determining that the predefined differential has been exceeded;

determining, by a network interface card (NIC) controller device on the first physical server, that the first maximum network bandwidth percentage for the first physical server is exceeded;

in response to the NIC controller device on the first physical server determining that the first maximum network bandwidth percentage for the first physical server is exceeded and that the predefined differential has been exceeded, moving, by a cloud service hypervisor device, one or more virtual machines on the first physical server to a second physical server in the server cloud;

wherein the first physical server supports a first set of virtual machines and a second set of virtual machines and prioritizes the first set of virtual machines over the second set of virtual machines;

moving, by the server cloud hypervisor device, the virtual machines from the second set of virtual machines to the second physical server until a network bandwidth percentage for the first physical server drops below the first maximum network bandwidth percentage, wherein virtual machines from the first set of virtual machines remain on the first physical server;

predicting future demands on the first physical server, being higher than a demand on the second physical server, based on a quantity of virtual machines in the first set of virtual machines; and

configuring, by the cloud service hypervisor device, multiple physical servers that match network bandwidth, throughput, power usage, and hardware components of the first physical server, wherein the multiple physical servers are configured to support future virtual machines that meet the future demands on the first physical server, and wherein each of the multiple physical servers mirrors a configuration of the first physical server.

2. The computer program product of claim 1 , wherein the method further comprises:

prioritizing the first set of virtual machines over the second set of virtual machines according to a length of time that applications have been continuously executing on the virtual machines.

3. The computer program product of claim 1 , wherein the method further comprises:

prioritizing the first set of virtual machines over the second set of virtual machines according to a dependency on the virtual machines by other virtual machines.

4. The computer program product of claim 1 , wherein the method further comprises:

determining that the maximum network bandwidth percentage is reached in response to the response time changing asymptotically relative to changes in network bandwidth changes, wherein asymptotic response time changes have mathematical characteristics of a curved line that approaches, but never reaches an asymptote line, wherein response delay times increase in an asymptotic manner such that a distance between an asymptotic curve representing an increase in the asymptotic response time changes approaches but never reaches a line representing the total network bandwidth capability designed for the first physical server.

5. The computer program product of claim 1 , wherein the method further comprises:

summing network bandwidth requirements for all virtual machines executing in the first physical server; and

determining that the first maximum network bandwidth percentage for the first physical server is exceeded based on summed network bandwidth requirements for all virtual machines executing in the first physical server.

6. The computer program product of claim 1 , wherein the method further comprises:

determining, by the cloud service hypervisor device, that input/output buffers on the first physical server are full, wherein the input/output buffers initially store network traffic to the first physical server; and

determining, by the cloud service hypervisor device, that the first maximum network bandwidth percentage for the first physical server is exceeded based on the input/output buffers being full.

7. A system comprising:

a server cloud, wherein the server cloud comprises multiple physical servers;

a network interface card (NIC) controller device on a first physical server in the server cloud, wherein the NIC controller device:

establishes a first maximum network bandwidth percentage for the first physical

server in the server cloud, wherein the first maximum network bandwidth percentage is a percentage of a total network bandwidth capability designed for the first physical server, wherein response time for operational requests to one or more virtual machines on the first physical server changes beyond a predefined differential in response to the first maximum network bandwidth percentage being reached, and wherein the predefined differential is a rate of change in response delay times for the first physical server compared with changes in network bandwidth capacity percentages for the first physical server;

determines that the predefined differential has been exceeded;

determines that the first maximum network bandwidth percentage for the first physical server is exceeded;

a cloud service hypervisor device that, in response to the NIC controller device on the first physical server determining that the first maximum network bandwidth percentage for the first physical server is exceeded and that the predefined differential is exceeded, moves one or more virtual machines on the first physical server to a second physical server in the server cloud;

wherein the first physical server supports a first set of virtual machines and a second set of virtual machines and prioritizes the first set of virtual machines over the second set of virtual machines;

moves, by the server cloud hypervisor device, the virtual machines from the second set of virtual machines to the second physical server until a network bandwidth percentage for the first physical server drops below the first maximum network bandwidth percentage, wherein virtual machines from the first set of virtual machines remain on the first physical server;

predicts future demands on the first physical server, being higher than a demand on the second physical server, based on a quantity of virtual machines in the first set of virtual machines; and

configures, by the cloud service hypervisor device, multiple physical servers that match network bandwidth, throughput, power usage, and hardware components of the first physical server, wherein the multiple physical servers are configured to support future virtual machines that meet the future demands on the first physical server, and wherein each of the multiple physical servers mirrors a configuration of the first physical server.

8. The system of claim 7 , wherein the cloud service hypervisor device further:

prioritizes the first set of virtual machines over the second set of virtual machines according to a length of time that applications have been continuously executing on the virtual machines.

9. The system of claim 7 , wherein the cloud service hypervisor device further:

prioritizes the first set of virtual machines over the second set of virtual machines according to a dependency on the virtual machines by other virtual machines.

10. The system of claim 7 , wherein the cloud service hypervisor device further:

sums network bandwidth requirements for all virtual machines executing in the first physical server; and

determines that the first maximum network bandwidth percentage for the first physical server is exceeded based on summed network bandwidth requirements for all virtual machines executing in the first physical server.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2014
From: DECUSATIS, CASIMER M.; SUFFERN, EDWARD S.; WEAVER, LAURA A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 034506/0919 →
Continuity (1)
Related Publication 20160170787A1 · Jun 16, 2016