Mathknow pp 59-89 | Cite as

Theory and applications of Raptor codes

  • Amin Shokrollahi
Part of the MS&A book series (MS&A, volume 3)


Digital media have become an integral part of modern lives. Whether surfing the web, making a wireless phone call, watching satellite TV, or listening to digital music, a large part of our professional and leisure time is filled with all things digital. The replacement of analog media by their digital counterparts and the explosion of Internet use has had a perhaps un-intended consequence. Whereas analog media were previously replaced by digital media mostly only to preserve quality, the existence of high speed computer networks makes digital media available to potentially anyone, anywhere, and at any time. This possibility is the basis for modern scientific and economic developments centered around the distribution of digital data to a worldwide audience. The success of web sites like Apple’s i Tunes store or You Tube is rooted in the marriage of digital data and the Internet. Reliable transport of digital media to heterogeneous clients becomes thus a central and at time critical issue. Receivers can be anywhere and they may be connected to networks with widely differing fidelities. In this paper we will give a soft introduction into a new method for solving the data distribution problem. We take four fundamental data transmission problems as examples: delivery of data from one sender to one receiver over a long distance, delivery of data from one sender to multiple receivers, delivery of the same data from multiple senders to one receiver, and finally, delivery of data from many senders to many receivers. Examples of such data transmission scenarios are abundant: the first one is encountered whenever a large piece of data is downloaded from a distant location; satellite data distribution, or distribution of data to mobile receivers is a prime example of the second scenario. The application space for the third example is emerging, and includes scenarios like disaster recovery: data is replicated across multiple servers and accessed simultaneously from these servers. A prime example for the fourth scenario is the popular peer-to-peer data distribution. We argue that current data transmission protocols are not adequate to solve these data distribution problems, and hence lack the ability to solve some of today’s and many of tomorrow’s data delivery problems. This is because these transmission protocols were designed at a time when the Internet was still in its infancy, and the problem of bulk data distribution was not high on the agenda. We then introduce fountain codes and show how they can be used to solve all of these data transmission problems at the same time. For a given piece of content, a fountain code produces a potentially limitless stream of data such that any subset of this data of size essentially equal to the original content is sufficient to recover the original data. Just like the case of filling a glass of water under a fountain where it does not matter which particular drops fill the glass, with a fountain code it does not matter which particular pieces of output data are received, as long as their cumulative size is right. We introduce a very simple, but inefficient, fountain code and refine it to LT-codes, the first class of efficient fountain codes, and then to Raptor codes, the state-of-the-art in this field. We discuss tools that allow us to design these fountains, and analyze their performance. We also briefly discuss Raptor codes that are standardized for various data transmission scenarios.


