Erasure Coding for Real-Time Streaming Derek Leong and Tracey Ho California Institute of Technology Pasadena, California, USA ISIT 2012 2012-07-02.

Slides:



Advertisements
Similar presentations
Ulams Game and Universal Communications Using Feedback Ofer Shayevitz June 2006.
Advertisements

Noise, Information Theory, and Entropy (cont.) CS414 – Spring 2007 By Karrie Karahalios, Roger Cheng, Brian Bailey.
Analysis and Construction of Functional Regenerating Codes with Uncoded Repair for Distributed Storage Systems Yuchong Hu, Patrick P. C. Lee, Kenneth.
On error and erasure correction coding for networks and deadlines Tracey Ho Caltech NTU, November 2011.
On error correction for networks and deadlines Tracey Ho Caltech INC, 8/5/12.
Random Number Generation. Random Number Generators Without random numbers, we cannot do Stochastic Simulation Most computer languages have a subroutine,
Bounds on Code Length Theorem: Let l ∗ 1, l ∗ 2,..., l ∗ m be optimal codeword lengths for a source distribution p and a D-ary alphabet, and let L ∗ be.
II. Linear Block Codes. © Tallal Elshabrawy 2 Last Lecture H Matrix and Calculation of d min Error Detection Capability Error Correction Capability Error.
Distributed Storage Allocation Problems Derek Leong, Alexandros G. Dimakis, Tracey Ho California Institute of Technology NetCod
Visual Recognition Tutorial
June 3, 2015Windows Scheduling Problems for Broadcast System 1 Amotz Bar-Noy, and Richard E. Ladner Presented by Qiaosheng Shi.
© 2010 Pearson Prentice Hall. All rights reserved Least Squares Regression Models.
By : L. Pour Mohammad Bagher Author : Vladimir N. Vapnik
1 Cooperative Communications in Networks: Random coding for wireless multicast Brooke Shrader and Anthony Ephremides University of Maryland October, 2008.
Convergent and Correct Message Passing Algorithms Nicholas Ruozzi and Sekhar Tatikonda Yale University TexPoint fonts used in EMF. Read the TexPoint manual.
2015/6/15VLC 2006 PART 1 Introduction on Video Coding StandardsVLC 2006 PART 1 Variable Length Coding  Information entropy  Huffman code vs. arithmetic.
The 1’st annual (?) workshop. 2 Communication under Channel Uncertainty: Oblivious channels Michael Langberg California Institute of Technology.
Introduction Lossless compression of grey-scale images TMW achieves world’s best lossless image compression  3.85 bpp on Lenna Reasons for performance.
MAE 552 – Heuristic Optimization Lecture 26 April 1, 2002 Topic:Branch and Bound.
Redundant Data Update in Server-less Video-on-Demand Systems Presented by Ho Tsz Kin.
Order Sequencing in the Automobile Industry Robert Nickel, Winfried Hochstättler Mathematical Foundations of Computer Science Institute of Mathematics.
Code and Decoder Design of LDPC Codes for Gbps Systems Jeremy Thorpe Presented to: Microsoft Research
Visual Recognition Tutorial
Variable-Length Codes: Huffman Codes
Random coding for wireless multicast Brooke Shrader and Anthony Ephremides University of Maryland Joint work with Randy Cogill, University of Virginia.
2015/7/12VLC 2008 PART 1 Introduction on Video Coding StandardsVLC 2008 PART 1 Variable Length Coding  Information entropy  Huffman code vs. arithmetic.
Bandwidth Allocation in a Self-Managing Multimedia File Server Vijay Sundaram and Prashant Shenoy Department of Computer Science University of Massachusetts.
1 Verification Codes Michael Luby, Digital Fountain, Inc. Michael Mitzenmacher Harvard University and Digital Fountain, Inc.
How to Turn on The Coding in MANETs Chris Ng, Minkyu Kim, Muriel Medard, Wonsik Kim, Una-May O’Reilly, Varun Aggarwal, Chang Wook Ahn, Michelle Effros.
Mario Vodisek 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Erasure Codes for Reading and Writing Mario Vodisek ( joint work.
Low Complexity Algebraic Multicast Network Codes Sidharth “Sid” Jaggi Philip Chou Kamal Jain.
The Role of Specialization in LDPC Codes Jeremy Thorpe Pizza Meeting Talk 2/12/03.
Use of Quantile Functions in Data Analysis. In general, Quantile Functions (sometimes referred to as Inverse Density Functions or Percent Point Functions)
Network Coding vs. Erasure Coding: Reliable Multicast in MANETs Atsushi Fujimura*, Soon Y. Oh, and Mario Gerla *NEC Corporation University of California,
Ch. 8 & 9 – Linear Sorting and Order Statistics What do you trade for speed?
Repairable Fountain Codes Megasthenis Asteris, Alexandros G. Dimakis IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 32, NO. 5, MAY /5/221.
On coding for networks with errors Tracey Ho Caltech BIRS, August 2011.
Copyright © 2013, 2010 and 2007 Pearson Education, Inc. Chapter Inference on the Least-Squares Regression Model and Multiple Regression 14.
Distributed Storage Allocations for Optimal Delay Derek Leong 1, Alexandros G. Dimakis 2, Tracey Ho 1 1 California Institute of Technology 2 University.
SPANISH CRYPTOGRAPHY DAYS (SCD 2011) A Search Algorithm Based on Syndrome Computation to Get Efficient Shortened Cyclic Codes Correcting either Random.
Delay-Throughput Tradeoff with Correlated Mobility in Ad-Hoc Networks Shuochao Yao*, Xinbing Wang*, Xiaohua Tian* ‡, Qian Zhang † *Department of Electronic.
Channel Capacity.
User Cooperation via Rateless Coding Mahyar Shirvanimoghaddam, Yonghui Li, and Branka Vucetic The University of Sydney, Australia IEEE GLOBECOM 2012 &
The Selection Problem. 2 Median and Order Statistics In this section, we will study algorithms for finding the i th smallest element in a set of n elements.
1 Network Coding and its Applications in Communication Networks Alex Sprintson Computer Engineering Group Department of Electrical and Computer Engineering.
COMMUNICATION NETWORK. NOISE CHARACTERISTICS OF A CHANNEL 1.
Cross-Layer Optimization in Wireless Networks under Different Packet Delay Metrics Chris T. K. Ng, Muriel Medard, Asuman Ozdaglar Massachusetts Institute.
Coding and Algorithms for Memories Lecture 5 1.
Communication System A communication system can be represented as in Figure. A message W, drawn from the index set {1, 2,..., M}, results in the signal.
University of Houston Cullen College of Engineering Electrical & Computer Engineering Capacity Scaling in MIMO Wireless System Under Correlated Fading.
Dr. Sudharman K. Jayaweera and Amila Kariyapperuma ECE Department University of New Mexico Ankur Sharma Department of ECE Indian Institute of Technology,
On Coding for Real-Time Streaming under Packet Erasures Derek Leong *#, Asma Qureshi *, and Tracey Ho * * California Institute of Technology, Pasadena,
The parity bits of linear block codes are linear combination of the message. Therefore, we can represent the encoder by a linear system described by matrices.
Content caching and scheduling in wireless networks with elastic and inelastic traffic Group-VI 09CS CS CS30020 Performance Modelling in Computer.
Joint Moments and Joint Characteristic Functions.
1 On the Channel Capacity of Wireless Fading Channels C. D. Charalambous and S. Z. Denic School of Information Technology and Engineering, University of.
Lecture 12 Huffman Algorithm. In computer science and information theory, a Huffman code is a particular type of optimal prefix code that is commonly.
Rate Distortion Theory. Introduction The description of an arbitrary real number requires an infinite number of bits, so a finite representation of a.
Channel Coding Theorem (The most famous in IT) Channel Capacity; Problem: finding the maximum number of distinguishable signals for n uses of a communication.
ON AVCS WITH QUADRATIC CONSTRAINTS Farzin Haddadpour Joint work with Madhi Jafari Siavoshani, Mayank Bakshi and Sidharth Jaggi Sharif University of Technology,
10.Deterministic Randomness 1.Random Sequences Random Sequences A sequence of numbers r 1, r 2,... is random if there are no discernible patterns.
Visual Recognition Tutorial
Random Testing: Theoretical Results and Practical Implications IEEE TRANSACTIONS ON SOFTWARE ENGINEERING 2012 Andrea Arcuri, Member, IEEE, Muhammad.
Symmetric Allocations for Distributed Storage
Maximally Recoverable Local Reconstruction Codes
Summarizing Data by Statistics
Mainak Chowdhury, Andrea Goldsmith, Tsachy Weissman
Feifei Li, Ching Chang, George Kollios, Azer Bestavros
Hash Functions for Network Applications (II)
Information Theoretical Analysis of Digital Watermarking
Presentation transcript:

Erasure Coding for Real-Time Streaming Derek Leong and Tracey Ho California Institute of Technology Pasadena, California, USA ISIT

Erasure Coding for Real-Time Streaming Slide 2 of 21 packet erasure link (each transmitted packet is of normalized unit size) Discrete-time data streaming system Independent messages of uniform size s are created at the source at regular intervals of c time steps, and must be decoded at the receiver within d time steps from their respective creation times Problem Definition messages are created every c = 3 time steps … … and have to be decoded within d = 8 time steps

Erasure Coding for Real-Time Streaming Slide 3 of 21 An erasure pattern specifies a set of erased or lost packets An erasure model describes a set of erasure patterns that we wish to withstand Problem Definition erasure pattern #1: {7, 12, 20} erasure pattern #2: {2, 3, 13, 14, 15, 16}

Erasure Coding for Real-Time Streaming Slide 4 of 21 We established the capacity region and found capacity-achieving codes for the following erasure models: #1: Limited number of erasures per sliding window #2: Erasure bursts of a limited length For each erasure model: We specify a set of erasure patterns The objective is to find an optimal code that achieves the maximum message size s, among all codes that allow all messages to be decoded by their respective deadlines under all erasure patterns in Problem Definition when is it necessary to apply intersession coding; when will intrasession coding suffice?

Erasure Coding for Real-Time Streaming Slide 5 of 21 Intrasession coding: coding only within the same message We specify the allocation of the unit-size packet at each time step among the different messages Random linear coding / MDS code is subsequently applied to the allocation Code Construction

Erasure Coding for Real-Time Streaming Slide 6 of 21 The unit-size packet at each time step is divided evenly among all active messages Code Construction when d is a multiple of c … messages 2, 3, 4 are active at t = 12 coding window for each message constant number of active messages at each time step

Erasure Coding for Real-Time Streaming Slide 7 of 21 The unit-size packet at each time step is divided evenly among all active messages Code Construction when d is not a multiple of c... messages 3, 4, 5 are active at t = 13 variable number of active messages at each time step messages 3, 4 are active at t = 12

Erasure Coding for Real-Time Streaming Slide 8 of 21 Erasure Model #1: Limited Number of Erasures Per Sliding Window

Erasure Coding for Real-Time Streaming Slide 9 of 21 Let be the union of coding windows for messages {1,..., n } Let be the set of all erasure patterns that have z or fewer erasures in each sliding window of size d The objective is to construct a code that allows all n messages {1,..., n } to be decoded by their respective deadlines under any erasure pattern Let be the maximum message size that can be achieved by such a code, for a given choice of n, c, d, and z #1: Limited Number of Erasures Per Sliding Window

Erasure Coding for Real-Time Streaming Slide 10 of 21 #1: Limited Number of Erasures Per Sliding Window However, it turns out that the constructed intrasession code is asymptotically optimal: RESULT 1 The constructed code achieves a message size of y 1 + ··· + y d − z, which is equal to the asymptotic maximum achievable message size Over a finite time horizon (i.e., when n is finite), intrasession coding can be suboptimal: for example, given ( n, c, d, z ) = (3, 1, 3, 1), the optimal intrasession code achieves a message size of 6/7, whereas the optimal intersession code achieves a message size of 1 M1M2 M1 M2 M3 + O t

Erasure Coding for Real-Time Streaming Slide 11 of 21 when d is a multiple of c... Proof of Achievability: Each message is allocated the same amount of space, distributed in the same way over d blocks across its coding window Let y be the vector of block sizes sorted in ascending order #1: Limited Number of Erasures Per Sliding Window d−zd−z every coding window will always have d − z or more unerased time steps one-size blocks

Erasure Coding for Real-Time Streaming Slide 12 of 21 when d is not a multiple of c... Proof of Achievability: Each message is allocated the same amount of space, distributed in the same way over d blocks across its coding window Let y be the vector of block sizes sorted in ascending order #1: Limited Number of Erasures Per Sliding Window d−zd−z every coding window will always have d − z or more unerased time steps small vs. big blocks

Erasure Coding for Real-Time Streaming Slide 13 of 21 Proof of Converse: When d is a multiple of c, we consider a cut-set bound corresponding to a specific worst-case erasure pattern in which exactly z erasures occur in every sliding window This is just the periodic erasure pattern comprising alternating intervals of d − z unerased time steps and z erased time steps #1: Limited Number of Erasures Per Sliding Window when d is a multiple of c... pick z = 4

Erasure Coding for Real-Time Streaming Slide 14 of 21 Proof of Converse: When d is not a multiple of c, no single admissible erasure pattern gives us a bound that matches the constructed code; instead, we need to combine different erasure patterns for different messages To pick these erasure patterns, we consider a base erasure pattern (which may not be admissible in general) #1: Limited Number of Erasures Per Sliding Window when d is not a multiple of c... partition the set of time steps into d sets

Erasure Coding for Real-Time Streaming Slide 15 of 21 Proof of Converse: When d is not a multiple of c, no single admissible erasure pattern gives us a bound that matches the constructed code; instead, we need to combine different erasure patterns for different messages To pick these erasure patterns, we consider a base erasure pattern (which may not be admissible in general) #1: Limited Number of Erasures Per Sliding Window when d is not a multiple of c... pick z = 4

Erasure Coding for Real-Time Streaming Slide 16 of 21 Proof of Converse: From this base erasure pattern, we derive admissible erasure patterns by taking its intersection with each coding window These derived erasure patterns are used to inductively compute an upper bound for the conditional entropy #1: Limited Number of Erasures Per Sliding Window “amount of space left in the unerased time steps of the coding window for message n after encoding the first n messages and conditioned on the previous time steps”

Erasure Coding for Real-Time Streaming Slide 17 of 21 Erasure Model #2: Erasure Bursts of a Limited Length

Erasure Coding for Real-Time Streaming Slide 18 of 21 Let be the union of coding windows for messages {1,..., n } Let be the set of all erasure patterns in which each erasure burst is z or fewer time steps in length, and consecutive bursts are separated by a gap of d − z or more unerased time steps The objective is to construct a code that allows all n messages {1,..., n } to be decoded by their respective deadlines under any erasure pattern Let be the maximum message size that can be achieved by such a code, for a given choice of n, c, d, and z #2: Erasure Bursts of a Limited Length

Erasure Coding for Real-Time Streaming Slide 19 of 21 #2: Erasure Bursts of a Limited Length Using the proof technique of Result 1, we can show that the constructed code is asymptotically optimal in a number of cases: RESULT 2 The constructed code achieves a message size of y 1 + ··· + y d − z, which is equal to the asymptotic maximum achievable message size in the following cases: (1) when d is a multiple of c (2) when d is not a multiple of c, and z ≤ c − r ( d, c ) (3) when d is not a multiple of c, and z ≥ d − r ( d, c ) maximum erasure burst length is sufficiently short maximum erasure burst length is sufficiently long intersession coding may be necessary for intermediate values of z

Erasure Coding for Real-Time Streaming Slide 20 of 21 We established the capacity region and found capacity-achieving codes for the following erasure models: #1: Limited number of erasures per sliding window #2: Erasure bursts of a limited length Further Work: Investigating optimal code constructions for the bursty erasure model when z takes on intermediate values; convolutional code construction appears to be sensitive to parameters c, d, and z Further Work: To consider the i.i.d. erasure model, where an erasure occurs at each time step independently with a given probability Probabilistic vs. deterministic message decoding requirements Withstanding a probabilistic vs. deterministic set of erasure patterns Conclusion

Erasure Coding for Real-Time Streaming Slide 21 of 21 Thank You!