Systems and methods for continuous data protection comprising storage of completed I/O requests intercepted from an I/O stream using touch points

US11609775B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11609775-B2
Application numberUS-201916398649-A
CountryUS
Kind codeB2
Filing dateApr 30, 2019
Priority dateApr 30, 2019
Publication dateMar 21, 2023
Grant dateMar 21, 2023

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.

Example embodiments relate generally to systems and methods for continuous data protection (CDP) and more specifically to an input and output (I/O) filtering framework and log management system to seek a near-zero recovery point objective (RPO).

First claim

Opening claim text (preview).

The invention claimed is: 1. A method for continuous data protection for a virtual machine (VM) having a virtual disk, comprising: accessing, at an interception point in an input/output I/O path, an I/O stream comprising records of completed I/O requests and records of uncompleted I/O requests exchanged between the VM and a virtualization server; configuring an I/O touch point in the I/O stream, the I/O touch point associated with I/O request cancellation of uncompleted I/O requests; filtering the I/O stream to intercept only the records of the completed I/O requests in the I/O stream using the I/O touch point; storing, from among the records of the completed I/O requests and the records of the uncompleted I/O requests, only the records of the completed I/O requests at a backup site based at least in part on the filtering; forming a recoverable snapshot-log chain by associating the records stored at the backup site with a snapshot; receiving a request for recoverable data from a replication target; and sending data to the replication target based at least on a portion of the recoverable snapshot-log chain. 2. The method of claim 1 , further comprising: establishing a filter framework at the interception point, the filter framework including an I/O stack and an I/O filter. 3. The method of claim 2 , wherein the virtualization server is an ESX hypervisor server, the method further comprising: including a filter driver for the filter framework within the ESX hypervisor server. 4. The method of claim 2 , further comprising: configuring a filter driver to intercept only the completed I/O requests in the I/O stream using the I/O touch point, wherein the snapshot is a full image snapshot. 5. The method of claim 4 , wherein the I/O request cancellation is a distributed I/O request cancellation of a plurality of I/O requests comprising a first set of completed I/O requests and a second set of uncompleted I/O requests, the method further comprising: managing the distributed I/O request cancellation at the I/O stack and not at the I/O filter of the filter framework. 6. A system for continuous data protection for a virtual machine (VM) having a virtual disk, comprising: at least one processor for executing machine-readable instructions; and a memory storing instructions executable by the at least one processor to cause the system to: access, at an interception point in an input/output I/O path, an I/O stream comprising records of completed I/O requests and records of uncompleted I/O requests exchanged between the VM and a virtualization server; configure an I/O touch point in the I/O stream, the I/O touch point associated with I/O request cancellation of uncompleted I/O requests; filter the I/O stream to intercept only the records of the completed I/O requests in the I/O stream using the I/O touch point; store, from among the records of the completed I/O requests and the records of the uncompleted I/O requests, only the records of the completed I/O requests at a backup site based at least in part on the filtering; form a recoverable snapshot-log chain by associating the records stored at the backup site with a snapshot; receive a request for recoverable data from a replication target; and send data to the replication target based at least on a portion of the recoverable snapshot-log chain. 7. The system of claim 6 , wherein the instructions are further executable by the at least one processor to cause the system to: establish a filter framework at the interception point, the filter framework including an I/O stack and an I/O filter. 8. The system of claim 7 , wherein the virtualization server is an ESX hypervisor server, and wherein the instructions are further executable by the at least one processor to cause the system to: include a filter driver for the filter framework within the ESX hypervisor server. 9. The system of claim 7 , wherein the instructions are further executable by the at least one processor to cause the system to: configure a filter driver to intercept only the completed I/O requests in the I/O stream using the I/O touch point, wherein the snapshot is a full image snapshot. 10. The system of claim 9 , wherein the I/O request cancellation is a distributed I/O request cancellation of a plurality of I/O requests comprising a first set of completed I/O requests and a second set of uncompleted I/O requests, and wherein the instructions are further executable by the at least one processor to cause the system to: manage the distributed I/O request cancellation at the I/O stack and not at the I/O filter of the filter framework. 11. A non-transitory, machine-readable medium storing instructions for continuous data protection for a virtual machine (VM) having a virtual disk, wherein the instructions, when read by a machine, cause the machine to: access, at an interception point in an input/output I/O path, an I/O stream comprising records of completed I/O requests and records of uncompleted I/O requests exchanged between the VM and a virtualization server; configure an I/O touch point in the I/O stream, the I/O touch point associated with I/O request cancellation of uncompleted I/O requests; filter the I/O stream to intercept only the records of the completed I/O requests in the I/O stream using the I/O touch point; store, from among the records of the completed I/O requests and the records of the uncompleted I/O requests, only the records of the completed I/O requests at a backup site based at least in part on the filtering; form a recoverable snapshot-log chain by associating the records stored at the backup site with a snapshot; receive a request for recoverable data from a replication target; and send data to the replication target based at least on a portion of the recoverable snapshot-log chain. 12. The non-transitory, machine-readable medium of claim 11 , wherein the instructions, when read by the machine, further cause the machine to: establish a filter framework at the interception point, the filter framework including an I/O stack and an I/O filter. 13. The non-transitory, machine-readable medium of claim 12 , wherein the virtualization server is an ESX hypervisor server, and wherein the instructions, when read by the machine, further cause the machine to: include a filter driver for the filter framework within the ESX hypervisor server. 14. The non-transitory, machine-readable medium of claim 12 , wherein the instructions, when read by the machine, further cause the machine to: configure a filter driver to intercept only the completed I/O requests in the I/O stream using the I/O touch point, and wherein the snapshot is a full image snapshot. 15. The non-transitory, machine-readable medium of claim 14 , wherein the I/O request cancellation is a distributed I/O request cancellation of a plurality of I/O requests comprising a first set of completed I/O requests and a second set of uncompleted I/O requests, and wherein the instructions, when read by the machine, further cause the machine to: manage the distributed I/O request cancellation at the I/O stack and not at the I/O filter of the filter framework.

Assignees

Inventors

Classifications

  • Management of the data involved in backup or backup restore · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

  • Using snapshots, i.e. a logical point-in-time copy of the data · CPC title

  • involving logging of persistent data for recovery · CPC title

  • I/O management, e.g. providing access to device drivers or storage · 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 US11609775B2 cover?
Example embodiments relate generally to systems and methods for continuous data protection (CDP) and more specifically to an input and output (I/O) filtering framework and log management system to seek a near-zero recovery point objective (RPO).
Who is the assignee on this patent?
Rubrik Inc
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 Mar 21 2023 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).