EP1533716A1

Optimizing file replication using binary comparisons

Abstract

Client and server based copies of a file are maintained in synchronicity as changes are made to the file. Data is compared to a previous version known to both the client and server and a highly compressed representation of the differences between the two is generated. These differences, or "diffs", are then transmitted, and may use extensions to the HTTP (HyperText Transport Protocol) protocol.

EP1533716A1, drawing sheet 1
Sheet 1 of 7

Term

Term ended

Projected expiry passed 13 October 2024, 1.9 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

40 claims: 4 independent, 36 dependent

  1. 1
    A method of maintaining an updated file, comprising:storing a first copy and a second copy of a base file at a first device;receiving changes to the first copy at the first device;determining a first difference between the changed first copy and the second copy;transmitting the first difference to a server;andaccepting the first difference at the server if the base file at the server is the same as the base file that was stored at the first device, otherwise rejecting the first difference at the server.
  2. 15
    A computer-readable medium having stored thereon computer-executable instructions for performing a method of maintaining an updated file, comprising:storing a first copy and a second copy of a base file at a first device;receiving changes to the first copy at the first device;determining a first difference between the changed first copy and the second copy;transmitting the first difference to a server;andaccepting the first difference at the server if the base file at the server is the same as the base file that was stored at the first device, otherwise rejecting the first difference at the server.
  3. 29
    A system for use in a file synchronization system, comprising:a storage device for storing a first copy and a second copy of a base file;an input device for receiving changes to the first copy of the base file;anda processor for changing the first copy based on the received changes, and determining a difference between the changed first copy and the second copy.
  4. 35
    A system for use in a file synchronization system, comprising:a storage device for storing a base file;an input device for receiving a difference from a client device;anda processor for determining if the difference is applicable to the stored base file, and if so, applying the difference to the base file, otherwise indicating to the client device that the difference is rejected.