11
1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems 1 A Differentiated Quality Adaptation Approach for Scalable Streaming Services Xiaorong Li*, Member, IEEE, Bharadwaj Veeravalli, Member, IEEE, *Institute of High Performance Computing, The National University of Singapore Abstract—Providing scalable video streaming services for het- erogeneous users in dynamic networked environments requires efficient and adaptive quality management mechanisms which deliver quality-customized services according to the client’s preferences and adapt the services to cope with various network conditions. In this paper, we address the issue of quality adapta- tion for providing personalized scalable media streaming services in dynamic network environments. We propose a differentiated adaptive quality optimization algorithm, called Scalable Video Coding Quality Adaptation algorithm (SVC-QA), which adapts streaming quality based on both system-level and client-level optimization to optimize streaming quality according to network bandwidth conditions, content characteristics, a user’s quality preferences, and buffering capacities of different client devices (e.g., mobile phones, PCs, HDTVs, etc.). Comparative studies are conducted to compare our proposed algorithms with other adaptive methods. We show that two-level SVC quality adapta- tion method can achieve better SVC streaming quality with both high Peak Signal-to-Noise Ratio (PSNR) and low quality variance under dynamic resource constraints. Moreover, the proposed distributed method reduces the computational complexities at the server side substantially, making it practical and flexible for providing scalable streaming services. Index Terms—Scalable streaming services, quality adaptation, distributed systems, service utility I. I NTRODUCTION T HERE is a dramatically increasing demand for personal- ized streaming services where users can access services anytime and anywhere from personalized devices [1], [2] by specifying desired service quality, such as playback resolution, frame rate, bit rate, etc. These features are highly demanded due to the booming of wireless communication and the avail- ability of various mobile devices (e.g., PDAs, hand phones, PS2s, etc.) with different CPU capacities, memory space, and network connections, etc. Scalable video coding (SVC) [3] is the latest video compres- sion technology which encodes videos into multiple layers to serve heterogeneous users with various quality requirements. Popular examples are MPEG-4 FGS, H.264 SVC, etc. H.264 SVC [14] is an extension of the H.264 standard that was introduced by the Joint Video Team (JVT) of the ISO/IEC Moving Pictures Experts Group (MPEG) and the ITU-T Video Coding Experts Group (VCEG). It provides flexible streaming structures to encode each layer with different bit rates and different granularity. Therefore, a scalable encoded video can serve multiple users of different needs and preferences. However, provisioning of scalable video streaming services has yet to be commercially successful. The flexibility and efficiency of adapting streaming quality for various users in dynamic networking environments is the key. In this paper, we address the flexibly and efficiency of providing scalable streaming services in distributed network systems. Our objective is to maximize the user’s quality of experience according to content characteristics, resource availability, and the client’s preferences for the service quality. We consider that the streaming quality will be adapted within a client’s preferred range: from the highest to the lowest when the network resources are insufficient. The quality adaptive methods will adapt the services according to network band- width, users’ device capacities and their preferred streaming quality. We present a series of distributed quality adaptive methods which are able to improve users’ quality of experience and avoid severe degradation or service suspension (e.g., delay, jitter, reconnecting, etc.). The rest of the paper is organized as follows. Section II in- troduces the background and related work. Section III presents the system model for SVC streaming and problem formulation. Section IV presents our proposed distributed quality adaptive algorithms for scalable video streaming services. Section V discusses our comparative studies and the results. Section VI includes our concluding remarks. II. RELATED WORK For scalable media contents, Fine Grained Scalable (FGS)- based adaptation methods were proposed [13], [11], [10] to adjust the quality enhancement layers during the streaming services. Therefore, a single-version video content can serve multiple heterogeneous users simultaneously. Such adaptive scalable streaming services reduce the chances of service sus- pension and improve the client’s Quality of Experience (QoE) under dynamic network conditions. The quality adaptation methods can be categorized into Individual-oriented quality adaptation and Group/Classes-oriented quality adaptation. We have also included the background of managing service quality across application and network layers in the supplementary document of this main file. A. Individual-oriented quality adaptation The individual-oriented quality adaptation [9], [15], [7], [13] is to adjust the quality of experience for individual users according to the user’s device capacity and network constraints. Hence, each individual user may have different quality of experience. 1) Client-initiated quality adaptation: In client-initiated quality adaptation [9], [11], the requests of quality adap- tation or the feedbacks are sent from the client to adjust the quality levels of the scalable media content so as to

A Differentiated Quality Adaptation Approach for Scalable Streaming Services

Embed Size (px)

Citation preview

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

1

A Differentiated Quality Adaptation Approach forScalable Streaming Services

Xiaorong Li*, Member, IEEE,Bharadwaj Veeravalli†, Member, IEEE,*Institute of High Performance Computing,†The National University of Singapore

Abstract—Providing scalable video streaming services for het-erogeneous users in dynamic networked environments requiresefficient and adaptive quality management mechanisms whichdeliver quality-customized services according to the client’spreferences and adapt the services to cope with various networkconditions. In this paper, we address the issue of quality adapta-tion for providing personalized scalable media streaming servicesin dynamic network environments. We propose a differentiatedadaptive quality optimization algorithm, called Scalable VideoCoding Quality Adaptation algorithm (SVC-QA), which adaptsstreaming quality based on both system-level and client-leveloptimization to optimize streaming quality according to networkbandwidth conditions, content characteristics, a user’s qualitypreferences, and buffering capacities of different client devices(e.g., mobile phones, PCs, HDTVs, etc.). Comparative studiesare conducted to compare our proposed algorithms with otheradaptive methods. We show that two-level SVC quality adapta-tion method can achieve better SVC streaming quality with bothhigh Peak Signal-to-Noise Ratio (PSNR) and low quality varianceunder dynamic resource constraints. Moreover, the proposeddistributed method reduces the computational complexities atthe server side substantially, making it practical and flexible forproviding scalable streaming services.

Index Terms—Scalable streaming services, quality adaptation,distributed systems, service utility

I. I NTRODUCTION

T HERE is a dramatically increasing demand for personal-ized streaming services where users can access services

anytime and anywhere from personalized devices [1], [2] byspecifying desired service quality, such as playback resolution,frame rate, bit rate, etc. These features are highly demandeddue to the booming of wireless communication and the avail-ability of various mobile devices (e.g., PDAs, hand phones,PS2s, etc.) with different CPU capacities, memory space, andnetwork connections, etc.

Scalable video coding (SVC) [3] is the latest video compres-sion technology which encodes videos into multiple layers toserve heterogeneous users with various quality requirements.Popular examples are MPEG-4 FGS, H.264 SVC, etc. H.264SVC [14] is an extension of the H.264 standard that wasintroduced by the Joint Video Team (JVT) of the ISO/IECMoving Pictures Experts Group (MPEG) and the ITU-T VideoCoding Experts Group (VCEG). It provides flexible streamingstructures to encode each layer with different bit rates anddifferent granularity. Therefore, a scalable encoded videocan serve multiple users of different needs and preferences.However, provisioning of scalable video streaming serviceshas yet to be commercially successful. The flexibility andefficiency of adapting streaming quality for various users indynamic networking environments is the key.

In this paper, we address the flexibly and efficiency ofproviding scalable streaming services in distributed networksystems. Our objective is to maximize the user’s qualityof experience according to content characteristics, resourceavailability, and the client’s preferences for the service quality.We consider that the streaming quality will be adapted within aclient’s preferred range: from the highest to the lowest whenthe network resources are insufficient. The quality adaptivemethods will adapt the services according to network band-width, users’ device capacities and their preferred streamingquality. We present a series of distributed quality adaptivemethods which are able to improve users’ quality of experienceand avoid severe degradation or service suspension (e.g., delay,jitter, reconnecting, etc.).

