Jump to content

Rsync algorithm

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by PierreAbbat (talk | contribs) at 12:45, 12 November 2002 (source and destination mixed up). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Rsync algorithm - an algorithm that rsync file transfer protocol and utility use.

The destination file is split into chunks, each of which is computed two checksums: a cryptographic hash and a rolling checksum. The rolling checksum has the property that if bytes n and n+k are known, the checksum of bytes n+1 to n+k can be computed from the checksum of bytes n to n+k-1 without knowing the intermediate bytes. The rolling checksum is computed for all chunk-sized contiguous blocks of the source file; any that match a destination chunk checksum are computed the cryptographic hash. All parts of the source file which don't match any chunk in the destination are transferred, and the file is reassembled.

See also: