Download presentation

Presentation is loading. Please wait.

Published byJanessa Hole Modified over 2 years ago

1
Adaptive QoS Control Based on Benefit Optimization for Video Servers Providing Differential Services Ing-Ray Chen, Sheng-Yun Li, I-Ling Yen Presented by YunXian Zhou Yili Zhang

2
Introduction Issue: video streaming over Internet the deployment of broadband technologies and services

3
Introduction (cont) Goal: use efficient QoS control schemes explore multiplexing benefits in bandwidth management deal with the exponential growth of users demanding streaming services over Internet

4
Introduction (cont) Focus on the server end: optimize disk bandwidth allocations by means of admission control and data placement schemes Goal reduce the overall cost per request maximize the maximum number of concurrent requests with QoS guarantees

5
Introduction (cont) Other research efforts: deal with mixed workloads by means of admission control and disk scheduling mechanisms

6
Literature Review Lee and Sabata: benefit functions and resource demand functions associated with application requests each application has a dimension of QoS requirements and its "benefit" values use benefit optimization to design QoS admission control Key design: a portion of the resources is reserved to serve requests with degraded QoS.

7
Literature Review (cont) Shortcoming: no dynamic resource reservation scheme for a maximized system benefit require each application to supply a benefit function based on QoS levels of the system.

8
Literature Review (cont) Cheng et al.: priority-based admission control algorithms benefit value associated with each user based on QoS offered by server introduce "penalty" for rejections high priority requests served with highest QoS level low priority requests can have a range of QoS levels for flexibility.

9
Literature Review (cont) Shortcoming: based on hypothetical QoS levels with no real data support.

10
This paper A new periodic greedy reservation algorithm Goal: optimize benefit throughput benefit throughput: amount of benefit values earned per time unit

11
Contributions of this paper true QoS characteristics of a video server with real data support benefit throughput is theoretically derived from algorithms, given the benefit/penalty and input traffic information of requests

12
Contributions of this paper (cont) Algorithms are executed at run time utilizing the theoretical results obtained at static time adjust the resource allocation greedily and periodically to optimize benefit throughput dynamically a full disk simulation model for a video server to evaluate the merit of various algorithms

13
Background and System Model Assumptions: 1. Single disk with multiple video titles such as Star Wars, each video title has 3 QoS versions: MPEG, H.263, H.261 Generally, the more bandwidth a video coding scheme consumes, the better video quality users can get. MPEG-1: 1.5Mbps; Better quality because its DCT coefficients are kept, quantization step is small so fidelity is larger H.263 & H.261: support real time video coding; H.263 supports more format sizes (88*72) than H.261 and it can use half pixel resolution for motion prediction. H.263 operates at a transmission rate <64Kbps while H.261 at 64K*P bps (for ISDN) where 1 <= P <= 32 Basic coding theory: DCT + motion compensation (I-P-B or Intra/Inter frame)

14
2. We can use CTL/CDL/Hybrid to store and transmit VBR video data VBR: Variable Bit Rate and it mainly comes from the elimination of time redundancy and spatial redundancy of video coding CTL: Constant Time Length and stored block size is proportional to playback bit rate. CDL: Constant Data Length and stored block size is constant Hybrid: Data written in CDL blocks, but different numbers of blocks are read in each service round according to user playback rate 3. Video service request arrival rate is (change dynamically) and departure rate is (normally a constant) Background and System Model

15
4. The disk service cycle time is Tsr, it is larger than or equals to the total disk seek time plus disk read time. Then we get maximum disk blocks allowed for a Tsr Under statistical admission control, convolve single user pdf curve of into U users pdf curve of Find the maximum number of users U so that the intersection value of u users pdf curve value and the maximum disk blocks requested is less than disk overload ratio When a user departs, resource is released or distributed to other users. Blocks amount requested by user u in a service round Tsr Disk seek time per block Disk read time per block

16
Background and System Model 5. Baseline QoS control algorithm: QoS level granted to a user is never changed during the service lifetime. 6. Greedy QoS control algorithm: QoS level granted to a user can be raised, but not degraded, during the service lifetime. 7. All video titles stored in the server have same number of QoS levels. Each video title has three file versions stored 8. Each QoS level i is associated with a benefit value. The higher the QoS level, the larger the benefit value. Level 1 is the highest QoS level

17
Background and System Model 9. The assignment of benefit values to QoS levels is done by service provider 10. The benefit each admitted user brings to the system depends on the QoS received by the user during its service period. For example: 11. Use a penalty value q to model the effect of rejection

18
Reservation Algorithms for QoS control The algorithms are based on resource reservations n i * b i = B i We can first partition the resources into multiple parts B i, one for each QoS level and then compute the benefit throughput for that resource allocation method The system always admits users into highest QoS region; if resources there are used up, it will admit users into the next QoS region and so on The benefit throughput value is dictated by the user arrival/departure rate and benefit/penalty functions

19
Baseline Algorithm 1. For a video title, there are M video versions corresponding to M QoS levels 2. Each QoS level i can admits up to ni users 3. The system behaves as if it contains M queue with size ni, one for each QoS level. 4. Free slots due to user departure are filled with new arrivals only in decreasing order of QoS 5. If free slot can’t be found in any of the queues, the user will be rejected by the server 6. The input arrival rate to QoS level i+1 is spill-over rate from queue i when queue i is full