The rest of the paper is organized as follows. Section II in-troduces the background and related work. Section III presentsthe system model for SVC streaming and problem formulation.Section IV presents our proposed distributed quality adaptivealgorithms for scalable video streaming services. Section Vdiscusses our comparative studies and the results. Section VIincludes our concluding remarks.

II. RELATED WORK

For scalable media contents, Fine Grained Scalable (FGS)-based adaptation methods were proposed [13], [11], [10] toadjust the quality enhancement layers during the streamingservices. Therefore, a single-version video content can servemultiple heterogeneous users simultaneously. Such adaptivescalable streaming services reduce the chances of service sus-pension and improve the client’s Quality of Experience (QoE)under dynamic network conditions. The quality adaptationmethods can be categorized intoIndividual-oriented qualityadaptationandGroup/Classes-oriented quality adaptation. Wehave also included the background of managing service qualityacross application and network layers in the supplementarydocument of this main file.

A. Individual-oriented quality adaptation

The individual-oriented quality adaptation [9], [15], [7],[13] is to adjust the quality of experience for individualusers according to the user’s device capacity and networkconstraints. Hence, each individual user may have differentquality of experience.

1) Client-initiated quality adaptation: In client-initiatedquality adaptation [9], [11], the requests of quality adap-tation or the feedbacks are sent from the client to adjustthe quality levels of the scalable media content so as to

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

2

cope with the dynamic change of the network conditions.Such methods are effective in supporting different presentationqualities requested by heterogeneous users and providingQoS-adaptive services under dynamic network conditions.For scalable streaming services, frequent adding or droppingthe enhancement layers will result in “quality jitter” whichaffects the users quality of experience. Smooth adaptationmethods were proposed in [9] to schedule the transmissionof the enhancement layers according to the receiver buffersize and the end-to-end bandwidth conditions. In [11], alight-weight adaptation method was proposed to calculate theadaptation parameters objectively using Peak Signal-to-NoiseRatio (PSNR) information. Feedback information from theclient helps the quality adaptor to determine the appropriateframes of the media content to transmit. In [4], collaborativequality adaptation was proposed to prefetch streams amongpeers in a P2P-based mobile network.

2) Server-initiated quality adaptation:In server-initiatedquality adaptation methods [7], [15], [13], [17], [22], servicequality are adjusted to optimize the system overall perfor-mance. Streaming server decides whether to serve an indi-vidual user and how to adjust the server transmission ratesaccording to the dynamic network conditions. In [7], DACME(Distributed Admission Control for MANET (Mobile Ad HocNetworks)’s - Scalable Video) agent at the video source nodewill probe the network conditions and determine the numberof the transmission layers so as to fully utilize the networkbandwidth and balance the load of the system. Sometimes,negotiation of service quality happens before the commence-ment of the service, in which a bilateral service contracthas been established between a service provider and eachindividual client [15], [1]. A multi-level adaptation algorithmwas proposed in [15] to degrade the quality levels selectivelyso as to optimize the overall resource utilization under resourceconstraints. The server-initiated quality adaptation is effectivein balancing the demand of the users and the constraints ofsystem resources. In [13], a unified broadcasting method isproposed for the server to schedule the enhancement layersin its broadcast and unicast channels so as to optimize theoverall bandwidth consumption of supporting heterogeneoususers. When network bandwidth fluctuates, client can get thevideo contents from various channels to ensure its quality ofexperiences. In [12], the authors proposed an adaptive methodto schedule the streaming packages according to availablenetwork bandwidth to minimize the accumulative degradationof multiple video streams.

B. Group/Classes-oriented quality adaptation

The primary objective of group/classes-oriented qualityadaptation is to protect the quality of various service classesand to maximize resource utilization by allocating the avail-able resources at runtime. Hence, by such quality adaptationmethods, the users of the same service classes will be treatedequally with the same level of quality of experience whennetwork fluctuation happens.

A proportional-share resource allocation strategy [5] wasproposed to adapt resource allocation proportionally for dif-ferent quality classes when resource availability fluctuates. A

harmonic quality adaptation strategy in [6] was proposed toprovide better quality spacing for different service classes withfluctuations in resource availability.

In this paper, we propose a distributed streaming qual-ity adaptation algorithm which protects the client qualityof experience in the same service classes and maximizesthe clients’ quality of experience by adapting the streaminglayers gracefully. Such distributed quality adaptation methodis highly practical with less time complexity. It gracefullyadapts the streaming quality with the consideration of thenetwork bandwidth, the content characteristics, the client de-vice capacities, and user preferences. To measure the clientperceived quality of experience [20], we evaluate the perfor-mance of streaming adaptation methods based on streamingbit rate/bandwidth, PSNR and quality variance under dynamicresource constraints. Furthermore, our method reduces com-putational complexities dramatically making it practical andapplicable in large-scale media streaming systems.

III. SYSTEM MODEL AND PROBLEM FORMULATION

In this section, we first describe the system architecture andthe working scenarios. Then we present an analytic model ofthe quality adaptation for scalable video streaming servicesand formulate the problem.

A. System Architecture

The distributed streaming system in our design includesthree layers:service layer, application layer, and resourcelayer, as shown in Fig.1. The media server is the repositoryof scalable encoded videos [14] to serve heterogeneous clientswith various quality requirements. The client is to ensure thatthe services are adapted in real time to cope with variousdynamic situations. In this paper, we consider on-demandvideo streaming in which videos are pre-encoded into scalablevideo streams. Clients are able to subscribe to the videoservices by specifying their desired streaming quality andadaptation ranges. Letr[i] denote thei-th request in the requestsequenceR = {r[0], r[1], · · · , r[n − 1]} wheren is the totalnumber of the requests.

Firstly, videos are encoded into scalable media contentsso as to serve heterogeneous clients with various streamingquality requirements. Letm denote the number of qualitylevels that the system supports. The average bit rate of qualitylevel j is bj , b1 < b2 < · · · < bj < · · · < bm. The encodedvideos are stored in the video repository and transmitted bystreaming servers via real-time video transport protocols, e.g.,RTP over UDP over IP, to the clients.

Secondly, the system should be able to adapt the streamingquality within the client’s preferred adaptation ranges [6], [15].For example, a mobile user might not be able to play a videoat resolution800 ∗ 600 due to the constraints of his/her LEDmonitors. Sometimes, clients might not tolerate a sports videowith a moderate rate of 3.75 fps. We assume clients can specifytheir preferred quality levels at the service negotiation phasebefore their services commence. BooleanXi

j denotes whetherthe quality levelj is selected by the client for request r[i]. Thesystem can adapt to quality levelj only if Xi

j = 1. Let boolean

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

3

QoSNegotiation

ServiceDiscovery

AdmissionControl

QualityMonitoring

QoSAdaptation

Policy

ServerController

StreamingServer

(RTP/UDP/IP)

SVC bit-streams(b[i])

Client request(r[i])

ServiceLayer

Application Layer

Quality M

anagement

ResourceLayer

Video Repository (SVC streams)

Qualityinfo.

Service Selection &Negotiation

Client QoEMonitoring & Adaptation

ServiceLayer

Application Layer

Quality M

anagement

ResourceLayer

