Streaming Codes for Channels withBurst and Isolated Losses
Ashish Khisti
Department of Electrical and Computer EngineeringUniversity of Toronto
Joint work with:
Ahmed Badr (Toronto), Wai-Tian Tan (Cisco), John Apostolopoulos (Cisco)
Motivation - Audio Streaming
Audio Codec
Audio Waveform
0 Time (ms)
Packet Stream
10 20 30 40
Assumptions:
Audio Packets are generated uniformly, e.g. every 10 ms.
Maximum Playback Delay, e.g. T = 120 ms.
All packets are same size (a first order approximation)
2/ 34
Dynamics of Loss Patterns
Link:
(a): I.I.D. Erasure Sequence
Link:
(b): Burst Erasure Sequence
Capacity: Fraction of Erasures
Delay: Dynamics of Erasure Patterns
3/ 34
Block Codes - Example
(3,2) Block Code
s0 s1 p0 s2 s3 p1 s4 s5
(6,4) Block Code
s0 s1 p2 s2 s3 p1 s4 s5
Table : Comparison of Packet Loss Patterns
Error Sequence (3, 2) Code (6, 4) Code
Isolated Loss T = 3 T = 5
Two Consecutive Losses NA T = 6
4/ 34
Convolutional Codes - Example
Rate R = 2/3
s0 s1 s2 s3 s4 s5 s6 s7
p0 p1 p2 p3 p4 p5 p6 p7
Concatenate a parity-check packet to the source packet.
Size of parity-check is half the size of the source packet.
Less overhead due to header packets
Adaptive to the erasure patterns:
Single Loss: Like a (3, 2) codeTwo Losses: Like a (6, 4) code
5/ 34
Strongly-MDS Convolutional CodesH. Gluesing-Luerssen, J. Rosenthal and R. Smarandache (IT-2006)
(n,k,m) Convolu-onal
Code
xi = (xi,1, . . . , xi,n)si = (si,1, . . . , si,k)
Source Symbol: si Channel Symbol: xi
xi = si ·G0 + si−1 ·G1 + . . .+ si−m ·Gm, Gj ∈ Fk×nq
Column Distance: dT :
dT = min[s0,...,sT ]s0 6=0
wt
[s0 . . . sT]G0 G1 . . . GT
0 G0 . . . GT−1...
. . ....
0 . . . G0
wt(·): Hamming weight (symbol level).
6/ 34
Strongly-MDS Convolutional CodesH. Gluesing-Luerssen, J. Rosenthal and R. Smarandache (IT-2006)
Column-Distance (Costello ’1969):Trellis Path with the following properties:
Diverges from the all-zero state at t = 0Min. Weight in the interval [0, T ]
Sta
tes
Column Distance in [0,3]
Column Distance: dT :
dT = min[s0,...,sT ]s0 6=0
wt
[s0 . . . sT]G0 G1 . . . GT
0 G0 . . . GT−1...
. . ....
0 . . . G0
wt(·): Hamming weight (symbol level).
6/ 34
Strongly-MDS Convolutional CodesH. Gluesing-Luerssen, J. Rosenthal and R. Smarandache (IT-2006)
Sta
tes
Column Distance in [0,3]
Generalized Singleton Bound: dj ≤ (n− k)(j + 1) + 1, ∀j ≥ 0
Systematic Codes: xi = (si,pi), where pi ∈ Fn−kq
pi = si ·H0 + si−1 ·H1 + . . . si−M ·HM , Hi ∈ Fk×n−kq
m-MDS Codes: dj = (n− k)(j + 1) + 1 for j = 0, . . . ,m
7/ 34
Column Distance and Error Correction
s0 s1 sj
Encoder
k
xjx1x0n
n n
Channel Input
Interval: [0, (j + 1)n− 1], Column Distance: dj = (n− k)(j + 1) + 1
Erasure Sequence Condition Recovery: t = (j + 1)n− 1
Arbitrary N Erasures N < dj s0Burst Erasure B < dj All erased
[c, c+B − 1], 0 ≤ c < k symbols
8/ 34
Column Distance and Error Correction
s0 s1 sj
Encoder
k
xjx1x0n
n n
Channel Input
Erasures
Interval: [0, (j + 1)n− 1], Column Distance: dj = (n− k)(j + 1) + 1
Erasure Sequence Condition Recovery: t = (j + 1)n− 1
Arbitrary N Erasures N < dj s0Burst Erasure B < dj All erased
[c, c+B − 1], 0 ≤ c < k symbols
8/ 34
Column Distance and Error Correction
s0 s1 sj
Encoder
k
xjx1x0n
n n
Channel Input
Erasures s0
Interval: [0, (j + 1)n− 1], Column Distance: dj = (n− k)(j + 1) + 1
Erasure Sequence Condition Recovery: t = (j + 1)n− 1
Arbitrary N Erasures N < dj s0Burst Erasure B < dj All erased
[c, c+B − 1], 0 ≤ c < k symbols
8/ 34
Column Distance and Error Correction
s0 s1 sj
Encoder
k
xjx1x0n
n n
Channel Input
s0s1
Interval: [0, (j + 1)n− 1], Column Distance: dj = (n− k)(j + 1) + 1
Erasure Sequence Condition Recovery: t = (j + 1)n− 1
Arbitrary N Erasures N < dj s0Burst Erasure B < dj All erased
[c, c+B − 1], 0 ≤ c < k symbols
8/ 34
Column Distance & Error Correction - Packet Erasures
s0 s1 sj
Encoder
k
xjx1x0n
xjx1x0Packet Erasure Channel
Interval: [0, j], Column Distance: dj = (n− k)(j + 1) + 1
Erasure Sequence Condition Recovery: t = j
Arbitrary N Erasures N ≤ (1−R)(j + 1) s0Burst Erasure: [0, B − 1] B ≤ (1−R)(j + 1) All erased symbols
9/ 34
Burst-Erasure Channel : OptimalityMartinian and Sundberg (2004)
s0 s1 sj
Encoder
k
xjx1x0n
xjx1x0Packet Erasure Channel
Decoder
sT sT+1
s0 s1
xT+1
xT+1xT
xT
Delay = T 10/ 34
Burst-Erasure Channel : OptimalityMartinian and Sundberg (2004)
Source Model : s[t] ∈ (Fq)k
Streaming Encoder: x [t] = ft (s[0], . . . , s[t]), x [t] ∈ (Fq)n
Burst Erasure Channel: Maximum burst length = B
Delay-Constrained Decoder: s[t] = gt(y [0], . . . , y [t+ T ])
Rate R = kn
Streaming Capacity (Burst Erasure Channels)
A rate R is achievable, if there is a sequence of encoding anddecoding functions, ft(·) and gt(·) respectively, over a sufficientlylarge field Fq with R = k
n . The supremum of achievable rates isthe streaming capacity.
10/ 34
Burst-Erasure Channel : OptimalityMartinian and Sundberg (2004)
Streaming Capacity
For the burst erasure channel, the capacity C is a function of
Delay T
Erasure burst length B
C =
{T
T+B , T ≥ B0, otherwise
11/ 34
Burst-Erasure Channel : OptimalityMartinian and Sundberg (2004)
Immediate extension to multiple bursts with a guard intervalof T or more symbols.
0 1 2 3 4 5 6 7 8 9
B=2
T=3
s0 s1 s5 s6
C > RmMDS = 1− BT+1
0 1 2 3 4
B=2
T=3
s0 s1 Streaming Code, R=3/5
0 1 2 3 4
B=2
T=3
s0, s1 mMDS Code, R=1/2
11/ 34
Streaming Capacity : Code ConstructionMartinian and Sundberg (2004), Martinian and Trott (2007)
Example: B = 2, T = 3, C = 3/5
Step 1: Block Code: (a, b, c)→ (a, b, c, a+ c, b+ c)
Step 2: Diagonal Interleaving:st = (at, bt, ct) =⇒ xt = (at, bt, ct, at−3 + ct−1, bt−3 + ct−2).
x[i − 1] x[i] x[i + 1] x[i + 2] x[i + 3] x[i + 4]
ai−1 ai ai+1 ai+2 ai+3 ai+4
bi−1 bi bi+1 bi+2 bi+3 bi+4
ci−1 ci ci+1 ci+2 ci+3 ci+4
ai−4 + ci−2 ai−3 + ci−1 ai−2 + ci ai−1 + ci+1 ai + ci+2 ai+1 + ci+3
bi−4 + ci−3 bi−3 + ci−2 bi−2 + ci−1 bi−1 + ci bi + ci+1 bi+1 + ci+2
General Construction: Two Step Approach
Converse: Periodic Erasure Channel.
12/ 34
Summary So Far ...
s0 s1 sj
Encoder
k
xjx1x0n
xjx1x0Packet Erasure Channel
Decoder
sT sT+1
s0 s1
xT+1
xT+1xT
xT
Delay = T
Burst Erasures Arbitrary Erasures
Martinian-Sundberg- Optimal Not Feasible
Conv. MDS Codes Feasible Feasible
13/ 34
Gilbert-Elliott Channels
Gilbert Elliott Channel
Good State: Pr(loss) = ε
Bad State: Pr(loss) = 1
Good Bad
ȕ
1-ȕ
Į
1-Į
14/ 34
Gilbert-Elliott Channels
Gilbert Elliott Channel
Good State: Pr(loss) = ε
Bad State: Pr(loss) = 1
Good Bad
ȕ
1-ȕ
Į
1-Į
Bad State Good State Bad State
Loss Pattern
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 160
0.1
0.2
0.3
0.4
0.5
Gilbert Channel ( , ) = (5x10 4,0.5) Simulation Length = 107
Burst Length
Prob
abili
ty o
f Occ
uren
ce
14/ 34
Simulation ResultsGilbert-Elliott Channel (α, β) = (5× 10−4, 0.5), T = 12 and R ≈ 0.5
1 2 3 4 5 6 7 8 9 10x 10 3
10 5
10 4
10 3
10 2
10 1Lo
ss P
roba
bilit
y
Gilbert Elliott Channel ( , ) = (5E 4,0.5), T = 12
Code N B Code N B
m-MDS 6 6 MiDAS 2 9
Burst-Erasure 1 11
15/ 34
Sliding Window Erasure Channel
Good Bad
ȕ
1-ȕ
Į
1-Į
Gilbert-Elliott Model
Bad State Good State Bad State
Loss Pattern
Sliding Window Erasure Channel: C(N,B,W )
In any sliding window of length W , the channel can introduce onlyone of the following:
An erasure burst of maximum length B
Upto N erasures in arbitrary positions
16/ 34
Streaming Codes with Burst & Isolated ErasuresBadr-Patil-Khisti-Tan-Apostolopoulos, IEEE Trans. on Inform. Theory (To Appear 2015)
Theorem
Consider the C(N,B,W ) channel, with W ≥ B + 1, and let thedelay be T .Upper-Bound 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.
17/ 34
Revisiting Martinian-Sundberg ConstructionmMDS Codes (Gluesing-Luerssen-Rosenthan-Smarandache ’06)
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
Recover s0, s1, s2, s3
s0
p0 p1 p2 p3 p4 p5 p6 p7
xi
s1 s2 s3 s4 s5 s6 s7kn
pi = si ·H0 + si−1 ·H1 + . . .+ si−M ·HM , Hi ∈ Fk×n−kq
p4
p5
p6
p7
=
H4 H3 H2 H1
H5 H4 H3 H2
0 H5 H4 H3
0 0 H5 H4
︸ ︷︷ ︸
full rank
s0s1s2s3
18/ 34
Revisiting Martinian-Sundberg ConstructionmMDS Codes (Gluesing-Luerssen-Rosenthan-Smarandache ’06)
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
Recover s0, s1, s2, s3
s0
p0 p1 p2 p3 p4 p5 p6 p7
xi
s1 s2 s3 s4 s5 s6 s7kn
pi = si ·H0 + si−1 ·H1 + . . .+ si−M ·HM , Hi ∈ Fk×n−kq
p4
p5
p6
p7
=
H4 H3 H2 H1
H5 H4 H3 H2
0 H5 H4 H3
0 0 H5 H4
︸ ︷︷ ︸
full rank
s0s1s2s3
18/ 34
Revisiting Martinian-Sundberg ConstructionmMDS Codes (Gluesing-Luerssen-Rosenthan-Smarandache ’06)
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
Recover s0, s1, s2, s3
s0
p0 p1 p2 p3 p4 p5 p6 p7
xi
s1 s2 s3 s4 s5 s6 s7kn
pi = si ·H0 + si−1 ·H1 + . . .+ si−M ·HM , Hi ∈ Fk×n−kq
p4
p5
p6
p7
=
H4 H3 H2 H1
H5 H4 H3 H2
0 H5 H4 H3
0 0 H5 H4
︸ ︷︷ ︸
full rank
s0s1s2s3
18/ 34
Revisiting Martinian-Sundberg ConstructionmMDS Codes (Gluesing-Luerssen-Rosenthan-Smarandache ’06)
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
Recover s0, s1, s2, s3
s0
p0 p1 p2 p3 p4 p5 p6 p7
xi
s1 s2 s3 s4 s5 s6 s7kn
pi = si ·H0 + si−1 ·H1 + . . .+ si−M ·HM , Hi ∈ Fk×n−kq
p4
p5
p6
p7
=
H4 H3 H2 H1
H5 H4 H3 H2
0 H5 H4 H3
0 0 H5 H4
︸ ︷︷ ︸
full rank
s0s1s2s3
18/ 34
Revisiting Martinian-Sundberg ConstructionmMDS Codes (Gluesing-Luerssen-Rosenthan-Smarandache ’06)
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
Recover s0, s1, s2, s3
s0
p0 p1 p2 p3 p4 p5 p6 p7
xi
s1 s2 s3 s4 s5 s6 s7kn
pi = si ·H0 + si−1 ·H1 + . . .+ si−M ·HM , Hi ∈ Fk×n−kq
p4
p5
p6
p7
=
H4 H3 H2 H1
H5 H4 H3 H2
0 H5 H4 H3
0 0 H5 H4
︸ ︷︷ ︸
full rank
s0s1s2s3
18/ 34
Revisiting Martinian-Sundberg ConstructionmMDS Codes (Gluesing-Luerssen-Rosenthan-Smarandache ’06)
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
Recover s0, s1, s2, s3
s0
p0 p1 p2 p3 p4 p5 p6 p7
xi
s1 s2 s3 s4 s5 s6 s7kn
pi = si ·H0 + si−1 ·H1 + . . .+ si−M ·HM , Hi ∈ Fk×n−kq
p4
p5
p6
p7
=
H4 H3 H2 H1
H5 H4 H3 H2
0 H5 H4 H3
0 0 H5 H4
︸ ︷︷ ︸
full rank
s0s1s2s3
18/ 34
Revisiting Martinian-Sundberg ConstructionmMDS Codes (Gluesing-Luerssen-Rosenthan-Smarandache ’06)
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
Recover s0, s1, s2, s3
s0
p0 p1 p2 p3 p4 p5 p6 p7
xi
s1 s2 s3 s4 s5 s6 s7kn
pi = si ·H0 + si−1 ·H1 + . . .+ si−M ·HM , Hi ∈ Fk×n−kq
p4
p5
p6
p7
=
H4 H3 H2 H1
H5 H4 H3 H2
0 H5 H4 H3
0 0 H5 H4
︸ ︷︷ ︸
full rank
s0s1s2s3
18/ 34
Revisiting Martinian-Sundberg ConstructionmMDS Codes (Gluesing-Luerssen-Rosenthan-Smarandache ’06)
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
Recover s0, s1, s2, s3
s0
p0 p1 p2 p3 p4 p5 p6 p7
xi
s1 s2 s3 s4 s5 s6 s7kn
pi = si ·H0 + si−1 ·H1 + . . .+ si−M ·HM , Hi ∈ Fk×n−kq
p4
p5
p6
p7
=
H4 H3 H2 H1
H5 H4 H3 H2
0 H5 H4 H3
0 0 H5 H4
︸ ︷︷ ︸
full rank
s0s1s2s3
18/ 34
Revisiting Martinian-Sundberg ConstructionmMDS Codes (Gluesing-Luerssen-Rosenthan-Smarandache ’06)
s0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
ns0p0 p1 p2 p3 p4 p5 p6 p7
xis1 s2 s3 s4 s5 s6 s7k
n
Recover s0, s1, s2, s3
s0
p0 p1 p2 p3 p4 p5 p6 p7
xi
s1 s2 s3 s4 s5 s6 s7kn
pi = si ·H0 + si−1 ·H1 + . . .+ si−M ·HM , Hi ∈ Fk×n−kq
p4
p5
p6
p7
=
H4 H3 H2 H1
H5 H4 H3 H2
0 H5 H4 H3
0 0 H5 H4
︸ ︷︷ ︸
full rank
s0s1s2s3
18/ 34
Revisiting Martinian-Sundberg ConstructionB = 4, T = 8, R = T
T+B= 2
3
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
19/ 34
Revisiting Martinian-Sundberg ConstructionB = 4, T = 8, R = T
T+B= 2
3
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
19/ 34
Revisiting Martinian-Sundberg ConstructionB = 4, T = 8, R = T
T+B= 2
3
u0u-8
u1u-7
u2u-6
u3u-5
u4u-4
u5u-3
u6u-2
u7u-1
u8u0
u9u1
u10u2
u11u3
v0p0
v1p1
v2p2
v3p3
v4p4
v5p5
v6p6
v7p7
v8p8
v9p9
v10p10
v11p11
vu
uu
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+v3u+v
=12
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+v2 u+v
=23
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
sixi
uv
u
R= uv2uv
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+v2 u+v
=23
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
uv
u
R= uv2uv
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 u
1u2
u3
s0
s1
s2
s3
xi
u
v
u
R= u+v2 u+v
=23
Encoding:
1 Source Splitting: si = (ui,vi), ui ∈ FBq , vi ∈ FT−B
q
2 Erasure Code on vi: Generate vi → (vi,pi) where pi ∈ FBq is obtained from a
m-MDS code.
3 Repetition Code on ui: Repeat the ui symbols with a shift of T
4 Merging: Combine the repeated ui’s with the pi’s
5 Rate: R = TT+B
20/ 34
Revisiting Martinian-Sundberg ConstructionB = 4, T = 8, R = T
T+B= 2
3
u0u-8
u1u-7
u2u-6
u3u-5
u4u-4
u5u-3
u6u-2
u7u-1
u8u0
u9u1
u10u2
u11u3
v0p0
v1p1
v2p2
v3p3
v4p4
v5p5
v6p6
v7p7
v8p8
v9p9
v10p10
v11p11
vu
uu
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+v3u+v
=12
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+v2 u+v
=23
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
sixi
uv
u
R= uv2uv
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+v2 u+v
=23
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
uv
u
R= uv2uv
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 u
1u2
u3
s0
s1
s2
s3
xi
u
v
u
R= u+v2 u+v
=23
Encoding:
1 Source Splitting: si = (ui,vi), ui ∈ FBq , vi ∈ FT−B
q
2 Erasure Code on vi: Generate vi → (vi,pi) where pi ∈ FBq is obtained from a
m-MDS code.
3 Repetition Code on ui: Repeat the ui symbols with a shift of T
4 Merging: Combine the repeated ui’s with the pi’s
5 Rate: R = TT+B
20/ 34
Revisiting Martinian-Sundberg ConstructionB = 4, T = 8, R = T
T+B= 2
3
u0u-8
u1u-7
u2u-6
u3u-5
u4u-4
u5u-3
u6u-2
u7u-1
u8u0
u9u1
u10u2
u11u3
v0p0
v1p1
v2p2
v3p3
v4p4
v5p5
v6p6
v7p7
v8p8
v9p9
v10p10
v11p11
vu
uu
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+v3u+v
=12
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+v2 u+v
=23
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
sixi
uv
u
R= uv2uv
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+v2 u+v
=23
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
uv
u
R= uv2uv
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 u
1u2
u3
s0
s1
s2
s3
xi
u
v
u
R= u+v2 u+v
=23
Encoding:
1 Source Splitting: si = (ui,vi), ui ∈ FBq , vi ∈ FT−B
q
2 Erasure Code on vi: Generate vi → (vi,pi) where pi ∈ FBq is obtained from a
m-MDS code.
3 Repetition Code on ui: Repeat the ui symbols with a shift of T
4 Merging: Combine the repeated ui’s with the pi’s
5 Rate: R = TT+B
20/ 34
Revisiting Martinian-Sundberg ConstructionB = 4, T = 8, R = T
T+B= 2
3
u0u-8
u1u-7
u2u-6
u3u-5
u4u-4
u5u-3
u6u-2
u7u-1
u8u0
u9u1
u10u2
u11u3
v0p0
v1p1
v2p2
v3p3
v4p4
v5p5
v6p6
v7p7
v8p8
v9p9
v10p10
v11p11
vu
uu
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+v3u+v
=12
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+v2 u+v
=23
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
sixi
uv
u
R= uv2uv
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+v2 u+v
=23
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
uv
u
R= uv2uv
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 u
1u2
u3
s0
s1
s2
s3
xi
u
v
u
R= u+v2 u+v
=23
Encoding:
1 Source Splitting: si = (ui,vi), ui ∈ FBq , vi ∈ FT−B
q
2 Erasure Code on vi: Generate vi → (vi,pi) where pi ∈ FBq is obtained from a
m-MDS code.
3 Repetition Code on ui: Repeat the ui symbols with a shift of T
4 Merging: Combine the repeated ui’s with the pi’s
5 Rate: R = TT+B
20/ 34
Revisiting Martinian-Sundberg ConstructionB = 4, T = 8, R = T
T+B= 2
3
u0u-8
u1u-7
u2u-6
u3u-5
u4u-4
u5u-3
u6u-2
u7u-1
u8u0
u9u1
u10u2
u11u3
v0p0
v1p1
v2p2
v3p3
v4p4
v5p5
v6p6
v7p7
v8p8
v9p9
v10p10
v11p11
vu
uu
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+v3u+v
=12
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+v2 u+v
=23
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
sixi
uv
u
R= uv2uv
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+v2 u+v
=23
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
uv
u
R= uv2uv
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 u
1u2
u3
s0
s1
s2
s3
xi
u
v
u
R= u+v2 u+v
=23
Encoding:
1 Source Splitting: si = (ui,vi), ui ∈ FBq , vi ∈ FT−B
q
2 Erasure Code on vi: Generate vi → (vi,pi) where pi ∈ FBq is obtained from a
m-MDS code.
3 Repetition Code on ui: Repeat the ui symbols with a shift of T
4 Merging: Combine the repeated ui’s with the pi’s
5 Rate: R = TT+B
20/ 34
Revisiting Martinian-Sundberg ConstructionB = 4, T = 8, R = T
T+B= 2
3
u0u-8
u1u-7
u2u-6
u3u-5
u4u-4
u5u-3
u6u-2
u7u-1
u8u0
u9u1
u10u2
u11u3
v0p0
v1p1
v2p2
v3p3
v4p4
v5p5
v6p6
v7p7
v8p8
v9p9
v10p10
v11p11
vu
uu
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+v3u+v
=12
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+v2 u+v
=23
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
sixi
uv
u
R= uv2uv
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+v2 u+v
=23
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
uv
u
R= uv2uv
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 u
1u2
u3
s0
s1
s2
s3
xi
u
v
u
R= u+v2 u+v
=23
Encoding:
1 Source Splitting: si = (ui,vi), ui ∈ FBq , vi ∈ FT−B
q
2 Erasure Code on vi: Generate vi → (vi,pi) where pi ∈ FBq is obtained from a
m-MDS code.
3 Repetition Code on ui: Repeat the ui symbols with a shift of T
4 Merging: Combine the repeated ui’s with the pi’s
5 Rate: R = TT+B
20/ 34
Revisiting Martinian-Sundberg ConstructionB = 4, T = 8, R = T
T+B= 2
3
u0u-8
u1u-7
u2u-6
u3u-5
u4u-4
u5u-3
u6u-2
u7u-1
u8u0
u9u1
u10u2
u11u3
v0p0
v1p1
v2p2
v3p3
v4p4
v5p5
v6p6
v7p7
v8p8
v9p9
v10p10
v11p11
vu
uu
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+v3u+v
=12
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+v2 u+v
=23
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
sixi
uv
u
R= uv2uv
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+v2 u+v
=23
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
uv
u
R= uv2uv
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 u
1u2
u3
s0
s1
s2
s3
xi
u
v
u
R= u+v2 u+v
=23
Encoding:
1 Source Splitting: si = (ui,vi), ui ∈ FBq , vi ∈ FT−B
q
2 Erasure Code on vi: Generate vi → (vi,pi) where pi ∈ FBq is obtained from a
m-MDS code.
3 Repetition Code on ui: Repeat the ui symbols with a shift of T
4 Merging: Combine the repeated ui’s with the pi’s
5 Rate: R = TT+B
20/ 34
Revisiting Martinian-Sundberg ConstructionB = 4, T = 8, R = T
T+B= 2
3
u0u-8
u1u-7
u2u-6
u3u-5
u4u-4
u5u-3
u6u-2
u7u-1
u8u0
u9u1
u10u2
u11u3
v0p0
v1p1
v2p2
v3p3
v4p4
v5p5
v6p6
v7p7
v8p8
v9p9
v10p10
v11p11
vu
uu
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+v3u+v
=12
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+v2 u+v
=23
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
sixi
uv
u
R= uv2uv
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+v2 u+v
=23
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
uv
u
R= uv2uv
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 u
1u2
u3
s0
s1
s2
s3
xi
u
v
u
R= u+v2 u+v
=23
Encoding:
1 Source Splitting: si = (ui,vi), ui ∈ FBq , vi ∈ FT−B
q
2 Erasure Code on vi: Generate vi → (vi,pi) where pi ∈ FBq is obtained from a
m-MDS code.
3 Repetition Code on ui: Repeat the ui symbols with a shift of T
4 Merging: Combine the repeated ui’s with the pi’s
5 Rate: R = TT+B
20/ 34
Revisiting Martinian-Sundberg ConstructionBurst Erasure Channel, R = T
T+B
1 Source Splitting: si = (ui,vi), ui ∈ FBq , vi ∈ FT−B
q
2 Erasure Code on vi: Generate vi → (vi,pi) where pi ∈ FBq is obtained from a
m-MDS code.
3 Repetition Code on ui: Repeat the ui symbols with a shift of T
4 Merging: Combine the repeated ui’s with the pi’s
21/ 34
Robust Extension: C(N,B,W ) ChannelLayered Code Design
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 lq
0
Burst-Erasure Streaming Code: (ui,vi,pi + ui−T )
Erasure Code: qi =∑M
t=1 ui−t ·Hut , qi ∈ Fl
q
Concatenation: (ui,vi,pi + ui−T ,qi)
R =T
T +B + l
22/ 34
Robust Extension: C(N,B,W ) ChannelLayered Code Design
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 lq
0
Recovery from Isolated Losses
(ui,qi) =⇒ Recover ui
(vi,pi) =⇒ Recover vi(1− u
l + u
)(T + 1) ≥ N
Attains the lower bound.22/ 34
Robust Extension: C(N,B,W ) ChannelLayered Code Design
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 lq
0
u0u2
Recovery from Isolated Losses
(ui,qi) =⇒ Recover ui
(vi,pi) =⇒ Recover vi(1− u
l + u
)(T + 1) ≥ N
Attains the lower bound.22/ 34
Robust Extension: C(N,B,W ) ChannelLayered Code Design
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
v0v2
Recovery from Isolated Losses
(ui,qi) =⇒ Recover ui
(vi,pi) =⇒ Recover vi(1− u
l + u
)(T + 1) ≥ N
Attains the lower bound.22/ 34
Back to Diagonally InterleavingBadr-Patil-Khisti-Tan-Apostolopoulos, IEEE Trans. on Inform. Theory (To Appear 2015)
Field Size of mMDS: exponentially in T .Alternative MiDAS Construction: Diagonally Interleaved MDSCodes (satisfy Thm. 1)Field Size Θ(T 3)Slight increase in error probability due to weaker partialrecovery.
1 2 3 4 5 6 7 8 9 10x 10ï3
10ï5
10ï4
¡
Loss
Pro
babi
lity
Gilbert Channel ï (_,`) = (10ï5,0.1), Simulation Length = 108, T = 50, Rate = 50/99 5 0.51
StronglyïMDS (N= B = 25)(51,26) MDS (N = B = 25)MSïSMDS (N,B) = (1,49)MSïMDS (N,B) = (1,49)PRCïSMDS (6,N,B) = (47,5,39)PRCïMDS (6,N,B) = (48,5,38)
23/ 34
(Packet-Level) Distance and Span Properties
Packet Level Column Distance: dT
dT = min[s0,...,sT ]s0 6=0
wt
[s0 . . . sT]G0 G1 . . . GT
0 G0 . . . GT−1...
. . ....
0 . . . G0
Packet-Level Column Span: cT
cT = min[s0,...,sT ]s0 6=0
span
[s0 . . . sT]G0 G1 . . . GT
0 G0 . . . GT−1...
. . ....
0 . . . G0
24/ 34
(Packet-Level) Column-Distance & Column-Span TradeoffBadr-Patil-Khisti-Tan-Apostolopoulos (To Appear T-IT 2015)
Theorem
Consider a C(N,B,W ) channel with delay T and W ≥ T + 1. Astreaming code is feasible over this channel if and only if itsatisfies: dT ≥ N + 1 and cT ≥ B + 1
Theorem
For any rate R convolutional code and any T ≥ 0 theColumn-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 largefield that satisfies:(
R
1−R
)cT + dT ≥ T +
1
1−R
25/ 34
(Packet-Level) Column-Distance & Column-Span TradeoffBadr-Patil-Khisti-Tan-Apostolopoulos (To Appear T-IT 2015)
Theorem
Consider a C(N,B,W ) channel with delay T and W ≥ T + 1. Astreaming code is feasible over this channel if and only if itsatisfies: dT ≥ N + 1 and cT ≥ B + 1
Theorem
For any rate R convolutional code and any T ≥ 0 theColumn-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 largefield that satisfies:(
R
1−R
)cT + dT ≥ T +
1
1−R
25/ 34
Summary of Distance/Span Metrics
Table : Column Distance and Column Span Metrics
Packet Level Symbol Level
Col. dT ≤ (1−R)(T + 1) + 1 dj ≤ (n− k)(j + 1) + 1Distance (Gluesing-Luerssen et. al. 06)
Col. cT ≤ min(1−RR , 1
)T + 1 cj≤(n− k)(j + 1+bn−kk jc)+1
Span (Martinian-Sundberg ’04) (Badr ’14)
Trade-(
R1−R
)cT+dT ≤ T+ 1
1−R+1 Open Problem
off Approximate Optimality
26/ 34
Multicast Streaming CodesBadr-Khisti-Martinian (JSAC 2011) Badr-Khisti-Lui (IT Trans. 2015)
Src. StreamEncoder
B1
B2
X[i]Decoder 1
Decoder 2
Delay = T1
Delay = T2
Burst ErasureBroadcast Channel
Motivation
Common Source Stream, Multiple Receivers
B1 < B2
Receiver 1 : Good Channel State
Receiver 2: Weaker Channel State
Delay adapts to Channel State
27/ 34
Multicast Streaming CodesBadr-Khisti-Martinian (JSAC 2011) Badr-Khisti-Lui (IT Trans. 2015)
Src. StreamEncoder
B1
B2
X[i]Decoder 1
Decoder 2
Delay = T1
Delay = T2
Burst ErasureBroadcast Channel
Column-Span
A streaming code is feasible on the (B1, T1, B2, T2) multicastchannel if and only if:
cT1 ≥ B1 + 1
cT2 ≥ B2 + 1
27/ 34
Diversity Embedded Streaming Codes: DE-SCoBadr-Khisti-Martinian (JSAC, March 2011)
Src. StreamEncoder
B1
B2
X[i]Decoder 1
Decoder 2
Delay = T1
Delay = T2
Burst ErasureBroadcast Channel
Theorem
There exists a {(B1, T1), (B2, T2)} multicast streaming code ofrate R = T1
T1+B1provided
T2 ≥ T ?2 ,
B2
B1T1+B1.
T ?2 is the minimum such threshold.
28/ 34
Multicast Streaming CapacityBadr-Khisti-Lui (IT Trans. 2015)
Assume w.l.o.g. B2 ≥ B1
T1
T2
(B1, B2)
B1 + B2
B2
E
C B
D
A
Region Capacity
A
B
C
D
E Partial Characterization
22
2
BTT+
21
1
BTT+
11
1
BTT+
212
12
BBTBT+−
−
T2=T1+B1
T2=T1
111
22 BT
BBT +=
DE-SCo
SCo
29/ 34
Network StreamingMahmood-Badr-Khisti (ISIT 2015)
Channel Input: xt ∈ (FqM )n (Extension Field)
Channel Matrix: At ∈ Fqn×n (Base Field)
Chanel Output yt = xtAt
Delay constraint T
st = ft(y0, . . . ,yt+T )
30/ 34
Network StreamingMahmood-Badr-Khisti (ISIT 2015)
Column Sum Rank:
dR(j, C) = min(x0,...,xj)∈C
s0 6=0
j∑t=0
rank φ(xt) ≤ (n− k)(j + 1) + 1
Theorem
Within the interval [0, T ] the source symbol s0 is recoverable attime t = T if and only if
T∑j=0
rankdef Aj < dR(T, C)
Construction of Maximum-Sum-Rank (MSR) convolutional codes.
31/ 34
MSR Code ConstructionMahmood-Badr-Khisti (ISIT 2015)
T constructed using the approach in (Almeida-Napp-Pinto’13)
T=
T0 T1 . . . Tm
T0 . . . Tm−1. . .
...T0
,Tj =
α[nj] . . . α[n(j+1)−1]
α[nj+1] . . . α[n(j+1)]
.... . .
...
α[n(j+1)−1] . . . α[n(j+2)−2]
T0 T1 . . . Tm
T0 . . . Tm−1. . .
...T0
A0
A1
. . .
Am
=
F0,0 F1,1 . . . Fm,m
F0,1 . . . Fm−1,m. . .
...F0,m
Theorem
Let T be the above construction with α ∈ Fq[n(m+2)−1] that is
primitive and normal. Then TA[0,m] is super-regular when allrank(At) = n for all At.
32/ 34
Other Extensions
Field Size Constraints: Diagonally Interleaved Codes(Badr-Khisti-Tan-Apostolopoulos 2014)
Mismatched Streaming Codes (Patil-Badr-Khisti-Tan Asilomar2013)
Partial Recovery Streaming Codes(Badr-Khisti-Tan-Apostolopoulos JSTSP 2014)
Multiple Erasure Bursts (Li-Khisti-Girod Asilomar 2011) -Interleaved Low-Delay Codes
Multiple Links (Lui-Badr-Khisti CWIT 2011) - Layered codingfor burst erasure channels
Multiple Source Streams with Different Decoding Delays (Lui(Unpublished) 2011) - Embedded Codes
Other Results
Leong-Ho (ISIT 2012), Leong-Qureshi-Ho (ISIT 2013), N.Adler and Y. Cassuto (ISIT 2015)
33/ 34
Conclusions
Real-Time Communication over Channels with Burst and IsolatedErasures
Sliding Window Erasure Channel Model
MiDAS Codes: Near Optimal Distance/Span Tradeoff
Layering Approach
Distance and Span Metrics
Future Work
Systems Theoretic Approach (e.g. Dual Codes for MiDASCodes)
Analysis of probabilistic channels
Several open problems!
34/ 34