IP Library Granted Patent US 12,299,468
Granted Patent B2
US 12,299,468 · App. 16/820,752 · Granted May 13, 2025

Management of virtual machine applications based on resource usage by networking processes of a hypervisor

Inventors: Shivali Sharma (Pune, IN); Vasantha Kumar Dhanasekar (Pune, IN); Rahul Kumar (Pune, IN); Rayanagouda Bheemanagouda Patil (Pune, IN)
Assignee: VMWare LLC
G06F9/45558G06F2009/45595
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 12,299,468
App. No.
16/820,752
Granted
May 13, 2025
Kind
B2
Abstract

Described herein are systems, methods, and software to manage resources for networking operations on a host computing system. In one implementation, a hypervisor on a host computing system, may monitor computing resources used by a networking process provided by the hypervisor. The hypervisor further determines that the one or more computing resources used by the networking process satisfy at least one criterion and, in response to determining that the computing resources satisfy at least one criterion, notifies one or more virtual machines supported by the hypervisor to modify one or more execution parameters associated with at least one application in each of the one or more virtual machines.

Claims (41)

1. A method comprising:

in a hypervisor of a host, monitoring usage of one or more computing resources by a networking process provided by the hypervisor for forwarding or blocking packets to and from one or more virtual machines, the computing resources comprising a CPU usage, memory usage;

determining that the usage of the one or more computing resources by the networking process satisfies one or more criteria, the one or more criteria comprising the CPU usage exceeding a predetermined threshold; and

in response to determining that the usage of the one or more computing resources by the networking process satisfies the one or more criteria, notifying the one or more virtual machines supported by the hypervisor to modify one or more execution parameters associated with at least one application in each of the one or more virtual machines;

causing a reduction in the CPU usage in response to a determination that the CPU usage exceeding the predetermined threshold.

2. The method of claim 1 , wherein notifying the one or more virtual machines comprises notifying one or more agents in the one or more virtual machines, and wherein the method further comprises, in each of the one or more agents, modifying the one or more execution parameters associated with the at least one application.

3. The method of claim 1 further comprising:

in response to determining that the usage of the one or more computing resources by the networking process satisfy the at least one criterion, selecting the one or more virtual machines from a set of virtual machines on the host based on the at least one application in each of the one or more virtual machines.

4. The method of claim 3 , further comprising obtaining a selection, wherein the selection associates the at least one application in the one or more virtual machines to the at least one criterion.

5. The method of claim 1 , wherein the one or more computing resources comprise memory usage, processing system usage, and/or physical network interface usage.

6. The method of claim 1 further comprising determining the at least one criterion based on physical resources available on the host.

7. The method of claim 1 , wherein the one or more execution parameters associated with the at least one application comprise a communication acceptance rate associated with the at least one application, a processing rate associated with the at least one application, or an input/output networking limitation associated with the at least one application.

8. The method of claim 1 , wherein notifying the one or more virtual machines to modify the one or more execution parameters comprises notifying the one or more virtual machines to decrease or increase at least one value associated with the execution parameters.

9. The method of claim 1 , wherein the networking process comprises a firewall process, a switching process, or a routing process.

10. A host comprising:

memory;

at least one processor operatively coupled to the memory; and

program instructions stored on the memory that, when executed by the at least one processor, direct the host to:

in a hypervisor of the host, monitor usage of one or more computing resources by a networking process provided by the hypervisor for forwarding or blocking packets to and from one or more virtual machines, the computing resources comprising a CPU usage, memory usage;

determine that the usage of the one or more computing resources by the networking process satisfies one or more criteria, the one or more criteria comprising the CPU usage exceeding a predetermined threshold; and

in response to determining that the usage of the one or more computing resources by the networking process satisfies the one or more criteria, notify the one or more virtual machines supported by the hypervisor to modify one or more execution parameters associated with at least one application in each of the one or more virtual machines;

causing a reduction in the CPU usage in response to a determination that the CPU usage exceeding the predetermined threshold.

11. The host of claim 10 , wherein notifying the one or more virtual machines comprises notifying one or more agents in the one or more virtual machines, and wherein the method further comprises, in each of the one or more agents, modifying the one or more execution parameters associated with the at least one application.

12. The host of claim 10 , wherein the program instructions further direct the host to:

in response to determining that the usage of the one or more computing resources by the networking process satisfy the at least one criterion, select the one or more virtual machines from a set of virtual machines on the host based on the at least one application in each of the one or more virtual machines.

13. The host of claim 12 , wherein the program instructions further direct the host to obtain a selection, wherein the selection associates the at least one application in the one or more virtual machines to the at least one criterion.

14. The host of claim 10 , wherein the one or more computing resources comprise memory usage, processing system usage, and/or physical network resource usage.

15. The host of claim 10 , wherein the program instructions further direct the host to determine the at least one criterion based on physical resources available on the host.

16. The host of claim 10 , wherein the one or more execution parameters associated with the at least one application comprise a communication acceptance rate associated with the at least one application, a processing rate associated with the at least one application, or an input/output networking limitation associated with the at least one application.

17. The host of claim 10 , wherein notifying the one or more virtual machines to modify the one or more execution parameters comprises notifying the one or more virtual machines to decrease or increase at least one value associated with the execution parameters.

18. The host of claim 10 , wherein the networking process comprises a firewall process, a switching process, or a routing process.

19. An apparatus comprising:

memory;

program instructions stored on the memory to operate a host that, when executed by at least one processor, direct the at least one processor to:

in a hypervisor of the host, monitor usage of one or more computing resources by a networking process provided by the hypervisor for forwarding or blocking packets to and from one or more virtual machines, the computing resources comprising a CPU usage, memory usage;

determine at least one criterion to trigger a configuration modification in the one or more virtual machines supported by the hypervisor based at least in part on available physical resources of the host;

determine that the usage of the one or more computing resources by the networking process satisfies the at least one criterion;

in response to determining that the usage of the one or more computing resources by the networking process satisfies the at least one criterion, notify the one or more virtual machines supported by the hypervisor to modify one or more execution parameters associated with at least one application in each of the one or more virtual machines;

cause a reduction in the CPU usage in response to a determination that the CPU usage exceeding the predetermined threshold; and

in the one or more virtual machines, modify the one or more execution parameters associated with the at least one application.

20. The apparatus of claim 19 , wherein the one or more computing resources comprise memory usage, processing system usage, and/or physical network interface usage.

Assignments (2)
CHANGE OF NAME Recorded Feb 27, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 066692/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2020
From: SHARMA, SHIVALI; DHANASEKAR, VASANTHA KUMAR; KUMAR, RAHUL; PATIL, RAYANAGOUDA BHEEMANAGOUDA
To: VMWARE, INC.
Reel/Frame 052182/0113 →