powerpoint presentation · burst-erasure channels 6 any code with t (constant), b and r satisfies...
TRANSCRIPT
Low-Delay Codes Minimizing the Average Delay Among Lost Packets
1
Yuval Cassuto joint work with:
Nitzan Adler
Technion, EE
BIRS 15w5150
[ISIT ’15: Low-Delay Erasure-Correcting Codes
with Optimal Average Delay]
Coding performance classification
2
Deterministic Stochastic
worst-case , adversarial expected
average
Do not confuse!
Burst-erasure channel
3
packets of
data & parity
symbols
Burst-erasure
B sequential
packets are erased
Low delay codes
4
Trading-off information rate, error tolerance and decoding delay.
Decoding delay
Information
rate
Error
tolerance
Classical
Error-correcting
codes
5
Decoding delay
The decoding delay is the number of packets from a packet erasure to its reconstruction.
i
B erased packets The packets that participate
in the reconstruction
T
The ‘i’-th packet is
reconstructed
Review: Low-delay codes for burst-erasure channels
6
Any code with T (constant), B and R satisfies the lower bound:
B [packets]– the burst length
T [packets]– the constant delay
R – the code rate
• Martinian & Sundberg “Burst erasure correction codes with low decoding delay” (2004)
𝑇 ≥ 𝐵 ∙
𝑅
1 − 𝑅 , 𝑅 ≥
1
2
𝐵 , 𝑅 <1
2
Low delay codes – some previous work
7
• Martinian & Trott, “Delay-optimal burst erasure code construction” (2007)
• Li, Khisti, Girod, “Correcting erasure bursts with minimum decoding delay” (2011)
• Badr, Khisti, Martinian, “Diversity embedded streaming erasure codes (de-sco): Constructions and optimality”(2011)
• …
Streaming in the old world
8
6 5 4 3 2 1 6 5 4 3 2 1
Streaming in the new world
9
6 5 4 3 2 1 6 5 4 3 2 1
10
6 5 4 3 2 1
𝑇 → 𝑇
Low average delay is translated to more information available for processing
6 5 4 3 2 1
Heterogeneous delay codes - Parameter definitions
11
packet : th-’iThe delay of the ‘
Average delay:
𝑇 = 𝑇𝑖𝐵𝑖=1
𝐵
B erased
packets
The packets that
participate in the
reconstruction
T1
Ti
TB
Reconstruction delay
12
:reconstruction delayThe
𝜅𝑖= 𝑇𝑖 − (𝐵 − 𝑖)
i
B erased
packets
The packets that
participate in the
reconstruction
Ti
𝜅i
𝑇 = 𝜅 +𝐵−1
2
Example: Reconstruction delay for constant-delay codes
13
B erased packets The packets that participate
in the reconstruction
𝜅 B
𝜅 B-1
𝜅 2
𝜅 1
𝜅1 + 𝐵 − 1 = 𝜅2 + (𝐵 − 2) = ⋯ = 𝜅𝐵−1 + 1 = 𝜅𝐵= 𝑇
Lower bound on average delay Theorem:
The average delay 𝑇 obtained for a decoding instance following an erasure burst of length B, must satisfy:
𝑇 ≥
𝑅
1 − 𝑅⋅𝐵 + 1
2+𝐵 − 1
2 , 𝑅 ≥
1
2
𝐵
2
𝑅
1 − 𝑅+ 1 ,
1
2> 𝑅 ≥
1
1 + 𝐵
𝐵 + 1
2 , 𝑅 <
1
1 + 𝐵
14
Lower bounds comparison
15
Ex.: 𝐵 = 4
Per packet: S data symbols, P parity symbols
* A similar proof can be done for non-systematic codes.
Lower bound on average delay- Proof
16
1st reconstructed packet 𝜅𝑓𝑖𝑟𝑠𝑡≥
𝑆
𝑃
2nd reconstructed packet
𝜅𝑠𝑒𝑐𝑜𝑛𝑑≥
2𝑆
𝑃
last reconstructed packet
𝜅𝑙𝑎𝑠𝑡≥
𝐵𝑆
𝑃
𝜅 ≥
𝑆𝑃+
2𝑆𝑃
+⋯+𝐵𝑆𝑃
𝐵
Lower bound on average delay- Proof
17
𝑹 ≥𝟏
𝟐:
𝜅 ≥
𝑆𝑃+
2𝑆𝑃
+⋯+𝐵𝑆𝑃
𝐵≥
𝑆𝑃+2𝑆𝑃+⋯+
𝐵𝑆𝑃
𝐵=
𝑅
1 − 𝑅⋅𝐵 + 1
2
𝑇 ≥
R
1 − R⋅𝐵 + 1
2+𝐵 − 1
2
The bound may only be met for 𝑅 =𝑚
1+𝑚 , 𝑚 ∈ ℤ+
Lower bound on average delay
18
𝟏
𝟏+𝑩≤ 𝑹 <
𝟏
𝟐:
𝜅 ≥
𝑆𝑃+
2𝑆𝑃
+⋯+𝐵𝑆𝑃
𝐵≥ … ≥
𝑅
1 − 𝑅⋅𝐵
2+1
2
𝑇 ≥
𝐵
2
𝑅
1 − 𝑅+ 1
The bound may only be met for 𝑅 =1
1+𝑚 and
𝐵
𝑚∈ ℤ+ , m∈ ℤ+
𝑹 <𝟏
𝟏+𝑩:
κ ≥ 1 (trivial)
𝑇 ≥
𝐵 + 1
2
Desired reconstruction schedule
19
𝐦𝐁 Burst
erasure
𝐦
time
Construction with constant delay [Martinian et. al 2004]
20
𝒅𝒂𝒕𝒂 𝒑𝒂𝒓𝒊𝒕𝒚
𝐦 = 𝟐 , 𝐁 = 𝟑
R =𝟐
𝟑
Burst
erasure
time
𝑅 =𝑚
1 +𝑚
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
𝑖
P i = 𝑠0 𝑖 − 𝐵 + 𝑠1 𝑖 − 2𝐵
𝑠0 𝑠1
Martinian’s reconstruction schedule
21
𝐦𝐁 Burst
erasure
𝐁
Nothing decoded!
time
Desired reconstruction schedule
22
𝐦𝐁 Burst
erasure
𝐦
Encoder?
P{ }
P{ }
P{ }
P{ }
Optimal average-delay construction (R>1/2)
23
𝒅𝒂𝒕𝒂 𝒑𝒂𝒓𝒊𝒕𝒚
Burst
erasure
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
𝑅 =𝑚
1 +𝑚
weren’t
erased
P i = 𝑠 𝑖 2 𝑖 − 𝑖 2 − 1 + 𝑠 𝑖 2 𝑖 − 𝑖 2 − 1 − 𝐵 +𝑠 𝑖 2 𝑖 − 𝑖 2 − 1 − 2𝐵
𝐦 = 𝟐 , 𝐁 = 𝟑
R =𝟐
𝟑
25
Optimal average-delay
𝐦𝐁
κ =mB +m
2 T =
mB +m+ B − 1
2
𝐨𝐩𝐭𝐢𝐦𝐚𝐥!
for any m,B co-prime
Burst
erasure
P{ }
P{ }
P{ }
P{ }
Decoding a different burst
26
𝒅𝒂𝒕𝒂 𝒑𝒂𝒓𝒊𝒕𝒚
Burst
erasure
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
27
Burst phase shift
Phase shift (𝝓): 𝜙 = 𝑖 mod m
𝑖
B erased
packets
properly received
packets
properly received
packets
28
Average decoding delay by phase shift
𝐦𝐁
𝐨𝐩𝐭𝐢𝐦𝐚𝐥
Burst
erasure
𝝓 = 𝟎
𝝓 = 𝟏
𝝓 = 𝟐
𝝓 = 𝟑
𝐰𝐨𝐫𝐬𝐭
30
Comparison to known codes
31
Optimal average delay for R<1/2
𝐅𝐨𝐫 𝐞𝐯𝐞𝐫𝐲 𝛟 T =B
2
1
𝑚+ 1
𝐨𝐩𝐭𝐢𝐦𝐚𝐥!
Decoding order
32
MSB LSB
33
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
P{ }
BAD decoding order
GOOD news: we know how to fix that!
34
Conclusion
• We know how to get to optimal average delay
• Method: specify decoding schedule, find realizing encoder
• Open problem: can we have optimal delay for all phase shifts when R>0.5?
• Future work (a nice metric):
Codes with average delays growing gracefully with B
Add random erasures
35
Thank you!!!