An encoder encodes each of a plurality of data fragments into an encoded
packet comprising a plurality of codewords, each codeword comprising a
set of data bytes from the data fragment and at least one
error-correction byte derived from the set of data bytes. A plurality of
cross-interleavers each receive as input one of the plurality of
codewords of the encoded packet, after which a concatenator concatenates
a plurality of interleaved codewords output by the plurality of
cross-interleavers into an interleaved packet to be sent over a network.