Patent ID: 7844787

Claim:
A method, comprising: raising a data snapshot request to one or more applications; receiving a flush of current pending volatile Input/Output (I/O) operations from the one or more applications; producing an event packet representing the up-to-date state of a local source volume, the event packet represents current pending I/O operations batched in memory buffers that are to be flushed to the local source volume, the event packet identify data blocks, block offsets, and operations to perform on a remote replicated volume, the current pending I/O operations not flushed to the local source volume when the data snapshot request is raised, the remote replicated volume is a replication of the local source volume that is being replicated by a remote replication service but lacks the current pending I/O operations in the remote replicated volume; sending the event packet to the remote replication service for producing a snapshot version of the local volume in the remote replicated volume by the remote replication service processing the event packet against the remote replication volume, the snapshot version of the local volume created just from the remote replicated volume using the remote replicated volume and the event packet and the snapshot version not created from the local source volume; and receiving a thaw command from the remote replication service indicating that one or more applications can continue to process against the local source volume, the thaw command is sent by the remote replication service on receipt of the event packet and before the remote replication service processes the event packet against the remote replicated volume to produce the snapshot version.