Dynamic Scalable Stochastic Petri Net : A Novel Model for Designing and Analysis of Resource Scheduling in Cloud Computing

Performance evaluation of cloud computing systems studies the relationships among system configuration, system load, and performance indicators. However, such evaluation is not feasible by dint of measurement methods or simulation methods, due to the properties of cloud computing, such as large scale, diversity, and dynamics. To overcome those challenges, we present a novel Dynamic Scalable Stochastic Petri Net (DSSPN) tomodel and analyze the performance of cloud computing systems. DSSPN can not only clearly depict system dynamic behaviors in an intuitive and efficient way but also easily discover performance deficiencies and bottlenecks of systems. In this study, we further elaborate some properties of DSSPN. In addition, we improve fair scheduling taking into consideration job diversity and resource heterogeneity. To validate the improved algorithm and the applicability of DSSPN, we conduct extensive experiments through Stochastic Petri Net Package (SPNP). The performance results show that the improved algorithm is better than fair scheduling in some key performance indicators, such as average throughput, response time, and average completion time.


Introduction
Cloud computing provides shared configurable resources to users as services with pay-as-you-go scheme [1].These services that consisted of set of components may be offered by different providers [2].To meet the needs of customers, cloud service providers have to ensure that their profit and return on investment are not rapidly decreased due to increased costs, while maintaining a desirable level of the quality of service (QoS) of consumers, such as execution time, delay time, and budget restrictions [2][3][4].To address this problem, most researches of cloud computing have focused on performance improvement and satisfaction of the QoS requirements and developed some efficient solutions.But for now, little work has been done about finding a convenient method of modeling, analyzing, and evaluating the performance of scheduling algorithms or systems in cloud environment without spending too much time on comparison and analysis [5,6].
Performance evaluation is important to cloud computing development.It is primarily aimed at selecting schemes that meet the requirements of consumers, finding out performance defects, predicting performance of the designed systems in future, and discovering better ways to achieve optimal resource allocation.In other words, performance evaluation is important in selecting, improving, and designing systems or scheduling algorithms in cloud computing environment [7].The methods of performance evaluation are approximately divided into three types: measurement method, simulation method, and model method.However, measurement and simulation methods are only applicable to existing and running systems and might be time consuming.In addition, the two methods are incapable of finding out performance bottlenecks and analyzing large-scale and complicated cloud 2 Scientific Programming computing systems.In this study, we only focus on the model method.
Model method is a kind of analysis method of performance evaluation by studying and describing the relationships among performance, system, and load based on mathematical theories.To facilitate mathematical descriptions and calculation, it usually requires simplification of the system model and making some rational assumptions about the status of the system.Compared to the other two methods, model method is based on a mature theoretical foundation and can clearly describe the relationship among all factors with a lower cost.
Stochastic Petri Net (SPN) is a powerful tool of model method and can be applied to graphic modeling and mathematical analysis of many systems and areas, such as computer science, communication network, and multiprocessor system [8][9][10][11][12][13].It can not only easily describe the properties of systems that have concurrency and synchronization characteristics but also clearly depict dynamic behaviors of systems in an intuitive and efficient way.In this way, it is easy to discover performance deficiencies and bottlenecks by using SPN in analysis.
However, SPN is still not entirely suitable for modeling and performance evaluation of cloud computing systems: (i) cloud computing offers scalable infrastructures to consumers on demand by utilizing the virtualization technology.SPN is not capable of adjusting models dynamically when the infrastructure changes [13].(ii) Different workloads submitted by users, which are simultaneously running on cloud clusters, might have different QoS requirements, such as response time, execution time, and data traffic [14].However, SPN is incapable of representing the diversity of cloud computing.(iii) The configurable shared resources in cloud computing are usually heterogeneous and geographically distributed, so using SPN to build up models will increase the computational complexity and result in state explosion.Because of the problems mentioned above, SPN does not adequately model and analyze the performance of cloud computing in many situations.
To overcome those challenges, we propose a novel extended form of SPN, which is called Dynamic Scalable Stochastic Petri Net (DSSPN), to conveniently model and analyze the performance of cloud computing systems.In order to support dynamic changes in cloud computing, three kinds of functions are introduced to enhance the dynamics of arcs, transitions, and places in DSSPN.In addition, many cloud service patterns under the same state can be compressed into a simple one by using DSSPN.Therefore, cloud computing systems can be easily modeled and analyzed by using DSSPN without changing the original graph structure.Consumers can easily evaluate performances only by setting the three functions of the DSSPN model without spending too much time on programming.According to the feature of SPN, system decomposition and model compression can be applied to reduce the complexity of the state space in DSSPN models.
The main contributions of this paper include (1) proposing Dynamic Scalable Stochastic Petri Net (DSSPN) and then further demonstrating firing rules and some properties of DSSPN; (2) presenting classified fair scheduling (CFS) taking into consideration job diversity and resource heterogeneity, which can improve throughput and response time; (3) validating the proposed approach and algorithm, where we conduct and evaluate DSSPN models of fair scheduling and CFS algorithms by using Stochastic Petri Net Package (SPNP) [15,16] analysis and simulation.
The remainder of the paper is organized as follows.Section 2 describes the related works of this study.Section 3 specifies the novel analytical model called DSSPN and elaborates its dynamics as well as some other properties.In Section 4, we construct a DSSPN model of resource scheduling of fair scheduler and propose the classified fair scheduling (CFS) algorithm taking into consideration the workload and resources diversity.In addition, in order to alleviate the problem of state explosion, we adopt the multiuser multiserver model [17] and analyze some parameters by using equivalent Markov model to refine our original models in Section 4. Section 5 demonstrates the experimental parameters setup and evaluates the system performance of the two scheduling algorithms by using SPNP.Finally, conclusions and future works are given in Section 6.

Related Works
Performance evaluation mainly focuses on relationships among system configuration, system load, and performance indicators and has drawn much research attention recently.Due to the complexity of the problem, most studies adopt measurement and simulation methods to quantitatively analyze system performance [18].
By using some measuring devices or measuring programs, measurement and simulation methods can directly obtain the performance indicators of systems or closely related quantities and then work out performance indexes by the corresponding calculation.Ostermann et al. analyze the performance of the Amazon EC2 platform based on measurement at the background of scientific computing [19].In addition, performance comparisons were made among EC2 and other platforms by using long-term traces of experimental data in some indicators, such as resource acquisition, release overheads, and system workload.Calheiros et al. propose extensible simulation toolkit CloudSim, which can model, simulate, and evaluate the performance of both cloud computing systems and application provisioning environments [20].CloudSim supports single and internetworked cloud scenarios and is used by several organizations to investigate cloud resource allocation and energy efficiency management of data center resources.Bautista et al. present a performance measurement framework (PMF) for cloud computing systems with integration software quality concepts from ISO 25010 [21].The PMF defines the requirements, data types, and evaluation criteria to measure "cluster behavior" performance.Mei et al. study performance measurement of network I/O applications in virtualized cloud [22].This measurement is based on performance impact of coexisting applications in a virtualized cloud, such as throughput and resource sharing effectiveness.In addition, the measurement can quantify the performance gains and losses and reveal the importance of optimizing for application deployment.
Measurement and simulation methods are the most direct and basic ones on performance evaluation, which the model method partly depends on.However, the two methods are only applicable to existing and running systems, and there are a lot of insufficiencies and abuses in evaluating the performance of cloud systems which are under dynamic environments and involve lots of parameters, such as time consuming, low degree of simulation, and quantitative difficulty.In addition, measurement and simulation methods are also incapable of finding out performance bottlenecks.Therefore, how to provide powerful mathematic tool, intuitional description method of models, effective analysis method, and available analysis software is the urgent problem for performance evaluation of cloud systems, which is just the core of analysis technology based on SPN.However, there have been few studies on the application of SPN in cloud computing.
Cao et al. construct stochastic evaluation model based on Queuing Petri Net for "Chinese Cloud" of State Key Laboratory of High-End Server & Storage Technology [23].They still present three kinds of cloud system architectures, distributed architecture, centralized architecture, and hybrid architecture, and then model the three architectures based on Queuing Petri Net.These models describe the relationships among network, CPU, I/O, and request queue.Finally, system throughputs of the three architectures are compared in different task types and workloads with QPME tool [24].
Targeting the dynamic feature of cloud computing, Fan et al. propose a systematic method to describe the reliability, running time, and failure processing of resource scheduling [25].In this study, resources scheduling process is abstracted as metaobject by using a reflection mechanism, and Petri Net is introduced to model its components, such as base layer, metalayer, and metaobject protocol.In addition, they present an adaptive resource scheduling strategy described by Computation Tree Logic (CTL) [26], which can realize dynamic reoptimization and distribution of system resources at runtime.Finally, Petri Net and its state space are used to verify the correctness and effectiveness of the proposed algorithm.
In order to evaluate the performance of the Hadoop system, Ruiz et al. introduce Prioritised-Timed Coloured Petri Net (PTCPN) [27] to formally construct its stochastic model of MapReduce paradigm [28].Tradeoffs are made between processing time and resource cost according to some performance evaluation parameters.In addition, state space and CPNTools [29] auxiliary software will execute the quantitative analysis of the system performance and the accuracy verification of the models.
It is concluded that the above-mentioned methods of performance evaluation of cloud computing can well describe and model the various properties of cloud computing, but there are difficulties in comparative analysis.To overcome these challenges, we present a novel Dynamic Scalable Stochastic Petri Net (DSSPN) to better depict the important properties of cloud systems.Compared to other SPNs, DSSPN has the following advantages: (1) intuitive graphical representation and model easy to understand; (2) no requirements for strong mathematical background; (3) capability of flexibly depicting characteristics of cloud systems, such as the relationship between network topology and other components; and (4) automatically deriving the steady-state probability of state transitions by using auxiliary software, such as SPNP and SHLPNA.

