{
  "slug": "delta-synchronization",
  "term": "Delta synchronization",
  "aliases": [
    "delta sync",
    "delta transfer"
  ],
  "definition": "Delta synchronization updates a receiver's data by transferring a representation of changes that can reuse data already available to the receiver.",
  "note": "Rsync illustrates an asymmetric design: the receiver describes blocks of its basis file, while the sender searches its new file for reusable content and emits references plus literals. Fixed-length basis blocks do not restrict the sender to aligned offsets. [algorithm]\n\nMeasured example: in the forced-delta subset of 36 controlled local rsync 3.2.7 transfers, a one-byte prefix insertion required one literal byte and reused 262144 bytes with either 512-byte or 4096-byte blocks. An interior insertion broke one block. Smaller blocks reduced literals but increased the reported two-direction protocol sum in that fixture. These are synthetic observations, not throughput estimates. [study]\n\nA delta is meaningful relative to its basis. Reduced literal payload does not establish fewer disk reads, lower CPU cost, durable media writes or a restorable application. Local-path rsync normally selects whole-file mode; file selection and delta transfer are separate choices. [manual]",
  "related": [
    "rolling-hash",
    "content-defined-chunking",
    "deduplication",
    "backup-verification"
  ],
  "citations": [
    {
      "id": "algorithm",
      "title": "Tridgell and Mackerras. The rsync algorithm. ANU TR-CS-96-05, June 1996 (HTML algorithm section).",
      "url": "https://rsync.samba.org/tech_report/node2.html",
      "accessed": "2026-10-20"
    },
    {
      "id": "manual",
      "title": "Rsync 3.2.7 manual: whole-file, block-size, ignore-times, checksum-choice and statistics.",
      "url": "https://github.com/RsyncProject/rsync/blob/v3.2.7/rsync.1.md",
      "accessed": "2026-10-20"
    },
    {
      "id": "study",
      "title": "Hesela: rsync shifted-block experiment and reproduction bundle.",
      "url": "https://hesela.com/analyses/rsync-delta-shifted-blocks/",
      "accessed": "2026-10-20"
    }
  ],
  "status": "shipping",
  "advantages": [],
  "limitations": [],
  "supersedes": [],
  "supersededBy": [],
  "firstSeen": null,
  "lastSeen": null,
  "updated": "2026-10-20"
}
