Virtual mode execution manager
US-12118376-B2 · Oct 15, 2024 · US
US9342373B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9342373-B2 |
| Application number | US-78365810-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 20, 2010 |
| Priority date | May 20, 2010 |
| Publication date | May 17, 2016 |
| Grant date | May 17, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Virtual machine management among networked servers coupled for data communications with a data communications network that includes a network device and a Virtual Machine Management Module (‘VMMM’), where VM management includes: monitoring, by the network device, network traffic of applications executing in virtual machines of the servers; determining, in dependence upon the monitored network traffic, whether a particular application's network traffic exceeds a predetermined threshold, the particular application executing in a particular virtual machine of a particular server; if the particular application's network traffic exceeds the predetermined threshold, allocating, by the VMMM, an additional virtual machine in a different server; and instantiating, by the VMMM, in the additional virtual machine at least one application.
Opening claim text (preview).
What is claimed is: 1. An apparatus for virtual machine management among networked servers, the servers coupled for data communications with a data communications network that includes a network switch and a Virtual Machine Management Module (‘VMMM’), the apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions capable of: monitoring, by the network switch, network traffic of a first user-level application including monitoring bandwidth used by the first user-level application, wherein the first user-level application is one of a plurality of user-level applications executing in virtual machines of the servers, wherein the network switch is separate from the servers and coupled to the servers via the data communications network, and wherein the network traffic is monitored by the network switch at an application layer; determining, by the network switch, in dependence upon the monitored network traffic, whether the first user-level application's network traffic exceeds a predetermined threshold, the first user-level application executing in a particular virtual machine of a particular server, wherein the first user-level application exceeding the predetermined threshold indicates that a second user-level application on the particular server has insufficient bandwidth; if the first user-level application's network traffic exceeds the predetermined threshold, allocating, by the VMMM, an additional virtual machine in a different server including allocating the additional virtual machine only after receiving, by the VMMM via the data communications network, a notification from the network switch that the first user-level application's network traffic exceeds the predetermined threshold; and instantiating, by the VMMM, in the additional virtual machine at least one user-level application, wherein instantiating at least one user-level application comprises: moving the first user-level application from the particular virtual machine of the particular server to the additional virtual machine of the different server; and providing the second user-level application with sufficient bandwidth in response to moving the first user-level application. 2. The apparatus of claim 1 wherein, instantiating at least one user-level application further comprises executing a second instance of the first user-level application in the additional virtual machine of the different server without halting execution of a first instance of the first user-level application executing on the particular server. 3. The apparatus of claim 1 wherein, instantiating at least one user-level application further comprises moving another user-level application executing on a virtual machine of the particular server to the additional virtual machine of the different server. 4. The apparatus of claim 1 wherein, instantiating at least one user-level application further comprises executing a second instance of another user-level application executing on a virtual machine of the particular server in the additional virtual machine of the different server without halting execution of a first instance of the another user-level application on the particular server. 5. The apparatus of claim 1 wherein determining whether a first user-level application's network traffic exceeds a predetermined threshold further comprises: querying the network switch by the VMMM for information describing the monitored network traffic; and determining, by the VMMM in dependence upon the retrieved information, whether the first user-level application's network traffic exceeds a predetermined threshold. 6. A computer program product for virtual machine management among networked servers, the servers coupled for data communications with a data communications network that includes a network switch and a Virtual Machine Management Module (‘VMMM’), the computer program product disposed upon a computer readable storage medium, wherein the medium is not a signal, the computer program product comprising computer program instructions capable, when executed, of causing a computer to carry out the steps of: monitoring, by the network switch, network traffic of a first user-level application including monitoring bandwidth used by the first user-level application, wherein the first user-level application is one of a plurality of user-level applications executing in virtual machines of the servers, wherein the network switch is separate from the servers and coupled to the servers via the data communications network, and wherein the network traffic is monitored by the network switch at an application layer; determining, by the network switch, in dependence upon the monitored network traffic, whether the first user-level application's network traffic exceeds a predetermined threshold, the first user-level application executing in a particular virtual machine of a particular server, wherein the first user-level application exceeding the predetermined threshold indicates that a second user-level application on the particular server has insufficient bandwidth; if the first user-level application's network traffic exceeds the predetermined threshold, allocating, by the VMMM, an additional virtual machine in a different server including allocating the additional virtual machine only after receiving, by the VMMM via the data communications network, a notification from the network switch that the first user-level application's network traffic exceeds the predetermined threshold; and instantiating, by the VMMM, in the additional virtual machine at least one user-level application, instantiating, by the VMMM, in the additional virtual machine at least one user-level application, wherein instantiating at least one user-level application comprises: moving the first user-level application from the particular virtual machine of the particular server to the additional virtual machine of the different server; and providing the second user-level application with sufficient bandwidth in response to moving the first user-level application. 7. The computer program product of claim 6 wherein, instantiating at least one user-level application further comprises executing a second instance of the first user-level application in the additional virtual machine of the different server without halting execution of a first instance of the first user-level application executing on the particular server. 8. The computer program product of claim 6 wherein, instantiating at least one user-level application further comprises moving another user-level application executing on a virtual machine of the particular server to the additional virtual machine of the different server. 9. The computer program product of claim 6 wherein, instantiating at least one user-level application further comprises executing a second instance of another user-level application executing on a virtual machine of the particular server in the additional virtual machine of the different server without halting execution of a first instance of the another user-level application on the particular server. 10. The computer program product of claim 6 wherein determining whether a first user-level application's network traffic exceeds a predetermined threshold further comprises: querying the network switch by the VMMM for information describing the monitored network traffic; and determining, by the VMMM in dependence upon the retrieved information, whether the first user-level application's network traffic exceeds a predetermined threshold. 11. An apparatus for virtual machine management among networked servers, the ser
Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455) · CPC title
involving task migration · CPC title
based on parameters of servers, e.g. available memory or workload (monitoring of computer activity G06F11/30) · CPC title
involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.