on coding for real-time streaming under packet erasures

26
On Coding for Real-Time Streaming under Packet Erasures Derek Leong *# , Asma Qureshi * , and Tracey Ho * * California Institute of Technology, Pasadena, California, USA # Institute for Infocomm Research, Singapore ISIT 2013 2013-07-09

Upload: nayef

Post on 23-Feb-2016

68 views

Category:

Documents


0 download

DESCRIPTION

On Coding for Real-Time Streaming under Packet Erasures. Derek Leong *# , Asma Qureshi * , and Tracey Ho * * California Institute of Technology, Pasadena, California, USA # Institute for Infocomm Research, Singapore ISIT 2013 2013-07-09. Introduction: Real-Time Streaming System. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streamingunder Packet Erasures

Derek Leong*#, Asma Qureshi*, and Tracey Ho*

*California Institute of Technology, Pasadena, California, USA#Institute for Infocomm Research, Singapore

ISIT 20132013-07-09

Page 2: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 2 of 26

Real-time streaming system where messages created at regular time intervals at a source are encoded

for transmission to a receiver over a packet erasure link, and the receiver must subsequently decode each message

within a given delay from its creation time

Introduction: Real-Time Streaming System

Page 3: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 3 of 26

Types of erasure models: Deterministic:

• Window-based: Limited number of erasures in each window [1]• Bursty: Erasure bursts of a limited length with minimum guard

interval lengths IID: Each packet is erased independently with the same probability

Objective for deterministic erasure models:Find an erasure correction code that achieves the maximum message size, among all codes that allow all messages to be decoded by their respective deadlines under all admissible erasure patterns

Objective for i.i.d. erasure model:For a given message size, find an erasure correction code that achieves the maximum probability of decoding a message by its deadline

Introduction: Erasure Models and Objectives

[1] D. Leong and T. Ho, “Erasure coding for real-time streaming,” in Proc. IEEE ISIT, Jul. 2012.

Page 4: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 4 of 26

Related work: Martinian et al. [2,3] and Badr et al. [4] provided constructions of

streaming codes that minimize the decoding delay for certain types of bursty erasure models[2] E. Martinian and C.-E. W. Sundberg, “Low delay burst erasure correction codes,” in Proc. IEEE ICC, May 2002.[3] E. Martinian and M. Trott, “Delay-optimal burst erasure code construction,”in Proc. IEEE ISIT, Jun. 2007.[4] A. Badr, A. Khisti, W.-T. Tan, and J. Apostolopoulos, “Streaming codes for channelswith burst and isolated erasures,” in Proc. IEEE INFOCOM, Apr. 2013.

Tree codes or anytime codes, for which the decoding failure probability decays exponentially with delay, are examined in [5,6,7][5] L. J. Schulman, “Coding for interactive communication,” IEEE Trans. Inf. Theory, Nov. 1996. [6] A. Sahai, “Anytime information theory,” Ph.D. dissertation, MIT, 2001.[7] R. T. Sukhavasi, “Distributed control and computing: Optimal estimation, error correcting codes, and interactive protocols,” Ph.D. dissertation, Caltech, 2012.

Introduction: Related Work

Page 5: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 5 of 26

Discrete-time data streaming system Independent messages of uniform size s are created at regular intervals

of c time steps at the source; at each time step, the source transmits a single data packet of normalized unit size over the packet erasure link

Receiver must decode each message within a delay of d time steps from its creation time

Problem Definition: Real-Time Streaming System

messages are created every

c = 3 time steps … … and have to be decoded withind = 8 time steps

Page 6: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 6 of 26

An erasure pattern specifies a set of erased packet transmissions An erasure model describes a distribution of erasure patterns

Problem Definition: Erasure Patterns and Models

Erasure pattern #1 = {7, 12, 20}Erasure pattern #2 = {2, 3, 13, 14, 15, 16}

Page 7: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 7 of 26

First Erasure Model:Bursty Erasures

Page 8: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 8 of 26

Define the set of admissible erasure patterns to be those in which each erasure burst consists of at most z erased time steps consecutive bursts are separated by a guard interval or gap

of at least d−z unerased time steps (each message sees at most z erasures)

Interested in erasure correction codes that allow all messagesto be decoded by their respective deadlines under any admissible erasure pattern Specifically, we want to find a code that achieves the

maximum message size s, for a given choice of (c, d, z)

Bursty Erasures: Problem Definition

Other bursty models possible…

Page 9: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 9 of 26

Previously in [1], we constructed a time-invariant intrasession code that is asymptotically optimal (as the number of messages n goes to infinity) in the following cases: d is a multiple of c d is not a multiple of c, and the maximum erasure burst length z

is sufficiently short, i.e., z ≤ c − r(d,c) d is not a multiple of c, and the maximum erasure burst length z

is sufficiently long, i.e., z ≥ d − r(d,c)

Here, we construct time-invariant diagonally interleaved codes that are asymptotically optimal in several other cases

Bursty Erasures: Results

[1] D. Leong and T. Ho, “Erasure coding for real-time streaming,” in Proc. IEEE ISIT, Jul. 2012.

Page 10: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 10 of 26

