Storage integration for host-based write-back caching

US9519581B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9519581-B2
Application numberUS-201314028101-A
CountryUS
Kind codeB2
Filing dateSep 16, 2013
Priority dateSep 16, 2013
Publication dateDec 13, 2016
Grant dateDec 13, 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 enabling integration between a storage system and a host system that performs write-back caching are provided. In one embodiment, the host system can transmit to the storage system a command indicating that the host system intends to cache, in a write-back cache, writes directed to a range of logical block addresses (LBAs). The host system can further receive from the storage system a response indicating whether the command is accepted or rejected. If the command is accepted, the host system can initiate the caching of writes in the write-back cache.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for enabling integration between a storage system and a host system that performs write-back caching, the method comprising: transmitting, by the host system to the storage system, a first command indicating that the host system intends to cache, in a write-back cache local to the host system, writes directed to a range of logical block addresses (LBAs) of a storage object stored on the storage system, wherein the writes originate from one or more storage clients resident on the host system; receiving, by the host system from the storage system, a response indicating that the first command is accepted; based on the response, initiating, by the host system, caching of the writes in the write-back cache; receiving, by the host system from the storage system, a first message indicating that the entirety of the write-back cache should be flushed once; in response to the first message: flushing, by the host system, the entirety of the write-back cache; transmitting, by the host system to the storage system, a second command indicating that the flushing is complete; and continuing the caching; receiving, by the host system from the storage system, a second message indicating that the entirety of the write-back cache should be flushed permanently, such that the caching of writes to the write-back cache is terminated on the host system; and in response to the second message: flushing, by the host system, the entirety of the write-back cache; transmitting, by the host system to the storage system, a third command indicating that the flushing is complete and no further write-back caching will be performed; and terminating, by the host system, the caching of writes to the write-back cache. 2. The method of claim 1 further comprising, prior to receiving the second message: autonomously determining, by the host system, that write-back caching should be terminated; and in response to the determining: flushing the write-back cache; transmitting, to the storage system, a fourth command indicating that the flushing is complete and that no further write-back caching will be performed; and terminating the caching. 3. The method of claim 1 wherein the host system is a master host system in a fault tolerant configuration with a standby host system, wherein the first command includes a flag indicating that the standby host system is present, and wherein the method further comprises: transmitting, by the standby host system to the storage system, a fourth command querying whether one or more LBAs have been flushed by the master host system. 4. The method of claim 1 wherein the storage system is configured to transmit the first message upon determining that the storage system or another host system requires read access to the range of LBAs. 5. The method of claim 1 wherein the storage system is configured to transmit the second message upon determining that the storage system or another host system requires write access to the range of LBAs. 6. The method of claim 3 further comprising, upon a failure of the master host system: transmitting, by the standby host system to the storage system, the first command with a flag indicating that the standby host system will assume control of the range of LBAs. 7. A non-transitory computer readable storage medium having stored thereon software executable by a host system, the software embodying a method for enabling integration between a storage system and a host system that performs write-back caching, the method comprising: transmitting, by the host system to the storage system, a first command indicating that the host system intends to cache, in a write-back cache local to the host system, writes directed to a range of logical block addresses (LBAs) of a storage object stored on the storage system, wherein the writes originate from one or more storage clients resident on the host system; receiving, by the host system from the storage system, a response indicating that the first command is accepted; based on the response, initiating, by the host system, caching of the writes in the write-back cache; receiving, by the host system from the storage system, a first message indicating that the entirety of the write-back cache should be flushed once; in response to the first message: flushing, by the host system, the entirety of the write-back cache; transmitting, by the host system to the storage system, a second command indicating that the flushing is complete; and continuing the caching; receiving, by the host system from the storage system, a second message indicating that the entirety of the write-back cache should be flushed permanently, such that the caching of writes to the write-back cache is terminated on the host system; and in response to the second message: flushing, by the host system, the entirety of the write-back cache; transmitting, by the host system to the storage system, a third command indicating that the flushing is complete and no further write-back caching will be performed; and terminating, by the host system, the caching of writes to the write-back cache. 8. The non-transitory computer readable storage medium of claim 7 wherein the method further comprises, prior to receiving the second message: autonomously determining that write-back caching should be terminated; and in response to the determining: flushing the write-back cache; transmitting, to the storage system, a second command indicating that the flushing is complete and that no further write-back caching will be performed; and terminating the caching. 9. The non-transitory computer readable storage medium of claim 7 wherein the host system is a master host system in a fault tolerant configuration with a standby host system, wherein the first command includes a flag indicating that the standby host system is present, and wherein the method further comprises: transmitting, by the standby host system to the storage system, a fourth command querying whether one or more LBAs have been flushed by the master host system. 10. The non-transitory computer readable storage medium of claim 7 wherein the storage system is configured to transmit the first message upon determining that the storage system or another host system requires read access to the range of LBAs. 11. The non-transitory computer readable storage medium of claim 7 wherein the storage system is configured to transmit the second message upon determining that the storage system or another host system requires write access to the range of LBAs. 12. The non-transitory computer readable storage medium of claim 9 wherein the method further comprises, upon a failure of the master host system: transmitting, by the standby host system to the storage system, the first command with a flag indicating that the standby host system will assume control of the range of LBAs. 13. A computer system comprising: a processor; a write-back cache; one or more storage clients; and a non-transitory data store having stored thereon program code which, when executed by processor, causes the processor to: transmit, to a storage system, a first command indicating that the computer system intends to cache, in the write-back cache, writes directed to a range of logical block addresses (LBAs) of a storage object stored on the storage system, wherein the writes originate from the one or more storage clients; receive, from the storage system, a response indicating that the first command is accepted; based on the response, initiate caching of the writes in the write-back cache; receive, from the storage system, a first message

Assignees

Inventors

Classifications

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

  • with main memory updating (G06F12/0806 takes precedence) · 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 US9519581B2 cover?
Techniques for enabling integration between a storage system and a host system that performs write-back caching are provided. In one embodiment, the host system can transmit to the storage system a command indicating that the host system intends to cache, in a write-back cache, writes directed to a range of logical block addresses (LBAs). The host system can further receive from the storage sys…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification G06F12/0804. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 13 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).