Module coding

Module coding 

Source
Expand description

Erasure coding layer — Random Linear Network Coding (RLNC) over GF(2⁸).

§Why RLNC

RLNC has a property that standard Reed-Solomon and RaptorQ lack: a node can recode — produce a new valid encoded fragment by recombining the fragments it already holds, without ever reconstructing the original data. This is the key requirement for BillPouch’s distributed fragment replication.

§Sub-modules

  • gf256 — arithmetic in GF(2⁸) (add, mul, div, inv).
  • rlnc — encode, recode and decode operations on byte chunks.

Re-exports§

pub use params::compute_coding_params;
pub use params::effective_recovery_probability;
pub use params::NetworkCodingParams;
pub use rlnc::decode;
pub use rlnc::encode;
pub use rlnc::recode;
pub use rlnc::EncodedFragment;

Modules§

gf256
Arithmetic in GF(2⁸) — the Galois field with 256 elements.
params
Network-aware coding parameters — adaptive k computation.
rlnc
Random Linear Network Coding (RLNC) over GF(2⁸).