Error Probability Degree Distribution Transmission Control Protocol Output Node User Datagram Protocol 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    3GPP TS 26.346 V6.1.0: Technical Specification Group Services and System Aspects; Multimedia Broadcast/Multicast Service; Protocols and Codecs, June (2005)Google Scholar
  2. 2.
    DARPA Internet Program: Internet protocol, Internet Engineering Task Force, RFC 791 [Online] (1981) Available: Scholar
  3. 3.
    DARPA Internet Program: Transmission control protocol. Internet Engineering Task Force, RFC 793 [Online] (1981) Available: Scholar
  4. 4.
    Etesami, O. Shokrollahi, A.: Raptor codes on binary memoryless symmetric channels. IEEE Trans. Inform. Theory 52(5); 2033–2051 (2006)CrossRefMathSciNetGoogle Scholar
  5. 5.
    ETSI TS 102 472 v1.2.1, IP Datacast over DVB-H: Content Delivery Protocols, technical Specification [Online] (2006). Available: http://www.dvb-h.orgGoogle Scholar
  6. 6.
    Gallager, R.G.: Low Density Parity-Check Codes, MIT Press, Cambridge, MA (1963)Google Scholar
  7. 7.
    Karp, R., Luby, M., Shokrollahi, A.: Finite length analysis of LT-codes. In: Proc. ISIT, p. 39 (2004)Google Scholar
  8. 8.
    Lamacchia, B.A., Odlyzko, A.M.: Solving large sparse linear systems over finite fields. In: Proc. CRYPTO’90, pp. 109–133. Springer (1991).Google Scholar
  9. 9.
    Luby, M.: LT-codes. In: Proceedings of the 43rd Annual IEEE Symposium on the Foundations of Computer Science (FOCS), pp. 271–280 (2002)Google Scholar
  10. 10.
    Luby, M., Goyal, V.: Wave and equation based rate control, Internet Engineering Task Force, RFC 3738. [Online] (2004) Available: Scholar
  11. 11.
    Luby, M., Goyal, V., Skaria, S., Horn, G.: Wave and equation based rate control. In: Proc. SIGCOMM, pp. 191–204 (2002)Google Scholar
  12. 12.
    Luby, M., Mitzenmacher, M., Shokrollahi, A.: Analysis of random processes via and-or tree evaluation. Proceedings of the 9th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 364–373 (1998)Google Scholar
  13. 13.
    Luby, M., Mitzenmacher, M., Shokrollahi, A., Spielman, D.: Efficient erasure correcting codes. IEEE Trans. Inform. Theory 47, 569–584 (2001)MATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Luby, M., Mitzenmacher, M., Shokrollahi, A., Spielman, D.: Improved low-density parity-check codes using irregular graphs. IEEE Trans. Inform. Theory 47, 585–598 (2001)MATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Luby, M., Mitzenmacher, M., Shokrollahi, A, Spielman, D., Stermann, V.: Practical loss-resilient codes. In: Proceedings of the 29th annual ACM Symposium on Theory of Computing, pp. 150–159 (1997)Google Scholar
  16. 16.
    Luby, M., Shokrollahi, A., Watson, M., Stockhammer, T.: Raptor Forward Error Correction Scheme for Object Delivery. Internet Engineering Task Force, RFC 5053 [Online] (2007) Available: Scholar
  17. 17.
    Maatouk, G., Shokrollahi, A.: Analysis of higher moments of the LT-decoding process. (2008, in preparation)Google Scholar
  18. 18.
    Méasson, C., Montanari, A., Urbanke, R.: Maxwell’s construction: The hidden bridge between maximum-likelihood and iterative decoding. In: Proc. IEEE Int. Symposium on Inform. Theory, p. 225 (2004Google Scholar
  19. 19.
    Pakzad, P., Shokrollahi, A.: Design principles for raptor codes. In: Information Theory Workshop, pp. 165–169 (2006)Google Scholar
  20. 20.
    Pomerance, C., Smith, J.W.: Reduction of huge, sparse matrices over finite fields via created catastrophes. Experimental Math 1, 89–94 (1992)MATHMathSciNetGoogle Scholar
  21. 21.
    Postel, J.: User datagram protocol, Internet Engineering Task Force, RFC 768 [Online] (1980) Available: Scholar
  22. 22.
    Richardson, T., Urbanke, R.: Efficient encoding of low-density parity-check codes. IEEE Trans. Inform. Theory 47, 638–656 (2001)MATHCrossRefMathSciNetGoogle Scholar
  23. 23.
    Shokrollahi, A.: Raptor codes. IEEE Trans. Inform. Theory 52(6), 2551–2567 (2006)CrossRefMathSciNetGoogle Scholar
  24. 24.
    Shokrollahi, A., Lassen, S., Karp, R.: Systems and processes for decoding chain reaction codes through inactivation. U.S. Patent 6,856,263, 2005, issued Feb 15, 2005; filed June 10, 2003Google Scholar
  25. 25.
    Shokrollahi, A., Lassen, S., Luby, M.: Multi-stage code generator and decoder for communication systems. U.S. Patent 7 068 729, 2006, issued June 27, 2006; filed Dec 21, 2001Google Scholar
  26. 26.
    Shokrollahi, A., Luby, M.: Systematic Encoding and Decoding of Chain Reaction Codes. U.S. Patent 6 909 383, June 21, 2005Google Scholar
  27. 27.
    Stockhammer, T., Shokrollahi, A., Watson, M., Luby, M., Gasiba, T.: Application Layer Forward Error Correction for Mobile Multimedia Broadcasting. In: Handbook of Mobile Broadcasting: DVB-H, DMB, ISDB-T and Media FLO, pp. 239–280. CRC Press, Boca Raton, FL (2008)Google Scholar
  28. 28.
    Zyablov, V.V., Pinsker, M.S.: Decoding complexity of low-density codes for transmission in a channel with erasures. Probl. Inform. Transm. 10 (1974)Google Scholar

Copyright information

© Springer-Verlag Italia, Milan 2009

Authors and Affiliations

  • Amin Shokrollahi
    • 1
  1. 1.Ecole Polytechnique Fédérale de LausanneLausanneSwitzerland

Personalised recommendations