Performance Benchmarks for an Interactive Video-on-Demand System J. Guo∗ , P. G. Taylor† , E. W. M. Wong‡ , S. Chan‡ , M. Zukerman∗ and K. S. Tang‡ ∗
ARC Special Research Centre for Ultra-Broadband Information Networks (CUBIN) Department of Electrical and Electronic Engineering, The University of Melbourne, Australia Email:
[email protected];
[email protected] †
ARC Special Research Centre for Ultra-Broadband Information Networks (CUBIN) and Department of Mathematics and Statistics, The University of Melbourne, Australia Email:
[email protected] ‡
Department of Electronic Engineering, City University of Hong Kong, Hong Kong Email:
[email protected];
[email protected];
[email protected]
Abstract— Little and Venkatesh conjectured that, for an interactive VoD system with a single random trial resource selection scheme, the blocking probability of a user’s request is minimized when the overall movie traffic load is spread uniformly on each disk in the system. In this paper, we generalize this conjecture to the situation where there can be repeated random trials or where a least busy fit resource selection scheme is used. We support our conjecture with a simulation of a realistic system, and propose a metric following the idea of our conjecture to assess the goodness of movie assignment in the system.
I. I NTRODUCTION To compete with the prevalent video rental business, an interactive Video-on-Demand (VoD) system is envisaged to provide users with pleasurable on-demand access to a large variety of movie contents coupled with full VCR-like interactive functions [4]. For this purpose, a stringent requirement is usually imposed such that a single video stream is allotted to each user, so that the same movie can be viewed simultaneously by many users with random time offsets and independent temporal control activities. Moreover, the experience of the video rental business reveals a highly skewed demand distribution among various movies. At any given time, some movies are observed to be much more popular than others. This, in most cases, entails the allocation of multiple replicas for these popular movies so as to increase the number of concurrent streams that can be supported by the system to satisfy the requests for these hot movies. Because the storage and transmission of digitally encoded movie data generally consumes enormous system resources, and the storage capacity as well as the sustained I/O bandwidth of commercially available disks (or disk arrays, e.g. RAID) are limited, a VoD system is expected to manage a large farm of on-line disks (or disk arrays) to accommodate the large library of movie files and yield adequate concurrent video streams such that certain Grade of Service (GoS) and reliability requirements can be met. Without loss of generality,
IEEE Communications Society
we shall henceforth call any substantive storage device in a VoD system, be it a conventional hard disk or a single RAID disk array, a “disk”. Due to the long-lived nature of movie connections between users and video servers, interactive VoD systems are modelled as loss systems [8], [10], [7]. That is, a user request to access a particular movie file is blocked if the system finds that all stream capacity on the set of disks, where a copy of the file is stored, is used up. We see that such a loss system gives rise to an interesting performance optimization problem: Given a number of disks with limited capacity in both storage and I/O bandwidth, and a range of movie files with vast asymmetry of access demand, the challenge is to find an optimal assignment of the movie files such that the steady state blocking probability of the system is minimized while meeting the system resource constraints. The importance of file assignment problems, subject to optimization of various performance goals, is well established (see [5] and references therein). In the context of interactive VoD systems, due to the presence of multiple-copy files and possible implementation of resource selection schemes [7], the exact analytical solution for the blocking probability is generally intractable, except for rare cases of some simple (but inefficient) resource selection schemes [7]. Considering that file assignment problems with explicit performance goals are in their own right NP hard [5], it is therefore extremely unlikely that the performance optimization problem in the field of interactive VoD systems can be tackled within a reasonable computing time. Thus, we have to rely on heuristic approaches to search for near-optimal solutions. To facilitate a heuristic search, it would be useful if a lower bound on the blocking probability of the system could be estimated a priori. Such a bound can be a useful performance benchmark if its derivation does not rely on a specific assignment of the movie files. For a homogeneous interactive VoD system (to be described in Section II), Little and Venkatesh [8]
2189
0-7803-8533-0/04/$20.00 (c) 2004 IEEE
have conjectured that the blocking probability of the system is minimal when the movie files are allocated such that each disk in the system has an equal probability of being accessed. While they did not explicitly state it, we shall see that they were thinking only in the context of a simple resource selection scheme, under which a request for a multiple-copy movie file is randomly directed to only one of the disks where a copy of that file is stored, and there is no exhaustive attempt made to find an available disk to satisfy the request. Our important contribution in this paper is to provide an extension of the conjecture to the situation where more complicated and efficient resource selection schemes are implemented, such that blocked requests for a multiple-copy movie file can retry at other disks where that particular file is stored. Let a file that has c copies be called a Type c file. Let J be the total number of disks in the system. We amend the conjecture by suggesting that the optimal performance of the system may be reached only if the aggregate traffic of each type of movie file is evenly loaded on all Jc combination groups of c disks. This is the socalled Combination Load Balancing (CLB) algorithm initially proposed in [6]. Although the proof of such a conjecture is an open research issue and beyond the scope of this paper, we attempt its justification in Section III and Section IV by simulations for various resource selection schemes. In this paper, we do not consider the use of striping techniques to resolve the load balancing problem. This approach has inherent limitations which undermine its viability in real interactive VoD systems [2], [9]. II. T HE VO D S YSTEM M ODEL Consider an interactive VoD system with a set D of J disks labelled 1, 2, . . . , J and a set F of M distinct movie files marked 1, 2, . . . , M . Each disk supports a number of concurrent video streams and stores a range of movie files. Assume that file m has nm copies, and those copies are allocated on nm separate disks, which constitutes the set Ωm . For convenience, we call a file that has c copies a Type c file. The set of movie files placed on disk j is denoted Φj . Further assume that all disks in the system are alike. If the independent video streams emanating from each disk in the system are approximated to be statistically equivalent, each disk may serve up to N concurrent logical channels. Note that the terms “stream” and “channel” are interchangeable in this paper. Assume that the aggregate arrivals of requests for all movie files follow a Poisson process with rate λ. In a statistical sense, making a request for a movie in a VoD system is similar to making a call in telephony, where the Poisson assumption is widely accepted. Since the insensitivity of blocking probability to the holding time is common in many loss systems, we assume in our context that the connection times of movie files are exponentially distributed with mean 1/µ. Without loss of generality, the mean connection time of movie files is normalized to 1. Assume that the request arrival processes of different movie files are mutually independent Poisson processes. The demand rate for file m creates its popularity
IEEE Communications Society
as the likelihood of file m being requested profile pm , defined M by a user, and m=1 pm = 1. The popularity profiles of the movie files in the system are updated on a daily basis to capture the variability of users’ demand rate [8]. Therefore, in a single day, the request arrival rate of file m is given by λpm , for m = 1, 2, . . . , M . The aggregate rate of requests pc , where for all Type c files is then obtained by λˆ pˆc = m∈F ,nm =c pm . Let the popularity profile pm of movie file m follow a Zipflike distribution, so that m−ζ , pm = M −ζ k=1 k
(1)
for m = 1, 2, . . . , M , where the parameter ζ determines the skewness of the distribution. Though we do not restrict the popularity distribution of the movie files in the VoD system to be governed by (1), it was found that such a distribution with ζ = 0.271 statistically matches the client access frequencies to various movies observed from the video store rental data [3]. III. D ISK L OAD BALANCING AND C OMBINATION L OAD BALANCING For a homogeneous interactive VoD system described in the previous section, Little and Venkatesh made the following conjecture ([8], page 284): The probability that a customer’s request results in a successful connection is maximal when the movies are distributed such that each disk has a uniform probability of being accessed. While they did not explicitly state it, we shall see that they were thinking only in the context of a simple resource selection scheme, under which a request for a multiple-copy movie file is randomly directed to only one of the disks where a copy of that file is stored, and there is no exhaustive attempt made to find an available disk to satisfy the request. In situations where other more complicated resource selection schemes are implemented, their conjecture may lead to an underestimation of the optimal performance that the system can reach. For ease of exposition, we support our argument by looking into the performance of a small VoD system with four disks and 12 distinct movie files. Each of the four disks may provide up to 10 concurrent streams. All the 12 files are Type 2 files. Their popularity profiles are produced by (1) with ζ = 0.271, and listed in Table I. We set the overall request rate λ = 24. Among many feasible assignments of these 24 files, we consider three particular cases as shown in Fig. 1. To differentiate and compare the level of disk load balancing among these three cases, we define a Disk Load Balancing Index (DLBI), given by 2 1 pm 1 − . DLBI = J nm J j∈D
m∈Φj
This formula is a measure of the spread of the traffic distribution among the disks in the set D. After routine computation,
2190
0-7803-8533-0/04/$20.00 (c) 2004 IEEE
(a) Case 1 Fig. 1.
(b) Case 2
(c) Case 3
Assignment of movie files in the 4-disk VoD system.
we find that in both Case 1 and Case 2, DLBI = 0 (i.e., the load is uniformly distributed among the disks in D), while in Case 3, DLBI = 0.0088, which is not as balanced as in the other two cases. Based on the idea of CLB from [6], we further make up an ideal case, where we assume thatthe traffic of all Type c files can be evenly distributed among Jc combination groups of c disks enumerated in the set D. We then conduct a discrete event simulation to evaluate the blocking probability of the system. When a user request arrives, say for movie file m, we first find out the number of copies nm of file m in the system. If file m is singular (i.e. a single-copy file), we straightforwardly direct the request to its carrying disk provided the disk is available. If file m has multiple replicas, we perform a resource selection scheme to select an available disk in the set Ωm to satisfy the request. To be consistent with [7], we consider the following three resource selection schemes: • Single Random Trial (SRT): When a request for movie file m arrives, one of the disks in the set Ωm is chosen at random. If all the possible channels provided by the selected disk are busy, the request will be blocked. No further attempt to retrieve a replica of file m from other disks in Ωm is made. • Repeated Random Trials (RRT): Under this scheme, the first step is as in SRT. However, if all the possible channels provided by the selected disk are busy, we continue with repeated random trials among all remaining disks in the set Ωm until we are successful. If after all disks in the set Ωm have been attempted and we fail to find an available channel on any of them, the request is blocked. • Least Busy Fit (LBF): Based on the latest statistics of all disks in the set Ωm , if all possible channels are used up, the request is blocked. Otherwise, we direct the request to the least busy disk in Ωm , or the disk with the maximal number of available channels. In the case where there are more than one least busy disk, the request will be randomly dispatched to one of them. In the ideal CLB case, the above three resource selection schemes are slightly varied. When a request for a particular movie file arrives, we merely look at what type of file it is. If it is a Type c file, we then find out on which combination group of c disks the file is stored. Since in the case of CLB, we do not require any specific assignment information of each individual Type c file, but assume that the traffic of all Type c files can be evenly distributed among Jc combination groups of c
IEEE Communications Society
disks, each combination group therefore has equal likelihood of being accessed. For the purpose of simulation, instead of maintaining a cumbersome list of Jc combination groups and then randomly choosing one of them upon the request for a Type c file, we use an equivalent (but more efficient) way of randomly selecting c disks out of the set D, and then proceed with the corresponding resource selection scheme to process the request. In a typical run of our simulation test, each of the fifty million random events represents either an arrival of a movie file request or a termination of a movie file connection. We obtain the overall request blocking probability by dividing the total number of request losses by the total number of request arrivals. To guarantee the confidence in our simulation estimates, we repeat the simulation test with six independent runs, and we keep the radii of the 95% confidence intervals ([1], page 273) within 1% of the average of the results measured. We see in Table II that, in all cases when either RRT or LBF is implemented, the simulation outcome is apparently in contradiction with what Little and Venkatesh have asserted in their conjecture. Although the disk loading is perfectly balanced in both Case 1 and Case 2, requests for movie files experience much less blocking probability in the latter. Moreover, there is an even smaller blocking probability in Case 3 despite its imbalanced traffic distribution. Note that, even though LBF is in general more efficient than RRT, they produce the same blocking probability in Case 1. This is because the assignment of movie files in Case 1 constitutes a standard Non-overlapping Load Balancing (NLB) case that is not sensitive to any exhaustive resource selection scheme at all [6]. Interestingly, however, in the circumstances of SRT, the simulation agrees with what the conjecture of [8] has predicted. In an equivalent manner to the way we defined DLBI, we will now propose what we call the Combination Load Balancing Index (CLBI). CLBI is a weighted index over the various file types in the system defined by pˆc CLBIc , CLBI = c ˆc cp where
1 CLBIc = J c
s⊂Υ(D,c)
m∈F ,Ωm =s
pˆc p m − J
2 ,
c
where Υ(D, c) is the set of all combinations of choosing c disks out of the set D, and s ⊂ Υ(D, c) is one such possible combination. CLBIc computes, in an actual movie file assignment and for Type c files, how far the traffic distribution, among the Jc combination groups of c disks enumerated in the set D, deviates from the ideal CLB case. After working out the load of the traffic accumulated on each of the six combination groups from the requests for the 12 Type 2 files, as shown in Table III, we see that CLBI = 0.2357 for Case 1, 0.1182 for Case 2, and 0.0134 for Case 3. These
2191
0-7803-8533-0/04/$20.00 (c) 2004 IEEE
results clearly explain our interesting observations in Table II, and we so arrive at our conjecture of the condition on the assignment of movie files such that the optimal performance of the system can be reached. Conjecture 1: The blocking probability of a user’s request is minimized when, for each c, the traffic wishing to access movie files of Type c is uniformly distributed among all Jc combination groups enumerated in the set D. The size of a typical interactive VoD system that provides on-demand access to hundreds of distinct movies is usually of the order of dozens of disks. In the next section, we shall justify our conjecture by considering a system of this size. IV. P ERFORMANCE B ENCHMARK J USTIFICATION We report the simulation estimates for the blocking probability of a realistic interactive VoD system of 20 disks and 200 distinct movie files. The radii of the 95% confidence intervals are again kept below 1% of the average of the measured results. All disks in the system have the same stream capacity of size 30. The popularity distribution of the 200 movie files is again produced by (1) with ζ = 0.271. In our example, we specifically allocate four copies for each of the first three movie files in the system, three copies for files 4 to 25, two copies for files 26 to 50, and one single copy for the remaining 150 movie files. Our ongoing study of optimizing the number of copies for each movie file and their placement in the VoD system will be reported elsewhere. Two different assignments of the 200 movie files as well as their multiple replicas are specified in Fig. 2(a) for Case 1 and in Fig. 2(b) for Case 2. The results of the simulation are given in Table IV. We intentionally choose these two cases because both of them give an index value of 0.00050 for DLBI. However, after an elaborate computation, it turns out that CLBI equals 0.00352 in Case 1 and 0.00348 in Case 2. This again explains why in Table IV the blocking probabilities experienced by the system are higher in Case 1, when either RRT or LBF is implemented. It is particularly true for LBF where blocking probabilities in the two cases may differ by up to 5.8% in spite of the small CLBI discrepancy. Interestingly, the system once more sees the same blocking probabilities in both cases when SRT takes over. Nevertheless, in all cases, CLB clearly justifies its role of being the condition on the assignment of movie files that the system may reach its performance benchmark. Although the difference in the blocking probability in the two examples might reasonably be expected to follow from the difference in CLBI, we have not proved that the blocking probability increases with increasing CLBI. Such a result would be appealing, but is beyond the scope of this paper. It is interesting to observe that, the ideal CLB case (i.e. CLBI = 0) is less likely obtainable in practice, since in real VoD systems, the number of Type c files is usually much fewer than the number of combination groups Jc enumerated in the set D. Nevertheless, we see that, such an ideal case can be much useful in effectively estimating a lower bound on the number of disks needed for the system, when a specific
IEEE Communications Society
resource selection scheme is implemented, to satisfy certain predefined performance threshold. Relevant results for the 200-file VoD system subject to a 1% GoS requirement are presented in Table V. V. M AIN C ONCLUSIONS For a homogeneous interactive VoD system, a previous conjecture made by Little and Venkatesh in [8] asserts that the blocking probability of the system is minimal when the movie files are distributed such that each disk has an equal probability of being accessed. While they did not explicitly state it, it is clear that they were thinking only in the context of a simple SRT resource selection scheme. In this context, our work has supported their conjecture. However, in situations where other more complicated resource selection schemes (like RRT and LBF) are implemented, we have observed that the conjecture of [8] may lead to an underestimation of the optimal performance that the system can reach. Based on our previously proposed CLB algorithm, we have extended the conjecture by suggesting that the performance benchmark of such a VoD system may only be reached when the traffic wishing to access movie files of the same type is uniformly distributed among all combination groups of disks enumerated in the system for the associated file type. Although the ideal CLB case is less likely obtainable in practice, we have shown that it can fill the role of effectively estimating the lower bound on disk consumption in the VoD system subject to certain predefined performance threshold. ACKNOWLEDGMENTS The work described in this paper was partially supported by grants from City University of Hong Kong (Project No. 7001224 and Project No. 7001458) and partially supported by the Australian Research Council. It was done while J. Guo and M. Zukerman were visiting the Department of Electronic Engineering, City University of Hong Kong. R EFERENCES [1] S. K. Bose, An Introduction to Queueing Systems, Kluwer Academic/Plenum Publishers, New York, 2002. [2] C. F. Chou, L. Golubchik, and J. C. S. Lui, “Striping doesn’t scale: how to achieve scalability for continuous media servers with replication,” in Proc. 20th Int. Conf. Distributed Computing Systems, Taipei, Taiwan, Apr 2000, pp. 64–71. [3] A. Dan, D. Sitaram, and P. Shahabuddin, “Scheduling policies for an on-demand video server with batching,” in Proc. 2nd ACM Int. Conf. Multimedia, San Francisco, CA, USA, 1994, pp. 15–23. [4] D. Deloddere, W. Verbiest, and H. Verhille, “Interactive video on demand,” IEEE Commun. Mag., vol. 32, no. 5, pp. 82–88, May 1994. [5] Lawrence W. Dowdy and Derrell V. Foster, “Comparative models of the file assignment problem,” ACM Computing Surveys, vol. 14, no. 2, pp. 287–313, 1982. [6] J. Guo, P. G. Taylor, M. Zukerman, S. Chan, K. S. Tang, and E. W. M. Wong, “On the efficient use of video-on-demand storage facility,” in Proc. IEEE ICME 03, Baltimore, MD, USA, Jul 2003, vol. 2, pp. 329– 332. [7] J. Guo, S. Chan, E. W. M. Wong, M. Zukerman, P. G. Taylor, and K. S. Tang, “On blocking probability evaluation for video-on-demand systems,” in Proc. ITC 18, Berlin, Germany, Sep 2003, vol. 5a, pp. 211–220. [8] T. D. C. Little and D. Venkatesh, “Popularity-based assignment of movies to storage devices in a video-on-demand system,” Multimedia Syst., vol. 2, pp. 280–287, Jan 1995.
2192
0-7803-8533-0/04/$20.00 (c) 2004 IEEE
(a) Case 1
(b) Case 2 Fig. 2.
Assignment of movie files in the 20-disk VoD system.
[9] M. Reisslein, K. W. Ross, and S. Shrestha, “Striping for interactive video: is it worth it?,” in Proc. IEEE Int. Conf. Multimedia Computing and Systems, Florence, Italy, Jun 1999, vol. 2, pp. 635–640. [10] K. S. Tang, K. T. Ko, S. Chan, and E. Wong, “Optimal file placement in VOD system using genetic algorithm,” IEEE Trans. Ind. Electron., vol. 48, no. 5, pp. 891–897, Oct 2001. TABLE I M OVIE POPULARITY DISTRIBUTION IN THE 4- DISK VO D SYSTEM File ID 1 2 3 4 5 6
Popularity 0.128 0.106 0.095 0.088 0.083 0.079
File ID 7 8 9 10 11 12
Popularity 0.076 0.073 0.071 0.069 0.067 0.065
TABLE III C OMBINATION GROUPING TRAFFIC IN THE 4- DISK VO D SYSTEM Combination Group (D1, D2) (D1, D3) (D1, D4) (D2, D3) (D2, D4) (D3, D4)
SRT
RRT
LBF Case 1 Case 2 Case 3 CLB
LBF 0.00980 0.00243 0.00206 0.00204
Case 1 Case 2 CLB Case 1 Case 2 CLB Case 1 Case 2 CLB
λ = 440 0.02056 0.02056 0.02055 0.01427 0.01426 0.01417 0.00273 0.00258 0.00185
λ = 470 0.03455 0.03455 0.03454 0.02489 0.02489 0.02478 0.00751 0.00711 0.00572
λ = 500 0.05265 0.05265 0.05263 0.03957 0.03955 0.03935 0.01744 0.01669 0.01459
TABLE V L OWER BOUND ON DISK CONSUMPTION OF THE 200 MOVIE FILES
CLB-SRT CLB-RRT CLB-LBF
IEEE Communications Society
Case 3 0.154 0.193 0.155 0.161 0.164 0.173
TABLE IV
B LOCKING PROBABILITY IN THE 4- DISK VO D SYSTEM RRT 0.00980 0.00603 0.00526 0.00516
Case 2 0 0.238 0.262 0.262 0.238 0
B ENCHMARK JUSTIFICATION IN THE 20- DISK VO D SYSTEM
TABLE II
SRT 0.04318 0.04319 0.04370 0.04317
Case 1 0.5 0 0 0 0 0.5
2193
λ = 440 22 21 18
λ = 470 24 23 20
λ = 500 25 24 21
0-7803-8533-0/04/$20.00 (c) 2004 IEEE