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:40, 12 November 2002 (describe the algo). 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 source 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 destination file; any that match a source chunk checksum are computed the cryptographic hash. All chunks of the source file which don't match anything in the destination are transferred, and the file is reassembled.

See also: