Introduction: Real-Time Streaming System

advertisement
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

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
On Coding for Real-Time Streaming under Packet Erasures
Slide 2 of 26
Introduction: Erasure Models and Objectives

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
[1] D. Leong and T. Ho, “Erasure coding for real-time streaming,” in Proc. IEEE ISIT, Jul. 2012.
On Coding for Real-Time Streaming under Packet Erasures
Slide 3 of 26
Introduction: Related Work

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 channels
with 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.
On Coding for Real-Time Streaming under Packet Erasures
Slide 4 of 26
Problem Definition: Real-Time Streaming System

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
messages are
created every
c = 3 time steps …
… and have to be
decoded within
d = 8 time steps
On Coding for Real-Time Streaming under Packet Erasures
Slide 5 of 26
Problem Definition: Erasure Patterns and Models


An erasure pattern specifies a set of erased packet transmissions
An erasure model describes a distribution of erasure patterns
Erasure
13,20}
14, 15, 16}
Erasurepattern
pattern#2
#1=={2,
{7,3,12,
On Coding for Real-Time Streaming under Packet Erasures
Slide 6 of 26
First Erasure Model:
Bursty Erasures
On Coding for Real-Time Streaming under Packet Erasures
Slide 7 of 26
Bursty Erasures: Problem Definition

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)
Other bursty models
possible…

Interested in erasure correction codes that allow all messages
to 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)
On Coding for Real-Time Streaming under Packet Erasures
Slide 8 of 26
Bursty Erasures: Results

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
[1] D. Leong and T. Ho, “Erasure coding for real-time streaming,” in Proc. IEEE ISIT, Jul. 2012.
On Coding for Real-Time Streaming under Packet Erasures
Slide 9 of 26
Bursty Erasures: Diagonally Interleaved Codes
3. Apply
Diagonally
interleaved
codes
systematic
block and
codes
with certain
2.
a systematic
block
codederived
for d−zfrom
information
symbols
z parity
symbols
4.
These
sufficient
code
properties
describe
decoding
deadlines
for
individual
symbols.
1.
About
symbols,
packets, andoptimal
messages.
properties
are asymptotically
for the bursty erasure model.
on
each diagonal.
Here (c,d,z) = (3,11,4)
On Coding for Real-Time Streaming under Packet Erasures
Slide 10 of 26
Bursty Erasures: Diagonally Interleaved Code Example
On Coding for Real-Time Streaming under Packet Erasures
Slide 11 of 26
Bursty Erasures: Diagonally Interleaved Code Example
Consider the d symbols of one codeword
On Coding for Real-Time Streaming under Packet Erasures
Slide 12 of 26
Bursty Erasures: Diagonally Interleaved Code Example
Rearrange these d symbols as follows
On Coding for Real-Time Streaming under Packet Erasures
Here (c,d,z) = (5,57,42)
Slide 13 of 26
Bursty Erasures: Diagonally Interleaved Code Example
Actual information symbols
Nondegenerate parity symbols
Degenerate parity symbols
Here (c,d,z) = (5,57,42)
Symbol decoding deadlines
On Coding for Real-Time Streaming under Packet Erasures
Slide 14 of 26
Bursty Erasures: Diagonally Interleaved Code Example
Example of an erasure burst…
On Coding for Real-Time Streaming under Packet Erasures
Here (c,d,z) = (5,57,42)
Slide 15 of 26
Second Erasure Model:
IID Erasures
On Coding for Real-Time Streaming under Packet Erasures
Slide 16 of 26
IID Erasures: Problem Definition

Each packet transmitted over the link is erased independently with
the same probability pe

Want to find an erasure correction code that achieves the
maximum 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
for applications sensitive to bursts
of decoding failures

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
On Coding for Real-Time Streaming under Packet Erasures
Slide 17 of 26
IID Erasures: Decoding Probability

Assume decoder memory size is unbounded

The probability of decoding a given message k can be expressed in terms
of conditional entropies as follows
message k
unerased packets received
up to the decoding
deadline for message k
criteria for successful decoding
condition over all erasure patterns

probability of the corresponding erasure pattern
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
On Coding for Real-Time Streaming under Packet Erasures
Slide 18 of 26
IID Erasures: Decoding Probability Upper Bound

We derive the following upper bound on the decoding probability
for any time-invariant code:
for any message k ≥ encoder memory size mE

Proof combines the bounding technique from our work on the
sliding window erasure model [1] with a combinatorial analysis on the
maximum number of erasure patterns that can be supported
On Coding for Real-Time Streaming under Packet Erasures
Slide 19 of 26
IID Erasures: Symmetric Codes

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
Spreading parameter m is a multiple of c: Same-size blocks
c=3
m=9
m=9
On Coding for Real-Time Streaming under Packet Erasures
Slide 20 of 26
IID Erasures: Symmetric Codes

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
Spreading parameter m is not a multiple of c: Big and small blocks
c=3
m=8
m=8
On Coding for Real-Time Streaming under Packet Erasures
Slide 21 of 26
IID Erasures: Symmetric Codes Performance

Decoding Probability
Plots of the decoding failure probability
against...
minimal spreading
performs well when
s and pe are large
maximal spreading
performs well when
s and pe are small
message size s
(for pe = 0.05)
On Coding for Real-Time Streaming under Packet Erasures
packet erasure probability pe
(for s = 1)
Slide 22 of 26
IID Erasures: Symmetric Codes Performance

Burstiness of Undecodable Messages
Plots of the conditional probability against...
results agree with our
intuition about
overlapping effective
coding windows
minimal spreading
performs well over
a wide range of
s and pe
message size s
(for pe = 0.05)
On Coding for Real-Time Streaming under Packet Erasures
packet erasure probability pe
(for s = 1)
Slide 23 of 26
IID Erasures: Symmetric Codes Performance

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 but
lower burstiness may be preferred
On Coding for Real-Time Streaming under Packet Erasures
Slide 24 of 26
Conclusion

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)
On Coding for Real-Time Streaming under Packet Erasures
Slide 25 of 26
Thank You!
On Coding for Real-Time Streaming under Packet Erasures
Slide 26 of 26
Download