Beruflich Dokumente
Kultur Dokumente
Information Security Center, Beijing University of Posts and Telecommunications, Beijing 100876,China, National Computer network Emergency Response technical Team/Coordination Center, Beijing 100029, China jadove@163.com, lxr@cert.org.cn,yxyang@bupt.edu.cn
Abstract: Scheduling algorithms aim to minimize the completion time and maximize the throughput of multiple tasks. However, traditional scheduling schemes cannot satisfy the requirements of internet-based virtual computing environment which contains massive and heterogeneous computing resources. Furthermore, continuously emerging Internet applications are based on virtual computing, even worsening the situation. In this paper, a scheduling optimization algorithm is proposed to achieve application-oriented resource scheduling. Computing resources are classified by their static properties in advance and ranked according to their performance grade, then tasks are marked according to their requirements, and finally a resource sliding window model is employed to perform resource scheduling according to the properties and requirements of tasks, achieving the goal of proper resources serving proper tasks. Besides, the proposed algorithm suppresses traditional scheduling algorithms in load balancing which is sacrificed by many scheduling algorithms for minimizing completion time. Experimental results demonstrate that the proposed scheduling scheme effectively improve resource utilization and success rate of task execution. Keywords: Internet-based Virtual Computing Environment; Scheduling algorithm; Resource Sliding Window
1 Introduction
Built on the open Internet infrastructure, internetbased Virtual Computing Environment (iVCE) provides friendly, secure, transparent and integrated service environment for end users and applications through proper management of distributed resources[1]. iVCE contains massive and heterogeneous autonomic resources, or autonomic element (AE), which are in general added or deleted dynamically, making traditional scheduling algorithms difficult to meet the performance demands[2-6]. The terms autonomic element, resource and node are used interchangeably in this paper. Recent research on scheduling schemes can be roughly classified into two categories: application level and job level scheduling respectively. Application level scheduling is constrained to parameter sweeping and loosely coupled iterative due to the high-latency and low-bandwidth of Internet[7,8]. Originating from the job scheduling in high performance clusters, job level
978-0-7695-4944-6/12 $26.00 2012 IEEE DOI 10.1109/SOSE.2013.49 347
scheduling focuses on the performance optimization of independent job set. However, the task scheduling for Internet is quite different from that for high performance clusters. Clusters usually consist of a set of homogeneous computing nodes connected with fast networks, and the scheduling of clusters targets to improve the system throughput and resource utilization. Yet in iVCE the computing resources from different management domain are heterogeneous and connected by the Internet, thus the number of resources may scale up or down dynamically. Due to the rapid development of Internet, more and more applications have mushroomed base on the Internet, bringing in different requirements on resources. Traditional scheduling algorithms, focusing on minimizing completion time and maximizing throughputs, can no longer meet the demands of multiple applications in iVCE. Therefore, the specific requirements of applications and characteristics of resources must be taken into consideration in order to raise the accuracy of scheduling and improve the executing efficiency of tasks. In this paper we study the job level scheduling under iVCE, and then present an application-oriented Min-Min (AOMM) scheduling optimization algorithm inspired by the classical MinMin algorithm. Employing the resource sliding window model, AOMM first classifies resources according to their static properties in advance, rank them dynamically based on their performance, and then mark the tasks according to their requirements. Finally the resources are scheduled in accordance with the demands of tasks on different resources and thus proper resources serving proper tasks is achieved. Besides, AOMM suppresses traditional scheduling algorithms in load balancing which is sacrificed by many scheduling algorithms for minimum completion time. Experimental results show that the AOMM can effectively improve the quality of service and increase the efficiency of resources. The remainder of this paper is organized as follows. In Section 2, we discuss the resource sliding window model. In Section 3, the AOMM is introduced. Section 4 presents experimental results and analysis. Section 5 concludes the paper.
Resources in iVCE need to be properly classified according to their characteristics of property and performance in order to take full advantage of the resources. The properties of resources in our iVCE platform can be divided into two categories, namely, static information (SI) and dynamic information (DI). The SI of a certain resource includes the type and number of CPU, memory size, disk capacity, type of operating system, geographical location (in which city for example), the type of ISP and network access (ADSL and fixed line are supported now), the bandwidth of network access, among others. The DI consists of CPU, memory, and disk utilization, the actual bandwidth of network, node stability (the success rate of a node executing tasks), and so on. Therefore, SI refers to the inherent properties of a node while DI reflects the runtime status of that node. Let vector SI denote the parameters of static information, as shown in table 1. Resource nodes are first classified by the components of SI and only those nodes of which the SI satisfies the demand of a task can enter the resource window. For example, a task may impose constraints on the location and ISP of a node, say, Beijing Mobile, then a node can enter the resource window only if both lc = Beijing and it = Mobile are satisfied. In such a way the accuracy of task scheduling can be improved effectively. Similarly, the parameters of dynamic information form another vector denoted by DI, shown in table 2. The dynamic information is continuously changing, representing the current status of a node. Employing the trust model discussed in our previous work[9], each node is assigned a trust value ( tv ) as the stability of the node according to history information. Bandwidth ( bw ) values are normalized to 100Mbps. Therefore, all the parameters of DI fall within the interval [0, 1]. DI indicates the real time performance of a node as pointed out earlier. In order to evaluate the real time performance of a node, denoted by pv, we assign weights to each parameter of DI, thus pv can be calculated by equation (1): pvi= (1-cui)+ (1-mui)+ (1-dui)+ bwi+ tvi , where ++++=1 (1) equation
of different tasks. For example, if stability is crucial for a task, we can increase the weight of tv , i.e. in equation (1). The larger the pv value, the higher the nodes performance is. The performance grade of a node, denoted by pb, can be calculated based on the value of pv. Equation (2) shows a piecewise function for pb:
1, 2, pb = 3, 4, pv [0.8,1]; pv [0.5,0.8); pv [0.3,0.5); pv [0,0.3).
equation
(2)
In equation (1) pvi denotes the real time performance of the ith node and obviously pv[0,1] holds. The weights of each parameter can be tailored to meet the demands CPU Type ct CPU Number cn Memory Size ms Disk Capacity dc
SI
OS. Type ot
Location City lc
ISP Type it
Acces Type at
Access Bandwidth ab
DI
CPU Utilization cu
Memory Utilization mu
Disk Utilization du
BandWidth bw
Stability(Trust Value) tv
348
idle according to the traditional Min-Min algorithm, leading to load imbalance. The Min-Min algorithm always prefers smaller task and thus cannot guarantee load balance, which is the main drawback of Min-Min. Some approaches are proposed to improve the algorithm. For the sake of load balance, the authors of the paper [11] divide all the resources into special ones and ordinary ones; and the tasks are also marked. They assign the tasks with high requirements to special resources. Nevertheless, the classification of resources is oversimplified and no criterion is presented. In the paper [12], resources are classified according to their static information and the authors also give their criterion for classification. But no dynamic updates of the information are supported.
3.2 AOMM
In order to improve the overall performance, AOMM employs the resource sliding window model to optimize the traditional Min-Min algorithm, to take full advantage of resources with the consideration of their runtime information. First, for each task ti, calculate b1 using the static information SI of each resource. Then for the resources with b1 = 1 satisfied, compute b2 according to their pb grade values. Only those resources satisfying w=b1b2 are allowed to enter the resource sliding window. Let a variable c be the product of minimum completion time and grade pb for a task on a certain resource, as shown in equation (5): c=MinTimepb equation (5). The tasks-resources combination with minimum c is finally scheduled and in this way both minimum execution time and load balance are guaranteed. Using the same notations as last section, T={ t1, t2,tm}, AE={ae1, ae2,aen}, and ET(i,j), for task set, AE set and expected time matrix, respectively, we now present the optimized scheduling algorithm AOMM, which iterate as follows until the set is empty: 1for each ti in Tcompute b1i to obtain an array b1i (j) with m boolean values; 2calculate another boolean array b2i (j); 3a third boolean array wi(j) is acquired using wi= b1i b2i; 4When wi=1calculate MinTime (ti executed on aek, aep , aeq), acquiring an array MinTime (j); 5Using cij(j)=MinTimepbiwe have an array ci(j); 6sort ci(j), and if cij is minimal, schedule ti to run on aej; 7delete ti; 8Next ti+1; update the matrix ET(i,j). Applying the optimized scheduling algorithm AOMM to the tasks in Table 3 yields the information about tasks and resources as shown in Table 4.
tasks t1 t2 t3 t4 t5
Moreover, ET(i,j) is a consistent matrix , meaning that if aej consumes less time than aek for task ti, then aej carries out all the tasks faster than aek. As a result, some resources are always scheduled while some constantly
349
Table 4. The Expected Time for Each Task on AEs and Grades of AEs
tasks
Grade of ae1 3 3 3 3 3
w1 0 1 0 1 1
Grade of ae2 4 4 4 4 4
w2 0 0 0 0 1
Grade of ae3 1 1 1 1 1
w3 0 1 1 1 0
Grade of ae4 2 2 2 2 2
w4 1 0 1 1 1
t1 t2 t3 t4 t5
Task t1 requires that the performance grade of resources be 1 and 2 while t2, t3and t4 require resources of higher than 3. Task t5 imposes no constraints on grade and can be executed on any resource. Use AOMM to calculate the values of ci(j) as follows: c1=5.5(ae4)2=11,c2=10(ae3)1=10, c3=7(ae4)2=14, c4=3(ae2)4=12, and c5=2(ae2)4=8. Therefore, the final solution of scheduling will be t5(ae2), t2(ae3), t1(ae4), t4(ae2), and t3(ae4), yielding a total execution time of 2+3+10+5.5+7=27.5ms. Although it takes 3ms more than the traditional Min-Min algorithm, we get better service because the specific requirements of applications are taken into consideration. Besides, the load is more balanced and thus higher utilization of resources is consequently achieved.
accordance with their historical behaviors. Under the proposed framework, an iVCE user submits and runs a task as follows: (1) commit the task to the task queue, (2) the task scheduler picks up each task in the queue and interacts with the task scheduling strategy module, (3) the trusted service manager calculates trust information by analyzing the transaction record and transfers it to the resource sliding window model, (4) The task scheduling strategy module obtains a list of available resources via proper interaction with the resource sliding window model, (5) The task scheduling strategy module passes the information of resources that are most suitable for the task to the task scheduler which sends the task to the chosen resources.
In Fig 1, the framework consists of three layers from the bottom up, namely the virtual resource layer, the task and resource management layers, and application layer. The task scheduling strategy module of task layer uses the proposed AOMM scheduling algorithm. For resource management layer, a resource recommendation list is obtained according to the resource sliding window model and the trusted service manager is referred to our earlier work (Credit Evaluating Model based on Bayesian statistics model) which takes responsibility to carry out the stability of AE in
350
containing 10 nodes and each group also corresponds to one combination of the location and ISP type constraints. As with the previous two scenarios, the CPU parameters and trust value tv are generated randomly.
Fig 3. Comparison of system resource utilization Fig 2. Comparison of success rate of executing tasks
It is observed that the traditional Min-Min algorithm exhibits a severe fluctuation in success rate which reaches up to 70% at most in only a few cases. The success rate converges to 50% as the number of applications increases. In contrast, the improved AOMM exceeds the Min-Min with a much higher success rate in all cases and wins more advantages as the number of required location and ISP type grows.
351
improve the accuracy of resource properties, providing better support for more accurate scheduling of tasks.
Acknowledgements
This project is supported by the Major Project of Chinese National Programs for Fundamental Research and Development (973 Program) (No. 2011CB302605).
References
Lu Xi-cheng, Wang Huai-min, Wang Ji Internet-based virtual computing environment ivce:Concepts and architecture, Science in China Ser.E Information Sciences, vol. 36, no. 10, pp.1081-1099, 2006 [2] Ahson S, Ilyas M. Cloud computing and software services[M].Florida, USA; CRC Press,2009 [3] Tang Xiaochun Liu Jian, Better allocation of meta-zone in cloud computing environment [J]. Computer Engineering and Applications,2010,46(34):237-241. [4] Foster I , Zhao Yong, Raicu I, et al, Cloud computing and grid computing360 degree compared [C], Proceedings of the Grid Computing Environments Workshop. Washington, DC: IEEE Computing Society,2008:1-10 [5] Caron E, Desprez F, Loureiro D, et al. Cloud computing resource management through a grid middleware; A case study with DIET and eucalyptus [C]. Bangalore, India: IEEE International Conference on Cloud Computing, 2009 [6] Li Jianfeng, Peng Jian, Task scheduling algorithm based on improved genetic algorithm in cloud computing environment [J].Journal of Computer Applications, 2011,31(1):184-186. [7] Buyya R, Abramson D, Giddy J, Stockinger H. Economic models for resource management and scheduling in grid computing. Special Issue on Grid computing Environments, Journal of Concurrency and Computation: Practice and Experience (CCPE), 2002, 14(13-15):1507-1542. [8] Dail H, Berman F, Casanova H, A decoupled scheduling approach for grid application development environments. Journal of Parallel and Distributed Computing, 2003, 63(5):505-524 [9] Zhu Chunge, Liu Xinran, Yang Yixian, Zhang Hong, Xu Qianhua, A Redundant Scheduling Algorithm based on Trust Model for Internet-based Virtual Computing Environment[J] AISS. 2012,46(24):107-109 [10] Du Yuxia, Liu Fangai, Guo Lei. Research and improvement of Min-Min scheduling algorithm [J]. Computer Engineering and Applications, 2010,46(24):107-109 [11] Wu Gaofeng, Cai Yuming, Yang Lin, et al. Scheduling algorithm of modified Min-Min based on QoS in grid [J]. Micro Computer Information, 2009, 26(9):110-112 [12] Zuo Liyun, Zuo Lifeng, Cloud computing scheduling optimization algorithm based on reservation category [J]. Computer Engineering and Design, Apr.2012, Vol(33) No.4:1357-1361. [1]
5 Conclusions
In this paper we analyzed the characteristics of virtual computing environment with massive internet applications running on it, and proposed an applicationoriented scheduling optimization approach (AOMM) to optimize the traditional Min-Min algorithm. By introducing a new resource sliding window model, AOMM accomplishes the goal of proper resources serving proper tasks. Experimental simulations demonstrate that the scheduling algorithm proposed in this paper can effectively improve success rate of task execution at the cost of trivial completion time. Besides, AOMM obtains a better load balance, thus improving the resource utilization of the whole system. Further research will be focused on the strategy of resource classification and dynamic performance grading to
352