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

US11093402B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11093402-B2
Application numberUS-201916552895-A
CountryUS
Kind codeB2
Filing dateAug 27, 2019
Priority dateAug 27, 2012
Publication dateAug 17, 2021
Grant dateAug 17, 2021

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 cache to accelerate virtual machine (VM) I/O are provided. In one embodiment, 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 host system can then process the I/O request by accessing a cache that resides on one or more cache devices directly attached to the host system, where the accessing of the cache is transparent to the VM.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving an Input/Output (I/O) request from a virtual machine (VM) running on a host system, the I/O request being a request for reading data from, or writing data to, a virtual disk of the VM; identifying, from among a plurality of caching modules installed in a hypervisor of the host system, a caching module associated with the virtual disk or the VM, the identifying comprising retrieving a reference to the caching module in a metadata file associated with the virtual disk or VM, the reference indicating that the caching module is designated to handle caching of I/O requests directed to the virtual disk or issued by the VM; and processing the I/O request in accordance with one or more caching algorithms defined within the identified caching module, the processing of the I/O request comprising accessing a host-side cache that includes one or more cache devices directly attached to the host system. 2. The method of claim 1 wherein the one or more cache devices include a first storage or memory device manufactured by a first vendor and a second storage or memory device manufactured by a second vendor different from the first vendor. 3. The method of claim 2 wherein the one or more caching algorithms defined within the identified caching module are tailored to the first storage or memory device or the second storage or memory device. 4. The method of claim 1 wherein the one or more caching algorithms defined within the identified caching module are tailored to a type of the virtual disk. 5. The method of claim 1 wherein the one or more caching algorithms defined within the identified caching module are tailored to a workload of the VM. 6. The method of claim 1 wherein a guest operating system of the VM is unaware that the host-side cache is being accessed as part of the processing. 7. A non-transitory computer readable storage medium having stored thereon computer software executable by a processor of a host system, the method comprising: receiving an Input/Output (I/O) request from a virtual machine (VM) running on the host system, the I/O request being a request for reading data from, or writing data to, a virtual disk of the VM; identifying, from among a plurality of caching modules installed in a hypervisor of the host system, a caching module associated with the virtual disk or the VM, the identifying comprising retrieving a reference to the caching module in a metadata file associated with the virtual disk or VM, the reference indicating that the caching module is designated to handle caching of I/O requests directed to the virtual disk or issued by the VM; and processing the I/O request in accordance with one or more caching algorithms defined within the identified caching module, the processing of the I/O request comprising accessing a host-side cache that includes one or more cache devices directly attached to the host system. 8. The non-transitory computer readable storage medium of claim 7 wherein the one or more cache devices include a first storage or memory device manufactured by a first vendor and a second storage or memory device manufactured by a second vendor different from the first vendor. 9. The non-transitory computer readable storage medium of claim 8 wherein the one or more caching algorithms defined within the identified caching module are tailored to the first storage or memory device or the second storage or memory device. 10. The non-transitory computer readable storage medium of claim 7 wherein the one or more caching algorithms defined within the identified caching module are tailored to a type of the virtual disk. 11. The non-transitory computer readable storage medium of claim 7 wherein the one or more caching algorithms defined within the identified caching module are tailored to a workload of the VM. 12. The non-transitory computer readable storage medium of claim 7 wherein a guest operating system of the VM is unaware that the host-side cache is being accessed as part of the processing. 13. A host system comprising: a processor; a host-side cache comprising one or more directly attached cache devices; and a non-transitory computer readable medium having stored thereon program code that, when executed by the processor, causes the processor to: receive an Input/Output (I/O) request from a virtual machine (VM) running on the host system, the I/O request being a request for reading data from, or writing data to, a virtual disk of the VM; identify, from among a plurality of caching modules installed in a hypervisor of the host system, a caching module associated with the virtual disk or the VM, the identifying comprising retrieving a reference to the caching module in a metadata file associated with the virtual disk or VM, the reference indicating that the caching module is designated to handle caching of I/O requests directed to the virtual disk or issued by the VM; and process the I/O request in accordance with one or more caching algorithms defined within the identified caching module, the processing of the I/O request comprising accessing the host-side cache. 14. The host system of claim 13 wherein the one or more cache devices include a first storage or memory device manufactured by a first vendor and a second storage or memory device manufactured by a second vendor different from the first vendor. 15. The host system of claim 14 wherein the one or more caching algorithms defined within the identified caching module are tailored to the first storage or memory device or the second storage or memory device. 16. The host system of claim 13 wherein the one or more caching algorithms defined within the identified caching module are tailored to a type of the virtual disk. 17. The host system of claim 13 wherein the one or more caching algorithms defined within the identified caching module are tailored to a workload of the VM. 18. The host system of claim 13 wherein a guest operating system of the VM is unaware that the host-side cache is being accessed as part of the processing.

Assignees

Inventors

Classifications

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

  • Hybrid disk, e.g. using both magnetic and solid state storage devices · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

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

  • Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays · 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 US11093402B2 cover?
Techniques for using a cache to accelerate virtual machine (VM) I/O are provided. In one embodiment, 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 host system can then process the I/O request by accessing a cache that resides on one or more cache devices directly attac…
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 Aug 17 2021 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 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).