Robust Streaming Codes based on Deterministic Channel Approximations - - PowerPoint PPT Presentation

robust streaming codes based on deterministic channel
SMART_READER_LITE
LIVE PREVIEW

Robust Streaming Codes based on Deterministic Channel Approximations - - PowerPoint PPT Presentation

Robust Streaming Codes based on Deterministic Channel Approximations Ashish Khisti University of Toronto Joint Work with Ahmed Badr (Toronto), Wai-Tian Tan (HP Labs) and John Apostolopoulos (HP Labs) ISIT, 2013 July 9th 2013 Motivation -


slide-1
SLIDE 1

Robust Streaming Codes based on Deterministic Channel Approximations

Ashish Khisti University of Toronto

Joint Work with Ahmed Badr (Toronto), Wai-Tian Tan (HP Labs) and John Apostolopoulos (HP Labs)

ISIT, 2013 July 9th 2013

slide-2
SLIDE 2

Motivation - Delay Sensitive Communication

Delay is a central issue in many applications1

Application Bit-Rate MSDU (B) Delay (ms) Delay (pkts) PLR Video Conf. 2 Mbps 1500 100 ms 24 10−4 Interactive Gaming 1Mbps 512 50 ms 12 10−4 SDTV 4Mbps 1500 200 ms 60 10−6

Communication Medium: Wireless Channel.

1IEEE Usage Model Proposal (doc.: IEEE 802.11-03/802r23) ISIT, 2013 July 9th 2013 2/ 17

slide-3
SLIDE 3

Motivation - Delay Sensitive Communication

Delay is a central issue in many applications1

Application Bit-Rate MSDU (B) Delay (ms) Delay (pkts) PLR Video Conf. 2 Mbps 1500 100 ms 24 10−4 Interactive Gaming 1Mbps 512 50 ms 12 10−4 SDTV 4Mbps 1500 200 ms 60 10−6

Communication Medium: Wireless Channel. Prior Work - Real Time Streaming Communication

Structural Theorems on Real-Time Encoders (Witsenhausen ’79, Teneketzis ’06) Tree Codes (Schulman ’96, Sahai ’01, Sukhavasi and Hassibi ’11) Real-Time Scheduling (Hou and Kumar ’11, Shakkottai and Srikanth ’11) Low-delay Path Selection (Chen et. al.)

1IEEE Usage Model Proposal (doc.: IEEE 802.11-03/802r23) ISIT, 2013 July 9th 2013 2/ 17

slide-4
SLIDE 4

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-5
SLIDE 5

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-6
SLIDE 6

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-7
SLIDE 7

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-8
SLIDE 8

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-9
SLIDE 9

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-10
SLIDE 10

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-11
SLIDE 11

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-12
SLIDE 12

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-13
SLIDE 13

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-14
SLIDE 14

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-15
SLIDE 15

Real-Time Streaming Model

ISIT, 2013 July 9th 2013 3/ 17

slide-16
SLIDE 16

Problem Setup

Assume s[t] ∈ Fk

q, i.i.d. uniform

x[t] ∈ Fn

q . Causal Encoder.

Rate: R = k

n

ISIT, 2013 July 9th 2013 4/ 17

slide-17
SLIDE 17

Problem Setup

Assume s[t] ∈ Fk

q, i.i.d. uniform

x[t] ∈ Fn

q . Causal Encoder.

Rate: R = k

n

Channel C(N, B, W): Any sliding window of length W contains

A burst of maximum length B, or, No more than N erasures in arbitrary positions.

3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2

ISIT, 2013 July 9th 2013 4/ 17

slide-18
SLIDE 18

Problem Setup

Assume s[t] ∈ Fk

q, i.i.d. uniform

x[t] ∈ Fn

q . Causal Encoder.

Rate: R = k

n

Channel C(N, B, W): Any sliding window of length W contains

A burst of maximum length B, or, No more than N erasures in arbitrary positions.

3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2

ISIT, 2013 July 9th 2013 4/ 17

slide-19
SLIDE 19

Problem Setup

Assume s[t] ∈ Fk

q, i.i.d. uniform

x[t] ∈ Fn

q . Causal Encoder.

Rate: R = k

n

Channel C(N, B, W): Any sliding window of length W contains

A burst of maximum length B, or, No more than N erasures in arbitrary positions.

3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2

ISIT, 2013 July 9th 2013 4/ 17

slide-20
SLIDE 20

Problem Setup

Assume s[t] ∈ Fk

q, i.i.d. uniform

x[t] ∈ Fn

q . Causal Encoder.

Rate: R = k

n

Channel C(N, B, W): Any sliding window of length W contains

A burst of maximum length B, or, No more than N erasures in arbitrary positions.

3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 B = 3

ISIT, 2013 July 9th 2013 4/ 17

slide-21
SLIDE 21

Problem Setup

Assume s[t] ∈ Fk

q, i.i.d. uniform

x[t] ∈ Fn

q . Causal Encoder.

Rate: R = k

n

Channel C(N, B, W): Any sliding window of length W contains

A burst of maximum length B, or, No more than N erasures in arbitrary positions.

3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 N = 2 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 B = 3 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (2,3,6) 2 6 7 13 W = 6 B = 3 Capacity R(N, B, W, T)

ISIT, 2013 July 9th 2013 4/ 17

slide-22
SLIDE 22

Main Result

Theorem Consider the C(N, B, W) channel, with W ≥ B + 1, and let the delay be T. Upper-Bound(Badr et al. INFOCOM’13) For any rate R code, we have:

  • R

1 − R

  • B + N ≤ min(W, T + 1)

ISIT, 2013 July 9th 2013 5/ 17

slide-23
SLIDE 23

Main Result

Theorem Consider the C(N, B, W) channel, with W ≥ B + 1, and let the delay be T. Upper-Bound(Badr et al. INFOCOM’13) For any rate R code, we have:

  • R

1 − R

  • B + N ≤ min(W, T + 1)

Lower-Bound: There exists a rate R code that satisfies:

  • R

1 − R

  • B + N ≥ min(W, T + 1) − 1.

The gap between the upper and lower bound is 1 unit of delay.

ISIT, 2013 July 9th 2013 5/ 17

slide-24
SLIDE 24

Error Correction: Baseline Techniques

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

pi = si · H0 + si−1 · H1 + . . . + si−M · HM, Hi ∈ Fk×n−k

q

Erasure Codes: Random Linear Codes Strongly-MDS Codes (Gabidulin’88, Gluesing-Luerssen’06 )

ISIT, 2013 July 9th 2013 6/ 17

slide-25
SLIDE 25

Error Correction: Baseline Techniques

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

pi = si · H0 + si−1 · H1 + . . . + si−M · HM, Hi ∈ Fk×n−k

q

Erasure Codes: Random Linear Codes Strongly-MDS Codes (Gabidulin’88, Gluesing-Luerssen’06 )

ISIT, 2013 July 9th 2013 6/ 17

slide-26
SLIDE 26

Error Correction: Baseline Techniques

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

pi = si · H0 + si−1 · H1 + . . . + si−M · HM, Hi ∈ Fk×n−k

q

Erasure Codes: Random Linear Codes Strongly-MDS Codes (Gabidulin’88, Gluesing-Luerssen’06 )

ISIT, 2013 July 9th 2013 6/ 17

slide-27
SLIDE 27

Error Correction: Baseline Techniques

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

pi = si · H0 + si−1 · H1 + . . . + si−M · HM, Hi ∈ Fk×n−k

q

Erasure Codes: Random Linear Codes Strongly-MDS Codes (Gabidulin’88, Gluesing-Luerssen’06 )

ISIT, 2013 July 9th 2013 6/ 17

slide-28
SLIDE 28

Error Correction: Baseline Techniques

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

pi = si · H0 + si−1 · H1 + . . . + si−M · HM, Hi ∈ Fk×n−k

q

Erasure Codes: Random Linear Codes Strongly-MDS Codes (Gabidulin’88, Gluesing-Luerssen’06 )

ISIT, 2013 July 9th 2013 6/ 17

slide-29
SLIDE 29

Error Correction: Baseline Techniques

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

pi = si · H0 + si−1 · H1 + . . . + si−M · HM, Hi ∈ Fk×n−k

q

Erasure Codes: Random Linear Codes Strongly-MDS Codes (Gabidulin’88, Gluesing-Luerssen’06 )

ISIT, 2013 July 9th 2013 6/ 17

slide-30
SLIDE 30

Error Correction: Baseline Techniques

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

Recover s0, s1, s2, s3 s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

pi = si · H0 + si−1 · H1 + . . . + si−M · HM, Hi ∈ Fk×n−k

q

Erasure Codes: Random Linear Codes Strongly-MDS Codes (Gabidulin’88, Gluesing-Luerssen’06 )

ISIT, 2013 July 9th 2013 6/ 17

slide-31
SLIDE 31

Error Correction: Baseline Techniques

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

Recover s0, s1, s2, s3 s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

pi = si · H0 + si−1 · H1 + . . . + si−M · HM, Hi ∈ Fk×n−k

q

Erasure Codes: Random Linear Codes Strongly-MDS Codes (Gabidulin’88, Gluesing-Luerssen’06 )

ISIT, 2013 July 9th 2013 6/ 17

slide-32
SLIDE 32

Error Correction: Baseline Techniques

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

Recover s0, s1, s2, s3 s0 p0 p1 p2 p3 p4 p5 p6 p7

xi

s1 s2 s3 s4 s5 s6 s7

k n

pi = si · H0 + si−1 · H1 + . . . + si−M · HM, Hi ∈ Fk×n−k

q

Erasure Codes: Random Linear Codes Strongly-MDS Codes (Gabidulin’88, Gluesing-Luerssen’06 )     p4 p5 p6 p7     =     H4 H3 H2 H1 H5 H4 H3 H2 H5 H4 H3 H5 H4    

  • full rank

    s0 s1 s2 s3    

ISIT, 2013 July 9th 2013 6/ 17

slide-33
SLIDE 33

Streaming Codes - Burst Erasure Channel

N = 1, B = 4, T = 8

Rate 1/2 Baseline Erasure Codes, T = 7

v0 p0 v1 p1 v2 p2 v3 p3 v4 p4 v5 p5 v6 p6 v7 p7

xi

v8 p8 v9 p9 v10 p10 v11 p11

v0,v1,v2,v3

ISIT, 2013 July 9th 2013 7/ 17

slide-34
SLIDE 34

Streaming Codes - Burst Erasure Channel

N = 1, B = 4, T = 8

Rate 1/2 Baseline Erasure Codes, T = 7

v0 p0 v1 p1 v2 p2 v3 p3 v4 p4 v5 p5 v6 p6 v7 p7

xi

v8 p8 v9 p9 v10 p10 v11 p11

v0,v1,v2,v3

Rate 1/2 Repetition Code, T = 8

u0 u-8 u1 u-7 u2 u-6 u3 u-5 u4 u-4 u5 u-3 u6 u-2 u7 u-1

xi

u8 u0 u9 u1 u10 u2 u11 u3

u0 u1 u2 u3

ISIT, 2013 July 9th 2013 7/ 17

slide-35
SLIDE 35

Burst-Erasure Streaming Codes

N = 1, B = 4, T = 8

u0 u-8 u1 u-7 u2 u-6 u3 u-5 u4 u-4 u5 u-3 u6 u-2 u7 u-1 u8 u0 u9 u1 u10 u2 u11 u3 v0 p0 v1 p1 v2 p2 v3 p3 v4 p4 v5 p5 v6 p6 v7 p7 v8 p8 v9 p9 v10 p10 v11 p11

v u u u

ISIT, 2013 July 9th 2013 8/ 17

slide-36
SLIDE 36

Burst-Erasure Streaming Codes

N = 1, B = 4, T = 8

v0 p0 v1 p1 v2 p2 v3 p3 v4 p4 v5 p5 v6 p6 v7 p7 v8 p8 v9 p9 v10 p10 v11 p11 u0 u-8 u1 u-7 u2 u-6 u3 u-5 u4 u-4 u5 u-3 u6 u-2 u7 u-1 u8 u0 u9 u1 u10 u2 u11 u3

u v u u

R= u+v 3u+v =1 2

ISIT, 2013 July 9th 2013 8/ 17

slide-37
SLIDE 37

Burst-Erasure Streaming Codes

N = 1, B = 4, T = 8

v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi si u v u

R= u+v 2 u+v =2 3

ISIT, 2013 July 9th 2013 8/ 17

slide-38
SLIDE 38

Burst-Erasure Streaming Codes

N = 1, B = 4, T = 8

v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

si xi u v u

R= u+v 2 u+v =2 3

Encoding:

1

Split each source symbol into 2 groups si = (ui, vi)

2

Apply Erasure code to the vi stream generating pi parities

3

Repeat the ui symbols with a shift of T

4

Combine the repeated ui’s with the pi’s

ISIT, 2013 July 9th 2013 8/ 17

slide-39
SLIDE 39

Burst-Erasure Streaming Codes

N = 1, B = 4, T = 8

v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

si

v0,v1,v2,v3

xi u v u

R= u+v 2 u+v =2 3

Encoding:

1

Split each source symbol into 2 groups si = (ui, vi)

2

Apply Erasure code to the vi stream generating pi parities

3

Repeat the ui symbols with a shift of T

4

Combine the repeated ui’s with the pi’s

ISIT, 2013 July 9th 2013 8/ 17

slide-40
SLIDE 40

Burst-Erasure Streaming Codes

N = 1, B = 4, T = 8

v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

si

v0,v1,v2,v3 u0 u1 u2 u3

xi u v u

R= uv 2uv

Encoding:

1

Split each source symbol into 2 groups si = (ui, vi)

2

Apply Erasure code to the vi stream generating pi parities

3

Repeat the ui symbols with a shift of T

4

Combine the repeated ui’s with the pi’s

ISIT, 2013 July 9th 2013 8/ 17

slide-41
SLIDE 41

Burst-Erasure Streaming Codes

N = 1, B = 4, T = 8

v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

si

v0,v1,v2,v3 u0 u1 u2 u3 s0 s1 s2 s3

xi u v u

R= u+v 2 u+v =2 3

Encoding:

1

Split each source symbol into 2 groups si = (ui, vi)

2

Apply Erasure code to the vi stream generating pi parities

3

Repeat the ui symbols with a shift of T

4

Combine the repeated ui’s with the pi’s

ISIT, 2013 July 9th 2013 8/ 17

slide-42
SLIDE 42

Burst-Erasure Streaming Codes

N = 1, B = 4, T = 8

u0 u-8 u1 u-7 u2 u-6 u3 u-5 u4 u-4 u5 u-3 u6 u-2 u7 u-1 u8 u0 u9 u1 u10 u2 u11 u3 v0 p0 v1 p1 v2 p2 v3 p3 v4 p4 v5 p5 v6 p6 v7 p7 v8 p8 v9 p9 v10 p10 v11 p11

v u u u

v0 p0 v1 p1 v2 p2 v3 p3 v4 p4 v5 p5 v6 p6 v7 p7 v8 p8 v9 p9 v10 p10 v11 p11 u0 u-8 u1 u-7 u2 u-6 u3 u-5 u4 u-4 u5 u-3 u6 u-2 u7 u-1 u8 u0 u9 u1 u10 u2 u11 u3

u v u u

R= u+v 3u+v =1 2 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi si u v u

R= u+v 2 u+v =2 3 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

si xi u v u

R= u+v 2 u+v =2 3 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

si

v0,v1,v2,v3

xi u v u

R= u+v 2 u+v =2 3 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

si

v0,v1,v2,v3 u0 u1 u2 u3

xi u v u

R= uv 2uv v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

si

v0,v1,v2,v3 u0 u1 u2 u3 s0 s1 s2 s3

xi u v u

R= u+v 2 u+v =2 3

Encoding:

1

Split each source symbol into 2 groups si = (ui, vi)

2

Apply Erasure code to the vi stream generating pi parities

3

Repeat the ui symbols with a shift of T

4

Combine the repeated ui’s with the pi’s

ISIT, 2013 July 9th 2013 8/ 17

slide-43
SLIDE 43

Isolated Erasures

N ≥ 2

T = 8

u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 v0 v1 v2 v3 v4 p4 +u-4 v5 v6 v7 v8 v9 v10 v11 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi u v u

Erasures at time t = 0 and t = 8 u0 cannot be recovered due to a repetition code

ISIT, 2013 July 9th 2013 9/ 17

slide-44
SLIDE 44

Proposed Approach: Layering

N ≥ 2 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi u v u

