Transparent host-side caching of virtual disks located on shared storage

US9454487B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9454487-B2
Application numberUS-201313922985-A
CountryUS
Kind codeB2
Filing dateJun 20, 2013
Priority dateAug 27, 2012
Publication dateSep 27, 2016
Grant dateSep 27, 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.

Techniques for using a host-side cache to accelerate virtual machine (VM) I/O are provided. In one embodiment, the hypervisor of a host system can intercept an I/O request from a VM running on the host system, where the I/O request is directed to a virtual disk residing on a shared storage device. The hypervisor can then process the I/O request by accessing a host-side cache that resides one or more cache devices distinct from the shared storage device, where the accessing of the host-side cache is transparent to the VM.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for using a host-side cache to accelerate virtual machine (VM) I/O, the method comprising: intercepting an I/O request from a VM running on the host system, the I/O request being directed to a virtual disk residing on a shared storage device; and processing the I/O request by accessing a host-side cache distinct from the shared storage device, wherein a guest operating system of the VM is unware that the host-side cache is being accessed as part of the processing, wherein the host-side cache is spread across a plurality of cache devices, and wherein the plurality of cache devices are pooled into a single logical resource by applying a common file system to the plurality of cache devices. 2. The method of claim 1 wherein processing the I/O request by accessing the host-side cache comprises invoking a caching module that has been preconfigured for use with the VM or the virtual disk. 3. The method of claim 2 wherein the caching module is a modular component of the hypervisor that is implemented by a third-party developer. 4. The method of claim 1 wherein the plurality of cache devices are heterogeneous devices. 5. The method of claim 1 wherein the VM or the virtual disk is allocated a portion of the host-side cache when the VM is powered on, the allocated portion having a preconfigured minimum size and a preconfigured maximum size. 6. The method of claim 5 wherein the allocated portion is freed when the VM is powered off or migrated to another host system. 7. A host system comprising: a processor; and a non-transitory computer readable medium having stored thereon program code that, when executed by the processor, causes the processor to: intercept an I/O request from a VM running on the host system, the I/O request being directed to a virtual disk residing on a shared storage device; and process the I/O request by accessing a host-side cache distinct from the shared storage device, wherein a guest operating system of the VM is unware that the host-side cache is being accessed as part of the processing, wherein the host-side cache is spread across a plurality of cache devices, and wherein the plurality of cache devices are pooled into a single logical resource by applying a common file system to the plurality of cache devices. 8. The host system of claim 7 wherein the program code that causes the processor to process the I/O request by accessing the host-side cache comprises program code that causes the processor to invoke a caching module that has been preconfigured for use with the VM or the virtual disk. 9. The host system of claim 8 wherein the caching module is a modular component that is implemented by a third-party developer. 10. The host system of claim 7 wherein the plurality of cache devices are heterogeneous devices. 11. The host system of claim 7 wherein the VM or the virtual disk is allocated a portion of the host-side cache when the VM is powered on, the allocated portion having a preconfigured minimum size and a preconfigured maximum size. 12. The host system of claim 11 wherein the allocated portion is freed when the VM is powered off or migrated to another host system. 13. A non-transitory computer readable storage medium having stored thereon computer software executable by a processor of a host system, the computer software embodying a method for using a host-side cache to accelerate VM I/O, the method comprising: intercepting an I/O request from a VM running on the host system, the I/O request being directed to a virtual disk residing on a shared storage device; and processing the I/O request by accessing a host-side cache distinct from the shared storage device, wherein a guest operating system of the VM is unware that the host-side cache is being accessed as part of the processing, wherein the host-side cache is spread across a plurality of cache devices, and wherein the plurality of cache devices are pooled into a single logical resource by applying a common file system to the plurality of cache devices. 14. The non-transitory computer readable storage medium of claim 13 wherein processing the I/O request by accessing the host-side cache comprises invoking a caching module that has been preconfigured for use with the VM or the virtual disk. 15. The non-transitory computer readable storage medium of claim 14 wherein the caching module is a modular component that is implemented by a third-party developer. 16. The non-transitory computer readable storage medium of claim 13 wherein the plurality of cache devices are heterogeneous devices. 17. The non-transitory computer readable storage medium of claim 13 wherein the VM or the virtual disk is allocated a portion of the host-side cache when the VM is powered on, the allocated portion having a preconfigured minimum size and a preconfigured maximum size. 18. The non-transitory computer readable storage medium of claim 17 wherein the allocated portion is freed when the VM is powered off or migrated to another host system.

Assignees

Inventors

Classifications

  • Latency reduction · CPC title

  • Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines · CPC title

  • Allocation or management of cache space · CPC title

  • by allocating resources to storage systems · CPC title

  • for peripheral storage systems, e.g. disk cache · CPC title

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 US9454487B2 cover?
Techniques for using a host-side cache to accelerate virtual machine (VM) I/O are provided. In one embodiment, the hypervisor of a host system can intercept an I/O request from a VM running on the host system, where the I/O request is directed to a virtual disk residing on a shared storage device. The hypervisor can then process the I/O request by accessing a host-side cache that resides one or…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification G06F12/0866. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 27 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).