Integrated Optimization of Video Server Resource and Streaming Quality Over Best-Effort Network

Post on 24-Feb-2016

33 views 0 download

description

Integrated Optimization of Video Server Resource and Streaming Quality Over Best-Effort Network. Authors: Hang Yu, Ee-Chien Chang, Wei Tsang Ooi Presented by: Xiaoyan Sun, Qianwen Geng. Outline. Introduction & Motivation Assumptions and Notations Expected Recovered Frame Rate - PowerPoint PPT Presentation

transcript

Integrated Optimization of Video Server Resourceand Streaming Quality Over Best-Effort Network

Authors:Hang Yu, Ee-Chien Chang, Wei Tsang Ooi

Presented by:Xiaoyan Sun, Qianwen Geng

2

Outline

• Introduction & Motivation• Assumptions and Notations• Expected Recovered Frame Rate• Optimal Configurations• Experimental Results• Conclusion

3

Outline

• Introduction & Motivation• Assumptions and Notations• Expected Recovered Frame Rate• Optimal Configurations• Experimental Results• Conclusion

4

Introduction

Adaption to changes in network conditions– Avoid network congestion– Share bandwidth w/ other connections

Sending rate based on (Server)– Bandwidth– Loss characteristics

Motivation• Best-Effort network: packets are transported w/o any

notion of resource reservation or priority. Network adaptation is often performed through rate adjustment in the following ways.– dynamically adapt its sending rate by transcoding the source

video in real timeDrawbacks: require substantial transcoding cost and sacrifice

compression ratio or video quality– store multiple versions of the same video content, each with

different bit ratesDrawbacks: in low reference locality and can incur additional I/O

cost, require a lot of storage• three categories

– Adaptive encoding, stream is requantized on the fly– Switching among multiple pre-encoded streams, server based– Hierarchical encoding, receiver-based

6

Video Compression SchemesMPEG

7

Adaption Mechanisms• Trade off between the cost of transcoding and

switching , the server can use a hybrid solution– store only several versions of the video content– and transcode in real-time (if needed) to meet the

desired sending rate• Goals:– achieve good expected recovered frame rate– reduce the cost for switches among versions stored on

the server– reduce the transcoding cost during the transmission

8

Outline

• Introduction & Motivation• Assumptions and Notations• Expected Recovered Frame Rate• Optimal Configurations• Experimental Results• Conclusion

9

Assumptions and Notations

• Network Conditions (b,p)– Bandwidth, obtained using the TCP equation– Probability of packet loss, obtained through receiver’s

feedback using RTCP.

• Sending Configurations (F, rI, rP, rB)– Fixed GOP length– {I,P,B,x}– (NI , NP , NB )

– FEC ratio rI, rP, rB

– For example: (IxBPBBI,0 ,0, 0)

10

Assumptions and Notations• Reducibility :• a configuration C1 can be reduced to anotherConfiguration C 2 if any MPEG video encoded with C1 can betranscoded to C2 with negligible computational overhead.• this paper considers the following two ways of reduction as

negligible computation:• Reducing the FEC ratio. (IBBPBBI,0.1,0.1,0)->(IBBPBBI,0.1,0.05,0)

Throw away extra FEC • Dropping B-frames. For example, . (IBBPBBI,0,0,0)->(IxBPBBI,0,0,0)

11

Assumptions and Notations

• Seed Configurations (irreducible configuration)

• C1 and C2 are the seeds of the set M={C4,C3,C6,C5,C7}

• L- seed set

12

Assumptions and Notations• Assigning Configuration to Network Condition:

decide which configuration to use f(b,p)=C

Lf-- range of an assignment ∽f--seed assignment if L f ∽ is irreducible

• f(b,p) is sent, but we store video encoded with L f ∽ since f(b,p) => f(b,p) ∽• network condition changes(b0,p0) to (b1,p1), switching

configuration from f(b0,p0) to f(b1,p1) by changing the transcoding operation

13

Outline

• Introduction & Motivation• Assumptions and Notations• Expected Recovered Frame Rate• Optimal Configurations• Experimental Results• Conclusion

14

Expected Recovered Frame Rate

• given a configuration C and network condition (b,p), the expected frame rate successfully recovered at the receiver’s end. Efr(C,b,p)

• K – average number of packets sent in a video frame• r– the FEC ratio of the frame• Kr – the average number of FEC packets for the frame• N – total number of packets sent for a frame N=K+Kr• p – probability of the packet loss during transmission

15

Expected Recovered Frame Rate

• Under FEC coding scheme, the original K packets can be recovered if at least K packets (out of N ) are received

• modeling the sending process as a series of Bernoulli trials, the probability that K packets are successfully recovered is given

