41
LAYERED QUALITY ADAPTATION for INTERNET VIDEO STREAMING Reza Rejaie, Mark Handley and Deborah Estrin mation Science Institute (ISI), University of Southern Califo by IEEE Journal On Selected Areas In Communications Vol. 18., NO.12, December 2000 published in

LAYERED QUALITY ADAPTATION for INTERNET VIDEO STREAMING

  • Upload
    lamond

  • View
    30

  • Download
    0

Embed Size (px)

DESCRIPTION

by. Reza Rejaie, Mark Handley and Deborah Estrin. Information Science Institute (ISI), University of Southern California. LAYERED QUALITY ADAPTATION for INTERNET VIDEO STREAMING. published in. IEEE Journal On Selected Areas In Communications - PowerPoint PPT Presentation

Citation preview

Page 1: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

LAYERED QUALITY ADAPTATION for

INTERNET VIDEO STREAMING

Reza Rejaie, Mark Handley and Deborah EstrinInformation Science Institute (ISI), University of Southern California

by

IEEE Journal On Selected Areas In Communications Vol. 18., NO.12, December 2000

published in

Page 2: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- 2 types of flows: TCP vs. UDP

- TCP : responsive to the congestion : reliable (provide retransmission)

- UDP : non-responsive : non-reliable

Review:

Page 3: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

Problem:

- Explosive growth of audio & videostreaming

- Streaming applications: rate-based,delay-sensitive, semi-reliable

- Lack of effective congestioncontrol mechanism in such applications

Page 4: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

To support streaming applicationsover the Internet, two conflicting requirements have to be addressed:

- Application Requirement * require relatively constant

BW to deliver a stream with a certain quality

- Network Requirement * end systems are expected

toreact to congestion properly and promptly

Page 5: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

To satisfy these two requirementssimultaneously, Internet streamingapplications should be quality adaptivequality adaptive

- the application should adjust thequality of the delivered stream suchthat the required BW matches thecongestion controlled rate-limit

- the main challenge is to minimize the variations in quality, while obeyingthe congestion controlled rate-limit

Page 6: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

This paper presents:

- the novel quality adaptation mechanismnovel quality adaptation mechanismwhich can adjust the quality of congestioncontrolled video playback on-the-fly

- the key feature of this mechanism isthe ability to control the level of smoothing (i.e., frequency of changesfrequency of changes) toimprove quality of the delivered stream

Page 7: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

Primary Assumption:

- the congestion control protocol is Rate Rate Adaptation Protocol (RAP)Adaptation Protocol (RAP)

- RAP is a rate-based congestion controlmechanism that employs an AdditiveIncrease Multiplicative Decrease (AIMD) algorithm in a manner similar to TCP

Page 8: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

RAP Increase/Decrease Algorithm

Base Equation: Si = PacketSize / IPGi

To increase the rate additively, IPGi+1 = (IPGi * C) / (IPGi + C)where C is a constant with the dimensionof time

Upon detecting congestion, the tx rateis decreased multiplicatively, Si+1 = * Si, IPGi+1 = IPGi / where = 0.5

Page 9: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

RAP Decision Frequency

- how often to change the rate

- depends on the feedback delayfeedback delay

- feedback delay in ACK-based schemes is equal to one RTT

- it is suggested that rate-based schemes adjust their rates not more than once per RTT

Page 10: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

remotevideoserver

INTERNET

Target Environment

Client#1

Client#2

Client#3

Client#4

- heterogeneous clients- Video on demand

- dominant competing traffic is TCP- short startup latency expected

Page 11: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

Quality Adaptation Mechanisms

- “Adaptive Encoding”:requantize stored encoding on-the-fly

based on the network feedbackdisadv: CPU-intensive task

- “Switching among multiple pre-encodedversions”:

the server keeps several versions of each stream with different qualities. Asavailable BW changes, the server choosesthe appropriate version of the stream

disadv: need large server’s buffer

Page 12: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- “Hierarchical Encoding”:the server maintains a layered encoded

version of each stream. As more BW isavailable, more layers of the encoding aredelivered. If the available BW decreases,the server may then drop some of the layers being transmitted

*** layered approaches usually have thedecoding constraint that a particular enhancement layer can only be decoded if all the lower quality layers have been received

Page 13: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

adv: - less storage at the server- provides an opportunity for selective selective repair of the more important information

*** the design of a layered approach forquality adaptation primarily entails thedesign of an efficient add and drop mechanism that maximizes quality whileminimizing the probability of base-layerbuffer underflow

Page 14: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

NOTENOTE ! !

- Hierarchical Encoding provides aneffective way for a video server to coarselyadjust the quality of a video stream without without transcodingtranscoding the stored data

- However, it does not provide thefine-grained controlfine-grained control over BW, that is, BWonly changes at the granularity of a layer

Page 15: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- there needs to be a quality adaptationmechanism with the ability to control thelevel of smoothing

“short-term improvement” vs. “long-term smoothing”

Page 16: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- in the aggressive approachaggressive approach, a new layer is added asa result of minor increase in available BW. However, thisadditional bandwidth does not last long. Thus, theaggressive approach results in short-term improvementshort-term improvement

- in contrast, the conservative approachconservative approach does not adjustthe quality due to the minor changes in BW. Thus, thisresults in long-term smoothinglong-term smoothing

Page 17: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- Hierarchical encoding allows videoquality adjustment over long periods of time,whereas congestion control changes the txrate rapidly over short time intervals