Streaming Client(RTP/UDP/IP)

r[0]

r[n-1]

r[1]

InternetStreaming data

Control/quality info.

Fig. 1. Layered server architecture for scalable video streaming services

Y ij (t) denote the quality control information, andY i

j (t) = 1represent that the system is serving requestr[i] at quality levelj, (1 ≤ j ≤ m) at timet. Hence, the bit rateb[i](t) for servingrequestr[i] at time t may vary from time to time during thestreaming service.

Thirdly, the effectiveness of the system is evaluated bythe service utility. The concept of utility or utility functionoriginated in the microeconomic field and it has been widelyadopted to evaluate the user’s satisfaction towards the services[3], [15], [6], [17]. Utility value u[i](t) denotes the degreeto which a client is satisfied with the requested servicer[i]at time t. For video streaming services,Peak Signal-to-NoiseRatio (PSNR)is a popularly adopted method to assess thevideo quality objectively by comparing the quality of thereconstructed video with the original one. It shows the averagedistortion of each video frame in a video sequence, but it doesnot convey the continuity of the streaming quality during thestreaming service. Hence, quality adaptation with consistentservice quality should be considered as well. The serviceutility, U(t), is the sum of the utility achieved for servingthe requests at time instancet. The value ofU(t) indicates theeffectiveness of the system in providing services to the clients.The higher the value of the service utility, the more effectiveis the system in providing a scalable streaming service.

B. SVC Adaptation

The scalability of H.264 SVC [14] is three-dimensional:spatial, temporal, and quality. A three-dimensional quality ID(D, T, Q) including dependency ID (D), temporal ID (T), andquality ID (Q), indicates the respective spatial, temporal andquality scalability of a video stream. The spatial scalabilitydetermines the resolution of the client playback devices, thetemporal scalability determines the frame rate, and the qualityscalability determines the video SNR (Signal to Noise Ratio).During the streaming, quality adaptation enables the services

to be adapted according to the user’s preferred quality levels.For example, the resolutions of the video should fit the size ofuser’s screen. Therefore, in our design the quality adaptationpolicy will run the stream quality adaption algorithm to deter-mine Y i

j (t), j ∈ [1,m], i ∈ [0, n − 1]. The server controllerwill map the quality control informationY i

j (t) into the three-dimensional quality IDs,(D, T, Q), to select and transmit thecorresponding video bit streams [14] from the server to theclient. Please refer to the supplementary file for the details.

The user perceived service quality is associated with thequality levels of the scalable streaming services [8]. Theservice utility at timet is the sum of the client utility perceivedby individual clients as follows:

U(t) =n−1∑

i=0

m∑

j=1

Xij · Y i

j (t) · u[i](t) (1)

Each individual stream has specific average bit rates whichare determined by (i) the characteristics of each video stream,(ii) the granularity of the scalable coding, and (iii) the videobit rates of dependent layers. The enhancement layers improvethe quality of the video streams. Therefore, SVC qualityadaptation is to adjust the streaming quality by adding ordropping the enhancement layers. In the meantime, as eachmedia server has limited network resources, the server wouldadjust the server output bandwidth for serving all the users tooptimize system-level performance. Therefore, SVC streamingquality adaptation should benetwork-adaptiveto cope withdynamic network conditions.

C. Problem Statement

Given a set of request sequencesR = {r[0], r[1], · · · , r[n−1]} and the available server network bandwidth at timet isB(t). We seek the best possible schedule solutionS which

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

4

TABLE INOTATIONS TABLE

Symbols Meaning

m Number of the quality levels for scalable streaming servicesbj Average bit rate of the encoded stream of quality

level j, 1 ≤ j ≤ mR Set of concurrent requestsR = {r[0], r[1], ..., r[n− 1]}

being served by the systemn Total number of requests being served by the systemr[i] i-th request being served by the systemXi

j Requestr[i] selects quality leveljY i

j (t) Requestr[i] is served at quality levelj at time t

b[i](t) Bit rate of the video stream which is serving requestr[i]at time instancet

p[i](t) Playback bit rate of the stream serving requestr[i] at time twi

c Playback delay of serving requestr[i] at time tBuf i Buffer size of the client submitting requestr[i]bmin[i] Video bit rate to server[i] at the minimal quality levelbideal[i] Video bit rate to server[i] at the maximal quality levelu[i](t) Utility for serving requestr[i] at time instancetδ[i] Quality weight of requestr[i]U(t) Service utilty for serving requests at time instancetB(t) Bandwidth resources operable at time instancet∆w Time interval of the client adaptation window

can maximize the total service utility for serving the requests,as defined in (1), within the constraints of dynamic resourceavailability B(t), and at the same time, satisfy the client’spreferences of the streaming quality for each individual re-quest. The system-level utility optimization for the scalablevideo streaming service is defined as:

max U(t) =n−1∑

i=0

m∑

j=1

Xij · Y i

j (t) · u[i](t) (2)

s.t.∑n−1

i=0

∑mj=1 Xi

j · Y ij (t) · b[i](t) ≤ B(t)

b1 ≤ b2 ≤ · · · ≤ bm∑m

j=1 Xij · Y i

j (t) = 1

Xij ∈ {0, 1}, Y i

j (t) ∈ {0, 1}The optimization problem is to find the best scheduling strat-egy (i.e.,Y i

j (t), i ∈ [0, n), j ∈ [1,m]) to maximize the overallservice utility within dynamic bandwidth constraints. Besideshaving the ability to adapt the streaming quality accordingto dynamic network conditions, the system should be ableto allocate resources adaptively with the consideration of thecharacteristics of the video contents, the capacities of clientdevices, and the preferred streaming quality. Our goal is to de-sign the efficient streaming quality adaptation strategy, whichoptimizes the client’s quality of experience by selecting layer-encoded SVC streams for concurrent heterogeneous clients indynamic network environments.

For the reader’s convenience, Table I summarizes the nota-tions used throughout the paper.

IV. QUALITY ADAPTATION SCHEMES

In this section, we analyze how the SVC streaming qualityadaptation schemes can cope with these dynamic scenarios

efficiently in order to optimize system performance. We thenpresent our SVC quality adaptation algorithm which adaptsSVC quality levels during a scalable streaming service tomaximize service utility.

A. Mathematical analysis

We consider solving the optimization problem at two levels:system-level and user-level optimizations. The system-leveloptimization aims to optimize overall system service utilityunder dynamic network conditions. The user-level optimiza-tion is meant to optimize the quality of experiences for anindividual client.

1) System-level Quality Optimization:In multimedia ser-vices, service utility is determined by the user’s perception ofthe services. Both the quality level of the video streamingand also the consistency of the service quality will affectthe client’s quality of experience. Therefore, effective qual-ity adaptation for streaming services should not only adjustthe quality adaptively according to resource availability, butalso protect the services with a relative consistent streamingquality. Let b[i](t), (bmin[i] ≤ b[i](t) ≤ bideal[i]) denote theactual bandwidth allocated for serving requestr[i], where[bmin[i], bideal[i]] denotes theadaptation range[6] to whichb[i](t) can be adjusted from the minimal bandwidth,bmin[i],to the ideal bandwidth,bideal[i], for serving requestr[i].

When resource availability fluctuates due to the dynamicfeatures of the networks, the server bandwidth for serving arequest should be adjusted within a certain range in orderto avoid severe degradation or suspension. To quantify theamount of quality variance from the ideal case wherein theamount of network resources for servingr[i] is no less thanbideal[i], we definequality variancefor serving requestr[i] as