q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11

k

q0

Layered Code Design Burst-Erasure Streaming Code C1 : (ui, vi, pi + ui−T ) Erasure Code: qi = fi(u0, . . . , ui−1) ∈ Fk

q

Append qi to C1: (ui, vi, pi + ui−T , qi) R = u + v 2u + v + k, k = N T − N + 1B

ISIT, 2013 July 9th 2013 10/ 17

slide-45
SLIDE 45

Proposed Approach: Layering

N ≥ 2 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi si u v u

q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11

k

q0

Layered Code Design Burst-Erasure Streaming Code C1 : (ui, vi, pi + ui−T ) Erasure Code: qi = fi(u0, . . . , ui−1) ∈ Fk

q

Append qi to C1: (ui, vi, pi + ui−T , qi) R = u + v 2u + v + k, k = N T − N + 1B

ISIT, 2013 July 9th 2013 10/ 17

slide-46
SLIDE 46

Proposed Approach: Layering

N ≥ 2 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi si u v u

q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11

k

q0

Layered Code Design Burst-Erasure Streaming Code C1 : (ui, vi, pi + ui−T ) Erasure Code: qi = fi(u0, . . . , ui−1) ∈ Fk

q

Append qi to C1: (ui, vi, pi + ui−T , qi) R = u + v 2u + v + k, k = N T − N + 1B

ISIT, 2013 July 9th 2013 10/ 17

slide-47
SLIDE 47

Proposed Approach: Layering

N ≥ 2 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi si u v u

q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11

k

q0

v0 v2

Layered Code Design Burst-Erasure Streaming Code C1 : (ui, vi, pi + ui−T ) Erasure Code: qi = fi(u0, . . . , ui−1) ∈ Fk

q

Append qi to C1: (ui, vi, pi + ui−T , qi) R = u + v 2u + v + k, k = N T − N + 1B

ISIT, 2013 July 9th 2013 10/ 17

slide-48
SLIDE 48

Proposed Approach: Layering

N ≥ 2 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi u v u

q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11

k

q0 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi si u v u

q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11

k

q0 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi si u v u

q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11

k

q0 v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi si u v u

q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11

k

q0

v0 v2

v0 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 u0 u1 u2 u3 u4 u5 u6 u7 u8 u9 u10 u11 p4 +u-4 p0 +u-8 p1 +u-7 p2 +u-6 p3 +u-5 p5 +u-3 p6 +u-2 p7 +u-1 p8 +u0 p9 +u1 p10 +u2 p11 +u3

xi si u v u

q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11

k

q0 u0u2

Layered Code Design Burst-Erasure Streaming Code C1 : (ui, vi, pi + ui−T ) Erasure Code: qi = fi(u0, . . . , ui−1) ∈ Fk

q

Append qi to C1: (ui, vi, pi + ui−T , qi) R = u + v 2u + v + k, k = N T − N + 1B

ISIT, 2013 July 9th 2013 10/ 17

slide-49
SLIDE 49

Related Works

Streaming Codes for Burst Erasure Channel (Block Code + Interleaving): Martinian and Sundberg (IT-2004), Martinian and Trott (ISIT-2007)

ISIT, 2013 July 9th 2013 11/ 17

slide-50
SLIDE 50

Related Works

Streaming Codes for Burst Erasure Channel (Block Code + Interleaving): Martinian and Sundberg (IT-2004), Martinian and Trott (ISIT-2007) Other Variations of Streaming Codes

Unequal Source Channel Rates (Patil-Badr-Khisti-Tan Asilomar 2013, ISIT 2013, Poster) Multicast Extension (Khisti-Singh 2009, Badr-Lui-Khisti Allerton 2010) Parallel Channels (Lui-Badr-Khisti CWIT 2011) Multi-Source Streaming Codes (Lui Thesis, 2011) Lower Field Size for MiDAS Codes (Badr et. al. CWIT 2013)

ISIT, 2013 July 9th 2013 11/ 17

slide-51
SLIDE 51

Related Works

Streaming Codes for Burst Erasure Channel (Block Code + Interleaving): Martinian and Sundberg (IT-2004), Martinian and Trott (ISIT-2007) Other Variations of Streaming Codes

