Providing optimized quality of service to prioritized virtual machines and applications based on quality of shared resources

US9515899B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9515899-B2
Application numberUS-201213720566-A
CountryUS
Kind codeB2
Filing dateDec 19, 2012
Priority dateDec 19, 2012
Publication dateDec 6, 2016
Grant dateDec 6, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Quality of service is provided to prioritized VMs and applications, based on the varied quality of different shared computing resources. Each VM or application has an associated priority. A quality rating is dynamically assigned to each shared computing resource. Requests for shared computing resources made by specific VMs or applications are received. For each specific received request, the current priority of the requesting VM or application is identified. In response to each received request, a specific shared computing resource is assigned to the specific requesting VM or application. This assignment is made based on the current priority of the requesting VM or application and the current quality rating of the shared computing resource, thereby providing quality of service to the requesting VM or application corresponding to its current priority.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: dynamically assigning a quality rating to each one of a plurality of shared computing resources, wherein the quality rating quantifies a plurality of static and dynamic qualitative factors concerning the each one of the plurality of shared computing resources, and the each one of the plurality of shared computing resources is accessible by one or more applications executed by one or more virtual machines executed by a physical computer; receiving one or more requests for a shared computing resource from one or more requesting applications, wherein each of the one or more requesting applications is assigned a priority; identifying, for each of the one or more requests, the priority of the requesting application; and in response to the each of the one or more requests, assigning a shared computing resource to the requesting application, wherein the assigning is based on the priority of the requesting application and the quality rating of the shared computing resource. 2. The computer-implemented method of claim 1 wherein: the one or more applications executed by the one or more virtual machines executed by the physical computer further comprise a plurality of virtual machines executed by a single host. 3. The computer-implemented method of claim 1 wherein: the one or more applications executed by the one or more virtual machines further comprises an application executed by a specific virtual machine executed by a single host. 4. The computer-implemented method of claim 1 wherein: the each one of the plurality of shared computing resources further comprises a resource that is shared among the one or more applications executed by the one or more virtual machines executed by the physical computer. 5. The computer-implemented method of claim 1 further comprising: periodically evaluating the each one of the plurality of shared computing resources; determining a current quality rating for the each one of the plurality of shared computing resources, based on a current status of the each one of the plurality of shared computing resources; and assigning the current quality rating to the each one of the plurality of shared computing resources. 6. The computer-implemented method of claim 1 wherein: the quality rating quantifies a plurality of qualitative factors concerning a specific type of shared computing resource. 7. The computer-implemented method of claim 1 wherein: the quality rating quantifies a plurality of qualitative factors concerning the each one of the plurality of shared computing resources. 8. The computer-implemented method of claim 1 wherein: the quality rating further comprises a single quantification of an overall quality of the each one of the plurality of shared computing resources. 9. The computer-implemented method of claim 1 wherein: the priority of the one or more applications further comprises an indicator of a quality of service to be provided to the requesting application relative to other applications executed by the one or more virtual machines executed by the physical computer. 10. The computer-implemented method of claim 1 wherein the receiving one or more requests for a shared computing resource further comprises: the one or more requests for a shared computing resource being made by the one or more virtual machines to a hypervisor. 11. The computer-implemented method of claim 1 wherein the receiving one or more requests for a shared computing resource further comprises: receiving requests to access a virtual disk made by the one or more virtual machines. 12. The computer-implemented method of claim 1 wherein the identifying, for the each one of the plurality of requests, the priority of the requesting application further comprises: identifying the requesting application, from the one or more requesting applications, that made the request; and retrieving a current priority of the requesting application. 13. The computer-implemented method of claim 12 wherein the identifying the requesting application, from the one or more requesting applications, that made the request further comprises: identifying a logical unit identifier (LUN) of a storage unit targeted by an input/output (IO) operation, the IO operation comprising the request. 14. The computer-implemented method of claim 1 wherein: the receiving one or more requests for a shared computing resource further comprises receiving one or more requests to initiate input/output (IO) operations targeting a storage device; the plurality of shared computing resources further comprises a plurality of queues, wherein each queue of the plurality of queues is configured to access the storage device with a different level of priority; and the assigning a shared computing resource to the requesting application further comprises assigning one queue of the plurality of queues to the requesting application. 15. The computer-implemented method of claim 1 further comprising: logging information documenting usage of the plurality of shared computing resources by the one or more applications over time. 16. The computer-implemented method of claim 1 wherein the receiving one or more requests for a shared computing resource further comprises: receiving one or more requests to access a multipathed storage device from the one or more requesting applications. 17. The computer-implemented method of claim 16 wherein: the plurality of shared computing resources further comprises a plurality of queues, wherein each queue of the plurality of queues is configured to access one path of a plurality of paths to physical storage; and the dynamically assigning a quality rating to the each one of the plurality of shared computing resources further comprises assigning a level of priority to each queue of the plurality of queues. 18. The computer-implemented method of claim 16 wherein: the plurality of shared computing resources further comprises a plurality of paths to physical storage; and the dynamically assigning a quality rating to the each one of the plurality of shared computing resources further comprises assigning one or more quality ratings to each path of the plurality of paths, wherein the one or more quality ratings quantify the quality of the each path of the plurality of paths. 19. A non-transitory computer-readable storage medium storing program instructions executable to: dynamically assign a quality rating to each one of a plurality of shared computing resources, wherein the quality rating quantifies static and dynamic qualitative factors concerning the each one of the plurality of shared computing resources, and the each one of the plurality of shared computing resources is accessible by one or more applications executed by one or more virtual machines executed by a physical computer; receive one or more requests for a shared computing resource from one or more requesting applications, wherein each of the one or more requesting applications is assigned a priority; identify, for each of the one or more requests, the priority of the requesting application; and in response to the each of the one or more requests, assign a shared computing resource to the requesting application, wherein assigning is based on the priority of the requesting application and the quality rating of the shared computing resource. 20. A computer system comprising: one or more processors; and a memory coupled to the one or mo

Assignees

Inventors

Classifications

  • Hypervisor-specific management and integration aspects · CPC title

  • I/O management, e.g. providing access to device drivers or storage · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

  • by giving priorities, e.g. assigning classes of service · CPC title

  • Electricity · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9515899B2 cover?
Quality of service is provided to prioritized VMs and applications, based on the varied quality of different shared computing resources. Each VM or application has an associated priority. A quality rating is dynamically assigned to each shared computing resource. Requests for shared computing resources made by specific VMs or applications are received. For each specific received request, the cu…
Who is the assignee on this patent?
Veritas Technologies Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 06 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).