Bursty Erasures: Diagonally Interleaved Codes1. About symbols, packets, and messages.2. Apply a systematic block code for d −z information symbols and z parity symbolson each diagonal.

Here (c, d,z) = (3,11,4)

3. Diagonally interleaved codes derived from systematic block codes with certain properties are asymptotically optimal for the bursty erasure model.4. These sufficient code properties describe decoding deadlines for individual symbols.

Page 11: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 11 of 26

Bursty Erasures: Diagonally Interleaved Code Example

Page 12: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 12 of 26

Bursty Erasures: Diagonally Interleaved Code Example

Consider the d symbols of one codeword

Page 13: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 13 of 26

Bursty Erasures: Diagonally Interleaved Code ExampleHere (c, d,z) =

(5,57,42)Rearrange these d symbols as follows

Page 14: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 14 of 26

Bursty Erasures: Diagonally Interleaved Code ExampleHere (c, d,z) =

(5,57,42)

Symbol decoding deadlines

Actual information symbolsNondegenerate parity symbolsDegenerate parity symbols

Page 15: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 15 of 26

Example of an erasure burst…

Bursty Erasures: Diagonally Interleaved Code ExampleHere (c, d,z) =

(5,57,42)

Page 16: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 16 of 26

Second Erasure Model:IID Erasures

Page 17: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 17 of 26

Each packet transmitted over the link is erased independently withthe same probability pe

Want to find an erasure correction code that achieves themaximum message decoding probability, for a given message size s

Primary performance metric:Decoding probability, i.e., the probability that a given message is decodable by its decoding deadline

Secondary performance metric:Burstiness of undecodable messages, i.e., the conditional probability that the next message is undecodable by its decoding deadline given that the current message is undecodable by its decoding deadline

In the interest of practicality, we restrict our attention to time-invariant codes

IID Erasures: Problem Definition

for applications sensitive to bursts of decoding failures

Page 18: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 18 of 26

Assume decoder memory size is unbounded

The probability of decoding a given message k can be expressed in terms of conditional entropies as follows

Here, finding an optimal code is a combinatorial problem involving probabilistic erasure patterns, in contrast to the deterministic“worst-case” problem formulation for the other erasure models

IID Erasures: Decoding Probability

message kunerased packets received

up to the decoding deadline for message k

condition over all erasure patterns

criteria for successful decoding

probability of the corresponding erasure pattern

Page 19: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 19 of 26

We derive the following upper bound on the decoding probability

for any time-invariant code:

Proof combines the bounding technique from our work on thesliding window erasure model [1] with a combinatorial analysis on the maximum number of erasure patterns that can be supported

IID Erasures: Decoding Probability Upper Bound

for any message k ≥ encoder memory size mE

Page 20: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 20 of 26

For intrasession codes coding is allowed within the same message but not across different

messages the unit-size packet at each time step is divided into blocks allocated

to different messages; a suitable code (e.g., MDS) is subsequently applied

For symmetric codes, we define a spreading parameter m , and divide the packet at each time step evenly among all active messages

IID Erasures: Symmetric Codes

Spreading parameter m is a multiple of c: Same-size blocks

m = 9c = 3m = 9

Page 21: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 21 of 26

For intrasession codes coding is allowed within the same message but not across different

messages the unit-size packet at each time step is divided into blocks allocated

to different messages; a suitable code (e.g., MDS) is subsequently applied

For symmetric codes, we define a spreading parameter m , and divide the packet at each time step evenly among all active messages

IID Erasures: Symmetric Codes

Spreading parameter m is not a multiple of c: Big and small blocks

c = 3m = 8

m = 8

Page 22: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 22 of 26

Decoding ProbabilityPlots of the decoding failure probability against...

message size s packet erasure probability pe

(for pe = 0.05) (for s = 1)

IID Erasures: Symmetric Codes Performance

maximal spreading performs well whens and pe are small

minimal spreading performs well whens and pe are large

Page 23: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 23 of 26

Burstiness of Undecodable MessagesPlots of the conditional probability against...

message size s packet erasure probability pe

(for pe = 0.05) (for s = 1)

IID Erasures: Symmetric Codes Performance

minimal spreading performs well over

a wide range ofs and pe

results agree with our intuition about

overlapping effective coding windows

Page 24: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 24 of 26

Trade-off between performance metrics

When the message size and packet erasure probability are small (a regime of interest), maximal spreading achieves a high decoding probability, but it also exhibits a higher burstiness of undecodable messages

For applications sensitive to bursty undecodable messages,a symmetric code with a suboptimal decoding probability butlower burstiness may be preferred

IID Erasures: Symmetric Codes Performance

Page 25: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 25 of 26

For the bursty erasure model We constructed diagonally interleaved codes that are asymptotically

optimal over all codes in several specific cases

For the i.i.d. erasure model We derived an upper bound on the decoding probability

for any time-invariant code, and We analyzed the performance of symmetric codes

(observed phase transitions, good codes, trade-offs)

Conclusion

Page 26: On Coding for Real-Time Streaming under Packet Erasures

On Coding for Real-Time Streaming under Packet Erasures Slide 26 of 26

Thank You!