Unequal Source Channel Rates (Patil-Badr-Khisti-Tan Asilomar 2013, ISIT 2013, Poster) Multicast Extension (Khisti-Singh 2009, Badr-Lui-Khisti Allerton 2010) Parallel Channels (Lui-Badr-Khisti CWIT 2011) Multi-Source Streaming Codes (Lui Thesis, 2011) Lower Field Size for MiDAS Codes (Badr et. al. CWIT 2013)

Connections between Network Coding and Real-Time Streaming Codes (Tekin-Ho-Yao-Jaggi ITA-2012, Leong and Ho ISIT-2012)

ISIT, 2013 July 9th 2013 11/ 17

slide-52
SLIDE 52

Related Works

Streaming Codes for Burst Erasure Channel (Block Code + Interleaving): Martinian and Sundberg (IT-2004), Martinian and Trott (ISIT-2007) Other Variations of Streaming Codes

Unequal Source Channel Rates (Patil-Badr-Khisti-Tan Asilomar 2013, ISIT 2013, Poster) Multicast Extension (Khisti-Singh 2009, Badr-Lui-Khisti Allerton 2010) Parallel Channels (Lui-Badr-Khisti CWIT 2011) Multi-Source Streaming Codes (Lui Thesis, 2011) Lower Field Size for MiDAS Codes (Badr et. al. CWIT 2013)

Connections between Network Coding and Real-Time Streaming Codes (Tekin-Ho-Yao-Jaggi ITA-2012, Leong and Ho ISIT-2012) Tree Codes: Schulman (IT 1996), Sahai (2001), Martinian and Wornell (Allerton 2004), Sukhavasi and Hassibi (2011)

ISIT, 2013 July 9th 2013 11/ 17

slide-53
SLIDE 53

Distance and Span Properties

MiDAS → (Near) Maximum Distance And Span tradeoff Consider (n, k, m) Convolutional code: xi = m

j=0 si−jGj

States Trellis Diagram

1 2 3 4

ISIT, 2013 July 9th 2013 12/ 17

slide-54
SLIDE 54

Distance and Span Properties

MiDAS → (Near) Maximum Distance And Span tradeoff Consider (n, k, m) Convolutional code: xi = m

j=0 si−jGj

States Trellis Diagram – Free Distance

1 2 3 4

ISIT, 2013 July 9th 2013 12/ 17

slide-55
SLIDE 55

Distance and Span Properties

MiDAS → (Near) Maximum Distance And Span tradeoff Consider (n, k, m) Convolutional code: xi = m

j=0 si−jGj

States Column Distance in [0,3]

1 2 3 4

Column Distance: dT dT = min

[s0,...,sT ] s0=0

wt     

  • s0

. . . sT

    G0 G1 . . . GT G0 . . . GT−1 . . . ... . . . . . . G0          

ISIT, 2013 July 9th 2013 12/ 17

slide-56
SLIDE 56

Distance and Span Properties

MiDAS → (Near) Maximum Distance And Span tradeoff Consider (n, k, m) Convolutional code: xi = m

j=0 si−jGj

States Column Distance in [0,3]

1 2 3 4

Column Distance: dT dT = min

[s0,...,sT ] s0=0

wt     

  • s0

. . . sT

    G0 G1 . . . GT G0 . . . GT−1 . . . ... . . . . . . G0          

ISIT, 2013 July 9th 2013 12/ 17

slide-57
SLIDE 57

Distance and Span Properties

MiDAS → (Near) Maximum Distance And Span tradeoff Consider (n, k, m) Convolutional code: xi = m

j=0 si−jGj

States Trellis Diagram

1 2 3 4

States Trellis Diagram – Free Distance

1 2 3 4

States Column Distance in [0,3]

1 2 3 4

States Column Distance in [0,3]

1 2 3 4

States Column Span in [0,3]

1 2 3 4

Column Span: cT cT = min

[s0,...,sT ] s0=0

span     

  • s0

. . . sT

    G0 G1 . . . GT G0 . . . GT−1 . . . ... . . . . . . G0          

ISIT, 2013 July 9th 2013 12/ 17

slide-58
SLIDE 58

Column-Distance & Column Span Tradeoff

