You may use this package under the GNU General Public License, version 2 or, at
your option, any later version. You may use this package under the Transitive
-Grace Period Public Licence, version 1.0. (You may choose to use this package
-under the terms of either licence, at your option.) See the file COPYING.GPL
-for the terms of the GNU General Public License, version 2. See the file
-COPYING.TGPPL.html for the terms of the Transitive Grace Period Public Licence,
-version 1.0. In addition, Allmydata, Inc. offers other licensing terms. If you
-would like to inquire about a commercial relationship with Allmydata, Inc.,
-please contact partnerships@allmydata.com and visit http://allmydata.com .
+Grace Period Public Licence, version 1.0 or, at your option, any later version.
+(You may choose to use this package under the terms of either licence, at your
+option.) See the file COPYING.GPL for the terms of the GNU General Public
+License, version 2. See the file COPYING.TGPPL.html for the terms of the
+Transitive Grace Period Public Licence, version 1.0. In addition, Allmydata,
+Inc. offers other licensing terms. If you would like to inquire about a
+commercial relationship with Allmydata, Inc., please contact
+partnerships@allmydata.com and visit http://allmydata.com .
The most widely known example of an erasure code is the RAID-5 algorithm which
makes it so that in the event of the loss of any one hard drive, the stored data
The source is currently available via darcs on the web with the command:
-darcs get http://allmydata.org/source/zfec
+darcs get http://allmydata.org/source/zfec/trunk
More information on darcs is available at http://darcs.net
don't need a separate compressor in that case.
- * Performance Measurements
+ * Performance
On my Athlon 64 2.4 GHz workstation (running Linux), the "zfec" command-line
tool encoded a 160 MB file with m=100, k=94 (about 6% redundancy) in 3.9
On my old PowerPC G4 867 MHz Mac laptop, it encoded from a file at about 1.3
million bytes per second.
+Here is a paper analyzing the performance of various erasure codes and their
+implementations, including zfec:
+
+http://www.usenix.org/events/fast09/tech/full_papers/plank/plank.pdf
+
+Zfec shows good performance on different machines and with different values of
+K and M. It also has a nice small memory footprint.
+
* API
excellent tools. Thanks to my coworkers at Allmydata -- http://allmydata.com --
Fabrice Grinda, Peter Secor, Rob Kinninmont, Brian Warner, Zandr Milewski,
Justin Boreta, Mark Meras for sponsoring this work and releasing it under a Free
-Software licence.
+Software licence. Thanks to Jack Lloyd, Samuel Neves, and David-Sarah Hopwood.
Enjoy!
Zooko Wilcox-O'Hearn
-2008-01-20
+2010-05-24
Boulder, Colorado