Incremental computer file backup using a two-step comparison of first two characters in the block and a signature with pre-stored character and signature sets
First Claim
1. A computer program product comprising:
- a computer program storage device readable by a digital processing system; and
logic means on the program storage device and including instructions executable by the digital processing system for performing method steps for backing up at least some blocks in at least one local computer file from at least one user computer in a computer network, the method steps comprising;
(a) transmitting the local file to a data center remote from the user computer to render a remote version, the data center being accessible via the computer network;
(b) for each of the blocks in the local file, copying two respective characters thereof defining respective first comparison values and generating respective digital signature codes defining second comparison values;
(c) for each block, periodically determining a test digital signature code and comparing it to the respective second comparison value; and
(d) designating a block of the local file as a transmission block to be transmitted to the data center to thereby update the remote version when the test digital signature code of the block does not equal the second comparison value of the block.
13 Assignments
0 Petitions
Accused Products
Abstract
A system backs up computer files to a remote site via modem. Files of a user computer that are found in a common library at the remote site initially are not copied to the remote site, whereas files not in the library are copied to the remote site. Then, periodically the user computer determines which blocks have been changed, and the user computer transmits only changed blocks to the remote site. The blocks are gathered in "chunk" files, and when a chunk file reaches a predetermined size, it is transmitted to the remote site for updating the back up version of the respective file. The process then resumes identifying changed blocks. In addition to flagging the changed block for transfer, the process resynchronizes the local data file with the backed up version using a two-step comparison, first comparing the first two characters in the block with a pre-stored character set, and then, if the first comparison results in a match, comparing a digital signature of the changed block with a pre-stored signature. If either comparison results in a mismatch, the test is repeated using, as the first byte of the test block, the next byte in the sequence.
-
Citations
15 Claims
-
1. A computer program product comprising:
-
a computer program storage device readable by a digital processing system; and logic means on the program storage device and including instructions executable by the digital processing system for performing method steps for backing up at least some blocks in at least one local computer file from at least one user computer in a computer network, the method steps comprising; (a) transmitting the local file to a data center remote from the user computer to render a remote version, the data center being accessible via the computer network; (b) for each of the blocks in the local file, copying two respective characters thereof defining respective first comparison values and generating respective digital signature codes defining second comparison values; (c) for each block, periodically determining a test digital signature code and comparing it to the respective second comparison value; and (d) designating a block of the local file as a transmission block to be transmitted to the data center to thereby update the remote version when the test digital signature code of the block does not equal the second comparison value of the block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for backing up files in user computers, comprising:
-
a data center; a plurality of user computers remote from the data center and in communication with the data center; initialization logic means associated with each user computer for causing at least some file blocks to be transmitted to the data center; subfile incremental back up logic means associated with each user computer for determining changed blocks that have been changed since a predetermined back up time and generating changed block signals in response thereto; chunk transmission logic means responsive to the subfile incremental logic means for sending only changed blocks to the data center in chunks having a predetermined size; synchronizing logic means responsive to the changed block signals for synchronizing the subfile incremental logic means; logic means for generating a listing of the blocks of the files stored at the data center and, associated with each block the first two characters of the block, and a digital signature of the block, wherein the subfile incremental logic means uses the listing to undertake the determining function and the synchronizing logic means uses the listing to undertake the synchronizing function; logic means for periodically copying remote versions at the data center onto a portable data storage medium; and logic means for restoring local files by copying remote versions from the portable data storage medium when the remote versions stored on the portable data storage medium are at least as current as the remote versions stored at the data center, and otherwise restoring local files by copying remote versions from the data center.
-
-
10. A computer-implemented for backing up at least one local computer file from at least one user computer in a computer network, comprising:
-
(a) transmitting the local file to a data center remote from the user computer to render a remote version, the data center being accessible via the computer network; (b) for each of the blocks in the local file, copying two respective characters thereof defining respective first comparison values and generating respective digital signature codes defining second comparison values; (c) for each block, periodically determining a test digital signature code and comparing it to the respective second comparison value; and (d) designating a block of the local file as a transmission block to be transmitted to the data center to thereby update the remote version when the test digital signature code of the block does not equal the second comparison value of the block. - View Dependent Claims (11, 12, 13, 14, 15)
-
Specification