Title: Dude, Where is My Packet?
1Dude, Where is My Packet?
2Overview
- Characteristics of the Internet
- General techniques
- Error recovery for audio
- Effect of loss on MPEG
- Error recovery for MPEG
3Loss Characteristics of The Internet
4Characteristics of Internet
- 60-70 of paths do not show any loss
- Those with loss have an average of 4.5 6
packet loss - Paxson97 End-to-end Internet packet dynamics
5Packet Loss Pattern
1000
30
6Characteristic of Internet
- Bursts of loss are typically short (2-3
consecutively loss packets) - Long burst do occur
- Burst may occur periodically
7Wireless Link
- Loss rate measured in my office 10 20
- up to 50 reported!
8General Error Recovery Techniques
- Perkins, Hodson and Hardman
- IEEE Network Magazine 1998
9Retransmission
1
2
3
4
3
1
2
4
3
10Redundant Data
1
2
3
4
2
3
4
5
1
2
4
2
3
5
3
11Error Concealment
1
2
3
4
2
4
1
12Retransmission
13Retransmission is Bad
- Need scalable feedback
- NACK consumes bandwidth
- May need to retransmit frequently
- Retransmission maybe useless
14Retransmission is Good
- Only retransmit when needed
- Exact recovery
15Scalable Retransmission
- On packet loss
- T random(0, RTT)
- wait for T
- multicast NACK
- On receiving NACK from others
- suppress own NACK
16Retransmit when
- group size is small
- loss rate is low
- large latency acceptable
17Redundant Data
18Parity FEC
1011001
XOR
1000010
0010010
0001001
19Parity FEC
1011001
1000010
0001001
0010010
20Parity FEC Ordering
21Parity FEC Ordering
22Parity FEC Ordering
23Parity FEC Ordering
24Parity FEC Ordering
25Reed-Solomon Code
RS
26Reed-Solomon Code
27Media Specific FEC
1
2
3
4
2
3
4
5
1
2
4
2
3
5
3
28Interleaving
29Pro and Cons
- Media Independent FEC
- Overhead for redundant data
- Exact recovery
- Could be computationally costly
- Media Specific FEC
- Approximate recovery only
30Error Concealment
31Effect of Loss on Audio
- Speech
- Human ears can interpolate
- Loss up to length of phoneme can still be
tolerable
32Insertion-based Repair
- Splice
- Silence Substitution
- Noise Substitution
- Repetition
33Other Repair Methods
- Interpolation
- Regeneration
34Pro and Cons
- Could be computationally costly
- Approximate recovery only
- Does not work well for long burst of packet loss
35Colins Recommendations
36Non-Interactive Apps
- Interleaving
- FEC
- Retransmission for unicast only
37Interactive Applications
38Error Concealment
39Effects of Packet Loss on MPEG
- Jill Boyce and Robert Gaglianello
- ACM Multimedia 1998
40Measurement-based Study
- Need to understand the problem before proposing
solution
41Data Gathering Method
- From NYC13 , Austin21, London18
- To Holmdel, NJ
42Data Gathering Method
- Video
- Two 5-mins MPEG
- 30 fps
- 384 kbps and 1 Mbps
- IBBPBBPBBPBBPBB
- QSIF 176x112 and SIF 352x240
- One row per slice
43Average Packet Loss
44Packet Loss vs Time
45How to Fill Packets
- B 1 frame 1 packet
- P 1 slice 1 packet
- I 1 slice 1 packet
46Packet Size Distributions
47Packet Size vs Loss Rate
48Lesson
- 1 slice per packet even if larger than MTU
- If smaller packets means higher loss rate fill
packet until MTU - Else one slice per MTU
- Alt Change size of slice
49Frame Effected by Errors
50Correlation of Packet Loss
51Overview of Error Recovery for Video
52Methods
- Retransmission
- Error Concealment
- FEC
- Limiting Error Propagation
- Reference Frame Selection
53Reference Frame Selection
I P B B P
I
X
54Methods
- Retransmission
- Error Concealment
- FEC
- Limiting Error Propagation
- Reference Frame Selection
- Changing Temporal Pattern
55Changing Temporal Patterns
56Basic Idea
- Better Late Than Never!, or
- Late packet is still useful
57MPEG Frame Pattern
I
B
B
P
B
B
P
I
P
B
B
P
B
B
58H.261 Error Propagation
I
P
P
P
P
P
P
X
X
X
X
X
X
loss
X
X
X
X
retransmission
59H.261 Frame Pattern
I
P
P
P
P
P
P
X
loss
60H.261 Frame Pattern
X
X
X
retransmission
loss
61PTDD
- Periodic Temporal Dependency Distance
- Large PTDD
- Later Deadlines
- Longer Error Propagations
- Less Temporal Dependencies
62QAL
I
P
P
P
Enhancement Layer
I
P
P
P
Base Layer
63QAL
I
P
P
P
X
Enhancement Layer
I
P
P
P
Base Layer FEC
64QAL PTDD
I
P
P
P
Enhancement Layer
I
P
P
P
Base Layer
65SR-RTP
- Feamster and Balakrishnan
- PV02
66Overview
- An analytical model for packet loss
- SR-RTP
- Post Processing
67Analytic Model
- p prob. packet loss
- f observed frame rate
- ? frame drop rate
- Si mean num. of packets in frames of
type i - P(i) prob. frame type is i
- P(F) prob. frame is useless
68p prob. packet loss f observed frame
rate ? frame drop rate Si mean num. of
packets in frames of type i P(i)
prob. frame type is i P(F) prob. frame is
useless
69Is it accurate?
70SR-RTP
- Extensions to RTP for selective reliability
71SR-RTP
0
Length
ADU Sequence Number
ADU Length
ADU Offset
Priority
Layer Number
72Feamster Balakrishnans ADU
73Loss Detection
LEN 50 ADU 0 ADU Size 100 ADU Off 0
LEN 20 ADU 0 ADU Size 100 ADU Off 80
LEN 50 ADU 1 ADU Size 150 ADU Off 40
LEN 50 ADU 3 ADU Size 50 ADU Off 0
74Retransmission Request
- Based on priority
- Example
- I-Frame highest priority
- P-Frame higher priority if closer to prev I
- B-Frame no retransmition
75Error Concealment for Video
- Repeat pixels from previous frame
- Interpolate pixels from neighbouring region
- Interpolate motion vectors from previous frame
76Inferred MV for P Frame
I
P
77Inferred MV for I Frame
P
P
I
78Evaluation
- Peak Signal to Noise Ratio (PSNR)
- 2552 over average square of differences in pixel
values - Calculated in dB (10 log 10)
79Performance of SR-RTP
80Todays Summary
81How to recover packet loss
- Retransmission
- FEC
- Error Concealment
82How to limit the damage of error
- Interleaving
- Key frame selection
- Change reference frame