Adaptive Forward Error Correction for TCP

A Model for MPEG with
Forward Error Correction (FEC)
and TCP-Friendly Bandwidth
Huahui Wu, Mark Claypool & Robert Kinicki
Computer Science Department
Worcester Polytechnic Institute
Worcester, MA, 01609 USA
{flashine,claypool,rek}@cs.wpi.edu
Outline
Introduction
Protocol
Repair
Related Knowledge
Analytical Model
Analytical Experiments
Simulation Experiments
Summary
6/3/2003
NOSSDAV 2003 Monterey, California
#2
Transmission Protocol
TCP uses retransmission
No good for interactive application
UDP have no retransmission
It doesn’t respond to congestion
TCP-Friendly
[FHPW00] [RHE99]
Well behavior protocol
Loss is still an important issue
6/3/2003
NOSSDAV 2003 Monterey, California
#3
Repair and Forward Error Correction
Packet loss degrades the quality
FEC adds redundancy and fixes loss
Increase congestion to video stream
Prior Approaches
Ad-hoc
Not TCP-Friendly
Our Approach:
Adjusting FEC with TCP-Friendly bandwidth
constraint.
6/3/2003
NOSSDAV 2003 Monterey, California
#4
Outline
Introduction
Related Knowledge
MPEG
Forward Error Correction
TCP-Friendly
Analytical Model
Analytical Experiments
Simulation Experiments
Summary
6/3/2003
NOSSDAV 2003 Monterey, California
#5
MPEG
Three types of frames
I (Intra-coded): Coded independently
P (Predictive-coded): obtain prediction from
preceding I or P frame
B (Bidirectional predictive-coded): obtain prediction
from the preceding and succeeding I or P frames
Group of Picture (GOP)
6/3/2003
NOSSDAV 2003 Monterey, California
#6
Forward Error Correction (FEC)
Packet loss degrades video quality.
FEC adds redundancy to recover from losses.
With an MPEG frame made up of K ordinary packets,
FEC adds N-K redundant packets to frame.
If K or more of the N packets are received, the
original frame can be successfully reconstructed.
The successful frame transmission probability is
N  N

 
i
N i
q( N , K , p)    (1  p)  p 
(2)
i  K  i 

6/3/2003
NOSSDAV 2003 Monterey, California
#7
TCP-Friendly Flows
Unresponsive flows get unfair share of network
bandwidth and AQM techniques will punish them.
Streaming flows need to be TCP-Friendly.
A TCP-Friendly flow’s bandwidth is no more than
a conformant TCP flow running under comparable
network conditions.
s
(1)
T
2p
3p
t RTT
 t RTO (3
) p(1  32 p 2 )
3
8
[PFTK98]
6/3/2003
NOSSDAV 2003 Monterey, California
#8
Outline
Introduction
Related Knowledge
Analytical Model
Successful Frame Transmission Probability
GOP Rate
Playable Frame Rate
Analytical Experiments
Simulation Experiments
Summary
6/3/2003
NOSSDAV 2003 Monterey, California
#9
Successful Frame Transmission Probability
 N 

i
N i
q( N , K , p)    (1  p)  p 
i  K  i 

N
 qI  q( S I  S IF , S I , p)

qP  q( S P  S PF , S P , p)
q  q( S  S , S , p)
B
BF
B
 B
6/3/2003
NOSSDAV 2003 Monterey, California
(3)
#10
GOP Rate
TCP Friendly Rate
s
T
t RTT
2p
3p
 t RTO (3
) p(1  32 p 2 )
3
8
GOP Rate (GOP per second)
T /s
G
( S I  S IF )  N P ( S P  S PF )  N B ( S B  S BF )
6/3/2003
NOSSDAV 2003 Monterey, California
#11
Playable Frame Rate Model (1 of 2)
Playable Frame Rate
of I, P and B frames
6/3/2003
 RI  G  qI

i
 RPi  RI  q P
R  R  q
Pi 1
B
 Bij
