Top Banner
Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling for TCP-Friendly Streaming MPEG
42

Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Jan 21, 2016

Download

Documents

Polly Whitehead
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Authors:

HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI

Presented By

Siddharth Singla

Jangsung Lee

Adjusting Forward Error Correction with Temporal Scaling for TCP-Friendly Streaming MPEG

Page 2: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

OVERVIEWOVERVIEW

IntroductionIntroduction BackgroundBackground Analytical ModelAnalytical Model Analytic ExperimentsAnalytic Experiments Simulation ExperimentsSimulation Experiments ConclusionConclusion

Page 3: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

IntroductionIntroduction

Volume of data traversing the Net increasing Volume of data traversing the Net increasing quicklyquickly

Overcoming short-term congestion & avoiding Overcoming short-term congestion & avoiding collapse handled by TCPcollapse handled by TCP

UDP preferred over TCP for multimedia UDP preferred over TCP for multimedia applicationsapplications

Suggestions to make all applications TCP-Suggestions to make all applications TCP-friendlyfriendly

New TCP-friendly protocols for streaming New TCP-friendly protocols for streaming proposedproposed

=> Congestion!=> Congestion!

However,However,

Fortunately,Fortunately,

Therefore,Therefore,

Page 4: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

IntroductionIntroduction

Router AQM techniques respond efficiently to Router AQM techniques respond efficiently to congestion congestion

Media ScalingMedia Scaling Temporal scalingTemporal scaling Randomly dropping packets can be Randomly dropping packets can be

degraded qualitydegraded quality 3% packet loss is converted into 30% frame 3% packet loss is converted into 30% frame

lossloss

FEC makes FEC makes the receiver detect and correct the receiver detect and correct errors by adding redundant dataerrors by adding redundant data

Retransmission is not feasible for multimediaRetransmission is not feasible for multimedia

Page 5: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

IntroductionIntroduction

FEC + TCP friendly protocol is proposedFEC + TCP friendly protocol is proposed However, FEC itself can cause data rate to However, FEC itself can cause data rate to

be reducedbe reduced

Page 6: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Enhancements in this articleEnhancements in this article Use currently static FEC or adapt FEC to Use currently static FEC or adapt FEC to

packet loss without regard to TCP friendly packet loss without regard to TCP friendly data rate constraintsdata rate constraints

Model to account for temporal scaling to Model to account for temporal scaling to preserve real-time video playoutpreserve real-time video playout

Compare new analytic model with Compare new analytic model with simulationssimulations

IntroductionIntroduction

Page 7: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

OVERVIEWOVERVIEW

IntroductionIntroduction BackgroundBackground

Page 8: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

BackgroundBackground

1. TCP friendly flows1. TCP friendly flows TCP friendly flows: TCP friendly flows: bandwidth usage in bandwidth usage in

steady-state is no more than a TCP flow steady-state is no more than a TCP flow under similar network conditionsunder similar network conditions

ss: packet size: packet size p: p: packet loss probability packet loss probability tRTT: tRTT: round-trip time round-trip time tRTO: tRTO: retransmit timeoutretransmit timeout

Page 9: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

BackgroundBackground

1. TCP friendly flows1. TCP friendly flows T provides upper bound on TCP friendly T provides upper bound on TCP friendly

sending ratesending rate Prevents flows from consuming more than Prevents flows from consuming more than

fair share of BWfair share of BW

**PADHYE, J., FIROIU, V., TOWSLEY, D., AND KURO

SE, J. 1998. Modeling TCP throughput: A simple mod

el and its empirical validation

Page 10: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

2. Forward Error Correction (FEC)2. Forward Error Correction (FEC) Add Add (N −K) redundant packets to the K (N −K) redundant packets to the K

original packets and send N packets as original packets and send N packets as one frameone frame

Frame is successfully reconstructed if Frame is successfully reconstructed if >= K correct packets are received>= K correct packets are received

FEC can cause additional delayFEC can cause additional delay SSoftware FEC can be done in real-time oftware FEC can be done in real-time

with data rates up to 100 Mbps or use with data rates up to 100 Mbps or use H/W to speedup FEC encodingH/W to speedup FEC encoding

BackgroundBackground

Page 11: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

2. Forward Error Correction (FEC)2. Forward Error Correction (FEC) Probability of K packets being Probability of K packets being

transmitted successfullytransmitted successfully

This equation ignores bursty nature of This equation ignores bursty nature of packetspackets

BackgroundBackground

Page 12: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

3. MPEG3. MPEG Use both intraframe and interframe Use both intraframe and interframe compressioncompression I frames focus on encoding similarities I frames focus on encoding similarities

