# US 10,768,996 B2 · Anticipating future resource consumption based on user sessions

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,768,996 B2
- Document ID: US10768996B2
- Status: Granted
- Kind: B2
- Application number: 16/168,099
- Filed: 2018-10-23
- Published: 2020-04-23
- Granted: 2020-09-08
- Earliest claimed: 2018-10-23
- Assignees: VMware, Inc.
- Applicants: VMware, Inc.
- Inventors: Yao Zhang; Olivier Alain Cremel; Zhelong Pan; Xunjia Lu
- Web page: https://patentgrep.com/patent/US10768996B2

## CPC

- G06F 9/45533: {Hypervisors; Virtual machine monitors}
- G06F 9/5077: {Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455)}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 9/5088: {involving task migration}
- G06F 2009/4557: {Distribution of virtual machine instances; Migration and load balancing}
- G06F 2009/45591: {Monitoring or debugging support}
- G06F 2009/45595: {Network integration; Enabling network access in virtual machine instances}
- G06F 2209/5016: Session
- G06F 2209/5019: Workload prediction
- G06F 2209/5022: Workload threshold
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

Disclosed are various approaches to anticipating future resource consumption based on user sessions. A message comprising a prediction of a future number of concurrent user sessions to be hosted by a virtual machine within a predefined future interval of time is received. It is then determined whether the future number of concurrent user sessions will cause the virtual machine to cross a predefined resource threshold during the predefined future interval of time. Then, a message is sent to a first hypervisor hosting the virtual machine to migrate the virtual machine to a second hypervisor.

## Claims

### Claim 1

A system, comprising:
a computing device comprising a processor and a memory;
machine readable instructions stored in the memory that, when executed by the processor, cause the computing device to at least:
receive a message comprising a prediction of a future number of concurrent user sessions to be hosted by a virtual machine within a predefined future interval of time;
determine that the future number of concurrent user sessions will cause the virtual machine to cross a predefined resource threshold during the predefined future interval of time; and
send a message to a first hypervisor hosting the virtual machine to migrate the virtual machine to a second hypervisor.

### Claim 2 (depends on 1)

The system of claim 1, wherein:
the message further comprises an estimation of resource usage associated with the future number of concurrent user sessions; and
the machine readable instructions further cause the computing to device to at least determine that the future number of concurrent user sessions will cause the virtual machine to cross the predefined resource threshold based on the estimation of resource usage associated with the future number of concurrent user sessions.

### Claim 3 (depends on 1)

The system of claim 1, wherein the machine readable instructions further cause the computing device to at least:
receive a confirmation from the first hypervisor that the virtual machine has migrated to the second hypervisor; and
send a shutdown message to the first hypervisor.

### Claim 4 (depends on 1)

The system of claim 1, wherein the machine readable instructions further cause the computing device to at least:
send a power-on message to the second hypervisor.

### Claim 5 (depends on 1)

The system of claim 1, wherein the machine readable instructions further cause the computing device to at least:
select the second hypervisor from a pool of available hypervisors based on a determination that the second hypervisor has sufficient available resources for the virtual machine to process the future number of concurrent user sessions.

### Claim 6 (depends on 1)

The system of claim 1, wherein the predefined resource threshold specifies a maximum permitted amount of unallocated computing resources managed by the first hypervisor.

### Claim 7 (depends on 1)

The system of claim 1, wherein the predefined resource threshold specifies a minimum required amount of unallocated computing resources managed by the first hypervisor.

### Claim 8

A method, comprising:
receiving a message comprising a prediction of a future number of concurrent user sessions to be hosted by a virtual machine within a predefined future interval of time;
determining that the future number of concurrent user sessions will cause the virtual machine to cross a predefined resource threshold during the predefined future interval of time; and
sending a message to a first hypervisor hosting the virtual machine to migrate the virtual machine to a second hypervisor.

### Claim 9 (depends on 8)

The method of claim 8, wherein:
the message further comprises an estimation of resource usage associated with the future number of concurrent user sessions; and
the method further comprises determining that the future number of concurrent user sessions will cause the virtual machine to cross the predefined resource threshold based on the estimation of resource usage associated with the future number of concurrent user sessions.

### Claim 10 (depends on 8)

The method of claim 8, further comprising:
receiving a confirmation from the first hypervisor that the virtual machine has migrated to the second hypervisor; and
sending a shutdown message to the first hypervisor.

### Claim 11 (depends on 8)

The method of claim 8, further comprising:
sending a power-on message to the second hypervisor.

### Claim 12 (depends on 8)

The method of claim 8, further comprising:
selecting the second hypervisor from a pool of available hypervisors based on a determination that the second hypervisor has sufficient available resources for the virtual machine to process the future number of concurrent user sessions.

### Claim 13 (depends on 8)

The method of claim 8, wherein the predefined resource threshold specifies a maximum permitted amount of unallocated computing resources managed by the first hypervisor.

### Claim 14 (depends on 8)

The method of claim 8, wherein the predefined resource threshold specifies a minimum required amount of unallocated computing resources managed by the first hypervisor.

### Claim 15

A non-transitory computer-readable medium comprising machine readable instructions stored in the memory that, when executed by a processor, cause a computing device to at least:
receive a message comprising a prediction of a future number of concurrent user sessions to be hosted by a virtual machine within a predefined future interval of time;
determine that the future number of concurrent user sessions will cause the virtual machine to cross a predefined resource threshold during the predefined future interval of time; and
send a message to a first hypervisor hosting the virtual machine to migrate the virtual machine to a second hypervisor.

### Claim 16 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein:
the message further comprises an estimation of resource usage associated with the future number of concurrent user sessions; and
the machine readable instructions further cause the computing to device to at least determine that the future number of concurrent user sessions will cause the virtual machine to cross the predefined resource threshold based on the estimation of resource usage associated with the future number of concurrent user sessions.

### Claim 17 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the machine readable instructions further cause the computing to device to at least:
receive a confirmation from the first hypervisor that the virtual machine has migrated to the second hypervisor; and
send a shutdown message to the first hypervisor.

### Claim 18 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the machine readable instructions further cause the computing to device to at least:
send a power-on message to the second hypervisor.

### Claim 19 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the machine readable instructions further cause the computing to device to at least:
select the second hypervisor from a pool of available hypervisors based on a determination that the second hypervisor has sufficient available resources for the virtual machine to process the future number of concurrent user sessions.

### Claim 20 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the predefined resource threshold specifies at least one of:
a maximum permitted amount of unallocated computing resources managed by the first hypervisor; or
a minimum required amount of unallocated computing resources managed by the first hypervisor.