Theorem Consider a C(N, B, W) channel with delay T and W ≥ T + 1. A streaming code is feasible over this channel if and only if it satisfies: dT ≥ N + 1 and cT ≥ B + 1

ISIT, 2013 July 9th 2013 13/ 17

slide-59
SLIDE 59

Column-Distance & Column Span Tradeoff

Theorem Consider a C(N, B, W) channel with delay T and W ≥ T + 1. A streaming code is feasible over this channel if and only if it satisfies: dT ≥ N + 1 and cT ≥ B + 1 Theorem For any rate R convolutional code and any T ≥ 0 the Column-Distance dT and Column-Span cT satisfy the following:

  • R

1 − R

  • cT + dT ≤ T + 1 +

1 1 − R There exists a rate R code (MiDAS Code) over a sufficiently large field that satisfies:

  • R

1 − R

  • cT + dT ≥ T +

1 1 − R

ISIT, 2013 July 9th 2013 13/ 17

slide-60
SLIDE 60

Simulation Results

Gilbert-Eliott Channel (α, β) = (5 × 10−4, 0.5), T = 12 and R = 12/23

Gilbert Elliott Channel

Good State: Pr(loss) = ε Bad State: Pr(loss) = 1

  • ISIT, 2013 July 9th 2013

14/ 17

slide-61
SLIDE 61

Simulation Results

Gilbert-Eliott Channel (α, β) = (5 × 10−4, 0.5), T = 12 and R = 12/23

1 2 3 4 5 6 7 8 9 10 x 10

3

10

6

10

5

10

4

10

3

10

2

  • Loss Probability

Gilbert Channel (,) = (5x104,0.5) T = 12, Rate = 12/23 0.5 Uncoded MaximallyShort Code (N,B) = (1,11) StronglyMDS Code (N,B) = (6,6) MiDAS Code (N,B) = (2,9)

Code N B Code N B Strongly MDS 6 6 MiDAS 2 9 Burst-Erasure 1 11

ISIT, 2013 July 9th 2013 14/ 17

slide-62
SLIDE 62

Simulation Results - II

Gilbert-Eliott Channel (α, β) = (5 × 10−5, 0.2), T = 50 and R ≈ 0.6

1 2 3 4 5 6 7 8 9 10 x 10

3

10

6

10

5

10

4

10

3

  • Loss Probability

Gilbert Channel (,) = (5x105,0.2), Simulation Length = 108, T = 50, Rate = 50/88 0.6

MS (N,B) = (1,33) SBEC (N,B) = (20,20) MIDAS (N,B) = (4,30) PRC (N,B) = (4,25)

Code N B Code N B Strongly MDS 20 20 MiDAS 4 30 Burst-Erasure 1 33 PRC 4 25

ISIT, 2013 July 9th 2013 15/ 17

slide-63
SLIDE 63

Conclusions

Error Correction Codes for Real-Time Streaming Deterministic Channel Models C(N, B, W) Tradeoff between achievable N and B MiDAS Constructions Column-Distance and Column-Span Tradeoff Partial Recovery Codes for Burst + Isolated Erasures

ISIT, 2013 July 9th 2013 16/ 17

slide-64
SLIDE 64

Burst plus Isolated Erasures

CII(N, B, W) that in a window of length W introduces A burst erasure of length B plus one isolated erasure Upto N isolated erasures 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (3,2,7) 2 6 7 13 W=7

ISIT, 2013 July 9th 2013 17/ 17

slide-65
SLIDE 65

Burst plus Isolated Erasures

CII(N, B, W) that in a window of length W introduces A burst erasure of length B plus one isolated erasure Upto N isolated erasures 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (3,2,7) 2 6 7 13 W=7 Gilbert Elliott Channel

Good State: Pr(loss) = ε Bad State: Pr(loss) = 1

  • ISIT, 2013 July 9th 2013

17/ 17

slide-66
SLIDE 66

Burst plus Isolated Erasures

CII(N, B, W) that in a window of length W introduces A burst erasure of length B plus one isolated erasure Upto N isolated erasures 3 4 5 9 11 12 14 15 1 8 10 (N,B,W) = (3,2,7) 2 6 7 13 W=7 Partial Recovery Codes Layered Construction Partial Recovery for burst + isolated patterns

ISIT, 2013 July 9th 2013 17/ 17