within a video scenewithin a video scene P frames are encoded based on motion P frames are encoded based on motion differences from preceding P framesdifferences from preceding P frames B frames are encoded based motion B frames are encoded based motion

differences from preceding and differences from preceding and succeeding P framessucceeding P frames

MPEG repeats a GOPMPEG repeats a GOP

BackgroundBackground

Page 13: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

3. MPEG3. MPEG I frame is more important than P and P I frame is more important than P and P

is more important than Bis more important than B

BackgroundBackground

Page 14: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

4. Temporal Scaling4. Temporal Scaling Application rate adjust to available bitrateApplication rate adjust to available bitrate Low priority frames are discarded before Low priority frames are discarded before

txtx Strategies for temporal scaling:Strategies for temporal scaling: B frames are discarded evenly before B frames are discarded evenly before

discarding I or P framediscarding I or P frame P frames are discarded from the back P frames are discarded from the back

(last) to the front of the GOP pattern(last) to the front of the GOP pattern I frames are never discardedI frames are never discarded

BackgroundBackground

Page 15: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

BackgroundBackground

4. Temporal Scaling4. Temporal Scaling

Page 16: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

OVERVIEWOVERVIEW

IntroductionIntroduction BackgroundBackground Analytical ModelAnalytical Model

Page 17: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Analytical ModelAnalytical Model

Determine playable frame rate of TCP- Determine playable frame rate of TCP- friendly video flows with adjusted FEC friendly video flows with adjusted FEC and temporal scaling in the presence of and temporal scaling in the presence of network packet lossnetwork packet loss

Also provide Also provide probability of successful probability of successful transmission and playout for each transmission and playout for each MPEG frame typeMPEG frame type

Derive formulas for transmission rate Derive formulas for transmission rate and playable frame rateand playable frame rate

Page 18: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Analytical ModelAnalytical Model

1. 1. Software Layers and Parameters Software Layers and Parameters

RF : maximum playable frame rateRF : maximum playable frame rate SI , SP , SB: number of packets for SI , SP , SB: number of packets for

each I, P, or B frameeach I, P, or B frame NP , NB: number of P or B frames in NP , NB: number of P or B frames in

one GOPone GOP

Page 19: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Analytical ModelAnalytical Model

NPD, NBD: number of P or B frames NPD, NBD: number of P or B frames sent per GOP after temporal scalingsent per GOP after temporal scaling

SIF, SPF, SBF: number of FEC packets SIF, SPF, SBF: number of FEC packets added to each I, P, or B frameadded to each I, P, or B frame

s: packet size (in bytes)s: packet size (in bytes) p: packet loss probabilityp: packet loss probability tRTT: round-trip time (in milliseconds)tRTT: round-trip time (in milliseconds)

Page 20: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

2. 2. Successful Frame Transmission Successful Frame Transmission Probabilities Probabilities

Successful transmission of each frame Successful transmission of each frame type:type:

qI = q(SI + SIF, SI , p)qI = q(SI + SIF, SI , p) qP = q(SP + SPF, SP , p)qP = q(SP + SPF, SP , p) qB = q(SB + SBF, SB, p)qB = q(SB + SBF, SB, p)

Analytical ModelAnalytical Model

Page 21: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

3. Playable Frame Rate3. Playable Frame Rate GOP rate should be constant for real time GOP rate should be constant for real time

playout and is given byplayout and is given by

Rf: the target full-motion frame rateRf: the target full-motion frame rate Temporal scaling maintains constant GOP Temporal scaling maintains constant GOP

raterate Playable Rate of I Frames RI is given byPlayable Rate of I Frames RI is given by

RI = G · qI · DIRI = G · qI · DI

Analytical ModelAnalytical Model

Page 22: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

3. Playable Frame Rate3. Playable Frame Rate Playable Rate of P Frames with Playable Rate of P Frames with

temporal scaling is given by: is given bytemporal scaling is given by: is given by

Analytical ModelAnalytical Model

Page 23: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

3. Playable Frame Rate3. Playable Frame Rate Playable Rate of B Frames with Playable Rate of B Frames with

temporal scaling is given by:temporal scaling is given by:

Analytical ModelAnalytical Model

Page 24: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

3. Playable Frame Rate3. Playable Frame Rate Total Playable Frame Rate is the sum Total Playable Frame Rate is the sum

of playable frame rates for each frame of playable frame rates for each frame type type

R = RI + RP + RBR = RI + RP + RB If no frame is discarded due to scaling If no frame is discarded due to scaling

then Rthen R

Analytical ModelAnalytical Model

Page 25: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Analytical ModelAnalytical Model

