Patent ID: 8577851

Claim:
A method for defining deduplication block alignments within a data segment, the method comprising: iteratively performing a block alignment function on data within a sliding window in a data segment, and following each iterative performance of the block alignment function: in response to determining that the output of the block alignment function performed on a current window of data satisfies a predetermined criteria: establishing with one or more computer processors a deduplication data block having a predetermined block size; and moving the sliding window relative to the data segment by an amount based on the predetermined block size before a next iterative performance of the block alignment function; and in response to determining that the output of the block alignment function performed on the current window of data does not satisfy the predetermined criteria: moving the sliding window relative to the data segment by a predetermined incremental amount that is different from the predetermined block size before the next iterative performance of the block alignment function and without establishing a deduplication data block, wherein gaps of data not belonging to any deduplication data block exist between at least some established deduplication data blocks following performance of the block alignment function across the data segment, and wherein the size of the gaps of data is based at least on a number of successive outputs of the block alignment function that do not satisfy the predetermined criteria.