∆Q[i](t) =(

bideal[i]− b[i](t)bideal[i]

)2

(3)

Quality variance∆Q[i](t) serves to evaluate how far the actualservice quality deviates from the ideal case where the clientsare served with the sufficient bandwidth.

The average quality variance for the system serving all theconcurrent requests inR is given by

∆Q(t) =1n·

n−1∑

i=0

(δ[i] · bideal[i]− b[i](t)

bideal[i]

)2

(4)

where ∆Q(t) is the average quality variance,n is the totalnumber of requests being served by the system, andδ[i] isthe quality weightof requestr[i] to show the importance ofrequestr[i] among all the requests in the system.

The user’s quality of experience is affected by the instanta-neous service quality received by both the client at any timeinstance and the quality fluctuation. Hence, we define the clientutility of a requestr[i] as a function of ideal client utility andthe quality variance with

u[i](t) = uideal[i](t)− δ[i]2 ·∆Q[i](t) (5)

whereuideal[i](t) is the ideal client utility when the request isserved at the ideal network bandwidth. The client’s satisfaction

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

5

towards a service at any time instance is affected by boththe service quality and the consistency of the service quality.Hence, the overall utility for serving individual requests isgiven by

U(t) =n−1∑

i=0

u[i](t) (6)

When resources are insufficient to serve all the requestswith their ideal bandwidth requirements,∆Q(t) will be greaterthan zero. The larger∆Q(t) is, the bigger would be theclient’s perceived quality variance. Therefore, during a scal-able streaming service, we try to minimize the average qualityvariance and protect the streaming quality of each requestto be adjusted within certain a predefined adaptation range.Hence, by minimizing∆Q(t), the variance in individual’s QoEpreferences is minimized.Theorem 1. Given a multimedia systemS with limitedI/O bandwidth B(t) at time instancet, a set of requestsR = {r[0], r[1], · · · , r[n − 1]} with bideal[i] as the idealbandwidth required for servingr[i], (∀r[i] ∈ R), the maximalservice utility in (6) for servingR can be achieved if the serverbandwidth allocated to each requestr[i], (∀r[i] ∈ R), is givenby

b[i](t) = bideal[i]− bideal[i]2 · (∑n−1

k=0 bideal[k]−B(t))

δ[i]2 ·∑n−1k=0

(bideal[k]

δ[k]

)2 (7)

Proof of Theorem 1: The problem of maximizing the serviceutility U(t), is an optimization problem which maximizesthe sum of the client utility achieved for serving individualrequests at time instancet. From (4), (5) and (6), we obtainthe cumulative utility as

U(t) =∑n−1

i=0 uideal[i](t)− n ·∆Q(t)

To maximize the service utility, we simply need to minimizethe average quality variance as

min{∆Q(b[0](t), b[1](t), · · · , b[n− 1](t))}st. B(t)−∑n−1

i=0 b[i](t) = 0

Let F (b[0](t), b[1](t), · · · , b[n − 1](t)) = B(t) −∑n−1i=0 b[i](t) = 0 denote the constraint function. According

to Lagrange Equation, the optimal∆Q(t) can be achieved ifthe following functions can be satisfied as

∂∆Q(t)∂b[i](t) + Φ · ∂F (b[0](t),b[1](t),··· ,b[n−1](t))

∂b[i](t) = 0,

(0 ≤ i < n)

F (b[0](t), b[1](t), · · · , b[n− 1](t)) =B(t)−∑n−1

i=0 b[i](t) = 0

where Φ is a constant. The condition for minimizing∆Q(b[0](t), b[1](t), · · · , b[n− 1](t)) is given by

Φ = 2n ·

B(t)−Pn−1i=0 bideal[i]Pn−1

i=0bideal[i]

2

δ[i]2

Hence, we derive

b[i](t)=bideal[i]− bideal[i]2·(Pn−1

k=0 bideal[k]−B(t))δ[i]2·Pn−1

k=0bideal[k]2

δ[k]2

, ∀i ∈ [0, n)

which maximizesU(t) in (6). End of proof.Eq. (7) minimizes the average quality variance from the

ideal cases wherein all the requests are served with idealbandwidth requirements. When network resources fluctuate,bandwidth allocation according to (7) protects the streamingquality of different classes and at the same time providesservices with relatively consistent streaming quality. There-fore, we consider proposing a smooth quality adaptation strat-egy which not only supports service differentiation but alsosmoothly adapts quality variance by minimizing the overallquality variance from the ideal case wherein all the requestsare served with their highest bandwidth requirements.

We now analyze some existing quality adaptation algorithmswith the effect of the network bandwidth fluctuation. Follow-ing the proportional-share resource allocation strategy in [5],the bandwidth fluctuation perceived by requestr[i] from t2 tot1 is given by

∆b[i](t)∆t

=B(t2)−B(t1)

t2− t1· δ[i]∑n−1

k=0 δ[k](8)

Following the harmonic resource allocation strategy in [6], thebandwidth fluctuation perceived by requestr[i] from t2 to t1is given by

∆b[i](t)∆t

=B(t2)−B(t1)

t2− t1·

√δ[i]∑n−1

k=0

√δ[k]

(9)

Both the proportional-share adaptation strategy and theharmonic adaptation strategy are efficient in supporting differ-entiated streaming quality and protect the requests with higherquality weights thus enabling more resources to be allocatedduring the adaptation. However, from (8) and (9), we notethat the requests with higher quality weights may experiencebigger quality variations than those of lower quality weights,which may not be ideal in real-life situations.

According to our mathematical deduction in (7), whenserver network bandwidth vary fromB(t1) at time t1 toB(t2) at timet2, we can derive that the bandwidth fluctuationperceived by requestr[i] is

∆b[i](t)∆t

=B(t2)−B(t1)

t2− t1· bideal[i]2

δ[i]2 ·∑n−1k=0

(bideal[k]

δ[k]

)2 (10)

From (10), we note that the request of a higher quality weighthas the potential to experience a smaller amount of bandwidthfluctuation than that of a lower quality weight.

2) User-level Quality Optimization:The user-level qualityoptimization is to optimize the client’s perceived service qual-ity according to the characteristics of each individual client,such as the buffer size, the playback delay, the requested videocontents, etc. LetBuf i denote the client buffer size,wi

c denotethe playback delay, andp[i](t) denote the playback rate.Theorem 2.To ensure a lossless and starvation-free playback,the stream bit rateb[i](t) for serving requestr[i] at qualitylevel j should be within the range as follows:

∫ t

wic

p[i](t− wic)dt ≤

∫ t

0

b[i](t)dt (11)

≤ min{∫ t

wicp[i](t− wi

c)dt + Buf i,∫ l

0p[i](t)dt}

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

6

wheret, (0 ≤ wic ≤ t ≤ l + wi

c) and l is the video length.Proof of Theorem 2: At the start of the streaming session,the streaming data will be buffered from time 0 towi

c in theclient buffer before the video is played. After the bufferingtime wi

c, the video frames cached in the client buffer willbe removed once they are played. Buffer starvation occurs,if the data which has been played is more than the data thathas been buffered. Thereby, in the case of buffer starvationthat

∫ t

wicp[i](t − wi

c)dt >∫ t

0b[i](t)dt, (0 ≤ wi

c ≤ t ≤ l +wi

c), the requested video needs to be re-buffered before theplayback. In the meantime, the video playback will be pausedfor a short period during the client re-buffering time. Bufferoverflow happens as