16

Expected Recovered Frame Rate• Expected number of I-frames recovered is given

by• Expected number of P-frames recovered, , is thus

given by

• Expected number of B-frames recovered can be computed by

expected reconstruct frame rate:Efr(C,b,p)=RI+RP+RB

17

Outline

• Introduction & Motivation• Assumptions and Notations• Expected Recovered Frame Rate• Optimal Configurations• Experimental Results• Conclusion

Optimal Configurations

• consider a range of network conditions, and show how to determine the seeds

• (b,p)=>L(set of irreducible configurations)Model: b,p are sampled into discrete values b1 b2 b3… bnP1 x x x … xP2 x x x x (bi,pj)P3 x x x x Efr(f(bi,pj),bi,pj)Pn x x x x Main formulation(energy function):

Optimal Configurations

• Overall Expected Frame Rate – Pr(bi,pj), prob. the network bandwidth is (bi, pj)– Bw(C) size of the video encoding w/ config. C– K(C,b,p) best expected frame rate over all possible

config. C’ that can be reduced from C

• Assume network condition is uniformly distribute, i.e. Pr(bi,pj)=c

Optimal Configurations

• First to describe neighborhood

• Dist(.,.) cost of switching between configurations• Dist(C1,C2)=1 if C1≠C2, otherwise 0

• Es is in fact the expected number of switches between configuration per unit time.

Optimal Configurations• Finding the Optimal

(1)• Mode I: Find the seed assignment that maximizes(1) • Mode II: Given an integer k, find the seed assignment that

maximizes (1) subjected to the constraint | L f ∽ |<=k.

• find the optimal local move based on swap.– First assign each network condition to a configuration– Next, iteratively, optimal local move is performed– a swap between a pair of configuration C1,C2

• initial assignment of the network condition is the C’ s.t. Efr(C’,b,p)is maximized.

Optimal Configurations

• Searching Space (for implementation) C=(F, rI, rP, rB)• Due to large number of possible frame patterns– For each combination of NI,NP and NB, only one frame

pattern is considered.– Bound the anchor frames 1/3<=(NI+Np )/ (NI+NP + NB)<=1– The total number of frame patterns considered in this

experiment is reduced to 2977 for the test video– However, the number of configurations is much more. Only consider the configuration that includes maximum

possible number of FEC bits.

23

Outline

• Introduction & Motivation• Assumptions and Notations• Expected Recovered Frame Rate• Optimal Configurations• Experimental Results• Conclusion

Experimental Results

Frame size

• The size of each frame type :

• Packets size : 1500 bytes.• Size of frame pattern : 30 f/group• interval for each frame : 1/30 second.• best possible expected frame rate : 30 fps.

Network condition:

• Bandwidth b starts from 120 to 300 step size: 10.

• effective bandwidth: 1.44 to 3.6 Mbps (packet size: 1500 bytes)

• Packet loss probability p starts from 0.01 to 0.1 step size: 0.01.

Seed Configuration:first reducibility graph R1 transcoding is achieved by dropping FEC packets.

second reducibility graph R2 transcoding is achieved by dropping FEC packets

and/or B-frames.

Six different seed configurations are computed, using two graphs and four different weights (0, 3, 8, 30).

Results and Analysis:

• Perform experiments for R1, R2 and different weights (0, 3, 8, 30)

Detailed Legend for the Result

the optimal configuration and best frame rate for each network condition

the expected overall frame rate using only the standard configuration

R1, Weight = 3

R1, Weight = 8

• Adjusting weight can change the size of the seed-set. This can be employed to find solutions for Mode II

• More examples coming up……

R2, Weight = 3

R2, Weight = 30

• The advantage of using R2

• Provides a better approximation to the optimal configuration

• Comparing the last four with the standard configuration in the second one, choosing a better seed-set can achieve significant improvement in terms of expected frame rate.

• the expected frame rate is not far from performing no configuration reduction, which is illustrated in the first figure.

• Next……

• show how the seed can improve the server performance

• when adapting to changing network condition.

Changing of Network Condition

• Now we will look up the processing time, I/O time and the storage issue

real time transcoder

Conclusion:

a server’s resource is an important factor in video streaming over a best-effort network, especially in applications where the server needs to serve many clients simultaneously

a real-time transcoder that always switches to the optimal configuration consumes significant computing power and, hence, is not suitable to serve multiple videos.

a server that precomputes all of the required configurations needs massive storage space, and its operating system will be overwhelmed with I/O operations during streaming.

• uses a small number of configurations as the seeds, reduces storage and I/O cost significantly by decreasing the performance slightly

THANK YOU!