Fountain code
In coding theory, fountain codes (also known as rateless erasure codes) are a class of erasure codes with the property that a potentially limitless sequence of encoding symbols can be generated from a given set of source symbols such that the original source symbols can ideally be recovered from any subset of the encoding symbols of size equal to or only slightly larger than the number of source symbols. The term fountain or rateless refers to the fact that these codes do not exhibit a fixed code rate.
A fountain code is optimal if the original k source symbols can be recovered from any k encoding symbols. Fountain codes are known that have efficient encoding and decoding algorithms and that allow the recovery of the original k source symbols from any k’ of the encoding symbols with high probability, where k’ is just slightly larger than k.
LT codes were the first practical realization of fountain codes. Raptor codes and Online codes were subsequently introduced, and achieve linear time encoding and decoding complexity through a pre-coding stage of the input symbols.
Fountain codes in standards
Raptor codes are the most efficient fountain codes at this time,[1] having very efficient linear time encoding and decoding algorithms, and requiring only a small constant number of XOR operations per generated symbol for both encoding and decoding.[2] IETF RFC 5053 specifies in detail a systematic Raptor code, which has been adopted into multiple standards beyond the IETF, such as within the 3GPP MBMS standard for broadcast file delivery and streaming services, the DVB-H IPDC standard for delivering IP services over DVB networks, and DVB-IPTV for delivering commercial TV services over an IP network. This code can be used with up to 8,192 source symbols in a source block, and a total of up to 65,536 encoded symbols generated for a source block. This code has an average relative reception overhead of 0.2% when applied to source blocks with 1,000 source symbols, and has a relative reception overhead of less than 2% with probability 99.9999%.[3] The relative reception overhead is defined as the extra encoding data required beyond the length of the source data to recover the original source data, measured as a percentage of the size of the source data. For example, if the relative reception overhead is 0.2%, then this means that source data of size 1 Megabyte can be recovered from 1.002 Megabytes of encoding data.
A more advanced Raptor code with greater flexibility and improved reception overhead, called RaptorQ, has been introduced into the IETF.[4] This code can be used with up to 56,403 source symbols in a source block, and a total of up to 16,777,216 encoded symbols generated for a source block. This code is able to recover a source block from any set of encoded symbols equal to the number of source symbols in the source block with high probability, and in rare cases from slightly more than the number of source symbols in the source block.
See also
- Raptor codes
- LT codes
- Online codes
- Tornado codes, the precursor to Fountain codes
Notes
- ^ "Qualcomm Raptor Technology - Forward Error Correction".
- ^ (Shokrollahi 2006)
- ^ T. Stockhammer, A. Shokrollahi, M. Watson, M. Luby, T. Gasiba (March 2008). Furht, B.; Ahson, S. (eds.). "Application Layer Forward Error Correction for Mobile Multimedia Broadcasting". Handbook of Mobile Broadcasting: DVB-H, DMB, ISDB-T and Media FLO. CRC Press.
{{cite journal}}
: CS1 maint: multiple names: authors list (link) - ^ (Luby et al. 2010)
References
- M. Luby (2002). "LT Codes". Proceedings of the IEEE Symposium on the Foundations of Computer Science: 271–280.
- A. Shokrollahi (2006), "Raptor Codes" (PDF), Transactions on Information Theory, 52 (6), IEEE: 2551–2567.
- P. Maymounkov (November 2002). "Online Codes" (PDF). (Technical Report).
- David J. C. MacKay (2003). Information Theory, Inference, and Learning Algorithms. Cambridge University Press. ISBN 0-521-64298-1.
- M. Luby, A. Shokrollahi, M. Watson, T. Stockhammer (October 2007), "Raptor Forward Error Correction Scheme for Object Delivery", RFC 5053, IETF
{{citation}}
: CS1 maint: multiple names: authors list (link). - M. Luby, A. Shokrollahi, M. Watson, T. Stockhammer, L. Minder (May 2011), RaptorQ Forward Error Correction Scheme for Object Delivery, IETF
{{citation}}
: CS1 maint: multiple names: authors list (link).