∫ t

0b[i](t)dt > min{∫ t

wicp[i](t−wi

c)dt +

Buf i,∫ l

0p[i](t)dt}, (0 ≤ wi

c ≤ t ≤ l+wic), when the amount

of the filled data minus the amount of the played data is beyondthe client buffer size (and the amount of the streamed data isno more than the total size of the video). Therefore, if theclient-received streaming bit rateb[i](t) is within the rangeas defined in (11), the video can be smoothly played backwithout buffer starvation or overflow.End of proof.

During a media streaming service, the receiving bit rate ofa client could fluctuate due to dynamic end-to-end networkconditions and the variability of media contents. The clientquality adaptation algorithm will determine which streaminglayer is to be transmitted from the server in order to ensuresmooth playback at the client side. We use a short time inter-val, ∆w, to estimate the network conditions and determine thesubscription SVC layer due to the client buffering capacitiesand the characteristics of the SVC streaming.

To avoid quality jitters due to frequent adding or droppingquality layers, we also set the condition of the adjustment as

Y iL(τ) = Y i

L(t), ∀τ ∈ [t−∆w, t) (12)

wheret (∆w ≤ t ≤ l) is the time instance. The client adjuststhe quality level according to (12) so as to avoid too frequentadjustment of the quality levels for scalable streaming services.Client can adjust the quality level only if (12) is true. That isthe last adjustment is more than∆w. The time interval∆w in(12) avoids the too frequent adjustment of the quality levels forscalable streaming services. In real-life situations, the width of∆w depends on the variability of the network conditions andthe degree of the clients acceptance to the quality jitter.

B. SVC quality adaptation algorithms

Based on our mathematical model and the analysis inthe previous section, we present our SVC quality adaptationalgorithm (SVC-QA), which integrates both the system-levelquality optimization method, SVC-SQO, and the client-levelquality optimization method, SVC-CQO, to gracefully adaptthe SVC streaming quality under various dynamic situations.

Fig. 2 presents our proposedSVC-System-level-Quality-Optimization (SVC-SQO) strategy, or SQO in short. Whenresources are sufficient, all the requests will be met accordingto the ideal bandwidth requirements; otherwise, the streamingquality of a request will be adapted according to (7) to ensurea smooth adaptation. The proposed SVC-SQO strategy aimsto achieve the highest service utility with minimal quality

Algo. SVC-System-level-Quality-Optimization(SVC-SQO) /*Find the optimal adaptation solution for serving requests,Rp={r[0], r[1], · · · , r[n − 1]} on server Sp with the availableresourcesBp(t). R′, n′, r′[], b′[](t), b′ideal[], b′min[], B′(t) and i′are temporary values in the program, andi′ may not be equal toi.*/begin

for all r[i] ∈ Rp(t), setb[i](t) = 0; endforsetR′=Rp; n′=n; r′[]=r[]; b′[](t)=b[](t); B′(t)=Bp(t);setb′ideal[]=bideal[]; b′min[]=bmin[]; A=1;while (A == 1), set A=0;

for all r′[i′] ∈ R′, calculate

b′[i′](t)=b′ideal[i′]−

b′ideal[i′]2·

�Pn′−1k=0 b′ideal[k]−B′(t)

�δ[i′]2·Pn′−1

k=0b′ideal

[k]2

δ[k]2

and allocate the resources (b[i](t) ← b′[i′](t)); endforfind b′[i′](t)=minj{b′[j](t)} (∀r′[j] ∈ R′);if (b′[i′](t) < b′min[i′]), setb′[i′](t) = b′min[i′];

allocate the resources (b[i](t) ← b′[i′](t)); set A=1;remover′[i] from R′; B′(t) = B′(t)− b′min[i′]; endif

if (A==0) find b′[i′](t)=maxj{b′[j](t)} (∀r′[j] ∈ R′);if (b′[i′](t) > b′ideal[i

′]), setb′[i′](t) = b′ideal[i′];

allocate the resources (b[i](t) ← b′[i′](t)); set A=1;remover′[i] from R′; B′(t) = B′(t)− b′ideal[i

′]; endifendif endwhile

end

Fig. 2. Pseudo-code for implementing SVC-SQO algorithm

Algo. SVC-Client-Level-Quality-Optimization (SVC-CQO) /*Determine SVC layer according to client buffering spaceBuf i, b[i](t) client receiving bandwidth,wi

c client playback delay,∆w adaptive window,Buf i

up and Buf ilow are the respective upper

and lower constraints, andtmp(t+∆w) estimates the size of the datato be buffered at time(t+∆w) based on the average size of the datareceived and playbacked within(t-∆w, t)*/begin

if (0 ≤ t < ∆w)set the initial quality levelL, (1 ≤ L ≤ m), according tob[i](t)else if (∆w ≤ t < wi

c)while ((12) & tmp(t+∆w)>Buf i & Xi

L−1=1, L ∈ [1, m] )L = L− 1; endwhile

else if (wic ≤ t ≤ l)

while ( (12) & tmp(t+∆w)>Buf iup & Xi

L−1=1, L ∈ [1, m] )L = L− 1;endwhile

while ( (12) & tmp(t+∆w) < Buf ilow & Xi

L+1=1, L ∈ [1, m] )L = L + 1;endwhile endif

for j ∈ [1, m] if (j == L) Y ij (t)=1;elseY i

j (t)=0; endif endforend

Fig. 3. Pseudo-code for implementing SVC-CQO algorithm

variance from the ideal case wherein the resources are suf-ficient to serve all the requests with their highest bandwidthrequirements. The strategy not only supports the serviceswith differentiated service qualities for heterogeneous userrequests, but also protects the services, especially those withhigh quality weights, from severe quality jitters during theadaptation.

Fig. 3 describes the algorithm SVC-Client-Level-Quality-Optimization (SVC-CQO), or CQO in short, which adaptsthe quality of the SVC streaming service and optimizesperformance according to the client’s device capacities, such asthe client buffering space, the playback delay, and the playbackbit-rates of the requested SVC contents.

Fig. 4 shows the distributed algorithm, SVC-Quality-Adaptation (SVC-QA), which runs the system-level optimiza-tion algorithm at the server side and the client-level optimiza-tion algorithms at client side for the performance optimiza-tions. The system-level optimization design, as shown in Fig.

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

7

Algo. SVC-Quality-Adaptation (SVC-QA)begin

if R 6= Null,Call SVC-SQO to determine b[i](t) for allr[i] ∈ R;/*System-leveloptimization*/

for each requestr[i] ∈ R, /*Client-level optimization*/Call SVC-CQO forL-layered bit streams at client side;endfor endif

end

Fig. 4. Pseudo-code for implementing SVC-QA algorithm

2, is to allocate the server resources to multiple concurrentusers and gracefully adapt the network fluctuations to optimizethe system overall performance and prevent the streamingservice from severe degradation or suspension. The client-leveloptimization design, as shown in Fig. 3, allows the client tooptimize its quality of experience by determining the videosubscription layers in real-time according to the end-to-endbandwidth constraints, the client buffer availabilities, and theSVC video characteristics. The combination of the two-leveloptimization in SVC-QA greatly reduces the computationalcomplexity, which makes it highly practicable and adoptablein the real industry.

C. Complexity Analysis