3. Playable Frame Rate3. Playable Frame Rate

Page 26: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Optimal Playable Frame Rate:Optimal Playable Frame Rate: Varies with temporal scaling and Varies with temporal scaling and

amount of FEC usedamount of FEC used Optimum playable frame rate R Optimum playable frame rate R under under

TCP-friendly rate constraint can be TCP-friendly rate constraint can be derived fromderived from

Analytical ModelAnalytical Model

Page 27: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

OVERVIEWOVERVIEW

IntroductionIntroduction BackgroundBackground Analytical ModelAnalytical Model Analytic ExperimentsAnalytic Experiments

Page 28: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Analytic ExperimentsAnalytic Experiments

Analyze performanceAnalyze performance temporally-scaled temporally-scaled MPEG video without FEC, with fixed FEC, MPEG video without FEC, with fixed FEC, and with adjusted FECand with adjusted FEC with TCP friendly with TCP friendly constrained bit ratesconstrained bit rates

Use 4 distinct repair schemes & Use 4 distinct repair schemes & MPEG MPEG video + FEC are temporally scaled to video + FEC are temporally scaled to meet TCP-friendly constraints.meet TCP-friendly constraints.

Fixed FEC (1/0/0)Fixed FEC (1/0/0) Fixed FEC (4/2/1)Fixed FEC (4/2/1) Adjusted FECAdjusted FEC Non-FECNon-FEC

Page 29: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Analytic ExperimentsAnalytic Experiments

System Parameter SettingsSystem Parameter Settings

Page 30: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Playable framePlayable framerates of the 4 rates of the 4 schemesschemes

Analytic ExperimentsAnalytic Experiments

Page 31: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Analytic ExperimentsAnalytic Experiments

Adjusting FECAdjusting FEC

Page 32: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Analytic ExperimentsAnalytic Experiments

Temporal Scaling PatternTemporal Scaling Pattern

Page 33: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

OVERVIEWOVERVIEW

IntroductionIntroduction BackgroundBackground Analytical ModelAnalytical Model Analytic ExperimentsAnalytic Experiments Simulation ExperimentsSimulation Experiments

Page 34: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Simulation ExperimentsSimulation Experiments

Compare analytic results with Compare analytic results with simulation resultssimulation results

Analytic experiments assumed a few Analytic experiments assumed a few parametersparameters

Simulation is carried out for:Simulation is carried out for: Inaccurate Loss PredictionInaccurate Loss Prediction Bursty LossBursty Loss Variable Round-Trip TimesVariable Round-Trip Times Variable MPEG Frame SizeVariable MPEG Frame Size

Page 35: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Inaccurate Loss PredictionInaccurate Loss Prediction

Simulation ExperimentsSimulation Experiments

Page 36: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Bursty Bursty LossLoss

Simulation ExperimentsSimulation Experiments

Page 37: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Variable Variable Round- Round-Trip Trip TimesTimes

Simulation ExperimentsSimulation Experiments

Page 38: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Variable MPEG Variable MPEG Frame SizesFrame Sizes

Simulation ExperimentsSimulation Experiments

Page 39: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

Practical ConsiderationsPractical Considerations 3 practical issues are needed to be 3 practical issues are needed to be

addressedaddressed Dynamically change a GOP based on Dynamically change a GOP based on

network conditionsnetwork conditions Arbitrarily long GOPs that would make Arbitrarily long GOPs that would make

exhaustive search prohibitiveexhaustive search prohibitive Case when network and MPEG Case when network and MPEG

parameters are not known ahead of timeparameters are not known ahead of time

Simulation ExperimentsSimulation Experiments

Page 40: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

OVERVIEWOVERVIEW

IntroductionIntroduction BackgroundBackground Analytical ModelAnalytical Model Analytic ExperimentsAnalytic Experiments Simulation ExperimentsSimulation Experiments ConclusionConclusion

Page 41: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

ConclusionConclusion

Propose analytic model to achieve better Propose analytic model to achieve better frame rate based on several parametersframe rate based on several parameters

Determine optimal FEC and temporal Determine optimal FEC and temporal scalingscaling under different network conditions under different network conditions

Compare analytic model with simulation Compare analytic model with simulation resultsresults

Experimental results show that the model Experimental results show that the model could be used in practice to improve could be used in practice to improve frame rate while maintaining TCP friendly frame rate while maintaining TCP friendly BWBW

Page 42: Authors: HUAHUI WU, MARK CLAYPOOL, and ROBERT KINICKI Presented By Siddharth Singla Jangsung Lee Adjusting Forward Error Correction with Temporal Scaling.

THANK YOUTHANK YOU