24 lines
1.4 KiB
Plaintext
24 lines
1.4 KiB
Plaintext
This package implements an "erasure code", or "forward error correction code".
|
|
|
|
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.
|
|
|
|
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 can be completely recovered. The algorithm in the zfec package has a
|
|
similar effect, but instead of recovering from the loss of only a single
|
|
element, it can be parameterized to choose in advance the number of elements
|
|
whose loss it can tolerate.
|
|
|
|
This package is largely based on the old "fec" library by Luigi Rizzo et al.,
|
|
which is a mature and optimized implementation of erasure coding. The zfec
|
|
package makes several changes from the original "fec" package, including
|
|
addition of the Python API, refactoring of the C API to support zero-copy
|
|
operation, a few clean-ups and optimizations of the core code itself, and the
|
|
addition of a command-line tool named "zfec".
|