Our proposed Optimal Smooth SVC quality adaptationalgorithm (SVC-QA) optimizes the client’s perceived servicequality by combining both the system-level and client-leveloptimizations. It maintains a fairly low computation complex-ity dramatically with the server side optimization in the orderof O(n2), wheren is the total number of simultaneous clients,and the client side optimization in the order ofO(m), wheremis determined by the number of layers that a media content isencoded into and the client preferred adaptation ranges duringthe streaming service. The two level optimization algorithmdesign reduces the computational complexities dramaticallyand makes it possible for a streaming system to support alarge number of concurrent users simultaneously.

With various quality adaptation algorithms in the literature,we notice that some focus on server bandwidth allocation with-out considering client buffer constraints [3,4,5,22] and somefocus on individual stream optimization [7,10] without con-sidering the system-level optimization for concurrent clients.However, most of them let a streaming server or a centralmanager of the system make adaptation decisions. Hence, thetime complexity of the system will be close to or even morethanO(n2 ·m). Some algorithms may have even higher timecomplexity due to considering other factors, such as start updelays [10] (w times higher, wherew is the number of timeunits of the maximal tolerable waiting time), VOP numbers ineach layer [7] (v times higher, wherev is the number of theVOP frames in each layer), etc. The performance comparisonof those algorithms may not be straightforward, as they weredesigned based on different assumptions, e.g., [10] assumesIP multicasting, [7] assumes MEPG-4 streams, [22] assumescost optimization, etc. However, in real service provisioning,the time complexity of a quality adaptation algorithm plays anactive role for the system to handle a large number of usersunder dynamic network environments. Our proposed two level

Fig. 5. Sample video sequence (Foreman@CIF)

optimization design cannot only achieve low time complexitybut also work with various existing methods to have bothsystem-level and client-level optimization.

V. PERFORMANCESTUDIES

To study the performance of SVC quality adaptation strate-gies, we conduct simulations of differentiated streaming ser-vices for multiple classes of users and compare the perfor-mance with a proportional-share resource allocation strategy[5] and a harmonic resource allocation strategy [6] whichsupport both QoS differentiation and adapt the resource al-location to dynamic network conditions. We consider servicedifferentiation model in [16], in which10% of client requestsin Class A (premium class with quality weight 2),40% inClass B (ordinary class with quality weight

√2), and50% in

Class C (basic class with quality weight 1). The popularityand quality weights of each service class can be determinedby the distribution of client requests and class priority settingin real service provisioning. Requests arrive in Poisson withthe average request rateλ in the unit of requests per minute.The bandwidth for serving a request can be adjusted from2 Mbps for typical high-quality videos to 1 Mbps for thoseof relatively lower qualities. The average duration of a videostreaming session is 100 minutes. A multimedia system has atotal of 16 Gbps network I/O bandwidth with10% fluctuationsevery second for a streaming service, and the codec we use isa scalable extension of H.264 (JSVM) version 9 [14], and theclient’s adaptive window∆w is 20 seconds.

We encode a sample video, named “Foreman”, as shown inFig. 5, into an H.264SVC video which supports 2 resolutions(CIF and QCIF), 3 temperate rates (30fps, 15fps, 7.5fps), and2 FGS layers. The video is compressed into 10 quality levelsfrom video bit rates of 1.1Mbps to 2.0Mbps. This sample videois concatenated to simulate a long video in the experiments.Table II lists the specifications of the 10 quality levels. We useperformance metrics such as video bit rate, PSNR, and qualityvariance to evaluate the client perceived quality of experience.

A. Effects of average request arrival rates

Fig. 6 illustrates the performances of the different algo-rithms for serving various service classes: premium, ordinary,and basic classes. Our proposed SVC-SQO algorithm (SQO)achieves a lower average quality variance than proportional

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

8

TABLE IIAN EXAMPLE OF A SCALABLE ENCODED VIDEO STREAM

Quality level 1 2 3 4 5 6 7 8 9 10

Bitrate (Kbps) 1100 1200 1300 1400 1500 1600 1700 1800 1900 2000

Framerate (fps) 7.5 7.5 7.5 7.5 15 15 30 30 30 30

Average PSNR 14.7367 14.7586 14.7840 14.8235 15.1802 15.1890 35.0245 35.5949 36.1565 37.0827

80 100 120 140 1600

0.2

0.4

0.6

0.8

1

Ave

rage

Qua

lity

Var

ianc

e

Request rate λ (req./min)

PropHarmonicSQO

(a) Average quality variance

80 100 120 140 1600

0.1

0.2

0.3

0.4

Ave

rage

Qua

lity

Var

ianc

e

Request rate λ (req./min)

PropHarmonicSQO

(b) Premium Class

80 100 120 140 1600

0.1

0.2

0.3

0.4

Ave

rage

Qua

lity

Var

ianc

e

Request rate λ (req./min)

PropHarmonicSQO

(c) Ordinary Class

80 100 120 140 1600

0.1

0.2

0.3

0.4

Ave

rage

Qua

lity

Var

ianc

e

Request rate λ (req./min)

PropHarmonicSQO

(d) Basic Class

Fig. 6. Per-class quality variance vs average request arrival rates

(Prob) [5] and harmonic (Harmonic) [6] adaptation strategies,as SQO minimizes∆Q(t) under dynamic resource constraints.For requests in premium class, SVC-SQO reduces the qualityvariance dramatically compared with [5] and [6], as shown inFig.6 (b). For requests in ordinary and basic classes, SVC-SQOprotects the service quality such that it is adapted within theacceptable ranges and achieves comparable performance withthe other two strategies, as shown in Fig.6 (c) and (d). Pleaserefer to the supplementary file for the study on the impact ofvarious request rates, popularity of difference service classes,quality factors, etc.

B. Effects of two-level optimization

The varying network bandwidth may severely affect theclient’s perceived quality of experience. Fig. 7 illustrates users’quality of experiences when network bandwidth drops. We ob-serve that our proposed method successfully ensures the qual-ity of three classes with clear differentiation among the threeclasses. Comparing with the other two methods, our proposedmethod can better protect the service of higher classes withhigher service quality and less jitter when bandwidth fluctuatesduring the services. In Fig. 7, the network bandwidth dropsfrom 16 Gbps to 13 Gbps at time instance 150 seconds and itis maintained at 13 Gbps from 200 seconds to 350 seconds.In Fig.7 (c), SQO+CQO smoothens the quality of SQO, whilethe service quality levels of the three classes in SQO+CQO areless affected by the bandwidth drop than those of Prop+CQOin Fig. 7 (a) and Harmonic+CQO in Fig. 7 (b). Only theclients in ordinary classes are affected for a short intervaland the service quality improves quickly with an increase innetwork bandwidth. It is because SQO maximizes the system-level bandwidth utilization for different service classes, thatCQO optimizes the individual client’s quality of experienceusing the client buffer, and the combination of SQO with CQOis able to protect service quality against severe degradationwith relatively consistent quality. Fig. 7 (d)-(f) illustrates the

PSNRs of the premium, ordinary, and basic service classes byProp+CQO, Harmonic+CQO, and SQO+CQO, respectively.Harmonic+CQO achieves a higher PSNR than Prop+CQO,while our proposed SQO+CQO outperforms Prop+CQO andHamonic+CQO with a higher PSNRs for three service classeswith fewer fluctuations. Fig. 7 (g)-(i) compare the qualityvariance before and after the combination of the system-leveland client-level quality adaptations. CQO reduces the qualityvariance dramatically after combining with the system-levelquality adaption.

C. Effects of client buffering constraints

Fig.8 illustrates the performance of quality adaptive algo-rithms under various client buffering constraints. It showsthat even with a small amount of client buffer, our proposedmethod works well when bandwidth severely drops during theservices. In Fig. 8 (a)-(c), the client buffering constraint is 30seconds only. We observe that the service quality levels of allthe three classes are affected when network bandwidth dropsdrastically. When client buffering constraint is 120 seconds,as shown in Fig. 8 (d)-(e), hardly any quality fluctuation isperceived from the client sides for all the three quality classes.We compare the respective PSNRs and quality variances undervarious different buffering constraints. With an increase inclient buffering time, the client’s quality of experience isimproved with higher PSNR values and less quality variance.

VI. CONCLUSION

In this paper, we address the efficiency and flexibilityof providing personalized scalable streaming services in dy-namic network environments. We propose distributed quality-adaptive algorithms to optimize users’ quality of experiencesand adapt service quality smoothly according to resourceavailability. It allows both system-level and client-level qualityoptimization for scalable streaming services. The two-level op-timization design greatly improves system resource utilization

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

9

0 100 200 300 400 500

1

1.5

2

2.5

3B

andw

idth

(Mbp

s)

Time (second)

Prop (Class A)Prop (Class B)Prop (Class C)Prop+CQO (Class A)Prop+CQO (Class B)Prop+CQO (Class C)

(a) Proportional + CQO adaption

0 100 200 300 400 500

1

1.5

2

2.5

3

Ban

dwid

th(M

bps)

Time (second)

Harmonic (Class A)Harmonic (Class B)Harmonic (Class C)Harmonic+CQO (Class A)Harmonic+CQO (Class B)Harmonic+CQO (Class C)

(b) Harmonic + CQO adaption

0 100 200 300 400 500

1

1.5

2

2.5

3

Ban

dwid

th(M

bps)

Time (second)

SQO (Class A)SQO (Class B)SQO (Class C)SQO+CQO (Class A)SQO+CQO (Class B)SQO+CQO (Class C)

(c) SQO + CQO adaption

0 100 200 300 400 50010

15

20

25

30

35

40

45

50

PS

NR

Time (second)

Prop+CQO (Class A)Prop+CQO (Class B)Prop+CQO (Class C)

(d) Proportional + CQO adaption

0 100 200 300 400 50010

15

20

25

30

35

40

45

50P

SN

R

Time (second)

Harmonic+CQO (Class A)Harmonic+CQO (Class B)Harmonic+CQO (Class C)

(e) Harmonic + CQO adaption

0 100 200 300 400 50010

15

20

25

30

35

40

45

50

PS

NR

Time (second)

SQO+CQO (Class A)SQO+CQO (Class B)SQO+CQO (Class C)

(f) SQO + CQO adaption

0 100 200 300 400 5000

0.2

0.4

0.6

0.8

1

Qua

lity

Var

ianc

e

Time (second)

PropProp+CQO

(g) Proportional + CQO adaption

0 100 200 300 400 5000

0.2

0.4

0.6

0.8

1

Qua

lity

Var

ianc

e

Time (second)

HarmonicHarmonic+CQO

(h) Harmonic + CQO adaption

0 100 200 300 400 5000

0.2

0.4

0.6

0.8

1Q

ualit

y V

aria

nce

Time (second)

SQOSQO+CQO

(i) SQO + CQO adaption

Fig. 7. System-level and Client-level SVC adaptation with severe bandwidth drops

and optimizes the client’s quality of experience. We conductextensive tests to compare our proposed method with otherquality adaptation methods with effect of difference bufferspace, bandwidth fluctuation, dynamic request arrivals, etc.

An interesting part of the study is in comparing a combinedeffect of the client quality adaptation algorithm, CQO, withthree system-level quality adaptation algorithms (i.e., Prop,Harmonic, and SQO adaptation) using three service classeswith respect to average bit rate, quality variance, and PSNR.Interestingly, combined SQO and CQO strategy seem tooutperform other algorithms in achieving a smooth SVC videoplayback with minimum quality variance and a higher PSNR.

Furthermore, our method dramatically reduces computation

complexities by separating the calculations of the systemlevel optimization at the server side from the client-leveloptimization at the client side. Due to low time-complexity, itis possible for the system to support a large number of userssimultaneously and to optimize the performance in real time.

REFERENCES

[1] J. Silvestre-Blanes, R. Marau, L. Almeida, and P. Pedreiras, “On-lineQoS Management for Multimedia Real-Time Transmission in IndustrialNetworks”, IEEE Transactions on Industrial Electronics, issue 99, pp.100-109, Nov.-Dec. 2010.

[2] Xiaorong Li, Bharadwaj Veeravalli, Hailong Li, “Multimedia ServiceProvisioning and Personalization on Grid-Based Infrastructures: Now andthe Future”,IEEE multimedia, vol. 16, no. 1, pp. 36-45, Jan.-March 2009.

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

10

0 100 200 300 400 500

1

1.5

2

2.5

3B

andw

idth

(Mbp

s)

Time (second)

SQO (Class A)SQO (Class B)SQO (Class C)SQO+CQO (Class A)SQO+CQO (Class B)SQO+CQO (Class C)

(a) SQO + CQO adaption with bufferingtime = 30 seconds

0 100 200 300 400 50010

15

20

25

30

35

40

45

50

PS

NR

Time (second)

SQO+CQO (Class A)SQO+CQO (Class B)SQO+CQO (Class C)

(b) SQO + CQO adaption with bufferingtime = 30 seconds

0 100 200 300 400 5000

0.2

0.4

0.6

0.8

1

Qua

lity

Var

ianc

e

Time (second)

SQOSQO+CQO

(c) SQO + CQO adaption with bufferingtime = 30 seconds

0 100 200 300 400 500

1

1.5

2

2.5

3

Ban

dwid

th(M

bps)

Time (second)

SQO (Class A)SQO (Class B)SQO (Class C)SQO+CQO (Class A)SQO+CQO (Class B)SQO+CQO (Class C)

(d) SQO + CQO adaption with bufferingtime = 120 seconds

0 100 200 300 400 50010

15

20

25

30

35

40

45

50

PS

NR

Time (second)

SQO+CQO (Class A)SQO+CQO (Class B)SQO+CQO (Class C)

(e) SQO + CQO adaption with bufferingtime = 120 seconds

0 100 200 300 400 5000

0.2

0.4

0.6

0.8

1

Qua

lity

Var

ianc

e

Time (second)

SQOSQO+CQO

(f) SQO + CQO adaption with bufferingtime = 120 seconds

Fig. 8. System-level and Client-level SVC adaptation with various client buffer constraints

[3] Hsu Cheng-Hsin and M. Hefeeda, “Optimal Coding of Multilayer andMultiversion Video Streams”,IEEE Transactions on Multimedia, vol.10,no. 1, pp. 121-131, Jan. 2008.

[4] Shiow-yang Wu, and Cheng-en He, “QoS-Aware Dynamic Adaptation forCooperative Media Streaming in Mobile Environments”IEEE Transac-tions on Parallel and Distributed Systems, vol. 22, no. 3, pp. 439-450,2011.

[5] C. Dovrolis, D. Stiliadis, and P. Ramanathan, “Proportional Differenti-ated Services: Delay Differentiation and Packet Scheduling,”IEEE/ACMTrans. Networking, vol.10, no. 1, pp. 12-26, 2002.

[6] X. Zhou and C.-Z. Xu, “Harmonic Proportional Bandwidth Allocationand Scheduling for Service Differentiation on Streaming Servers,”IEEETrans. on Parallel and Distributed Systems, vol. 15, no. 9, pp. 835-848,2004.