NOSSDAV 2003 Monterey, California
(4)
#12
Playable Frame Rate Model (2 of 2)
R  RI   RPi   RBij
i
i, j
q P  q PN P 1
 G  q I  (1 
1  qP
N P 1
P
qP  q
 N BP  q B  (
1  qP
 qI  q
NP
P
))
Given values of loss rate and frame size, the
total playable frame rate can be estimated
with the FEC and GOP pattern.
The best playable frame rate can be obtained
by searching the FEC and GOP space.
6/3/2003
NOSSDAV 2003 Monterey, California
#13
(5)
Outline
Introduction
Related Knowledge
Analytical Model
Analytical Experiments
Methodology
Improvement on Playable Frame Rate
The Behaviors of FEC
Simulation Experiments
Summary
6/3/2003
NOSSDAV 2003 Monterey, California
#14
Methodology
Given a p, compute TCP-Friendly rate T.
With a specific GOP and FEC pattern, the
playable frame rate R can be computed.
Search for the maximum rate Rm with all
possible GOP and FEC pattern.
Investigate the improvement from
adjusting FEC, and the FEC behavior.
6/3/2003
NOSSDAV 2003 Monterey, California
#15
Improvement of Playable Frame Rate
RTT: 50ms
s: 1KB
p(%):0.5, 1, 2,
3, 4, … 10
SI: 25 packets
SP: 8 packets
SB: 3 packets
GOP: IBBPBBPBBPBBPBB
[KSH95]
6/3/2003
NOSSDAV 2003 Monterey, California
#16
Adjusted FEC pattern
10
SI F
SPF
SBF
8
6
4
2
0
1
2
3
4
5
6
7
8
9 10
Y-axis: Number of packets, X-axis: Loss percentage
6/3/2003
NOSSDAV 2003 Monterey, California
#17
AFEC’s Advantage
a. Non-FEC
b. Adjusting FEC
Successful frame transmission Probability
6/3/2003
NOSSDAV 2003 Monterey, California
#18
Fixed FECs vs. Adjusted FEC
Fixed FECs vs. Adjusted FEC
• Small: (1,1,0); Medium: (4,2,0); Large FEC: (8,4,1)
6/3/2003
NOSSDAV 2003 Monterey, California
#19
Outline
Introduction
Related Knowledge
Analytical Model
Analytical Experiments
Simulation Experiments
Simulation of Dependent Packet Loss
Simulation of Variable Round Trip Time
Summary
6/3/2003
NOSSDAV 2003 Monterey, California
#20
Simulation of Dependent Packet Loss
Losses are often dependent
Dependent loss reduce the effect of FEC
Cause a lower playable frame rate
6/3/2003
NOSSDAV 2003 Monterey, California
#21
Simulation of Variable Round Trip Time
a. Distribution of RTT [CCZ03]
6/3/2003
b. Effect of Variable RTT
NOSSDAV 2003 Monterey, California
#22
Outline
Introduction
Related Knowledge
Analytical Model
Analytical Experiments
Simulation Experiments
Summary
Contribution
Ongoing Work
6/3/2003
NOSSDAV 2003 Monterey, California
#23
Contribution
Built a model to estimate the playable frame
rate for TCP-Friendly MPEG Streaming.
Used the model to study adjusting FEC and
GOP behavior
Adjusting FEC provides large benefit.
• 10 to 50 times improvement in playable frame
rate with moderate to high loss probability.
Adjusting GOP provides little benefit.
• More details are in the paper.
6/3/2003
NOSSDAV 2003 Monterey, California
#24
Ongoing Work
Model verification with realistic network
TCP-Friendly Video Streaming with other
repair techniques.
Adjusting FEC combined with Media Scaling
Build into NS-2 Simulator
Implement it in real network
6/3/2003
NOSSDAV 2003 Monterey, California
#25
A Model for MPEG with
Forward Error Correction (FEC)
and TCP-Friendly Bandwidth
Huahui Wu, Mark Claypool & Robert Kinicki
Computer Science Department
Worcester Polytechnic Institute
Worcester, MA, 01609 USA
{flashine,claypool,rek}@cs.wpi.edu
Benefits from Adjusting FEC and/or GOP
RTT: 50ms
s: 1KB
p(%):0.5, 1, 2,
3, 4, … 10
SI: 25 packets
SP: 8 packets
SB: 3 packets
6/3/2003
NOSSDAV 2003 Monterey, California
#27