IEEE TRANSACTIONS ON SERVICES COMPUTING,
VOL. 7, NO. X,
XXXXX 2014
1
Modeling Active Virtual Machines on IaaS Clouds Using an M/G/m/mþK Queue Xiaolin Chang, Member, IEEE, Bin Wang, Jogesh K. Muppala, Senior Member, IEEE, and Jiqiang Liu Abstract—This paper develops a novel approximate analytical model to evaluate the performance of active virtual machines in IaaS clouds using an M/G/m/mþK queue. The proposed model, combined with the transform-based analytical approach, enables the computation of the probability distribution of the number of jobs in the system and subsequently a set of performance measures, including the mean number of jobs in the system, the mean response time, the probability of immediate service, and the blocking probability. Compared to the existing Markov models of cloud data centers, our approach can reflect the system behavior more accurately even when the service-time distribution has a large coefficient of variation (> 1.5) in a medium-sized IaaS cloud. Numerical results obtained from the proposed analytical model are verified through extensive simulations under various system parameter settings, and compared with the results from existing models. Index Terms—Embedded Markov chain, IaaS, cloud computing, performance analysis
Ç 1
INTRODUCTION
C
has the same requirement for capacity and type of kinds of resources. We leave diverse services for future work. A job may consist of multiple tasks [5]. The recent analysis of Google Cluster Dataset [5] indicated that single-task jobs occupy 64 percent of all the jobs. Given that single-task jobs are a significant part of a typical cloud workload, it is important to model the behavior for this kind of jobs explicitly. We leave the modeling of the other kinds of jobs (including batch-task jobs) indicated in [5] for future work. Note that the system to be modeled in this paper may consist of one or more homogeneous PMs and the IaaS data center may consist of multiple systems. Then, even if the number of job arrivals on an IaaS data center is high, the single-task jobs arrive at the system considered in this paper with a low probability. So Poisson distribution can be used as an adequately model for the single-task job arrival process [6]. Khazaei et al. [9] pointed out three issues that make it difficult to apply the M/G/m approximation approaches that were proposed for traditional hosting, to evaluate the performance of such system:
IE E Pr E oo f
LOUD computing facilitates the agglomeration of the computing infrastructure in an organization into a cohesive whole in order to achieve better efficiency, greater resilience and high scalability. Consequently, “Infrastructure-as-a-Service (IaaS)” aims to deliver a (virtual) computing infrastructure to tenants on a pay-peruse basis, enabling them to run their virtual machine (VM) instances, which are hosted on physical machines (PM) in the IaaS cloud. Several IaaS based cloud offerings are now commercially available, e.g. Amazon Elastic Compute Cloud (EC2) system [1], Google Compute Engine [2], and Microsoft’s Azure [3]. Service Level Agreements (SLAs) between IaaS cloud providers and customers specify the quality of service (QoS) to be delivered to the users. Assessing the QoS offered by IaaS providers necessitates the accurate performance evaluation of the cloud infrastructure. The inability to predict the cloud performance accurately, thus precluding the ability to provide assurance of service quality, is listed as one of the critical obstacles to the rapid adoption of cloud computing [4]. This paper aims to develop an analytical model (AM) to evaluate the performance of a system, which consists of active homogeneous VMs and in which each tenant request/ job consists of a task. Each VM/server serves a task. By active, we mean a VM that has been deployed in a PM and is ready to serve a task. By homogeneous, we mean that the physical resources allocated to each VM are of the same capacity and type. That is, each task considered in this paper
X. Chang, B. Wang, and J. Liu are with Beijing Jiaotong University, Beijing, P.R. China. E-mail: {xlchang, 12120498, jqliu}@bjtu.edu.cn. J.K. Muppala is with Hong Kong University of Science and Technology, Clearwater Bay, Kowloon, Hong Kong. E-mail:
[email protected].
Manuscript received 12 Jan. 2014; revised 11 Nov. 2014; accepted 25 Nov. 2014. Date of publication 0 . 0000; date of current version 0 . 0000. For information on obtaining reprints of this article, please send e-mail to: reprints.org, and reference the Digital Object Identifier below. Digital Object Identifier no. 10.1109/TSC.2014.2376563
The large number of servers (working on VMs) typically present in modern-day cloud infrastructure. The complex job service time, and higher coefficient of variation (CoV) of service time distribution [32], [33], [34], [35]. The dynamic nature of cloud environments and user requests [32], [33], [34], [35]. The few analytic models for cloud data centers that have appeared in the literature recently either ignored some of the characteristics of cloud data centers mentioned above [7], [8], [10], [11], [13] (All these papers assumed that the task service time follows the exponential distribution on IaaS clouds.) or did not describe the system state transition behavior accurately [9], [12]. We present the shortcomings of [9] and [12] in Section 3.3. In this paper, we develop a novel Markov chain (NMC) model using an M/G/m/mþK queue for the IaaS cloud data center. When combined with the transform-based
1939-1374 ß 2014 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.
2
IEEE TRANSACTIONS ON SERVICES COMPUTING,
analytical approach, the NMC model allows the computation of the one-step transition probabilities. Then we are able to compute the steady-state probabilities and subsequently compute a set of performance measures. The performance measures considered in this paper include the mean number of jobs in the system, the mean response time, the blocking probability, and the probability of immediate service (i.e., no waiting in the input buffer). The approximate Markov model (AM) proposed in [9] is close to the NMC model described in this paper. Both AM and NMC divide all the one-step transition probabilities into four regions and then compute steady-state probabilities by computing state-transition probabilities in each region. The differences between these two models lie in the approximation formula of the one-step state-transition probabilities in Region 3 and Region 4, defined in Section 3. We propose a more accurate approximation formula and present the rationale in Section 3.3. We summarize the major contributions of this paper below:
NO. X,
XXXXX 2014
desired performance metrics. In Section 4 we present evaluation results. Our conclusion is summarized in Section 5.
2
RELATED WORK
The increasing prominence of IaaS clouds has prompted research into their performance. Analytical modeling has been applied to study the performance of the cloud systems. Xiong and Perros [7] assumed that both inter-arrival and service times followed the exponential distribution and then modeled the cloud system as a classic open network. Yang et al. [8] considered the system with a finite buffer of size mþK, in which the inter-arrival and service times were also exponentially distributed. They then modeled a cloud center as an M/M/m/mþK queuing system. However, the assumption of the service time being exponentially distributed is inappropriate for the IaaS cloud. Khazaei et al. [9] analyzed the features of the Amazon EC2 services and concluded that only a general distribution can capture the actual job service time. Recent analysis of Google cluster data reported in [32], [33], [34], [35] also indicated the large CoV above 1.0 and the complexity of job service time. Moreover, the analysis provided in [32], [33], [34], [35] showed that the request intensity varied over a large range. Note that it is especially difficult to find an exact solution for the M/G/m model except in some special cases, such as for exponential service, a single server, or no waiting buffer [14]. Accurate approximation methods are needed. In the past, various approximation techniques for estimating the optimal buffer size, blocking probabilities, mean queue length, and/or mean response time of the M/G/m or M/ G/m/mþK queue have been proposed for traditional hosting. See for example [14], [15], [16], [17], [18], [19], [20], [21]. These approximation approaches have the following limitations and thus cannot be directly applied to analyze the IaaS cloud performance:
IE E Pr E oo f
We relax the constraint on the maximum number (denoted by b) of jobs completed by a single server between two successive job arrivals, and develop the general form of the NMC model. The general form allows the investigation of the effect of b on model accuracy and computation overhead. In contrast, the models in [9] consider at most three job departures from a single server. We present a better estimation approach of the onestep state-transition probabilities of Region 3 and Region 4, and compare it to the AM model. In our approximation, we can ensure that the sum of the entries in any row in the transition matrix is one. Consequently, when the CoV of the service time is larger than 1.5, our NMC can capture the system behavior more accurately, compared to the existing model for the same value of b. The proposed analytical model is validated through numerical results and discrete-event simulation. Our numerical and simulation results demonstrate that,
VOL. 7,
Compared to the AM proposed in [9], our NMC can capture the system behavior more accurately in terms of the performance measures mentioned above when the CoV of the service time is larger than 1.5. b affects the accuracy of the NMC model in scenarios of large CoV of the service time. The larger the b, the more accurate the NMC approximation. But this is not the case for the AM model. Increasing m can improve the accuracy of both NMC and AM for those cases with large CoV of the service time, as long as the mean number of jobs in the system never reaches the system capacity. The larger the m, b, and/or K, the larger computation time for solving the NMC model, as expected. Unless otherwise specified, CoV denotes the coefficient of variation of job service time in the rest of the paper. The rest of this paper is organized as follows. Section 2 presents the related work. Section 3 presents our analytical model in detail and derives the analytical solutions for the
Approximations in [14], [15], [16], which considered only at most the first two moments of the job size distribution, are inaccurate when the CoV is above 1.0. Approximations in [17], [18], [19], [20] work well only when the number of servers is small, commonly less than 20. They are not being suitable for the IaaS cloud with more than 100 servers. Approximations that did not estimate system characteristics in closed form required a suitable approximation. For example, the approximation proposed in [21] was precise for the large number of servers and large CoV, by assuming that the initial solution for a lower number of servers or small CoV was an exact solution. Observing the problems of the existing approximation techniques for traditional hosting, Khazaei et al. [9] developed a novel approximate analytical model for performance evaluation of the IaaS cloud using an M/G/m/mþK queueing model. The combination of the proposed AM model and a transform-based analytical model produced a complete probability distribution of the number of jobs in the system. Then, the performance measures mentioned in Section 1 can be computed. Although our proposed model is close to the AM model, there are some prominent differences between them. The first is that our model allows the maximum
CHANG ET AL.: MODELING ACTIVE VIRTUAL MACHINES ON IAAS CLOUDS USING AN M/G/M/MþK QUEUE
3
THE ANALYTICAL MODEL
3.1 Description of the System Model The behavior of a system considered in this paper is modeled using an M/G/m/mþK queue under the following conditions, similar to those used in [9]:
Fig. 1. The system behavior.
There are at most K jobs in the waiting buffer/queue. The various events occurring in the queue are represented in Fig. 1. In this figure, tn denotes the nth job arrival instant and Tn denotes the inter-arrival time between tn and tnþ1 . qn denotes the number of jobs in the system just before the nth job arrival. Note that in the rest of paper, we use T to denote any inter-arrival time. Since we consider an M/G/ D
m/mþK queue, the inter-arrival time IðxÞ ¼ Parrival fX < xg is exponentially distributed with rate of . Thus, its Laplace-Stieltjes Transform (LST) is Z 1 esx dIðxÞ ¼ : I ðsÞ ¼ þ s 0 We assume that the job service times are independent and identically distributed according to a general distribuD tion BðyÞ ¼ Pservice fY < yg, with a mean service time equal D D to b ¼ 1=m. Thus, traffic intensity is r ¼ [25]. The residual
IE E Pr E oo f
number of jobs completed by a single server between two successive job arrivals to be any integer value. The second is that we propose a more accurate approximation for estimating the one-step transition probabilities. The work in [7], [8], [9] assumed that all the servers are homogenous in the modeled system. Ghosh et al. [10] relaxed this assumption and categorized IaaS cloud PMs into three pools: hot (i.e., with running/active VMs), warm (i.e., turned on but without running VMs) and cold (i.e., turned off). In IaaS clouds, when a tenant request arrives, new or pre-instantiated VMs are created or allocated to this tenant. In order to capture such processing feature and overcome the complexity of performance analysis, Ghosh et al. [10] proposed an interacting stochastic model approach that divided the overall model into sub-models and then calculated the overall solution by iteration over individual sub-model solutions. The interacting stochastic model approach [10] modeled the behavior of each PM using a continuous time Markov chain (CTMC). Each PM sub-model only provided the blocking probability to other sub-models for computing the overall system’s performance measures. It is to be noted that our model can calculate the blocking probability and thus can be used to extend the interacting stochastic model approach [10] to more complex scenarios. The recent VMmark benchmark results by VMware [37] indicated that a single physical machine could run as many as about 100 VMs with satisfactory performance. Khazaei et al. [11], [12] explored stochastic model approach for batch-sized jobs. Ghosh et al. [10] and Bruneo et al. [13] applied stochastic reward nets to investigate the performance of IaaS clouds. The models in [10], [11], [13] only considered the scenarios where the service time is exponentially distributed. Besides stochastic modeling, simulation and measurement-based approaches are also being adopted for performance analysis of cloud services [10], [13]. In past years, many efforts have been made to develop various tools, such as in [22], [23], [24], for monitoring and evaluating cloud service’s behaviors in order to improve cloud service performance. Our model is complementary to these studies and can be used to make analysis of the reasons behind the results.
3
The system consists of m homogeneous servers (VMs), which independently render service to the jobs in the order of the request arrivals (FCFS). When a busy server completes a job, it will immediately start servicing the next job waiting in the queue if the queue is not empty. If the waiting queue is empty and there is no new job arrival, then the server enters the idle state. Each busy server is independent of the other busy servers. Each job includes only one task and is serviced by a single server (i.e., there are no batch arrivals).
mm
service time Bþ of a job currently in service is defined as the time interval from an arbitrary point (for example, an arrival point in a Poisson process.) during the service to the end of the service time [26]. The residual service time of a job in a busy server is independent of those at the other busy servers. Thus, the LST of B and Bþ are given as [26] Z 1 esy dBðyÞ B ðsÞ ¼ and
0
Bþ ðsÞ ¼
1 B ðsÞ sb
respectively. Due to the PASTA property, the queue length distribution at the arrival instant is identical to the equilibrium queue length distribution at an arbitrary point in time. The M/G/m/mþK queue is a semi-Markov process and can be solved by using the embedded Markov chain (EMC) technique [25] similar to the one adopted in [9]. This is accomplished by selecting the Markov renewal points, each of which corresponds to the instant of a new job arrival to the system. We choose two consecutive arrivals to be the observation interval for the EMC. If the random process ½qn is an ergodic Markov process [25], we could compute the D
steady-state probabilities pi ¼ limn!1 Probfqn ¼ ig by calculating one-step transition probabilities pij ¼ Probfqnþ1 ¼ jjqn ¼ ig. We could then compute the mean number of jobs in the system, the blocking probabilities, the mean waiting time and the mean response time [25]. Here, 0 i; j m þ K.
3.2 The Transition Probability Matrix The one-step transition probabilities can be computed by counting the number of jobs departing from the system
4
IEEE TRANSACTIONS ON SERVICES COMPUTING,
VOL. 7,
NO. X,
XXXXX 2014
3.2.1 Region 1 This is the region where i þ 1 < j, i.e., the possibility that the number of jobs remaining in the system is greater than iþ1. This is not possible since exactly one job arrives during the observation interval. Thus, in this region pij ¼ 0. 3.2.2 Region 2 In this region, the buffer is empty and all the jobs in the system are in service. Thus, 0 i < m, 0 j < m and i þ 1 j. Equation (3) describes the probability of having ði þ 1 jÞ departures Fig. 2. One-step state transition matrix.
D
pij ¼
Pr ¼ ProbfI > Bþ g ¼ Bþ ðÞ
ðPr Þij ð1 Pr Þj Pc
ij þ
!
i
(3)
Priþ1j ð1
iþ1j
j1
Pr Þ
ð1 Pc Þ:
3.2.3 Region 3 In this region, initially all the servers are busy serving jobs and at the end of the interval, all the servers are still busy serving jobs. Thus m i m þ K, m j m þ K and i þ 1 j. We define hði; j; bÞ as
(1)
minðw;mÞ X
m
n1 ¼minðw;1Þ
n1
hði; j; bÞ ¼
D
!
IE E Pr E oo f
in an observation interval. Each server has zero or more departures in T . We assume that it is not likely that more than b job departures occur from a single server in T . As in [9] and [25], we divide all the one-step transition probabilities pij into four regions. Here pij denotes the probability that the NMC is in the state i at the start of the current interval and will be in state j at the start of the next interval. Fig. 2 shows the four regions in the one-step state transition matrix. Before presenting pij in each region, we first define two variables, Pr and Pc in Equations (1) and (2), respectively
i
Pc ¼ ProbfI > Bg ¼ B ðÞ:
(2)
Here Pr denotes the probability of completing the service of a job, which has already been in service during the previous observation interval and is completed in the current interval. Pc denotes the probability of completing the service of a job, which begins to be serviced in the current interval and is finished within the same interval. Note that the definitions of Pr and Pc , and the transition probabilities of Region 1 and Region 2 are same as in [9]. In order to make the model complete, we also describe them in this section. We use w ¼ i þ 1 j to denote the number of jobs that depart from the system in T . We also define the variable nk that denotes the number of servers, each of which P completes at least k jobs in T . Thus, ðw b1 k¼1 nk Þ denotes the number of servers, each of which completes exactly b jobs in T . Now without loss P of generality, we give some explanation about ðw b1 k¼1 nk Þ under b ¼ 3. Among the m servers, n1 of them finish at least one job during T . Note that all these completed jobs have been in service at the start of T . Among these n1 servers, n2 of them will complete a second job during T . Then the remaining ðw n1 n2 Þ jobs must be completed in T . These jobs are completed by a subset of these n2 servers. The number of servers in the subset is ðw n1 n2 Þ. That is, there are ðw n1 n2 Þ servers, each of which completes exactly three jobs in T .
!
ðPr Þn1 ð1 Pr Þmn1
minðwn X1 ;n1 Þ
n1
n2 ¼minðwn1 ;1Þ
n2
!
ðPc Þn2 ð1 Pc Þn1 n2 :
minðwnb2 ;nb2 Þ
X
nb1 ¼minðw
0 B B @
Pb2
nb1
w
b1 X
nk
k¼1
1
nk ;1Þ
nb2 nb1
!
ðPc Þnb1 ð1 Pc Þnb2 nb1 :
Pb1 Pb1 C CðPc Þw k¼1 nk ð1 Pc Þnb1 wþ k¼1 nk : A
k¼1
(4)
Then the transition probability in Region 3 is defined
as
8 hði; j; bÞ; i < m þ K; j m þ K > > 1 < X hði; l; bÞ; i ¼ j ¼ m þ K pij ðbÞ ¼ > > : l¼mþK 0; i > m þ K:
(5)
3.2.4 Region 4 In this region, all the servers are busy serving jobs at the start of the interval, and some servers are idle at the end of the interval. Thus, m i m þ K, j < m and i þ 1 j. We define ði; j; bÞ as in Equation (6)
CHANG ET AL.: MODELING ACTIVE VIRTUAL MACHINES ON IAAS CLOUDS USING AN M/G/M/MþK QUEUE
m ðPr Þn1 ð1 Pr Þmn1 ð1 Pc Þ n1 ¼mj n1 minðwn X1 ;n1 Þ minði þ 1 m; n1 Þ ðPc Þn2 ð1 Pc Þn1 n2 n2 ¼minðwn ;mjÞ 1
ði; j; bÞ ¼
n2
5
mj
1
minðwn 1 n2 ;n2 Þ X
n3 ¼minðwn1 n2 ;mjÞ
minðw;mÞ X
minðmaxði þ 1 m n1 ; 0Þ; n2 Þ n3
ðPc Þn3 ð1 Pc Þn2 n3 ...
1 0 Pb2 b3 X n ;n Þ k¼1 k b2 X B minðmaxði þ 1 m nk ; 0Þ; nb2 C A @ k¼1 Pb2 nk ;mjÞ nb1 ¼minðw n b1 k¼1 minðw
nb1
ðPc Þ 0
ð1 Pc Þ
nb2 nb1
Fig. 3. Possible server situations at the end of the interval Tn in Region R4.
1 b2 X B minðmaxði þ 1 m nk ; 0Þ; nb1 Þ C C B k¼1 C B C B b1 C B X A @ nk w k¼1
Pb1 Pb1 ðPc Þw k¼1 nk ð1 Pc Þnb1 maxðiþ1m k¼1 nk ;0Þ :
IE E Pr E oo f
(6) Then the transition probability in Region 4 is defined as ði; j; bÞ; i m þ K (7) pij ðbÞ ¼ 0; i > m þ K:
Looking at Equation (8), we need to understand that the expression within the first summation accounts for those n1 servers that complete at least one job within the interval. The probability is computed as ProbfI > Bþ g ¼ Pr . Among these n1 servers, n2 of them also complete a second job. This means that for these n2 servers, the conditional probability of completing a second job is computed as
Note that Equation (4) and (6) represent the transition probabilities of Region 3 and Region 4 in case of M/G/m/ 1, respectively.
3.3 Discussion Looking back at the equations for the four regions, it is clear that in Region 2, there will be at most one departure from any server. However, in Region 3 and Region 4, there can be more than one departure from any given server. In this case, the number of departures from a server is upper-bounded by b. Let us now examine in detail the equations for the transition probabilities for the NMC in Region 3 and Region 4 in the case where b ¼ 3. We compare the equations with those presented for the AM in [9]. In this case, among the m servers, n1 of them finish at least one job during T . Note that all these completed jobs must already be in service at the start of T . Among these n1 servers, n2 of them will finish a second job during T . Note that all these jobs, which are completed secondly, must have started receiving service during the interval, and complete before the end of the interval. Since we consider b ¼ 3, the remaining ðw n1 n2 Þ jobs must depart from a subset of these n2 servers. We first take a look at the equations for Region 3. Equation (8) gives the NMC transition probability when b ¼ 3. minðw;mÞ X
hði; j; 3Þ ¼
n1 ¼minðw;1Þ
m ðPr Þn1 ð1 Pr Þmn1 n1
minðwn X1 ;n1 Þ
n2 ¼minðwn1 ;1Þ
n2 w ni n2
n1 (8) ðPc Þn2 ð1 Pc Þn1 n2 : n2 ðPc Þwni n2 ð1 Pc Þn2 wþn1 þn2 :
ProbfI > B þ Bþ jI > Bþ g
¼ ProbfI > B þ Bþ g=ProbfI > Bþ g ¼ Pr Pc =Pr ¼ Pc :
Similarly, we can show that ProbfI > 2Bþ Bþ jI > B þ Bþ g ¼ Pc accounts for the conditional probability that ðw n1 n2 Þ jobs must depart from those servers that have already completed two jobs. In contrast, the authors in [9] used the unconditional probabilities, ProbfI > B þ Bþ g and ProbfI > 2B þ Bþ g in these two rows (in Equation (8)), respectively, contributing to the inaccuracy of the AM model. Note that the analytical model proposed in [12] also had the problem of using the unconditional probabilities. Furthermore, the number of servers that complete only two jobs in T should be set to ðn2 ðw ni n2 ÞÞ as used in Equation (8), but is set to n2 in AM. Now we discuss the transition probability equations in Region 4, as shown in Fig. 3. Some of the discussion about the difference between the NMC model and the AM model for Region 3, also applies to Region 4. In addition, Region 4 has some unique features. In the following, we first explain items
minðmaxði þ 1 m n1 ; 0Þ; n2 Þ minði þ 1 m; n1 Þ ; ; n2 w n 1 n2
and ð1 Pc Þn2 maxðiþ1mn1 n2 ;0Þ ;which were shown as
n2 n1 ; n2 w n1 n2
, and ð1 Pc Þn2 in [9]. We, then, explain ð1P1Þmj . c
In Region 4, i m and j < m. Therefore, there should be ðm jÞ idle servers at the end of T . Furthermore, there are ði þ 1 mÞ jobs in the waiting queue at the beginning of T . If n1 > i þ 1 m, there are at most ði þ 1 mÞ jobs that begin service at a subset of the n1 servers in T . If
6
IEEE TRANSACTIONS ON SERVICES COMPUTING,
n1 i þ 1 m, then n1 jobs start service at the n1 servers in T . Thus, the n2 servers that complete a second job must be selected from the minði þ 1 m; n1 Þ servers. A similar argument for selecting the ðw n1 n2 Þ servers that complete three jobs can be given. In Region 4, there can be maxði þ 1 m n1 ; 0Þ new jobs in the waiting queue to be serviced by the n2 servers after they complete two jobs in T . Thus, there are minðmaxði þ 1 m n1 ; 0Þ; n2 Þ servers from which to select ðw n1 n2 Þ jobs. Before explaining the multiplier ð1 Pc Þn2 maxðiþ1mn1 n2 ;0Þ in Fig. 3, we first discuss all the possible situations of server states at the end of T . Some servers complete no job. The dotted circle indicated by (a) in Fig. 3 represents the set of these servers. ii) Some servers may complete only one job and remain either busy processing a second job, or remain idle in T because the waiting queue is empty. The bold black line indicated by (b) in Fig. 3 represents the set of these servers. iii) Similarly, some servers may complete only two jobs and then remain either busy processing the third job, or remain idle in T because the waiting queue is empty. The red dotted line indicated by (d) in Fig. 3 includes these idle servers. iv) The number of servers that will complete three jobs and continue to be busy processing another job is given by maxði þ 1 m n1 n2 ; 0Þ. v) Some of the servers complete exactly three jobs and then enter the idle state because the waiting queue is empty. The number of such servers is ððw n1 n2 Þ maxði þ 1 m n1 n2 ; 0ÞÞ. The cases (iv) and (v) are indicated by the blue line (c) in Fig. 3. Based on (iv) above, we can now understand the power of ð1 Pc Þn2 maxðiþ1mn1 n2 ;0Þ . This power accounts for all those ðn2 maxði þ 1 m n1 n2 ; 0ÞÞ servers that are still busy processing the third job. Now we explain the multiplier ð1P1Þmj in Fig. 3. In
NO. X,
XXXXX 2014
is proved by the numerical experiments of Section 4. Therefore, it is necessary to introduce the normalization equation PmþK j¼0 pj ¼ 1 in order to compute all pi values with Equations (10). Note that these equations cannot be solved in closed form and therefore we must resort to a numerical solution, as outlined in Section 4. Our numerical experiments for the AM model indicate PmþK pj ¼ 1 must replace that the normalization equation j¼0 one of the balance equations in order to calculate the steadystate probabilities pi of AM model. Otherwise, there is no solution for pi . However, with our model, all pi can be computed by using the normalization equation and all balance equations. The reason is that m þ K þ 1 balance equations of our model are linearly dependent. Theorem 1. The random process ½qn is an ergodic Markov process when the service time follows a gamma distribution. Proof. See Appendix A in the supplemental of the paper, which can be found on the Computer Society Digital Library at http://doi.ieeecomputersociety.org/10.1109/ TSC.2014.2376563 u t Now we explain why we mention “ergodic” only under gamma-distributed service time in Theorem 1. The crucial step of the “ergodic” proof in APPENDIX A, available in the online supplemental material, is to prove that the NMC state set is closed. An inappropriate approximation method for estimating one-step transition probabilities may not PmþK guarantee j¼0 pij ¼ 1 for each i 2 ½0; m þ K. If there P exists i such that mþK j¼0 pij 6¼ 1, the state set is not closed and then the corresponding Markov chain is not ergodic. P Whether mþK j¼0 pij ¼ 1 can be only verified through numeriP cal analysis. In Section 4, we demonstrate whether mþK j¼0 pij ¼ 1 for each i 2 ½0; m þ K by checking whether pi can be computed by using the normalization equation and all balance equations. Moreover, we validate only in scenarios of gamma-distributed service time. Thus, Theorem 1 only mentions the “ergodic” property under gamma-distributed service time. We leave the investigation of “ergodic” property under the other distributions of the service time for future work.
IE E Pr E oo f
i)
VOL. 7,
c
Region 4, there must be exactly ðm jÞ servers idle at the end of the interval. The servers that enter the idle state in cases (ii), (iii) and (v), contribute to these idle ðm jÞ servers. However, the above discussions about Region 4, represented by the gray part of Fig. 3, multiplies ð1 Pc Þ for each idle server in cases (ii), (iii) and (v), assuming that they do not complete the job, even though the servers are idle. In order to correctly account for the ðm jÞ idle servers, we scale the equation using the above multiplier.
3.4 Balance Equations We can now discuss how to compute all pi values. With the transition probability matrix constructed in Section 3.2, we obtain the m þ K þ 1 balance equations, described in Equation (10). Here, 0 i ðm þ K Þ pi ¼
mþK X
pj pji ;
0 i m þ K:
(9)
j¼0
We note that the m þ K þ 1 balance equations from Equation (10) are linearly dependent. The reason is that the sum of the entries in any row in the transition matrix is one. This
4
NUMERICAL RESULTS
This section evaluates the accuracy and computation time of NMC by comparing its numerical results with the numerical results of the AM model and simulation results. As in [9], we assume that the service time of jobs follows the gamma distribution. Actually, the NMC model can be applied to any service time distribution. We evaluate the performance of NMC and AM under various m, K, CoV and b. The results for the analytical models NMC and AM are computed using Maple 17 [27]. The simulations are conducted by using the Monte Carlo discreteevent simulation method in the simulation software package Arena [28]. More details about Arena are available in [28] and [29]. The simulation source file is available in [30]. We also develop a simulator [31] running on Maple 17. There is little difference in the simulation results obtained from this simulator compared to the results
CHANG ET AL.: MODELING ACTIVE VIRTUAL MACHINES ON IAAS CLOUDS USING AN M/G/M/MþK QUEUE
7
Fig. 4. Mean number of jobs in the system under r ¼ 0.85, M/G/100/150.
IE E Pr E oo f
Fig. 5. Mean number of jobs in the system under r ¼ 0.85, M/G/200/300.
Fig. 6. Mean number of jobs in the system under r ¼ 0.85, M/G/500/750.
from Arena. Note that the authors in [9] only gave the AM model with b ¼ 3. We extend their model to the situations where b ¼ 2, 4, and 5 in order to make a fair comparison between NMC and AM. No cloud provider publishes information regarding the average traffic intensity, buffer space, number of servers, or the percentage of reserved, on-demand or spot instances [9]. Thus, we apply the parameter settings (including m and r) used in [9] for evaluation. That is, m ¼ 100, 200, and 500; r is set to 0.85. These settings give reasonable insight into the behavior and dimensioning of cloud centers [9]. Recent analysis of Google cluster data reported in [32], [33], [34] indicated that the CoV may be larger than 1.5. Thus, we also consider the cases where the CoV is set to 2, 3 and 4. All simulations and numerical analysis are performed on a Desktop PC with Intel(R) Core(TM) i7-3770
[email protected] GHz and 4 GB memory. In addition, the operating system is Windows 7. Note that the simulation results in the following are calculated with a confidence level of 95 percent.
4.1 Effect of b on Model Accuracy The results presented in Figs. 4, 5, and 6 show the mean number of jobs in the system for different values of b when m ¼ 100, 200 and 500, respectively. “NMC” denotes the results for the NMC model, and “AM” denotes the results for the AM model. “Simu” denotes the result obtained from
simulations. We also evaluate the NMC in terms of immediate service probability and dropping probability, defined as Pm1 j¼0 pj and pmþK , respectively. Fig. 7 presents the immediate service probability under different CoV, different b and different system capacity. Fig. 8 presents the blocking probability under different CoV, different b and different system capacity. “system capacity” denotes the maximum number of jobs allowed in the system, including those in the waiting queue. “NMC-k” denotes the results for the NMC model with b ¼ k. From the results of Figs. 4, 5, 6, 7, and 8, we observe that:
Our results confirm the results reported in [9]. That is, when the CoV is set to 0.5 and 1.4, the mean number of jobs in the system under AM closely matches with the simulation results. But this is not the case when CoV is 2, 3 and 4. For the AM model, the larger the CoV, the larger the mismatch of the system characteristics. We see that mean number of jobs in the system, as computed by AM is approaching the maximum number of jobs allowed in the system when CoV ¼ 2. When CoV is 3 and 4, the system buffer is to be full. For the same CoV, b and m, the NMC performs better than AM in term of capturing the system behavior accurately. The accuracy of NMC is sensitive to b when CoV and m are fixed. For NMC, there exists a lower bound of
8
IEEE TRANSACTIONS ON SERVICES COMPUTING,
VOL. 7,
NO. X,
XXXXX 2014
IE E Pr E oo f
Fig. 7. Probability of Immediate Service of NMC under r ¼ 0.85 for different b.
Fig. 8. Dropping Probability of NMC under r ¼ 0.85 for different b.
b for specific CoV and m. When b is less than this lower bound, NMC cannot accurately capture the system behavior. This inaccuracy is reflected in the mean number of jobs in the system obtained from the model larger than that from the simulation. This inaccuracy is also reflected in the larger job dropping probability and the larger mean job response time obtained from the model. For all b less than the lower bound, the larger the b, the more accurate the NMC approximation. That is, the mean number of jobs in the system computed from the model is gradually approaching the simulation result with the increasing b. When b reaches this lower bound, the NMC can capture the system behavior accurately. If b is increased further, NMC can still capture the system behavior accurately but the computing time is increased. The results in Figs. 4d, 4e, 5d, 5e, 6e, 7 and 8 validate the effect of b on NMC’s ability in reflecting the system. The computing time will be discussed in Section 4.5. Now we give more detailed explanation by using the result of Fig. 4e. When CoV is 4, the mean number of jobs in system under NMC for b ¼ 2 is approaching the system capacity. As the value of b is increased, the mean number of jobs under NMC closely approaches the correct value as estimated by the simulation. Note that this is not the case for the AM model, indicated by the results in Figs. 4, 5, and 6. The reason is AM’s inaccurate approximation of transition probabilities in Region 3 and Region 4. We also repeat the experiments by varying r. Due to space limitation we present these results in the supplemental section of the paper, available online. The experimental results confirm the above observations.
4.2 Effect of m on Model Accuracy The results of CoV ¼ 2 in Figs. 4c, 5c and 6c suggest that the larger m, the better performance of AM. The results of CoV ¼ 3 in Figs. 4d, 5d and 6d suggested that the larger the m, the greater the accuracy of NMC. This section aims to further show that, for fixed CoV and b, increasing the values of m can improve the approximation accuracy of NMC and AM as long as the waiting queue overflow does not occur under smaller m. We set b ¼ 2 and evaluate the performance of AM and NMC under CoV ¼ 2 and CoV ¼ 3, respectively, by increasing m from 100 to 500. K is set to m/2. Figs. 9 and 10 show the mean number of jobs under CoV ¼ 2 and 3, respectively. “NMC-2” and “AM-2” denotes the results for the NMC and AM models with b ¼ 2, respectively. The results in these two figures indicate that increasing m can improve the approximation accuracy of both AM and NMC. See the AM result in Fig. 9 and the NMC result in Fig. 10. However, the effect of m can improve AM/NMC accuracy only when the waiting queue overflow does not occur under smaller m. The results of AM-2 in Fig. 10 confirm this.
Fig. 9. Mean number of jobs when b ¼ 2, CoV ¼ 2.
CHANG ET AL.: MODELING ACTIVE VIRTUAL MACHINES ON IAAS CLOUDS USING AN M/G/M/MþK QUEUE
9
Fig. 13. Mean number of jobs when m ¼ 100, CoV ¼ 3, and b ¼ 3.
IE E Pr E oo f
Fig. 10. Mean number of jobs when b ¼ 2, CoV ¼ 3.
Fig. 14. Mean number of jobs when m ¼ 100, CoV ¼ 4, and b ¼ 3.
Fig. 11. Mean number of jobs when m ¼ 100, CoV ¼ 2, and b ¼ 3.
We set m ¼ 100 and b ¼ 3 to conduct the experiments by varying K from 10 to 100 and varying CoV from 2 to 4, respectively. Figs. 11, 12. 13, and 14 present the results. “SysCap” denotes the system capacity, equal to m þ K. From the results of Figs. 11, 12. 13, and 14, we observe that: i)
ii)
Fig. 12. Mean number of jobs when m ¼ 100, CoV ¼ 3, and b ¼ 3.
4.3 Effect of K on Model Accuracy The results in Figs. 4c and 5c indicate that there is a marked difference between the simulated mean queue length and the AM approximation. NMC has similar performance under CoV ¼ 4, indicated in Figs. 4e and 5e. In addition, the results in Figs. 4d and 5d indicate that under AM, the mean number of waiting jobs reaches the system capacity, m þ K. This section aims to investigate the effect of K on this behavior in more detail: i)
ii)
iii)
Whether increasing K can reduce the discrepancy between the mean queue length obtained from simulation and that of the NMC and AM approximations. Whether increasing K can remove the occurrence of the mean number of waiting jobs reaching the system capacity. Given that AM and NMC can accurately approximate the system characteristics under certain CoV, m and K, can they can still work well when K is varied?
iii)
Increasing K cannot reduce the discrepancy between the simulated mean queue length and that of the AM approximation. Fig. 11 indicates when K is increased from 60 to 100, the mean number of jobs under AM is still close to the system capacity. Increasing K cannot remove the occurrence of the mean number of waiting jobs being close to the system capacity for the AM model. Fig. 12 indicates when K is increased from 60 to 100, the mean number of jobs under AM still reaches the system capacity. If AM and NMC can give an accurate approximation to the system under certain K, they can still work well when K is changed. But this is true only when K is above a certain value. For example, for K > 10 in our experiments. Both Figs. 11 and 12 indicate that when K ¼ 0, AM can provide an accurate approximation. The reason is that only the transition probabilities in Region 1 and Region 2 are involved. Fig. 13 shows the results for AM when K is increased from 0 to 10. The discrepancy between the simulated mean queue length and the approximation by AM is getting larger. The reason is that more and more transition probabilities of Region 3 and Region 4 join the computation of performance measures. Thus, the inaccurate estimation of transition probabilities leads to the inaccurate estimation of the performance measures. Similar reasoning can explain the results of Fig. 14. In Fig. 14, the NMC approximation gets worse as K is increased from 0 to 50. From 60 to 100,
10
IEEE TRANSACTIONS ON SERVICES COMPUTING,
VOL. 7,
NO. X,
XXXXX 2014
TABLE 1 Moments of Response Time Distribution, CoV ¼ 0.5, b ¼ 3 m/mþK
method
mean
st. dev
skewness
kurtosis
100/110
Simu AM NMC Simu AM NMC Simu AM NMC Simu AM NMC Simu AM NMC
2.005601 2.001163 2.001162 2.005992 2.001274 2.001274 2.006000 2.001281 2.001281 2.006735 2.001281 2.001281 2.006543 2.001281 2.001281
1.003100 1.000054 1.000054 1.001330 1.000072 1.000072 1.001660 1.000074 1.000074 1.001760 1.000074 1.000074 1.001996 1.000074 1.000074
1.003744 0.999850 0.999850 1.010978 0.999807 0.999806 0.993780 0.999800 0.999803 0.995128 0.999803 0.999803 1.000177 0.999800 0.999803
1.535117 1.499677 1.499676 1.517440 1.499572 1.499571 1.470807 1.499562 1.499561 1.459784 1.499561 1.499561 1.489353 1.499000 1.499561
100/120 100/130 Fig. 15. Effect of b on the mean number of jobs under NMC.
100/140 100/150
TABLE 2 Moments of Response Time Distribution, CoV ¼ 1.4, b ¼ 3
the mean number of jobs is very close to the system capacity. Note that this inaccuracy in the approximation for the NMC model can easily be improved by increasing the value of b. This is confirmed by the results presented in Fig. 15. From these results we can see that the approximation accuracy of NMC is improved when b is increased to 4 and 5. However, as illustrated by the results of Fig. 16, increasing the value of b cannot improve the approximation accuracy of the AM model.
4.4
m/mþK
method
mean
st. dev
skewness
kurtosis
100/110
Simu AM NMC Simu AM NMC Simu AM NMC Simu AM NMC Simu AM NMC
2.044540 2.043889 2.042366 2.052492 2.045244 2.042587 2.053608 2.045618 2.042606 2.054406 2.045706 2.042608 2.056891 2.045725 2.042608
2.843011 2.857210 2.857170 2.864200 2.857294 2.857184 2.847360 2.857333 2.857185 2.860564 2.857345 2.857186 2.871722 2.857349 2.857186
2.776450 2.799804 2.799918 2.762908 2.799565 2.799880 2.816233 2.799457 2.799875 2.835400 2.799422 2.799874 2.782400 2.799413 2.799874
11.36545 11.75889 11.75954 11.33568 11.75751 11.75932 11.84893 11.75688 11.75929 12.13338 11.75667 11.75929 11.39967 11.75661 11.59286
IE E Pr E oo f
Fig. 16. Effect of b on the mean number of jobs under AM.
Comparison of Moments of Response Time under NMC and AM This section aims to evaluate model approximation accuracy in terms of moments of response time. We calculate the mean, standard deviation, skewness, and kurtosis of response time for the system for various waiting queue sizes and CoV. The positive skew indicates that the tail on the right-hand side is longer than the left-hand side and the bulk of the values lie to the left of the mean. The kurtosis indicates whether job set is peaked or flat relative to normal distribution with the same mean and standard deviation. We first repeat the experiments carried out in [9] for evaluating model accuracy in terms of moments of response time. Our results are shown in Tables 1 and 2. These results are consistent with those in [9]. We also calculate the mean, standard deviation, skewness, and kurtosis of response time for the system under different CoV. Table 3 shows the results when m ¼ 100 and b ¼ 3. Table 4 shows the results when m ¼ 200 and b ¼ 3. As expected, the higher the CoV of job service time, the higher the standard deviation of the response time. So are the skewness and kurtosis of the response time. These results also indicate that NMC can capture the system behavior more accurately. Specifically the results in Tables 3 and 4 indicate that the mean response time
100/120 100/130 100/140 100/150
TABLE 3 Moments of Response Time Distribution when M/G/100/150, b ¼ 3
CoV
Simu
AM
NMC
mean st.Dev skewness kurtosis mean st.Dev skewness kurtosis mean st.Dev skewness kurtosis
0.5
1.4
2
3
4
2.00654 1.00200 1.00018 1.48935 2.00128 1.00007 0.99980 1.49956 2.00128 1.00007 0.99980 1.49956
2.05277 2.87172 2.78240 11.3996 2.04572 2.82875 2.79946 11.7566 2.04260 2.83361 2.79986 11.7592
2.02554 4.01304 3.98890 23.7888 3.43807 3.99766 4.00687 24.0562 2.00360 4.00009 3.99973 23.9978
2.03247 6.08472 5.99529 54.0465 6.11608 5.97250 6.08350 55.0013 2.03971 6.00191 5.99435 53.9313
2.03793 8.02629 7.93141 94.3627 11.7398 7.88307 8.36279 101.824 3.15131 8.00824 7.97506 95.6053
under AM is far away from the simulation results when CoV ¼ 2, 3, and 4. A similar reasoning can explain the results for other values of b.
CHANG ET AL.: MODELING ACTIVE VIRTUAL MACHINES ON IAAS CLOUDS USING AN M/G/M/MþK QUEUE
11
TABLE 4 Moments of Response Time Distribution when M/G/200/300, b ¼ 3 0.5
1.4
2
3
4
2.00135 1.00223 1.00023 1.49789 2.00003 1.00007 0.99999 1.49999 2.00003 1.00001 0.99999 1.49999
2.04141 2.86187 2.79564 11.8104 2.04091 2.82857 2.79999 11.7599 2.04086 2.82143 2.79999 11.7599
2.00135 4.00540 3.99172 24.0385 3.25673 4.00436 3.99854 23.9897 2.00012 4.00000 3.99999 23.9999
2.00229 5.99513 5.96725 53.0163 5.49616 5.98997 6.03022 54.3624 2.00151 6.00008 5.99999 53.9986
2.00443 8.06116 8.14737 95.7843 10.2165 7.95814 8.12712 98.0358 3.17644 8.00419 7.98930 95.7992
Fig. 18. Computation time of different K vs. b when m ¼ 200.
IE E Pr E oo f
CoV Simu mean st. Dev skewness kurtosis AM mean st. Dev skewness kurtosis NMC mean st. Dev skewness kurtosis
Fig. 19. Computation time of different m vs. b when K ¼ 100.
Fig. 17. Computation time of different K vs. b when m ¼ 100.
4.5 Effect of m, K and b on Computation Time This section aims to evaluate the effect of different m, K, and b on computation overhead. Note that there is less difference among computation time under different CoV when m, K, and b are fixed. We conduct the experiments by varying m from 100 to 500, K from 0 to 100, and b from 2 to 5, respectively. Figs. 17, 18, and 19 show the results. “Computation Time” denotes the time for solving the NMC model. We observe that:
When m and b are both fixed, the computation time increases with the increasing K, indicated in Figs. 17 and 18, respectively. The reason is that the transition probabilities in both Region 3 and Region 4 have a greater impact on the results. When m and K are fixed, the computation time increases with the increasing b, indicated in Figs. 17 and 18, respectively. The reason is that the computation time increases in calculating the transition probabilities of Region 3 and Region 4. Note that the number of transition probabilities to be computed is not changed with the increasing b. When b and K are fixed, the computation time increases with increasing m, indicated in Fig. 19. The reason is that more transition probabilities in each region needed to be computed.
5
The results in Figs. 17, 18 and 19 indicate that increasing b and K has a relatively larger effect on the computation time than increasing m. In addition, increasing K produces obvious effect on the computation overhead when it is above 60 in our experiments.
CONCLUSION
In this paper, a novel approximate analytic model is developed for a system of homogeneous VMs under Poisson arrival with generally distributed job service time. The proposed model can produce a more precise probability distribution of the number of jobs in the system, which can be used to obtain a set of performance metrics, including the mean queue length, the mean response time, and the blocking probability. We have further conducted numerical experiments and simulations to evaluate our model. The results validate the high accuracy of our NMC analytic model, compared to the existing AM model. There is interference between VMs running on the same PM [1], [12], degrading the VM performance. A future direction is extending the model proposed in this paper to consider this effect. We also plan to extend the proposed model to consider jobs with different priorities, batch-task jobs, and jobs with different resource requirements.
12
IEEE TRANSACTIONS ON SERVICES COMPUTING,
ACKNOWLEDGMENTS The work described in this paper has been supported in part by Program for New Century Excellent Talents in University (NCET-11-0565), Program for the Fundamental Research Funds for the Central Universities (2012JBZ010), National Natural Science Foundation of China (No. 61402035), Program for Changjiang Scholars and Innovative Research Team in University (No. IRT 201206). The third author is supported by UGC Research Infrastructure Grant No. FSGRF13EG21.
REFERENCES
[4]
[5] [6] [7] [8] [9]
[10] [11] [12]
[13] [14] [15] [16] [17] [18] [19] [20] [21] [22] Q1 [23]
Amazon EC2. [Online]. Available: http://aws.amazon.com/ec2/ GCE. [Online]. Available: https://cloud.google.com/compute/ Azure. [Online]. Available: http://www.microsoft.com/ windowsazure/ M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. H. Katz, A. Konwinski, G. Lee, D. A. Patterson, A. Rabkin, I. Stoica, and M. Zaharia, “A view of cloud computing,” Commun. ACM, vol. 53, no. 4, pp. 50–58, 2010. S. Di, D. Kondo, and W. Cirne, “Characterizing cloud applications on a google data center,” in Proc. IEEE Int. Conf. Parallel Process., 2013, pp. 468–473. G. R. Geimmett and D. R. Stirzakers, Probability and Random Processes, 3rd ed. London, U.K.: Oxford Univ. Press. K. Xiong and H. Perros, “Service performance and analysis in cloud computing,” in Proc. Congr. Serv., 2009, pp. 693–700. B. Yang, F. Tan, Y. Dai, and S. Guo, “Performance evaluation of cloud service considering fault recovery,” in Proc. IEEE 1st Int. Conf. Cloud Comput., 2009, pp. 571–576. H. Khazaei, J. Misic, and V. B. Misic, “Performance analysis of cloud computing centers using M/G/m/mþr queueing systems,” IEEE Trans. Parallel Distrib. Syst., vol. 23, no. 5, pp. 936–943, May 2012. R. Ghosh, F. Longo, V. K. Naik, and K. S. Trivedi, “Modeling and performance analysis of large scale IAAS clouds,” Elsevier Future Generation Comput. Syst., vol. 29, no. 5, pp. 1216–1234, 2013. H. Khazaei, J. V. Misic, V. B. Misic, and S. Rashwand, “Analysis of a pool management scheme for cloud computing centers,” IEEE Trans. Parallel Distrib. Syst., vol. 24, no. 5, pp. 849–861, May 2013. H. Khazaei, J. Misic, and V. B. Misic, “Performance of cloud centers with high degree of virtualization under batch task arrivals,” IEEE Trans. Parallel Distrib. Syst., vol. 24, no. 5, pp. 849–861, May 2013. D. Bruneo, F. Longo, and A. Puliafito, “Modeling energy-aware cloud federations with SRNs,” T. Petri Nets Other Models Concurrency, vol. 6, pp. 277–307, 2012. P. Hokstad, “Approximations for the M/G/m Queues,” Oper. Res., vol. 26, pp. 510–523, 1978. D. D. Yao, “Refining the diffusion approximation for the M/G/m queue,” Oper. Res., vol. 33, pp. 1266–1277, 1985. S. A. Nozaki and S. M. Ross, “Approximations infinite-capacity multi-server queues with Poisson arrivals,” J. Appl. Prob., vol. 15, no. 4, pp. 826–834, 1978. T. Kimura, “A transform-free approximation for the finite capacity M/G/s queue,” Oper. Res., vol. 44, no. 6, pp. 984–988, 1996. J. MacGregor Smith, “M/G/c/K Blocking probability models and system performance,” Perform. Eval., vol. 52, pp. 237–267, 2003. O. J Boxma, J. W. Cohen, and N. Huels, “Approximations of the mean waiting time in an M/G/s queing system,” Oper. Res., vol. 27, pp. 1115–1127, 1979. H. C. Tijms, M. H. Vaan Hoorn, and A. Federgruen, “Approximation for the steady state probabilities in the M/G/C qeueue,” Adv. Appl. Probability, vol. 13, no. 1, pp. 186–206, 1981. B. Ma and J. Mark, “Approximation of the mean queue length of an M/G/c queueing system,” Oper. Res., vol. 43, pp. 158–165, 1995. S. Meng, A. K. Iyengar, I. M. Rouvellou, L. Liu, K. Lee, B. Palanisamy, and Y. Z. Tang, “Reliable state monitoring in cloud data centers,” in Proc. 5th Int. Conf. IEEE Cloud Comput., 2009. G. Ren, E. Tune, T. Moseley, Y. X. Shi, S. Rus, and R. Hundt, ”Google-wide profiling: A continuous profiling infrastructure for data centers,” IEEE Micro, vol. 30, no. 4, pp. 65–79, Jul. 2010.
NO. X,
XXXXX 2014
[24] B. H. Sigelman, L. A. Barroso, M. Burrows, P. Stephenson, M. Plakal, D. Beaver, S. Jaspan, and C. Shanbhag, “Dapper, A large-scale distributed systems tracing infrastructure,” Google, Mountain View, CA, USA, Tech. Rep. 36356, 2010. [25] L. Kleinrock, Queueing Systems: Theory, vol. 1. New York, NY, USA: Wiley-Interscience, 1975. [26] H. Takagi, Queueing Analysis: Vacation and Priority Systems, vol. 1. Amsterdam, The Netherlands: North- Holland, 1991. [27] Maplesoft, Inc., Maple 17, [Online]. Available: http://www. maplesoft.com/products/maple/ [28] [Online]. Available: http://www.arenasimulation.com/ [29] W. D. Kelton, R. P. Sadowski, and D. T. Sturrock, Simulation with Arena, 5th ed. 2010. [30] [Online]. Available: http://www.xingbin.net/xiaolin/simuNMC.doe [31] [Online]. Available: http://www.xingbin.net/xiaolin/simu.mpl [32] A. Mishra, J. Hellerstein, W. Cirne, and C. Das, “Towards characterizing cloud backend workloads: Insights from google compute clusters,” ACM SIGMETRICS Perform. Eval. Rev., vol. 37, no. 4, pp. 34–41, 2010. [33] Q. Zhang, J. Hellerstein, and R. Boutaba, “Characterizing task usage shapes in Google’s compute clusters,” in Proc. 5th Int. Workshop Large Scale Distrib. Syst. Middleware, 2011. [34] S. Di, D. Kondo, and W. Cirne, “Characterization and comparison of cloud versus grid workloads,” in Proc. IEEE Int. Conf. Cluster Comput., 2012, pp. 230–238. [35] C. Reiss, A. Tumanov, G. R. Ganger, R. Katz, and M. Kozuch, “Heterogeneity and dynamicity of clouds at scale: Google trace analysis,” in Proc. ACM Symp. Cloud Comput., 2012, p. 7. [36] S. M. Ross, Introduction to Probability Models, 9th ed. Orlando, FL, USA: Academic. [37] [Online]. Available: http://www.vmware.com/a/assets/ vmmark/pdf/2013-06-11-HP-ProLiantDL980G7.pdf
IE E Pr E oo f
[1] [2] [3]
VOL. 7,
Xiaolin Chang received the PhD degree in computer science from the Hong Kong University of Science and Technology in 2005. She is currently an associate professor at the School of Computer and Information Technology, Beijing Jiaotong University. Her current research interests include cloud data center and network security. She is a member of the IEEE.
Bin Wang received the BS degree from Beijing Jiaotong University, Beijing, China, in 2012. He is currently working toward the MS degree at Beijing Jiaotong University. His research interests include cloud computing and machine learning.
Q2
Q3
CHANG ET AL.: MODELING ACTIVE VIRTUAL MACHINES ON IAAS CLOUDS USING AN M/G/M/MþK QUEUE
Jiqiang Liu received the BS and PhD degrees from Beijing Normal University in 1994 and 1995. He is currently a professor at the School of Computer and Information Technology, Beijing Jiaotong University. He has published more than 60 scientific papers in various journals and international conferences. His main research interests are trusted computing, cryptographic protocols, privacy preserving and network security.
IE E Pr E oo f
Jogesh K. Muppala (M’85-SM’02) received the PhD degree in electrical engineering from Duke University, Durham, NC, in 1991. He is currently an associate professor in the Department of Computer Science and Engineering, The Hong Kong University of Science and Technology, Clear Water Bay, Kowloon, Hong Kong. He was previously a member of the Technical Staff at Software Productivity Consortium (Herndon, Virginia) from 1991 to 1992, where he was involved in the development of modeling techniques for systems and software. While at Duke University, he participated in the development of two modeling tools, the Stochastic Petri Net Package (SPNP) and the symbolic Hierarchical Automated Reliability and Performance Evaluator (SHARPE). He cofounded the International Workshop on Dependability of Clouds, Data Centers and Virtual Machine Technology (DCDV). He was also the program cochair for the 1999 Pacific Rim International Symposium on Dependable Computing. He has also served on program committees of many international conferences. He is a senior member of the IEEE, IEEE Computer Society and IEEE Communications Society, and a participating representative from HKUST with EDUCAUSE.
13
Queries to the Author
IE E Pr E oo f
Q1. Please provide page range in Refs. [22] and [33]. Q2. Please provide name and location of the publisher in Ref. [29]. Q3. Please provide year information in Refs. [1], [2], [3], [27], [28], [30], [31], and [37].