[7] P.A. Chaparro, J. Alcober, J. Monteiro, C.T. Calafate, J.-C. Cano, and P.Manzoni, “Supporting Scalable Video Transmission in MANETs throughDistributed Admission Control Mechanisms”, in Proc.18th EuromicroInternational Conference on Parallel, Distributed and Network-BasedProcessing (PDP), pp. 238-245, 2010.

[8] Zhenzhong Chen, Maodong Li, and Yap-Peng Tan, “Perception-AwareMultiple Scalable Video Streaming Over WLANs”,IEEE Signal Pro-cessing Letters, vol. 17, and no. 7, pp. 675-678, 2010.

[9] T. Kim and M. H. Ammar, “Optimal Quality Adaptation for ScalableEncoded Video”,IEEE Journal on Selected Areas in Communications,vol. 23, no. 2, pp. 344-356, Feb. 2005.

[10] Xiaorong Li, Edward Chuah, Jo Yew Tham, Kwong Huang Goh, “AnOptimal Smooth QoS Adaptation Strategy for QoS Differentiated ScalableMedia Streaming”, in Proc.IEEE International Conference of Multimediaand Expo., pp. 429 - 432, June 2008.

[11] Chia-Ho Pan; I-Hsien Lee; Sheng-Chieh Huang; Chung-Jr Lian; Liang-Gee Chen; “A Quality-of-Experience Video Adaptor for Serving ScalableVideo Applications”, inIEEE Transactions on Consumer Electronics, vol.53, no 3, pp. 1130-1137, 2007.

[12] N. M.Freris, C.-H.Hsu, J. P.Singh, and X. Zhu, “Distortion-Aware Scal-

able Video Streaming to Multinetwork Clients”,IEEE/ACM Transactionson Networking, vol. PP , no. 99, pp.1-13, 2012

[13] Jen-Wen Ding; Chin-Tsai Lin; Shi-Yuan Lan; “A Unified Approach toHeterogeneous Video-on-Demand Broadcasting”, inIEEE Transactionson Broadcasting, vol. 54, no. 1, pp. 14-23, 2008.

[14] JSVM Software Manual 9.8, Scalable Video Coding, “Joint Video Teamof ISO/IEC MPEG and ITU-T VCEG”, 2007.

[15] T.F. Atdelzater, E.M.Atkins, and K.G Shin, “QoS Negotiation in Real-time System and Its Application to Automated Flight Control”,IEEETransaction on Computers, vol. 49, no. 11, pp. 1170-1183, 2000.

[16] H. Zhu, H. Tang, and T. Yang, “Demand-Driven Service Differentiationfor Cluster-Based Network Servers,” InProc. IEEE INFOCOM, pp. 679-688, 2001.

[17] Mohammad S. Talebi, A. Khonsari, M.H. Hajiesmaili, “OptimizationBandwidth Sharing for Multimedia Transmission Supporting ScalableVideo Coding”, in Proc.IEEE 34th Conference on Local ComputerNetworks (LCN 2009)pp. 185-192, 2009.

[18] Jingwen Jin and K. Nahrstedt, “QoS Specification Languages forDistributed Multimedia Applications: A Survey and Taxonomy”,IEEEMultimedia, vol.11, no. 3, pp. 74-87, July-Sept. 2004.

[19] Z. Wang, S. Banerjee, and S. Jamin, “Studying Streaming Video Quality:From An Application Point of View”, InProc. ACM Multimedia, pp. 327-330, Berkeley, CA, Nov. 2003.

[20] P. Brooks, B. Hestnes, “User Measures of Quality of Experience: WhyBeing Objective and Quantitative Is Important”,IEEE network, vol. 24,no. 2, pp. 8-13, 2010.

[21] L. Skorin-Kapov and M. Matijasevic, “A QoS Negotiation and Adap-tation Framework for Multimedia Services in NGN”, in Proc.10thInternational Conf. on Telecommunications ConTEL, pp. 249-256, 2009.

[22] Xiaorong Li, Bharadwaj Veeravalli, and Viktor K Prasanna, “A Window-assisted Video Partitioning Strategy for Partitioning and Caching VideoStreams in Distributed Multimedia Systems”,Journal of Parallel andDistributed Computing (JPDC), vol. 67, No. 6, pp. 738-754, 2007.

1045-9219 (c) 2013 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. Seehttp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI10.1109/TPDS.2014.2308193, IEEE Transactions on Parallel and Distributed Systems

11

Xiaorong Li received Ph.D. from Dept. Electricaland Computing Engineering of National Universityof Singapore in 2006, and B. Eng from Dept. Tele-com. Engineering of Beijing University of Posts andTelecom., China in 1998. She is a senior scientistand the manager of Distributed Computing Group inA*STAR Institute of High Performance Computing,Singapore. Her research interests include parallel&distributed computing systems, workflow manage-ment, quality management in computer Cloud/Gridand multimedia systems. Dr. Li is a member of ACM

and IEEE computer society.

Bharadwaj Veeravalli Senior Member, IEEE&IEEE-CS, received his BSc in Physics, fromMadurai-Kamaraj University, India in 1987, Mas-ter’s in Electrical Communication Engineering fromIndian Institute of Science, Bangalore, India in1991 and PhD from Department of Aerospace En-gineering, Indian Institute of Science, Bangalore,India in 1994. He received Gold Medals for hisBachelor’s Degree overall performance and for anoutstanding PhD thesis (Sabitha Chowdhary GoldMedal, IISc, Bangalore India) in the years 1987 and

1994, respectively. He did his post-doctoral research in the Department ofComputer Science, Concordia University, Montreal, Canada, in 1996. Heis currently with the Department of Electrical and Computer Engineering,Communications and Information Engineering (CIE) division, at The NationalUniversity of Singapore, Singapore, as a tenured Associate Professor. His mainstream research interests include, Cloud/Grid/Cluster Computing, Schedulingin Parallel and Distributed Systems, Bioinformatics& Computational Biology,and Multimedia Computing. He is one of the earliest researchers in the field ofDivisible Load Theory (DLT). He had successfully secured several externallyfunded projects and published over 120 papers in high-quality InternationalJournals and Conferences. He has co-authored three research monographsin the areas of PDS, Distributed Databases (Competitive Algorithms), andNetworked Multimedia Systems, in the years 1996, 2003, and 2005, respec-tively. He had guest edited a special issue on Cluster/Grid Computing forIJCA, USA journal in 2004. He is currently serving the Editorial Boardof IEEE Transactions on Cloud Computing, USA, IEEE Transactions onSMC-A, USA, Multimedia Tools& Applications (MTAP), USA and ClusterComputing, USA, as an Associate Editor. Until 2010 December he hadserved as an AE for IEEE Transactions on Computers. He was a VisitingProfessor with HUST, Wuhan, China, from June 2007-May 2009. He hadserved (and serving) as a program committee member and as a General Co-Chair in IEEE ICON 2011 and IEEE ICON 2012. In September 2010, hedelivered a keynote speech in fifth IEEE International Conference on Bio-Inspired Computing: Theory and Applications (BIC-TA) September 2010, heldin Changsha, PR China. At present he is serving as a lead guest editor for aspecial issue with IEEE TC on Cloud of Clouds. Author’s academic profile,professional activities, main stream and peripheral research interests, researchprojects and collaborations, most recent list of publications, can be found inhttp://cnds.ece.nus.edu.sg/elebv