Suppose these:

  1. Everyone in the world (or at least my audiences) has downloaded the file ubuntu-16.04.3-desktop-amd64.iso with md5sum of 0d9fe8e1ea408a5895cbbe3431989295 which is approximately 1.5GB in size
  2. I distribute virtual machine appliances based on that version of Ubuntu in Open Virtualization Format (OVF).
  3. My Virtual Appliance consists of many packages of the Ubuntu ISO image in installed (extracted) format and a few megabytes of configurations and applications I have added. When I export it to OVF, it gives an 8GB file

Now this is the question: Is there a software I can use that performs remote-differential-compression (or performs BLOB-Seeded-Compression in my own terms)?

NOTE: This compression software is supposed to know that me and my audiences share a common large iso image containing compressed versions of most content that I publish (their extracted versions) in OVF. The software should output a file in a few megabytes that I can deliver to customers. When they want to extract the content it asks for a file with 0d9fe8e1ea408a5895cbbe3431989295 checksum and creates the 8GB ovf file.

  • Does zsync do what you want? – Nathaniel M. Beaver Oct 28 '17 at 19:14
  • Well, it appears conceptually close, I should give it a try. [to @steve-barnes:]: I seek some generic approach like this one, In fact VM deployment is just one rationale or use-case that I described. – F.I.V Oct 29 '17 at 18:55

Rather than differential compression I would suggest taking a look at tools such as Vagrant Up where you can distribute a recipe, components and settings as plain text files and links to the components.

I think that you will find this a lot more efficient as the large downloads get reused and you can target various VMs, etc.

Your Answer

