IP Library Granted Patent US 11,061,601
Granted Patent B2
US 11,061,601 · App. 16/398,520 · Granted Jul 13, 2021

Systems and methods for continuous data protection

Inventors: Benjamin Travis Meadowcroft (San Jose, CA); Li Ding (Cupertino, CA); Shaomin Chen (San Jose, CA); Hardik Vohra (Sunnyvale, CA); Arijit Banerjee (Palo Alto, CA); Abhay Mitra (Santa Clara, CA); Kushaagra Goyal (Mountain View, CA); Arnav Gautum Mishra (San Jose, CA); Samir Rishi Chaudhry (Saratoga, CA); Suman Swaroop (Palo Alto, CA); Kunal Sean Munshani (Fremont, CA); Mudit Malpani (Mountain View, CA)
Assignee: RUBRIK, INC.
G06F3/065G06F3/067G06F3/0613G06F3/0619G06F3/0664G06F9/45558G06F2009/45579H04L63/0272
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,061,601
App. No.
16/398,520
Granted
Jul 13, 2021
Kind
B2
Abstract

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).

Claims (46)

1. A method for continuous data protection for a virtual machine (VM) having a virtual disk, the method comprising:

obtaining a base snapshot of the virtual disk;

intercepting, at an interception point in an I/O path, a virtual disk I/O stream between the VM and a virtualization server;

replicating the I/O stream at a log receiver;

storing the replicated I/O stream at the log receiver in I/O logs;

forming a recoverable snapshot-log chain by applying the replicated I/O stream stored in the I/O logs on top of the base snapshot;

receiving, via a graphical user interface, a user request for recoverable data at a replication target, the request based on a recovery protocol including a recovery point objective (RPO) of less than a threshold time period; and

in response to the user request, meeting or exceeding the RPO, the meeting or exceeding the RPO including sending at least a portion of the replicated I/O stream received within the threshold time period 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, wherein the threshold time period is 60 seconds.

3. The method of claim 2 , further comprising:

including a filter driver for the filter framework within an ESX hypervisor server; wherein the virtualization server is the ESX hypervisor server.

4. The method of claim 2 , further comprising:

configuring the filter framework to enable an I/O touch point in the I/O stream.

5. The method of claim 4 , further comprising:

configuring a filter driver to intercept only completed I/Os in the I/O stream using the enabled I/O touch point, wherein the I/O stream includes the I/O cancellation.

6. The method of claim 5 , further comprising:

managing the distributed I/O cancellation at the I/O stack and not at the I/O filter of the filter framework, wherein the I/O cancellation is a distributed I/O cancellation.

7. A system for continuous data protection for a virtual machine (VM) having a virtual disk, the system comprising:

at least one processor for executing machine-readable instructions; and

a memory storing instructions configured to cause the at least one processor to perform operations comprising:

obtaining a base snapshot of the virtual disk;

intercepting, at an interception point in an I/O path, a virtual disk I/O stream between the VM and a virtualization server;

replicating the I/O stream at a log receiver;

storing the replicated I/O stream at the log receiver in I/O logs;

forming a recoverable snapshot-log chain by applying the replicated I/O stream stored in the I/O logs on top of the base snapshot;

receiving, via a graphical user interface, a user request for recoverable data at a replication target, the request based on a recovery protocol including a recovery point objective (RPO) of less than a threshold time period; and

in response to the user request, meeting or exceeding the RPO, the meeting or exceeding the RPO including sending at least a portion of the replicated I/O stream received within the threshold time period to the replication target based at least on a portion of the recoverable snapshot-log chain.

8. The system of claim 7 , wherein the operations further comprise establishing a filter framework at the interception point, the filter framework including an I/O stack and an I/O filter, wherein the threshold time period is 60 seconds.

9. The system of claim 8 , wherein the virtualization server is an ESX hypervisor server and the operations further comprise including a filter driver for the filter framework within the ESX hypervisor server.

10. The system of claim 8 , wherein the operations further comprise configuring the filter framework to enable an I/O touch point in the I/O stream.

11. The system of claim 10 , wherein the I/O stream includes an I/O cancellation and the operations further comprise configuring the filter driver to intercept only completed I/Os in the I/O stream using the enabled I/O touch point.

12. The system of claim 11 , wherein the I/O cancellation is a distributed I/O cancellation and wherein the operations further comprise managing the distributed I/O cancellation at the I/O stack and not at the I/O filter of the filter framework.

13. A non-transitory, machine-readable medium storing instructions which, when read by a machine, cause the machine to perform operations in a method for continuous data protection for a virtual machine (VM) having a virtual disk, the operations comprising:

obtaining a base snapshot of the virtual disk;

intercepting, at an interception point in an I/O path, a virtual disk I/O stream between the VM and a virtualization server;

replicating the I/O stream at a log receiver;

storing the replicated I/O stream at the log receiver in I/O logs;

forming a recoverable snapshot-log chain by applying the replicated I/O stream stored in the I/O logs on top of the base snapshot;

receiving, via a graphical user interface, a user request for recoverable data at a replication target, the request based on a recovery protocol including a recovery point objective (RPO) of less than a threshold time period; and

in response to the user request, meeting or exceeding the RPO, the meeting or exceeding the RPO including sending at least a portion of the replicated I/O stream received within the threshold time period to the replication target based at least on a portion of the recoverable snapshot-log; chain.

14. The medium of claim 13 , wherein the operations further comprise establishing a filter framework at the interception point, the filter framework including an I/O stack and an I/O filter, wherein the threshold time period is 60 seconds.

15. The medium of claim 14 , wherein the virtualization server is an ESX hypervisor server and the operations further comprise including a filter driver for the filter framework within the ESX hypervisor server.

16. The medium of claim 14 , wherein the operations further comprise configuring the filter framework to enable an I/O touch point in the I/O stream.

17. The medium of claim 16 , wherein the I/O stream includes an I/O cancellation and the operations further comprise configuring the filter driver to intercept only completed I/Os in the I/O stream using the enabled I/O touch point.

18. The medium of claim 17 , wherein the I/O cancellation is a distributed I/O cancellation and wherein the operations further comprise managing the distributed I/O cancellation at the I/O stack and not at the I/O filter of the filter framework.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 60333/0323 Recorded Jun 13, 2025
From: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
To: RUBRIK, INC.
Reel/Frame 071565/0602 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 10, 2022
From: RUBRIK, INC.
To: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
Reel/Frame 060333/0323 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2020
From: MEADOWCROFT, BENJAMIN TRAVIS; DING, LI; CHEN, SHAOMIN; VOHRA, HARDIK; BANERJEE, ARIJIT; MITRA, ABHAY; GOYAL, KUSHAAGRA; MISHRA, ARNAV GAUTUM; CHAUDHRY, SAMIR RISHI; SWAROOP, SUMAN
To: RUBRIK, INC.
Reel/Frame 052710/0799 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2020
From: MALPANI, MUDIT
To: RUBRIK, INC.
Reel/Frame 052710/0908 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2020
From: MUNSHANI, KUNAL SEAN
To: RUBRIK, INC.
Reel/Frame 052711/0035 →
Cited By (1)
US 12,379,953