File Transfer Using Standard Blocks and Standard-Block Identifiers
First Claim
Patent Images
1. A system comprising:
- a SBID-to-S-block converter for returning over a network to a target system a version of a standard data block in response to a respective standard-block identifier received over said network from said target system, said SBID-block converter storing versions of plural standard data blocks and standard hashes generated from respective ones of said standard data blocks, said SBID-block converter associating respective standard-block identifiers with respective ones of said standard data blocks; and
a hash-to-SBID converter for returning over said network to a source system a first standard-block identifier for a first of said standard data blocks in response to a reception by said hash-to-SBID converter from said source system of a first file hash matching a first standard hash generated from said first standard data block.
6 Assignments
0 Petitions
Accused Products
Abstract
Instead of transferring a large original file, such as a virtual-machine image file, from a source system to a target system, the original file is encoded to define a recipe file that is transferred. The recipe is then decoded to yield a duplicate of the original file on the target system. Encoding involves identifying standard blocks in the original file and including standard-block identifiers for the standard blocks in the recipe in lieu of the original blocks. Decoding involves an exchange with a standard-block identifier server system, which provides standard blocks in response to received standard-block identifiers.
41 Citations
18 Claims
-
1. A system comprising:
-
a SBID-to-S-block converter for returning over a network to a target system a version of a standard data block in response to a respective standard-block identifier received over said network from said target system, said SBID-block converter storing versions of plural standard data blocks and standard hashes generated from respective ones of said standard data blocks, said SBID-block converter associating respective standard-block identifiers with respective ones of said standard data blocks; and a hash-to-SBID converter for returning over said network to a source system a first standard-block identifier for a first of said standard data blocks in response to a reception by said hash-to-SBID converter from said source system of a first file hash matching a first standard hash generated from said first standard data block. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method comprising:
-
converting on a source system an original file into original blocks; generating file hashes from said original blocks; transmitting some of said file hashes over a network to a SBID server system; distinguishing file hashes that match standard hashes generated from standard blocks from those that do not match said standard hashes; for each of said file hatches that matches a standard hash, returning a respective standard-block identifier to said source system; and generating a recipe file including said standard-block identifier; transferring over said network said recipe file to a target system. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A manufacture comprising computer-readable storage media encoded with standard data blocks and programs of computer-executable instructions, said programs providing for:
-
dividing an original file into uncompressed file blocks; compressing said uncompressed file blocks to yield compressed file blocks; generating file hashes from said compressed file blocks; for each of said file hashes, as it becomes a currently-processed file hash, determining whether it matches a previously-processed file hash represented in an entry in a table that associates previously-processed file hashes with file-block identifiers; in the event a currently-processed file hash matches a previously-processed file hash, associating a file-block identifier for the currently-processed file hash with a file-block identifier for the matching previously-processed file hash, and in the event a currently-processed file hash does not match a previously-processed file hash, transmitting the currently-processed file hash to a SBID server system and, if a SBID indicting that that hash corresponds to standard block is returned from said SBID server system, including that SBID in said recipe file. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification