IP Library Granted Patent US 11,789,772
Granted Patent B2
US 11,789,772 · App. 17/180,299 · Granted Oct 17, 2023

Decentralized resource scheduling

Inventors: Swarnalatha Pasupuleti (Bangalore, IN); Sathyamurthy Dattathreya Hassan (Bangalore, IN); Gurusreekanth Chagalakondu (Bangalore, IN); Akhil Sadashiv Hingane (Pune, IN); Sivaraj M (Bangalore, IN); Jeevan Prabhu (Bangalore, IN)
Assignee: VMware, Inc.
G06F9/4856G06F9/45558G06F9/5044G06F2009/4557G06F2009/45583
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 11,789,772
App. No.
17/180,299
Granted
Oct 17, 2023
Kind
B2
Abstract

Disclosed are various embodiments for distributed resource scheduling. An eviction request from a first host is received. The eviction request comprises data regarding a virtual machine to be migrated from the first host. The eviction request is then broadcast to a plurality of hosts. A plurality of responses are received from the plurality of hosts, each response comprising a score representing an ability of a respective one of the plurality of hosts to act as a new host for the virtual machine. A second host is selected from the plurality of hosts to act as the new host for the virtual machine based at least in part on the score in each of the plurality of responses. Then, a response is sent to the first host, the response containing an identifier of the second host.

Claims (43)

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 an eviction request from a first host, the eviction request comprising data regarding a virtual machine to be migrated from the first host;

broadcast the eviction request to a plurality of hosts;

receive at least one response to the eviction request, the at least one response comprising a score representing an ability of a respective one of the plurality of hosts to act as a new host for the virtual machine;

select a second host from the plurality of hosts to act as the new host for the virtual machine based at least in part on the at least one score; and

send a response to the first host, the response associated with the eviction request.

2. The system of claim 1 , wherein the machine-readable instructions further cause the computing device to determine whether any of the plurality of hosts are available as the new host for the virtual machine based at least in part on the at least one score.

3. The system of claim 1 , wherein the machine-readable instructions that cause the computing device to select the second host based at least in part on the at least one score further comprises:

select the at least one response that comprises the highest score; and

select a host associated with the at least one response that comprises the highest score as the second host.

4. The system of claim 1 , wherein the eviction request is stored in a request queue stored in the memory of the computing device.

5. The system of claim 1 , wherein the data regarding the virtual machine comprises an amount of memory allocated to the virtual machine.

6. The system of claim 1 , wherein the data regarding the virtual machine comprises a central processor utilization (CPU) metric.

7. The system of claim 1 , wherein the data regarding the virtual machine comprises an amount of bandwidth consumed by the virtual machine.

8. A method, comprising:

receiving an eviction request from a first host, the eviction request comprising data regarding a virtual machine to be migrated from the first host;

broadcasting the eviction request to a plurality of hosts;

receiving at least one response to the eviction request, the at least one response comprising a score representing an ability of a respective one of the plurality of hosts to act as a new host for the virtual machine;

selecting a second host from the plurality of hosts to act as the new host for the virtual machine based at least in part on the at least one score; and

sending a response to the first host, the response associated with the eviction request.

9. The method of claim 8 , further comprising determining whether any of the plurality of hosts are available as the new host for the virtual machine based at least in part on the at least one score.

10. The method of claim 8 , wherein selecting the second host based at least in part on the at least one response further comprises:

selecting the at least one response that comprises the highest score; and

selecting a host associated with the at least one response that comprises the highest score as the second host.

11. The method of claim 8 , wherein the eviction request is stored in a request queue.

12. The method of claim 8 , wherein the data regarding the virtual machine comprises an amount of memory allocated to the virtual machine.

13. The method of claim 8 , wherein the data regarding the virtual machine comprises a central processor utilization (CPU) metric.

14. The method of claim 8 , wherein the data regarding the virtual machine comprises an amount of bandwidth consumed by the virtual machine.

15. A non-transitory, computer readable medium that comprises machine-readable instructions that, when executed by a processor of a computing device, cause the computing device to at least:

receive an eviction request from a first host, the eviction request comprising data regarding a virtual machine to be migrated from the first host;

broadcast the eviction request to a plurality of hosts;

receive at least one response to the eviction request, the at least one response comprising a score representing an ability of a respective one of the plurality of hosts to act as a new host for the virtual machine;

select a second host from the plurality of hosts to act as the new host for the virtual machine based at least in part on the at least one score; and

send a response to the first host, the response associated with the eviction request.

16. The non-transitory, computer readable medium of claim 15 , wherein the machine-readable instructions further cause the computing device to determine whether any of the plurality of hosts are available as the new host for the virtual machine based at least in part on the at least one score.

17. The non-transitory, computer readable medium of claim 15 , wherein the machine-readable instructions that cause the computing device select the second host based at least in part on the at least one score further comprise:

selecting the at least one response that comprises the highest score; and

selecting a host associated with the at least one response that comprises the highest score as the second host.

18. The non-transitory, computer readable medium of claim 15 , wherein the data regarding the virtual machine comprises an amount of memory allocated to the virtual machine.

19. The non-transitory, computer readable medium of claim 15 , wherein the data regarding the virtual machine comprises a central processor utilization (CPU) metric.

20. The non-transitory, computer readable medium of claim 15 , wherein the data regarding the virtual machine comprises an amount of bandwidth consumed by the virtual machine.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 8, 2024
From: PASUPULETI, SWARNALATHA; HASSAN, SATHYAMURTHY DATTATHREYA; CHAGALAKONDU, GURUSREEKANTH; HINGANE, AKHIL SADASHIV; M, SIVARAJ; PRABHU, JEEVAN
To: VMWARE, INC.
Reel/Frame 067350/0655 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
Continuity (2)
Continuation 16511351 · Jul 15, 2019
Related Publication 20210173699A1 · Jun 10, 2021