- The mismatch between the two time scales is made up for by buffering databuffering dataat the receiverat the receiver to smooth the rapid variations in available BW and allow a nearconstant number of layers to be played

Page 18: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

The Proposed Architecture

- all the streams are layered-encoded and stored at the server - all active layers are multiplexed into a single RAP flow by the server

Page 19: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- at the client side, layers are de-multiplexed and each one goes to its corresponding buffer- the decoder drains data from buffers and feeds the display

- assume that, each layer has the same BW and all buffers are drained with the same constant rate (C) - the congestion control module continuously reports available BW to the quality adaptation module- the quality adaptation module then adjusts # of active layers and allocated share of congestion controlled BW to each active layer

Page 20: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING
Page 21: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING
Page 22: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

Challenging Questions:

- When is it suitable to add a new layer ?

- When should we drop a layer ?

- What is the optimal allocation of each layer ?

AssumptionAssumption:

- would like to survive a single backoffwith all the layers intact

Page 23: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

Adding a LayerAdding a Layer::

The server may add a new layer when:

1.the instantaneous available BW isgreater than the consumption rate of theexisting layers plus the new layer

R > (na + 1) C, and

Page 24: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

2. there is sufficient total bufferingat the receiver to survive an immediatebackoff and continue playing all the existing layers plus the new layer

i=0 to na –1 bufi ([na + 1] C – [R/2])2

2*S

where R : the current tx rate na : the number of currently active layer bufi : the amount of buffered data for layer i S : the rate of linear increase in BW

Page 25: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

Dropping a LayerDropping a Layer::

- once a backoff occurs, if the totalamount of buffering at the receiver isless than the estimated required bufferingfor recovery (i.e., the area of trianglecde in fig.5), the correct action is to immediately drop the highest layer

- if the buffering is still insufficient, theserver should interactively drop the highest layer until the amount of bufferingis sufficient

Page 26: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

while ( naC > R + 2S i=0 to na-1 bufi )

dona = na - 1

Page 27: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

Optimal Interlayer Buffer AllocationOptimal Interlayer Buffer Allocation::

- due to the decoding constraint inhierarchical encoding, each additionallayer depends on all the lower layers

- a buffer allocation mechanism shouldprovide higher protection for lower layersby allocating a higher share of total buffering to them

Page 28: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- the minimum number of buffering layersthat are needed for successful recoveryfrom short-term reduction in available BWcan be determined as:

nb = na – [R/(2*C)] , naC > R/2 nb = 0 , naC <= R/2

where nb : # of buffering layers na : # of active layers

Page 29: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING
Page 30: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- the consumption rate of a layer must besupplied either from the network or fromthe buffer or a combination of the two

-If it is supplied entirely from the buffer,that layer’s buffer is draining at consumption rate C.

Page 31: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

The optimal amount of buffering forlayer i is:

if i < nb – 1,

Bufi,opt = C [C (2na – 2i - 1) - R] 2S

if i = nb – 1 (the top layer),

Bufi,opt = C [naC – (R/2) – (i*C)]2

2S

Page 32: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

Fine-Grain Bandwidth AllocationFine-Grain Bandwidth Allocation::

- the server can control the filling anddraining pattern of receiver’s buffersby proper fine-grain bandwidth allocationamong active layers

- fine-grain bandwidth allocation isperformed by assigning the next packetto a particular layer

Page 33: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- the main challenge is that the optimalinterlayer buffer allocation depends onthe transmission rate at the time of abackoff (R), which is not known a prioripriori because a backoff may occur at anyrandom time

- to tackle this problem, during thefilling phase, the server utilizes extraBW to progressively fill receiver’s buffersup to an optimal state in a step-wisestep-wisefashionfashion

Page 34: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING
Page 35: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- the server maintains an image of thereceiver’s buffer state, which is continuously updated based on theplayout information included in ACK pkts

Page 36: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- During the filling phase, the extra BWis allocated among buffering layers on aper-packet basis through the following steps assuming a backoff will occurimmediately:

1. if we keep only one layer (L0), is there sufficientbuffering with optimal distribution to recover ?

* if there is no sufficient buffering, the next packetis assigned to L0 until this condition is met and then thesecond step is started

Page 37: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

2. if we keep only two layers (L0, L1), is there sufficientbuffering with optimal distribution to recover ?

* if there is no sufficient buffering, the next packetis assigned to L0 until it reaches its optimal level. Then,the server starts sending packets for L1 until both layershave the optimal level of buffering to survive

- we then start a new step and increase the number ofexpected surviving layers, calculate a new optimal bufferdistribution and sequentially their buffers up to the newoptimal level

- this process is repeated until all layers can survive asingle backoff

Page 38: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

-During the draining phase, BW shareplus draining rate for each layer is equalto its consumption rate.

- Thus, maximally efficient bufferingresults in the upper layers being suppliedfrom the network during the draining phase, while the lower layers are suppliedfrom their buffers

Page 39: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

If we would like to survive more thanIf we would like to survive more thanone backoff (Kone backoff (Kmaxmax > 1) > 1)::

- During the filling phase:

Page 40: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING
Page 41: LAYERED QUALITY ADAPTATION                      for INTERNET VIDEO STREAMING

- During the draining phase:

* due to one or more backoffs * reverse the filling phase

* identify between which two steps we arecurrently located. This determines how many layers should be dropped due to lackof sufficient buffering* then, we traverse through the steps in

the reverse order to determine which buffering layers must be drained and by

how much* the amount and pattern of draining isthen controlled by fine-grain interlayerBW allocation by the server