Dynamic Scalable Stochastic Petri Net
Cloud computing is a service-oriented computing model, with the characteristics of large scale, complexity, resource heterogeneity, requirement of QoS diversity, and scalability.Those characteristics make the resource scheduling of cloud computing too complicated to be modeled and analyzed by the traditional Stochastic Petri Net.To overcome the problem, a novel Dynamic Scalable Stochastic Petri Net (DSSPN) is proposed in this study.DSSPN is generated from SPN [9,30] and Stochastic Reward Net (SRN) [31].In later sections, we will further introduce the feasibility and applicability in both modeling and performance evaluation of cloud computing systems.To easily understand the definition of DSSPN, we firstly present some notations.Let us suppose that  is a set and  is a number.|| denotes the number of elements in .Ŝ represents the power set of .[] indicates the maximal integer that is not larger than .N stands for the set of natural numbers, that is, N = {0, 1, 2, . ..}, while N + means the set of positive integers, that is, N + = {1, 2, . ..}.Let  :  → N denote a marking of DSSPN.() represents the set of reachable marking of the marking .For all  ∈  ∪ , •  = { | (, ) ∈  ∪ } indicates the preset of , while  • = { | (, ) ∈  ∪ } means the postset of .Φ is an empty set, and  represents an empty element.
As described above, DSSPN is a novel extended form of SPN.The major differences lie in that the weight of an arc (or the transition enabling rate) not only is a constant but also is a function depending on the marking of a subset of .The weights of arcs and the transition enabling rates can be defined by customers.In addition, these values may actually change during the whole process.These features will increase the dynamic flexibility of SPN and allow the modeling process to automatically adjust.Definition 2. The transition firing rule of DSSPN is elaborated as follows.
(1) For all  ∈ , if ∀ ∈ , It is said that transition  with the marking  is enabled, which is denoted as [⟩.
(2) If [⟩ and () = max{() |  belongs to  and satisfies (1) }, then transition  can fire.After  fired, a new subsequent marking   is generated from , which is In the marking , there may be multiple transitions being enabled simultaneously.In this case, a transition is randomly chosen out from the set   to be fired, where   = { | () = max{(),  ∈   }}, and In order to formalize the dynamics of DSSPN, incidence matrix is introduced to depict its structure and behaviors.Definition 3. The structure of a DSSPN can be expressed by using a matrix (called the incidence matrix of DSSPN) with  rows and  columns, where  = || and  = ||: For Because (  ,   ) or (  ,   ) can be a constant or a function depending on the marking of a subset of , we firstly divide the set of transitions into two subsets:   and  V .Consider That is, if any transition in   fired, the incidence matrix will be unchanged in current marking.Otherwise, a new marking will be generated and the value(s) of some element(s) will change.Suppose  is a firing sequence of transitions. is firstly divided into two subsequences according to (6),   and  V , where   (or  V ) only includes transitions in   (or  V ), and the orders of these transitions in   and  V are the same as that in .Suppose  (an -dimensional column vector) only counts the firing number of the transitions included in   , and →  +1 ; then a fundamental equation [30] is obtained.The markings in the sequence change as follows: where 1 ≤  ≤ . *  denotes the th column vector of .
Note that if  ∈  V , the values of these elements in incidence matrix , which are related to {() |  ∈  • ∪ • }, should be updated after  fired.

Properties of DSSPN.
The major motivation to model systems or processes by DSSPN is the simplicity and dynamic expressions in representing systems with multiple users and dynamic environments.In some situations, there may be redundant transitions in DSSPN models.In order to precisely and concisely describe systems, we offer the following theorems.
For all ,  ∈ • ∪ • ,  ̸ = ; if their types and values are the same, that is, () = () and () = (), then places  and  will be merged into one place, denoted by   .Moreover, the type and the corresponding value remain the same.
(c) The enabling predicate is () = ( 2 ) ∨ (  2 ), and the random switch is () = ( 2 ) ∧ (  2 ).(d) Assume  and  will be merged; if  ∈ •  2 and  ∈ Figure 1 shows an example to merge transitions  2 and  3 with the same meaning.For places  2 ,  3 ,  4 , and  5 , assume ( 2 ) = ( 3 ), ( 2 ) = ( 3 ), ( 4 ) = ( 5 ), and ( 4 ) = ( 5 ).Note that the weights of some arcs relating to merged transitions and places will be changed, where As illustrated in Theorem 4, a DSSPN model can eliminate redundant transitions.In DSSPN, each service or activity only corresponds to one transition that models a dynamic process or a system including multiple customers on a more convenient way.[17], such that, for all ,  ∈  ∪ , the preset of  is equal to that of  while the postset of  is equal to that of  only if  equals ; that is,

Theorem 5. A DSSPN can be transformed into a simple net
Proof.First, we consider the case of two places with the same preset and postset, as shown in Figure 2. If () = () and () = (), we can easily transform it into a simple net just as illustrated in Theorem 4. Otherwise, we insert two new immediate transitions and two new places into the original model.Then the original net transforms into a simple one.Two things to note here are the settings of new arcs and places, that is, , while the settings of  3 and  4 are the same as those of  1 and  2 .
Similarly, the case of two transitions with the same preset and postset can be proven, just as shown in Figure 3.

System Model Based on DSSPN
Nowadays, numerous cloud computing platforms are commercially available, such as Eucalyptus, Hadoop, and Amazon EC2 [31][32][33].In this study, we take a typical cloud system by adopting fair scheduling algorithm as an example to construct a DSSPN model.Figure 4 illustrates the basic working process of tasks on a cloud platform in the light of the characteristics of a typical cloud system architecture.In the cloud system, jobs submitted by different customers may have different QoS requirements on computing time, memory  space, data traffic, response time, and so forth.That is, a typical cloud platform can be viewed as a multiuser multitask system involving multiple data sets with different types of processing jobs at the same time [32].In a cloud platform, tasks are the basic processing units in the executive process.Dispatchers firstly select tasks according to a certain rule from the waiting queues and then assign them to appropriate resources adopting some scheduling policies.However, the properties of cloud computing, such as large scale, dynamics, heterogeneity, and diversity, present a range of challenges for performance evaluation of cloud systems and cloud optimization problem [34].In order to verify the applicability and feasibility of DSSPN, we will model and analyze the performance of a typical cloud system based on DSSPN in this section.

Modeling Abstract. Without loss of generality, let us make the following assumptions for a typical cloud system:
(1) There are  clients, denoted by   .Client  submits jobs into a waiting queue (i.e., pool ) with a capacity of   .(2) The minimum share of pool  is denoted by ms  .
(3) In fair scheduling, the set of priorities of each pool is {VERY HIGH, HIGH, NORMAL, LOW, VERY LOW}.In order to facilitate the analysis, the set of priorities are set to {5, 4, 3, 2, 1}.(4) The arrival process of tasks, submitted by client , obeys the Poisson distribution with rate of   .When the number of tasks submitted by client  exceeds   , the job submission is rejected.(5) In each waiting queue, the scheduling discipline is First Come First Served (FCFS).( 6) There are  servers (denoted by   ), each of which has   virtual machines (VMs) shared by  clients.(7) The service rate of each VM on   is   with exponent distribution.In addition, the service rates are generally independent of each other.Note that the sum of ms  is equal to or smaller than the total number of resources; that is, ∑  =1 ≤ ∑  =1   .

DSSPN Model of Fair Scheduling.
Based on DSSPN, we model a typical cloud system adopting fair scheduling as a multiserver multiqueue system with  clients and  servers.
The DSSPN model and involved notations are shown in Figure 5 and Notations.In order to simplify the description of the DSSPN model, we would not show the shared structures of servers.
All the places and transitions included in Figure 5 are described as follows (1 ≤  ≤ , 1 ≤  ≤ ): (1)   : a timed transition denotes client  submitting tasks with the firing rate of   .The enabling predicate   of   is That is, client  can submit tasks when the number of tasks is smaller than its capacity.
(3)   : a place stands for the status of server ; for simplicity, it is not shown in Figure 5. (  ) is the number of idle VMs of server .(  ) =   , which means the total number of VMs on server .
(4)   : an immediate transition indicates the execution of some scheduling or decision.The scheduling or decision is expressed by the enabling predicate   and random switch   associated with   : In this scheme, the highest priority is firstly given to the unallocated pools whose demand is smaller than its     minimum share.Secondly, a higher priority is assigned to the unallocated pools whose demands are equal to or greater than its minimum share.Then, a normal priority is given to allocated pools included in DLMS().Finally, if there are any unallocated VMs, these idle resources will be assigned to the pools included in MMS().
(5)   : a place indicates the queue receiving tasks with the capacity of   ; that is, (  ) =   .
(6)   : a timed transition stands for a VM on server  with the firing rate of   .The server  is shared by VM   , where 1 ≤  ≤  and 1 ≤  ≤ .

DSSPN Model of Classified Fair Scheduling.
Although fair scheduling can share a cluster among different users as fair as possible, it does not make good use of resources without considering various workload types or resource diversity.Various types of workload with different requirements of resources consequently launch different kinds of tasks, usually including CPU intensive tasks and I/O intensive tasks.Hence, it is beneficial for improving hardware utilization to distinguish types of tasks and resources.For example, the processing time of a CPU intensive task in resources with stronger computing power would be shorter than that in other resources.Let   denote the demand with type of , and   represent the total number of VMs with type of .Because of limited space, we only illustrate the improved part in classified fair scheduling (CFS) algorithm, shown in Algorithm 1.The remaining part (1) Initialize the classification of all available resources; (2) Initialize the classification of tasks when they are submitted to pools; (3) for each pool i whose demand ≤ its minimum share do (3) for each type k do (4) if   ≤   then (5) a l l o c a t et h e  resources with type of ; (6)   − =   ; ( 6) else (7) a l l o c a t et h e  resources with the type of ; (8)   − =   ; (9) a l l o c a t e  resources with other types, while satisfying   ≥   ,  ∈ {1, 2, . . ., }; (10) end if (11) end for (12) end for (13) for (each pool i whose demand > its minimum share) ∧ (remaining idle unallocated VMs) do (14) add the similar process as described above in light of the assigning decision of each pool; (15) end for Algorithm 1: The improved part of fair scheduling in CFS.
of CFS is similar to that of fair scheduling presented by Zaharia et al. [35].
The descriptions of places and transitions in Figure 6 are similar to that in Figure 5.We will not reiterate them here.In order to facilitate understanding, we only emphasize the meaning of the subscripts for places and transitions.The subscript  denotes client , the subscript  represents tasks with type , and the subscript  describes server .There are some differences on the values of some notations between Figures 5 and 6.The enabling rate of   is   , and (  ) =   , where ∑  =1 ∑  =1   =   .The enabling rate of   is   , where ∑  =1 ∑  =1   =   .In addition, the servers are classified; that is, (  ) ∈ {1, 2, . . ., }.The differences on the values between Figures 5 and 6 are described as follows: Let   denote the service rate of   provided for the tasks in queue   : Note that pl > pl  .The scheme would ensure tasks whose types are the same as that of servers served at a higher priority.
The major difference between fair scheduling (FS) and CFS is that tasks and resources diversity are taken into account.Without loss of generality, assume tasks and resources can be divided into  categories.The refined DSSPN model of CFS is shown in Figure 6.Note that Algorithm 1 only describes the improved part of FS [35], that is, the decision procedure to allocate resources with various types to different kinds of tasks.

Analysis and Solution of DSSPN Models.
Although the problem of state explosion is improved to some extent in DSSPN compared to other forms of Petri Nets, it is still difficult to analyze the performance of large-scale cloud systems.Model refinement techniques elaborated by Lin [17] can develop compact models and expose the independence as well as the interdependent relations between submodels of an original model.Model refinement can lay a foundation for the decomposition and analysis of models.Consequently, the refinement of models has become a necessary step of the model design.The refinement methods have been applied to the performance evaluation of high speed network and shared resources systems [17,36].

Equivalent Refinement Model and Markov Model.
In this section, we will make further use of enabling predicates and random switches of transitions to refine the model proposed above.Figure 7 shows the equivalent model for models in Figures 5 and 6, while Figure 8 describes the equivalent Markov model of Figure 7.
Comparing Figure 7 with Figures 5 and 6, it can be found that the refined model is easier to understand and significantly reduces the state space by deleting any unnecessary vanishing states.In addition, refined model greatly decreases the complexity in performance evaluation because of structural similarities of submodels.
In Figure 7, immediate transitions and place   (or   ) and related arcs are removed from Figure 5 (or Figure 6), where 1 ≤  ≤  and 1 ≤  ≤ .The enabling predicates     and random switches associated with   and   (or   and   ) have changed, while others are remaining the same.The random switch of transition   is defined as follows: The enabling switch of transition   is 4.4.2.Parameters Analysis.In order to obtain the steady-state probabilities of all states, a state transition matrix can be constructed based on the state transition rate and Markov chain illustrated in Figure 8.Then, the performance parameters of the modeled cloud system can be discussed.Let [] denote the steady-state probability of .
The throughput of transition  is denoted as   : where  is a set of all markings under which transition  is enabled with the enabling rate of   in marking .
The average number of tokens in place  is denoted as   : The throughput is a crucial indicator of the system performance.Let   (or   ) indicate the throughput of subsystem   (or   ).According to the illustration in [16], the throughput of the model can be calculated as follows: Another important indicator is response time.  (or   ),   , and  denote the response time of subsystem   (or   ), client , and the system, respectively: Enabling condition: g ij /g ikj Enabling condition: M(q ij )/M(q ikj ) x ij ×  ij /y ikj ×  ikj  The average rejection rate of tasks in the cloud system with FS at time  is expressed by AER(): The average rejection rate of tasks in the cloud system with CFS at time  is expressed by AER  (): The average idle rate of servers in the cloud system with FS at time  is expressed by AUR(): where (enabled(  ())) means the probability that transition   () can fire at time .
The average idle rate of servers in the cloud system with CFS at time  is expressed by AUR  (): where (enabled(  ())) means the probability that transition   () can fire at time .
In a multiuser multiserver cloud system, the performance parameters include the state changes of waiting queues and the service rates of shared servers.The improvement of throughput and the decrease of response time can be realized by furthest parallelizing the operations of  servers.In other words, load balance should be maintained.

Case Study and Evaluation
In this section, we provide a case to study the performance of the DSSPN model based on steady-state probabilities.To verify the applicability and feasibility of DSSPN, we only study some performance indicators of FS and CFS by means of the above method.In addition, Stochastic Petri Net Package (SPNP) is applied to automatically derive the analytic solution of performance for the DSSPN model.This is beneficial in modeling and evaluating the performance of cloud systems, because the number of states might reach thousands even only including few machines, shown in Table 1.Table 2 describes the parameter settings in the simulation.
The simulation was conducted to the cloud system consisting of 3 servers, 2 customers, and 2 categories.That is, there are 4 waiting queues in FS, while 8 waiting queues are existing in CFS.Assume (1) = 1 and (2) = 2.The task submitted by each client can be classified into 2 groups.In the simulation scenario, there are 4 VMs that can be running on server 1 simultaneously, while 5 VMs are running on server 2.
As shown in Figure 9, when the configuration parameters are identical, the values of system average throughput in steady state of CFS are significantly greater than that of fair scheduling.Figure 10 describes the average delay, which is depicted by average response time in DSSPN models, in steady state of CFS and FS.Apparently, the average delay of CFS is prominently smaller than that of fair scheduling.That is, CFS is a powerful way to decrease waiting time for users.As can be seen from Figure 9, the difference of average throughput between CFS and FS can reach 14.8 when  1 = 6/sec, while the maximal difference of average delay between CFS and FS is 5.75 sec when  1 = 6/sec.
Figure 11 illustrates that average completion time of CFS is significantly better than that of FS.The simulation results present that the novel scheme (CFS) can efficiently increase the average system throughput and thus can improve utilization of resources.This means that it can realize economic benefits in the commercial cloud services.
Moreover, Figures 9, 10, and 11 also show that the performance of CFS is generally better than that of fair scheduling  across all circumstances, especially at heavy load.However, queues cannot be simulated efficiently, because these schemes are only based on the current state of queues but ignore the dynamics of task in the queues.The simulation results are different by setting different input rates due to incapability of predicting the future state of the waiting queues.Figure 12 shows how the average rejection rate of the cloud system changes as service time goes on.When the task request in one waiting pool is up to 30, the system will reject new requests submitted by the corresponding user.When 1 ≤  ≤ 10, the average rejection rate of FS is higher than that of CFS.The differences between FS and CFS in the average rejection rate are up to 40.08% at service time of 5 seconds.In addition, Figure 12 also illustrates that, along with the operation of the cloud system, the average reject rate increases with the accumulation of backlogs in waiting queues.
Figure 13 illustrates how the scheduling strategies affect the average resource utilization of the system.When 0 ≤  ≤ 10, the average idle rate of servers in FS is lower than that in CFS.The maximal differences between FS and CFS in the average idle rate of servers at different service times are 4%.It means that there is potential to achieve higher utilization rate with CFS algorithm by increasing the system throughput.

Conclusion
In this paper, we propose the definition of DSSPN that can easily describe the multiple clients systems based on cloud services, such as a typical cloud platform.The major motivation to model systems or processes by DSSPN is its simplicity and dynamic expressions to represent systems with multiple users and dynamic environments.Moreover, we further elaborate dynamic property of DSSPN and analyze some properties of DSSPN.In the following section, for some shortcomings of fair scheduling, the classified fair scheduling (CFS) algorithm is proposed taking into consideration jobs and resources diversity.
In the real world, a typical cloud system is shared by multiple applications including production applications, batch

Figure 2 :
Figure 2: Equivalent transformation of two places with the same preset and postset.

Figure 3 :
Figure 3: Equivalent transformation of two transitions with the same preset and postset.

Figure 4 :
Figure 4: Basic working process of tasks on a cloud platform.

Figure 5 :
Figure 5: The refined DSSPN model of a typical cloud system adopting fair scheduling.

Figure 6 :
Figure 6: The refined DSSPN model of a typical cloud system adopting CFS algorithm.
Figure 7: The refined DSSPN model of Figures 5 and 6.

Figure 8 :
Figure 8: The equivalent Markov model of Figure 7.
Assume transitions  2 and   2 have the same meaning.The preset and postset of  2 are •  2 and  • 2 , respectively.Meanwhile the preset and postset of   2 are •   2 and  • 2 .Their enabling predicates and random switches are ( 2 ), (  2 ), ( 2 ), and (  2 ), respectively.Let us suppose  1 is a forerunner transition of  2 and   1 is a forerunner transition of   2 .The two transitions can be merged as follows: (a) Transitions  2 and   2 are merged into one transition .
Theorem 4.If there are some transitions with the same meaning in a DSSPN model, these transitions can be merged into one so that each transition is unique in a DSSPN model; that is, transition redundancy can be eliminated.Proof.
•   2 or  ∈  • 2 and  ∈  • 2 , the weights of arcs relating to merged transition  and place   are set as follows:

Table 1 :
Number of states and fired transitions.

Table 2 :
Parameter settings in simulation.