20
Baseline Algorithm

23
How to get best partition set (n 1 *,n 2 *,..n M *) that maximizes system benefit throughput? Ni is the maximum number of requests at QoS level i that the system is able to admit statistically when all Tsr is allocated to service requests at this QoS level only. ni is the maximum number of slots in QoS level i Bi is the bandwidth allocated to QoS level i and bi is the bandwidth of QoS level i allocated to each user request Baseline Algorithm

25
Procedures: 1. Given Tsr, disk seek latency and disk read/write rate, get the maximum data blocks requested for a Tsr cycle 2. Get the pdf of data blocks requested over one Tsr by observation for a single user when accessing a specific version of video data (Assume we are only using baseline algorithm) 3. Convolving the single user pdf into u users pdf curve

26
Baseline Algorithm 4. Search a maximum value of Ni so that the intersection value of the pdf curve for Ni users with the maximum data blocks value is less than the disk overload ratio. Then we get (N1, N2, N3) 5. Based on the equation (2) in P7, get multiple (n1, n2, n3) and input them as parameters to the Benefit Throughput equation in P6, get the BT value 6. Extract the (n1*, n2*, n3*) under which the BT value is the maximum one

27
Baseline Algorithm 7. Multiply ni* by the bandwidth requirement of the video version in level i and get the optimal disk bandwidth for that level, then divide it by the total disk bandwidth to get the optimal bandwidth distribution percentage for QoS level i

28
Baseline Algorithm QoS level Allocation: i, i+1, i+2 Accommodated users: n 1 =3 n 2 =4 n 3 =4 total =11 i i+1 i+2 Bandwidth required for each request: b i = 2*b i+1 = 4*b i+2 Accommodated users: n 1 =1 n 2 =4 n 3 =12 total=17 For both cases, = total disk bandwidth

29
Baseline Algorithm SPNP model: T_arrival is the arrival event of user request P_i (i=1,2,3) is the queue for QoS level i to handle user requests T_departure_i (i=1,2,3) is the departure event of different QoS levels P_ti (i=1,2,3) is the transitional place to decide where an incoming request flows to based on the status of current QoS level queue T_ij (i,j=1,2,3) is the immediate transition T_rejection is the immediate transition of rejection

30
Greedy QoS-Control Algorithm User in lower QoS level is raised to higher level upon a departure in higher QoS level A departure of a user at level i can trigger a ripple-promotion effect and potentially M-i users can have their QoS levels promoted by one level Adopt the longest time first policy for fairness The benefit throughput based on baseline QoS control scheme will become a lower bound for the greedy algorithm

31
Greedy QoS-Control Algorithm QoS dynamically redistributed i i+1 i+2 Wait another request

32
Greedy QoS-Control Algorithm

33
Petri Net model: To record the elapsed time for each user request, each token should have additional attributes such as the percentage time spent in each P_i Add T_21 and T_32 to indicate the QoS adjustment upon a higher QoS level departure. It also take fairness into consideration when selecting a lower level token The rate for T_departure_i is proportional to the different tokens in P_i with their different departure rate based on their history It seems not possible to switch to another video format in the middle of video session, instead, some coding scheme such as H.261 can offer different QoS levels automatically by adjusting some parameters such as quantization step, window size, etc.

34
Periodic and Dynamic Resource Reservation Procedures: Assume we are only using baseline algorithm Given Tsr, disk seek latency and disk read/write rate, get the maximum data blocks requested for a Tsr cycle Get the pdf of data blocks requested over one Tsr by observation for a single user when accessing a specific format/version of video data

35
Periodic and Dynamic Resource Reservation Convolving the single user pdf into u users pdf curve Search a maximum value of Ni the intersection value of the pdf curve for Ni users with the maximum data blocks value is less than the disk overload ratio. get (N1, N2, N3)

36
Periodic and Dynamic Resource Reservation get multiple (n1, n2, n3) sets input them as parameters to the Benefit Throughput equation to get the BT values Extract the (n1*, n2*, n3*) under which the BT value is the maximum one

37
Periodic and Dynamic Resource Reservation Multiply n1* by the bandwidth requirement of QoS level 1 and get the total disk blocks requested by users at QoS level 1 divided by Tsr and the total disk bandwidth to get the optimal bandwidth distribution percentage for users at QoS level 1, the same with QoS level 2 and 3.

38
Periodic and Dynamic Resource Reservation Get the value (n1*, n2*, n3*) for different arrival rate, calculate the corresponding BT based on the equation discussed and get the table. Arrival rate can be monitored by observing the number of users arriving at the system over an observation period. Periodically query the table to select new value for (n1*, n2*…)

39
Periodic and Dynamic Resource Reservation

40
The time complexity to compute (n 1 *,n 2 *, …… n M *) will be upper bounded by the number of ways to divide N M into M sets subject to equation 2---O((N M )^(M-1))

