Erasure Correcting Codes

Slides:



Advertisements
Similar presentations
A Digital Fountain Approach to Reliable Distribution of Bulk Data
Advertisements

Jesper H. Sørensen, Toshiaki Koike-Akino, and Philip Orlik 2012 IEEE International Symposium on Information Theory Proceedings Rateless Feedback Codes.
LT Codes Paper by Michael Luby FOCS ‘02 Presented by Ashish Sabharwal Feb 26, 2003 CSE 590vg.
Digital Fountains: Applications and Related Issues Michael Mitzenmacher.
Company LOGO F OUNTAIN C ODES, LT C ODES AND R APTOR C ODES Susmita Adhikari Eduard Mustafin Gökhan Gül.
Performance analysis of LT codes with different degree distribution
An Easy-to-Decode Network Coding Scheme for Wireless Broadcasting
Digital Fountain Codes V. S
José Vieira Information Theory 2010 Information Theory MAP-Tele José Vieira IEETA Departamento de Electrónica, Telecomunicações e Informática Universidade.
(speaker) Fedor Groshev Vladimir Potapov Victor Zyablov IITP RAS, Moscow.
Jump to first page A. Patwardhan, CSE Digital Fountains Main Ideas : n Distribution of bulk data n Reliable multicast, broadcast n Ideal digital.
Information Theory EE322 Al-Sanie.
D.J.C MacKay IEE Proceedings Communications, Vol. 152, No. 6, December 2005.
LT-AF Codes: LT Codes with Alternating Feedback Ali Talari and Nazanin Rahnavard Oklahoma State University IEEE ISIT (International Symposium on Information.
Data Persistence in Sensor Networks: Towards Optimal Encoding for Data Recovery in Partial Network Failures Abhinav Kamra, Jon Feldman, Vishal Misra and.
1 Data Persistence in Large-scale Sensor Networks with Decentralized Fountain Codes Yunfeng Lin, Ben Liang, Baochun Li INFOCOM 2007.
Threshold Phenomena and Fountain Codes
Fountain Codes Amin Shokrollahi EPFL and Digital Fountain, Inc.
Sliding-Window Digital Fountain Codes for Streaming of Multimedia Contents Matta C.O. Bogino, Pasquale Cataldi, Marco Grangetto, Enrico Magli, Gabriella.
1 NETWORK CODING Anthony Ephremides University of Maryland - A NEW PARADIGM FOR NETWORKING - February 29, 2008 University of Minnesota.
Code and Decoder Design of LDPC Codes for Gbps Systems Jeremy Thorpe Presented to: Microsoft Research
RAPTOR CODES AMIN SHOKROLLAHI DF Digital Fountain Technical Report.
DNA Research Group 1 Growth Codes: Maximizing Sensor Network Data Persistence Vishal Misra Joint work with Abhinav Kamra, Jon Feldman (Google) and Dan.
1 Verification Codes Michael Luby, Digital Fountain, Inc. Michael Mitzenmacher Harvard University and Digital Fountain, Inc.
Digital Fountain with Tornado Codes and LT Codes K. C. Yang.
Accessing Multiple Mirror Sites in Parallel: Using Tornado Codes to Speed Up Downloads John Byers, Boston University Michael Luby, Digital Fountain, Inc.
Digital Fountains, and Their Application to Informed Content Delivery over Adaptive Overlay Networks Michael Mitzenmacher Harvard University.
Analysis of Iterative Decoding
©2003/04 Alessandro Bogliolo Background Information theory Probability theory Algorithms.
Repairable Fountain Codes Megasthenis Asteris, Alexandros G. Dimakis IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 32, NO. 5, MAY /5/221.
Channel Coding Part 1: Block Coding
Networks lab, RPI1 Recent Advances in Error/Erasure Correcting and Coding Vijay Subramanian.
Great Theoretical Ideas in Computer Science.
Shifted Codes Sachin Agarwal Deutsch Telekom A.G., Laboratories Ernst-Reuter-Platz Berlin Germany Joint work with Andrew Hagedorn and Ari Trachtenberg.
An Optimal Partial Decoding Algorithm for Rateless Codes Valerio Bioglio, Rossano Gaeta, Marco Grangetto, and Matteo Sereno Dipartimento di Informatica.
X1X1 X2X2 Encoding : Bits are transmitting over 2 different independent channels.  Rn bits Correlation channel  (1-R)n bits Wireless channel Code Design:
User Cooperation via Rateless Coding Mahyar Shirvanimoghaddam, Yonghui Li, and Branka Vucetic The University of Sydney, Australia IEEE GLOBECOM 2012 &
Error Coding Transmission process may introduce errors into a message.  Single bit errors versus burst errors Detection:  Requires a convention that.
Threshold Phenomena and Fountain Codes Amin Shokrollahi EPFL Joint work with M. Luby, R. Karp, O. Etesami.
1 Network Coding and its Applications in Communication Networks Alex Sprintson Computer Engineering Group Department of Electrical and Computer Engineering.
Kai-Chao Yang VCLAB, NTHU 1.  Unequal Error Protection Rateless Codes for Scalable Information Delivery in Mobile Networks (INFOCOM 2007)  Rateless.
Growth Codes: Maximizing Sensor Network Data Persistence abhinav Kamra, Vishal Misra, Jon Feldman, Dan Rubenstein Columbia University, Google Inc. (SIGSOMM’06)
CprE 545 project proposal Long.  Introduction  Random linear code  LT-code  Application  Future work.
Andrew Liau, Shahram Yousefi, Senior Member, IEEE, and Il-Min Kim Senior Member, IEEE Binary Soliton-Like Rateless Coding for the Y-Network IEEE TRANSACTIONS.
Stochastic Networks Conference, June 19-24, Connections between network coding and stochastic network theory Bruce Hajek Abstract: Randomly generated.
Great Theoretical Ideas in Computer Science.
15-853:Algorithms in the Real World
Layer-aligned Multi-priority Rateless Codes for Layered Video Streaming IEEE Transactions on Circuits and Systems for Video Technology, 2014 Hsu-Feng Hsiao.
UEP LT Codes with Intermediate Feedback Jesper H. Sørensen, Petar Popovski, and Jan Østergaard Aalborg University, Denmark IEEE COMMUNICATIONS LETTERS,
1 Raptor codes for reliable multicast object delivery Michael Luby Digital Fountain.
Information Theory Linear Block Codes Jalal Al Roumy.
Multi-Edge Framework for Unequal Error Protecting LT Codes H. V. Beltr˜ao Neto, W. Henkel, V. C. da Rocha Jr. Jacobs University Bremen, Germany IEEE ITW(Information.
Computer Science Division
Nour KADI, Khaldoun Al AGHA 21 st Annual IEEE International Symposium on Personal, Indoor and Mobile Radio Communications 1.
Reliable Multi-hop Firmware Upload Protocol for mica2 motes. CSE 534 Advanced Networks Dmitri Lusnikov Fall 2004.
Distributed Rateless Codes with UEP Property Ali Talari, Nazanin Rahnavard 2010 IEEE ISIT(International Symposium on Information Theory) & IEEE TRANSACTIONS.
Raptor Codes Amin Shokrollahi EPFL. BEC(p 1 ) BEC(p 2 ) BEC(p 3 ) BEC(p 4 ) BEC(p 5 ) BEC(p 6 ) Communication on Multiple Unknown Channels.
OPTIMIZATION of GENERALIZED LT CODES for PROGRESSIVE IMAGE TRANSFER Suayb S. Arslan, Pamela C. Cosman and Laurence B. Milstein Department of Electrical.
Hongjie Zhu,Chao Zhang,Jianhua Lu Designing of Fountain Codes with Short Code-Length International Workshop on Signal Design and Its Applications in Communications,
Error-Correcting Code
INRIA Rhône-Alpes - Planète project 1 Design and evaluation of a Low Density Generator Matrix (LDGM) large block FEC codec Vincent Roca, Zainab Khallouf,
Error Detecting and Error Correcting Codes
Simulation of Finite Geometry LDPC code on the Packet Erasure channel Wu Yuchun July 2007 Huawei Hisi Company Ltd.
Practical Session 10 Computer Architecture and Assembly Language.
1 Implementation and performance evaluation of LT and Raptor codes for multimedia applications Pasquale Cataldi, Miquel Pedros Shatarski, Marco Grangetto,
Class Report 林格名 : Reed Solomon Encoder. Reed-Solomom Error Correction When a codeword is decoded, there are three possible outcomes –If 2s + r < 2t (s.
RS – Reed Solomon Error correcting code. Error-correcting codes are clever ways of representing data so that one can recover the original information.
Coding for Multipath TCP: Opportunities and Challenges Øyvind Ytrehus University of Bergen and Simula Res. Lab. NNUW-2, August 29, 2014.
An improved LT encoding scheme with extended chain lengths
CRBcast: A Collaborative Rateless Scheme for Reliable and Energy-Efficient Broadcasting in Wireless Sensor/Actuator Networks Nazanin Rahnavard, Badri N.
Presentation transcript:

Erasure Correcting Codes In The Real World Udi Wieder Incorporates presentations made by Michael Luby and Michael Mitzenmacher.

Based On.. Practical Loss-Resilient Codes Michael Luby, Amin Shokrollahi, Dan Spielman, Bolker Stemann STOC ’97 Analysis of Random Processes Using And-Or Tree Evolution Michael Luby, Amin Shokrollahi SODA ’98 LT Codes Michael Luby STOC 2002 Online Codes Petar Maymounkov

Probabilistic Channels p p ? p p 1 1 1 1 1-p 1-p The binary erasure channel The binary symmetric channel

Erasure Codes Content Encoding Encoding Transmission Received Decoding cn Encoding Transmission ≥n Received Decoding n Content

Performance Measures Time Overhead Reception Efficiency The time to encode and decode expressed as a multiple of the encoding length. Reception Efficiency Ratio of packets in message to packets needed to decode. Optimal is 1.

Known Codes Random Linear Codes (Elias) Reed-Solomon Codes A linear code of minimum distance d is capable of correcting any pattern of d-1 or less erasures. Achieves capacity of the channel with high probability, i.e. can be used to transmit over erasure channel at any rate R<1-p. Decoding time O(n3). Unacceptable. Reed-Solomon Codes Optimal reception efficiency with probability 1. Decoding and Encoding in Quadratic time. (About one minute to encode 1MB).

Tornado Codes Practical Loss-Resilient Codes Michael Luby, Amin Shokrollahi, Dan Spielman, Bolker Stemann (1997) Analysis of Random Processes Using And-Or Tree Evolution Michael Luby, Amin Shokrollahi (1998)

Low Density Parity Check Codes Introduced in the early 60’s by Gallager and were reinvented many times. Check bits Message bits a b c d e f g h i j k l The time to encode is proportional to the number of edges.

Encoding Process. Bipartite Graph Bipartite Graph Standard Loss-Resilient Code. Bipartite Graph Bipartite Graph Length of message: k Check bits: Rate: 1-

Decoding Rule Given the value of a check bit and all but one of the message bits on which it depends, set the missing message bit to be the XOR of the check bit and its known message bits. XOR the message bit with all its neighbors. Delete from the graph the message bit and all edges to which it belongs. Decoding ends (successfully) when all edges are deleted.

Decoding Process a ? c d ? f ? ?

Decoding Process ? ? ? ?

Regular Graphs Random Permutation of the Edges Degree 3 Degree 6

3-6 Regular Graph Analysis left right left Pr[ not recovered] =  ¢ (1-(1-x)5)2 Pr[ all recovered] = (1-x)5 x = Pr[ not recovered ]

Decoding to Completion (sketch) Most message bits are roots of trees. Concentration results (edge exposure martingale) proves that all but a small fraction of message bits are decoded with high probability. The remaining bits are decoded do to expansion. (Original graph is a good expander on small sets). If a set of size s and average degree a has more than as/2 neighbors then a unique neighbor exists and decoding continues.

Efficiency Encoding time (sec), 1k packets size Reed-Solomon Tornado 4.6 0.06 500k 19 0.12 1 MB 93 0.26 2 MB 442 0.53 4 MB 1717 1.06 9 MB 6994 2.13 16 MB 30802 4.33 Decoding time (sec), 1k packets size Reed-Solomon Tornado 250k 2.06 0.06 500k 8.4 0.09 1 MB 40.5 0.14 2 MB 199 0.19 4 MB 800 0.40 9 MB 3166 0.87 16 MB 13829 1.75 Rate = 0.5 Erasure probability = 0.5 Implementation = ?

LT Codes LT Codes Michael Luby (2002)

‘Rateless’ Codes A different model of transmition. Sender sends an infinite sequence of encoding symbols. Time complexity: Average time for encoding a symbol. Erasures are independent of content. Receiver may decode when received enough symbols. Reception efficiency. ‘Digital Fountain’ approach.

Applications Unreliable Channels. Multi-source download. In Tornado codes small rate implies big graphs and therefore a lot of memory (proportional to the size of the encoding). Multi-source download. Downloading from different servers requires no coordination. Efficient exchange of data between users requires small rate of the source. Multi-cast without feedback (say over the internet). Rateless codes are the natural notion.

Trivial Examples - Repetition Each time unit send a random symbol of the code. Advantage: Encoding complexity O(1). Disadvantage: Need k’ = k ln(k/) code symbols to cover all k content symbols with failure probability at most . Example: k = 100,000,  =10-6 Reception overhead = 2400% (terrible)

Trivial Examples – Reed Solomon Each time unit send an evaluation of the polynomial on a random point. Advantage: Decoding possible when k symbols received. Disadvantage: Large time complexity for encoding and decoding.

Parameters of LT Codes Encoding time complexity O(ln n) per symbol. Decoding time complexity O(n ln n). Reception efficiency: Asymptotically zero (unlike Tornado codes). Failure probability: very small (smaller than Tornado).

LT encoding Content Degree Dist. Choose 2 random content symbols Choose degree XOR content symbols 2 Insert header, and send Degree Prob 1 0.055 0.0004 0.3 2 0.1 3 0.08 4 100000 Degree Dist.

LT encoding Content Degree Dist. Choose 1 random content symbol Choose degree Copy content symbol 1 Insert header, and send Degree Prob 1 0.055 0.0004 0.3 2 0.1 3 0.08 4 100000 Degree Dist.

LT encoding Content Degree Dist. Choose 4 random content symbols Choose degree XOR content symbols 4 Insert header, and send Degree Prob 1 0.055 0.0004 0.3 2 0.1 3 0.08 4 100000 Degree Dist.

LT encoding properties Encoding symbols generated independently of each other Any number of encoding symbols can be generated on the fly Reception overhead independent of loss patterns The success of the decoding process depends only on the degree distribution of received encoding symbols. The degree distribution on received encoding symbols is the same as the degree distribution on generated encoding symbols.

LT decoding Content (unknown) Collect enough encoding symbols and set up graph between encoding symbols and content symbols to be recovered Collect enough encoding symbols and set up graph between encoding symbols and content symbols to be recovered Identify encoding symbol of degree 1. STOP if none exists. Identify encoding symbol of degree 1. STOP if none exists. 3. Copy value of encoding symbol into unique neighbor, XOR value of newly recovered content symbol into encoding symbol neighbors and delete edges emanating from content symbol. 3. Copy value of encoding symbol into unique neighbor, XOR value of newly recovered content symbol into encoding symbol neighbors and delete edges emanating from content symbol. 4. Go to Step 2. 4. Go to Step 2.

Releasing an encoding symbol xth recovered content symbol releases encoding symbol x-1 recovered content symbols x-1 x k-x unrecovered content symbols content symbol can be recovered by encoding symbol i-2 encoding symbol of degree i

The Ripple Definition: At each decoding step, the ripple is the set of encoding symbols that have been released at any previous decoding step but their one remaining content symbol has not yet been recovered. x recovered content symbols x k-x unrecovered content symbols collision encoding symbols in the ripple

Successful Decoding Decoding succeeds iff the ripple never becomes empty Ripple small Small chance of encoding symbol collisions  small reception overhead Risk of ripple becoming empty due to random fluctuations is large Ripple large Large chance of encoding symbol collisions  large reception overhead Risk of ripple becoming empty due to random fluctuations is small

LT codes idea Control the release of encoding symbols over the entire decoding process so that ripple is never empty but never too large Very few encoding symbol collisions Very little reception overhead

Release probability Definition: Release probability for degree i encoding symbols at decoding step x is q(i,x). Proposition: For i = 1: q(i,x) = 1 for x = 0, q(i,x) = 0 for all x > 1 For i > 1: for x = i -1, …, k-1,

Release probability x-1 x i-2 xth recovered content symbol releases encoding symbol x-1 recovered content symbols x-1 x k-x unrecovered content symbols content symbol can be recovered by encoding symbol i-2 encoding symbol is released at decoding step x

Release distributions for specific degrees k = 1000

Overall release probability Definition: At each decoding step x, r(x) is the overall probability that an encoding symbol is released at decoding step x with respect to specific degree distribution p(·) Proposition:

Uniform release question Question: Is there a degree distribution such that the overall release distribution is uniform over x? Why interesting? One encoding symbol released for each content symbol decoded Ripple will tend to stay small  minimize reception overhead Ripple will tend not to become empty  decoding will succeed

Uniform release answer: YES! Ideal Soliton Distribution:

Ideal Soliton Distribution k = 1000

A simple way to choose from Ideal SD Choose A uniformly from the interval [0,1) If then degree Else degree = 1. Degree 1/k 6 5 4 3 2 Value of A 1/6 1/4 1/3 1/2 1 1/k 1/5

Ideal SD theorem Ideal SD Theorem: The overall release distribution is exactly uniform, i.e., r(x) = 1/k for all x = 0,…,k-1.

Overall release distribution for Ideal SD k = 1000

In expected value … Optimal recovery with respect to Ideal SD Receive exactly k encoding symbols Exactly one encoding symbol released before any decoding steps, recovers one content symbol At each decoding step a content symbol is recovered, it releases exactly one new encoding symbol, which in turn recovers exactly one more content symbol Ripple size always exactly 1 Performance Analysis No reception overhead Average degree

When taking into account random fluctuations … Ideal Soliton Distribution fails miserably Expected behavior not equal to actual behavior because of variance Ripple very likely to become empty Fails with very very high probability (even with high reception overhead)

Robust Soliton Distribution design Need to ensure that the ripple never empties At the beginning of the decoding process ISD: ripple is not large enough to withstand random fluctuations RSD: boost p(1)=c/ sqrt{k} so that expected ripple size at beginning is c *sqrt{k} At the end of the decoding process ISD: expected rate of adding to the ripple not large enough to compensate for collisions towards the end of the decoding process when ripple is large relative to the number of unrecovered content symbols RSD: boost p(i) for higher degrees i so that expected ripple growth at the end of the decoding process is higher

LT Codes – Bottom line Using the Robust Soliton Distribution: Number of symbols needed to recover the data with probability  is: The average degree of an encoding symbol is:

Online Codes Petar Maymounkov We are out of time Online Codes Petar Maymounkov