Detecting out-of-band (OOB) changes when replicating a source file system using an in-line system

US9633038B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9633038-B2
Application numberUS-201615061934-A
CountryUS
Kind codeB2
Filing dateMar 4, 2016
Priority dateAug 27, 2013
Publication dateApr 25, 2017
Grant dateApr 25, 2017

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.

Examples described herein include a computer system, positioned in-line with respect to a plurality of clients that actively use a source file system, to replicate a source file system on a target memory in presence of out-of-band events which after the source file system.

First claim

Opening claim text (preview).

What is claimed is: 1. A system positioned in-line between a plurality of clients and a source file system, the system comprising: a memory resource to store instructions; one or more processors using the instructions stored in the memory resource to: populate a target memory with one or more file system objects from the source file system; store file handles and corresponding metadata for each of the one or more file system objects populated in the target memory; receive a request from a client in the plurality of clients, the request specifying a file handle for a file system object stored on the source file system; retrieve source metadata from the source file system, the source metadata corresponding to the specified file handle; retrieve system metadata stored in the system, the system metadata corresponding to the specified file handle; determine whether the source metadata matches the system metadata; upon determining that the source metadata and the system metadata match, respond to the request from the client with the file system object from the target memory; and upon determining that the source metadata and the system metadata are inconsistent, replace the system metadata with the source metadata and update the file system object in the target memory with the file system object in the source file system. 2. The system of claim 1 , wherein determining that the source metadata and the system metadata match includes comparing a time stamp of the source metadata to the time stamp of the system metadata. 3. The system of claim 1 , wherein the target memory corresponds to a cache. 4. The system of claim 1 , wherein the target memory corresponds to a destination file system. 5. The system of claim 4 , including further instructions used to: determine whether the specified file handle (i) identifies an updated the system object which was updated on the source file system, but not on the destination file system, and/or (ii) has morphed so that the specified file handle identifies a new file system object on the source file system that is different than what was previously identified when the file system object was replicated. 6. A method for replicating changes, the method being implemented by one or more processors of a device positioned in-line between a plurality of clients and a source file system, the method comprising: populating a target memory with one or more file system objects from the source file system; storing file handles and corresponding metadata for each of the one or more file system objects populated in the target memory; receiving a request from a client in the plurality of clients, the request specifying a file handle for a file system object stored on the source file system; retrieving source metadata from the source file system, the source metadata corresponding to the specified file handle; retrieving system metadata stored in the device, the system metadata corresponding to the specified file handle; determining whether the source metadata matches the system metadata; upon determining that the source metadata and the system metadata match, responding to the request from the client with the file system object from the target memory; and upon determining that the source metadata and the system metadata are inconsistent, replacing the system metadata with the source metadata and updating the file system object in the target memory with the file system object in the source file system. 7. The method of claim 6 , wherein determining that the source metadata and the system metadata match includes comparing a time stamp of the source metadata to the time stamp of the system metadata. 8. The method of claim 6 , wherein the target memory corresponds to a cache. 9. The method of claim 6 , wherein the target memory corresponds to a destination file system. 10. The method of claim 9 , further comprising: determining whether the specified file handle (i) identifies an updated file system object which was updated on the source file system, but not on the destination file system, and/or (ii) has morphed so that the specified file handle identifies a new file system object on the source file system that is different than what was previously identified when the file system object was replicated. 11. A non-transitory computer-readable medium that stores instructions, executable by one or more processors, to cause the one or more processors to perform operations that comprise: populating a target memory with one or more file system objects from a source file system; storing, at a device, file handles and corresponding metadata for each of the one or more file system objects populated in the target memory; receiving a request from a client in a plurality of clients, the request specifying a file handle for a file system object stored on the source file system; retrieving source metadata from the source file system, the source metadata corresponding to the specified the handle; retrieving system metadata stored in the device, the system metadata corresponding to the specified file handle; determining whether the source metadata matches the system metadata; upon determining that the source metadata and the system metadata match, responding to the request from the client with the file system object from the target memory; and upon determining that the source metadata and the system metadata are inconsistent, replacing the system metadata with the source metadata and updating the file system object in the target memory with the file system object in the source file system. 12. The non-transitory computer-readable medium of claim 11 , wherein determining that the source metadata and the system metadata match includes comparing a time stamp of the source metadata to the time stamp of the system metadata. 13. The non-transitory computer-readable medium of claim 11 , wherein the target memory corresponds to a cache. 14. The non-transitory computer-readable medium of claim 11 , wherein the target memory corresponds to a destination file system. 15. The non-transitory computer-readable medium of claim 14 , including further instructions to: determine whether the specified file handle (i) identifies an updated the system object which was updated on the source file system, but not on the destination file system, and/or (ii) has morphed so that the specified file handle identifies a new file system object on the source file system that is different than what was previously identified when the file system object was replicated.

Assignees

Inventors

Classifications

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 US9633038B2 cover?
Examples described herein include a computer system, positioned in-line with respect to a plurality of clients that actively use a source file system, to replicate a source file system on a target memory in presence of out-of-band events which after the source file system.
Who is the assignee on this patent?
Netapp Inc
What technology area does this patent fall under?
Primary CPC classification G06F17/30174. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 25 2017 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 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).