41
Periodic and Dynamic Resource Reservation M is decided by acceptable lowest QoS level i "time-differentiated" services in "business" time periods, less QoS levels to guarantee QoS in "couch" time periods, more QoS levels to accommodate more users

42
Modeling and Analysis 5 algorithms for comparison Higest-QoS-only (N 1,0,0..0) (HQO); Lowest-QoS-only (0,0,..,N M ) (LQO); Equal-Share (N 1 /M,N 2 /M...N M /M) (ES) Baseline (n 1 *,n 2 *,……n M *) Greedy (n 1 *,n 2 *,……n M *)

43
Modeling and Analysis Disk characteristics: Make: Seagate Capacity: 20G = 512 bytes/sector * 64 sectors/track * 4096 tracks/side * 160 sides Disk seek time and rotational latency : 16.5 msec Read/write rate: 33Mbps

44
Modeling and Analysis Disk characteristics and data model: video title: "Star Wars"; different movie titles are simulated by using different group of picture entry points into the trace files video formats: MPEG-1, H.263, H.261 for each video title

45
Modeling and Analysis The disk is filled with video titles randomly A mapping table to map the data physical location with playback cycles to eliminate extra seek time for video data

46
Modeling and Analysis Compute N1, N2 and N3 N1=55; N2=197; N3=552

47
Modeling and Analysis Optimal (n1*, n2*,..., nM*) under the Baseline Algorithm Based on (N1, N2, N3), consider arrival rate at [10, 60], given values for mu, v1,v2,v3, and q, build the table for (n1*, n2*, n3*) and corresponding benefit throughput

48
Modeling and Analysis

49
The benefit throughput obtained at the optimal setting (n1*, n2*,..., nM*) increases as input arrival rate increases as input arrival rate exceeds a threshold, the benefit throughput deteriorates because many users are rejected

50
Part of SPNP program for baseline algorithm enabling_type en_t_12() { if (mark("P_1") >= n1) return 1; else return 0;} enabling_type en_t_rejection() { if (mark("P_3") >= n3) return 1; else return 0;} rate_type dep_rate_1() {return (mark("P_1") * mu);} enabling_type en_t_11() { if (mark("P_1") < n1) return 1; else return 0;}

51
Part of SPNP program for baseline algorithm reward_type X_1() { return(rate("T_departure_1")); } reward_type X_rejection() { if ((mark("P_1") == n1) && (mark("P_2") == n2) && (mark("P_3") == n3) ) return lamb1; else return 0.0;} reward_type X_12() { if ((mark("P_1") == n1)) return lamb1; else return 0.0;} reward_type X_23() { if ((mark("P_1") == n1) && (mark("P_2") == n2)) return lamb1; else return 0.0;}

52
Part of SPNP program for baseline algorithm ac_final() { pr_expected("departure 1 is ", X_1); pr_expected("departure 2 is ", X_2); pr_expected("departure 3 is ", X_3); pr_expected("rejection is ", X_rejection); pr_expected("T_12 rate is ", X_12); pr_expected("T_23 rate is ", X_23);}

53
Results-1

54
Results-2

55
Results-3

56
Modeling and Analysis Numerical Data

57
Modeling and Analysis The benefit throughput obtained by the baseline QoS control algorithm is much better than HQO, LQO, ES. HQO results in a heavy loss of benefit in all cases except when the system is very lightly loaded.

58
Modeling and Analysis LQO can perform well only when heavily loaded ES falls within HQO, LQO with the benefit throughput obtainable being modest all the time

59
Simulation validation Develop a single-disk simulator to validate baseline and greedy algorithms

60
Simulation validation All admitted requests are arranged in a scheduled queue in every cycle based on the disk locations of data blocks to be accessed the disk read/write heads only need to scan the disk in one direction once to collect all the data needed for all streams

61
Simulation result

62
Greedy algorithm always performs better than baseline algorithm

63
Simulation result

65
Greedy algorithm is able to serve more clients at the highest or medium QoS compared with the baseline algorithm

66
Simulation result

67
There are fewer clients being served at the lowest QoS level under the greedy algorithm than the baseline algorithm The greedy algorithm uses the same optimal (n1*, n2*, n3*) set for QoS control Baseline and greedy algorithm yield same rejection rate, total number of users, and system throughput

68
Conclusion Baseline and greedy QoS control algorithms are based on the concept of resource reservation

69
Conclusion dynamically re-allocate resources reserved to requests at different QoS levels to maximize benefit throughput.

70
Conclusion The greedy algorithm allows the QoS level to be raised during the service lifetime of users. The greedy algorithm outperforms other algorithms in terms of the benefit throughput, without sacrificing the performance of the system

71
Future Work Users may have difference in acceptable lowest QoS level? Users may have special cost/service requirement? What if there are multiple disks in the server? What if video titles do not have same QoS levels?

Similar presentations

OK

Spark on Entropy : A Reliable & Efficient Scheduler for Low-latency Parallel Jobs in Heterogeneous Cloud Huankai Chen PhD Student at University of Kent.

Spark on Entropy : A Reliable & Efficient Scheduler for Low-latency Parallel Jobs in Heterogeneous Cloud Huankai Chen PhD Student at University of Kent.

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google