13
Comparison of Cloud Simulators for effective modeling of Cloud applications Shobhna Dogra Department of Computer Science, Himachal Pradesh University, Shimla, Himachal Pradesh, India [email protected] A.J Singh Department of Computer Science, Himachal Pradesh University, Shimla, Himachal Pradesh, India [email protected] ABSTRACT Cloud computing is a style of computing through which massively scalable or flexible IT-related ability can be provided in the form of services. With the help of internet technologies, infrastructure, platform, application, or storage space facilities can be made available in these services in which we can use the service according to our needs and pay for those services which we use. As cloud computing is a huge collection of resources, which involves a large amount of money and cost, so software is required where we can instead of creating the cloud we can simulate the exact atmosphere to monitor the results. There are various cloud simulation tools available over the internet. In this paper we have selected the three popular cloud simulators a) CloudSim b) CloudAnalyst c) CloudReport to present their abilities. As most of the cloud simulators have almost similar architectures and functions, the difference is based on their capability and extensibility. These cloud simulators are software-based simulation tools and are analyzed based on different parameters to find the capabilities of each cloud simulator. The experimental comparison of these tools is done to find out the best tool for cloud simulation. Keywords: Cloud Computing, Simulation tools, CloudSim, CloudAnalyst, CloudReport, Data centers, Virtual machines, Resource utilization. 1. INTRODUCTION Cloud computing is a pattern around the globe and all the individuals are moving towards it leaving customary figuring behind. This is because of the guarantee of cost decrease, more prominent adaptability, flexibility, versatility, on request get to, asset use, insignificant foundation the executives, and area freedom[1]. Cloud computing is the quickest rising innovation that offers an inventive plan of action for associations to receive IT without an advanced venture. Industries, for example, Amazon, Google, Microsoft, HP, and IBM have vigorously contributed to it. Cloud computing alludes to both the applications conveyed as administrations over the Internet and the equipment and frameworks programming in the datacentres that offer those types of assistance[2]. Simulation is a science and technique for making a model of a process or a real system and designed to test strategies and figure out the behavior of a system under certain circumstances using various strategies[3]. Performing experiments in a real environment are expensive, time costly, and not repeatable, also it is hard to analyze the performance and security issues on actual cloud environments. That's why modeling and simulation technology is becoming popular in the field cloud industry[4]. A cloud simulation platform discovers the required resources automatically and built a simulation system on-demand based on service-oriented composition and scheduling[5]. It is the process of creating a prototype of an actual real-world model over small infrastructure to monitor the results. Simulation is required as cloud computing is a huge collection of resources and it requires a large amount of money and infrastructure so, we simulate the cloud for a particular application to check its feasibility. It is a tool that will help us in giving a repeatable and controlled environment for running, testing, and discovering limitations in algorithms and services. We are going to run the application in a controlled environment, so it provides us the possibilities of evaluating the supposition which we have made regarding the applications. Mainly two types of cloud computing simulators exist, the one which are based on the software and other one are based on both software as well as hardware[6]. In this paper, a discussion on the simulation tools that are used to test the applications is done. A comparison of three popular simulation tools that are i)CloudSim ii)CloudAnalyst iii)CloudReport based on the different criteria's is done. This paper is organized as follows: Section II gives the details about related work; Section III contains the experimental results obtained by running these simulation tools and Section IV provides the conclusion. Mukt Shabd Journal Volume IX, Issue VII, JULY/2020 ISSN NO : 2347-3150 Page No : 505

Comparison of Cloud Simulators for effective modeling of

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Comparison of Cloud Simulators for effective modeling of Cloud

applications

Shobhna Dogra Department of Computer Science, Himachal Pradesh University, Shimla, Himachal Pradesh, India

[email protected]

A.J Singh Department of Computer Science, Himachal Pradesh University, Shimla, Himachal Pradesh, India

[email protected]

ABSTRACT

Cloud computing is a style of computing through which massively scalable or flexible IT-related ability can be provided in

the form of services. With the help of internet technologies, infrastructure, platform, application, or storage space facilities

can be made available in these services in which we can use the service according to our needs and pay for those services

which we use. As cloud computing is a huge collection of resources, which involves a large amount of money and cost, so

software is required where we can instead of creating the cloud we can simulate the exact atmosphere to monitor the results.

There are various cloud simulation tools available over the internet. In this paper we have selected the three popular cloud

simulators a) CloudSim b) CloudAnalyst c) CloudReport to present their abilities. As most of the cloud simulators have

almost similar architectures and functions, the difference is based on their capability and extensibility. These cloud

simulators are software-based simulation tools and are analyzed based on different parameters to find the capabilities of each

cloud simulator. The experimental comparison of these tools is done to find out the best tool for cloud simulation.

Keywords: Cloud Computing, Simulation tools, CloudSim, CloudAnalyst, CloudReport, Data centers,

Virtual machines, Resource utilization.

1. INTRODUCTION

Cloud computing is a pattern around the globe and all the individuals are moving towards it leaving customary

figuring behind. This is because of the guarantee of cost decrease, more prominent adaptability, flexibility,

versatility, on request get to, asset use, insignificant foundation the executives, and area freedom[1]. Cloud

computing is the quickest rising innovation that offers an inventive plan of action for associations to receive IT

without an advanced venture. Industries, for example, Amazon, Google, Microsoft, HP, and IBM have

vigorously contributed to it. Cloud computing alludes to both the applications conveyed as administrations over

the Internet and the equipment and frameworks programming in the datacentres that offer those types of

assistance[2]. Simulation is a science and technique for making a model of a process or a real system and

designed to test strategies and figure out the behavior of a system under certain circumstances using various

strategies[3]. Performing experiments in a real environment are expensive, time costly, and not repeatable, also

it is hard to analyze the performance and security issues on actual cloud environments. That's why modeling and

simulation technology is becoming popular in the field cloud industry[4]. A cloud simulation platform discovers

the required resources automatically and built a simulation system on-demand based on service-oriented

composition and scheduling[5]. It is the process of creating a prototype of an actual real-world model over small

infrastructure to monitor the results. Simulation is required as cloud computing is a huge collection of resources

and it requires a large amount of money and infrastructure so, we simulate the cloud for a particular application

to check its feasibility. It is a tool that will help us in giving a repeatable and controlled environment for

running, testing, and discovering limitations in algorithms and services. We are going to run the application in a

controlled environment, so it provides us the possibilities of evaluating the supposition which we have made

regarding the applications. Mainly two types of cloud computing simulators exist, the one which are based on

the software and other one are based on both software as well as hardware[6].

In this paper, a discussion on the simulation tools that are used to test the applications is done. A comparison of

three popular simulation tools that are i)CloudSim ii)CloudAnalyst iii)CloudReport based on the different

criteria's is done. This paper is organized as follows: Section II gives the details about related work; Section III

contains the experimental results obtained by running these simulation tools and Section IV provides the

conclusion.

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 505

2. RELATED WORK

A lot of research work has been done on cloud simulators which focus on finding their main features,

advantages, and disadvantages. CloudSim tool was developed in the CLOUDS Laboratory at the Computer

Science and Engineering Department of the University Of Melbourne, Australia[7]. Due to insufficient trace

logs available for analysis, workload modeling becomes difficult, so a web application model is proposed to

support analysis and simulation of resource utilization in a cloud environment which can easily be reproduced

by cloud providers to support different research domain[8]. CloudSim is a toolkit or library of java classes for

simulation. A new simulation tool FTCloudSim is proposed by extending the basic functionality of CloudSim

which models and simulates the cloud service reliability enhancement mechanisms to overcome a shortage of

tools that enable researchers to calculate their new proposed cloud service reliability enhancement[9]. A new

service broker strategy in CloudAnalyst is proposed by the author that extends the service proximity-based

routing policy that selects the data center from the data centers within the same region is done cost-

effectively[10]. Various load balancing techniques are analyzed using tool CloudAnalyst and it is analyzed that

the load balancing technique does not play any role in the processing cost[11]. An efficient cloud-based

simulation framework is proposed called WeaveSim which extends CloudSim with AOP(aspect-oriented

programming) concepts that reduce the complexity of modelling and simulating the custom and dynamic

behavior of cloud-based applications. It also reduces the complexity of implementing cross-cutting concerns on

cloud-based software systems that increases the reusability, scalability, and maintainability of the cloud-based

software systems[12].

3. CLOUD SIMULATION TOOLS

Simulation tools are used to evaluate the performance of cloud applications before deploying them in a real

environment[13]. It provides us a test environment in which applications are run to te check whether the

applications are running properly or not. The simulation tools: CloudSim, CloudAnalyst, CloudReport are open

source tools and can be downloaded from the website “The Cloud Computing and Distributed Systems

(CLOUDS) Laboratory, the University of Melbourne”[14] free of cost.

1.CloudSim: CloudSim tool was developed in the CLOUDS Laboratory at the Computer Science and

Engineering Department of the University Of Melbourne, Australia. Cloudsim is a java library, in which we can

write a java program to frame the desired structure and get the desired results for analyzing cloud applications.

We can simulate infrastructure including data centers on a large scale easily on a single physical node.

CloudSim is a simple simulator and is suitable for simulation of batch tasks, and is not able to support stream

tasks (i.e. continuous computation)[15]. CloudSim is easy to use and easily extensible simulation toolkit and

application which provides easy modeling, simulation, and experimentation on existing or developing cloud

system, infrastructures and application environments for single and internetworked clouds. The existing

distributed system simulators were not pertinent for the cloud computing environment due to evaluating the

performance of cloud provisioning policies, services, application workload, models, and resources under the

varying system, user configurations and requirements[16].

CloudSim experiment:

In this experiment, data centers and virtual machines are created which running on one host. The Number of

data centres=3, the number of VM =15. Eighty cloudlets are submitted to these virtual machines as shown in

figure 1.

Simulation is completed in 5 seconds. After the completion of the simulation, the results are represented in the

console window as shown in figure 2. This console contains cloudlet ID, data center ID, Virtual machine ID,

starting time, and finishing time of each cloudlet.

2. CloudAnalyst: CloudAnalyst is designed by Wickremasinghe et al.[7] to avail understand how a sizable

Internet application comports in the context of a cloud environment. Cloud analyst is a CloudSim based tool

which helps in modeling and analysis of large scale cloud computing environments. The cloud analyst tool was

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 506

designed to observe how large scale internet applications behave in a cloud environment[17]. Cloud analyst

enables the user to repeatedly perform simulation experiments and to perform the same with slight changes in

parameters very easily and quickly and generates efficient output as per the changes in parameters. The results

of the simulation are obtained in the form of graphical output that makes it easy to analyse the results more

easily and problems related to performance and accuracy of simulation logic can be identified quickly[18].

Figure 1: representing cloudlet and data center ID.

Figure 2: total time taken to complete the simulation

CloudAnalyst experiment::

In this analysis, the cloud environment contains three user bases that are topographically spread in three

regions i.e. regions 2,3 and 1. The number of Data centre=3 and Service broker policy used is the Optimise

Response Time(ORT)[19] policy which will search for the data center which will process requests fast.

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 507

Simulation time=15 minutes, number of users= 3, number of requests generated per user =60 per hour for each

user, number of virtual machines=5 each are shown in this figure 3.

The data center configuration provides the information about the data center, the region in which these data

center lies and detailed information about physical hardware of each data center for each data center i.e. the

number of processors=4, amount of storage=100000000mb, network bandwidth=1000000 as shown in figure 4.

Figure 3: main configuration window

Figure 4: data center configuration window.

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 508

After the simulation configuration is completed, CloudAnalyst shows the region with response time

results as shown in figure 5.

Figure 5: CloudAnalyst framework

After running simulation the results presented are in the form of charts and tables and also provide the feature

of displaying detailed results through which we can export the results in the form of a pdf file. Detail about total

virtual machine cost and total data transfer cost is also provided as shown in figure 6.

3. CloudReport: CloudReports is a graphical tool that simulates distributed cloud computing environments. It

is a derivative of CloudSim with a graphical user interface that makes up a user-friendly environment and

provides more customizability and repeatability based on different parameters. Graphical User Interface enables

users to carry out their tasks easily. CloudReports is a useful tool in the field of energy-aware cloud computing

environments. Users can easily document their results after the simulation process and it also provides the

functionality of producing and amending policies via the Application Package Interface(API).

After the completion of the simulation, CloudReport generates the results in the form of charts and tables

which contains information about the VM allocation, energy consumption, execution time,resource usage cost,

and all the user-defined characteristics[20].

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 509

Figure 6: Overall response time summary and total VM and data transfer cost.

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 510

CloudReport Experiment:

In this analysis, it is assumed that in a simulated environment as shown in figure 7 here are three data

centers with seven hosts(physical machines), processing unit=28 (4 processing unit each), processing

capacity=67,200MIPS (microinstructions per second), storage capacity= 37TB, Total amount of

RAM= 280GB

Configuration of each data center can be done according to the user requirements. each data center

chooses an allocation policy according to the user requirements. For data center 1 the Allocation

policy= Single threshold, scheduling interval=30, monitoring interval=180, number of host=3, number

of processing units=12, processing capacity=28,800MIPS, storage capacity=13TB, Total amount of

RAM=120GB as shown in figure 8.

Also, the configuration of the user base or customer is done. In this experiment, three user base or

customer are created with two virtual machines each. 150 cloudlets are sent per minute as shown in

figure 9.

Figure 7: CloudReport framework

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 511

Figure 8: data center configuration

Figure 9: customer configuration

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 512

After the end of the configuration of the provider (data center) and customer (user base) simulation is

executed and the results obtained are in the form of an HTML report. This report contains charts that

represent the resource utilized, the power consumed, and the overall resource utilized by each data

center as shown in figure 10.

Figure 10: overall resource utilization of data center

Also, the report of overall resource utilization and execution time of cloudlets for customer 1 is shown

in figure 11.

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 513

Figure 11: overall resource utilization and execution time of the selected customer

After running these simulators now we are going to compare them based on different

parameters[1][21][22]. Various parameters considered are explained as follows:

1. Underlying Platform: It refers to the existing framework as some cloud simulators are built upon

some existing simulation framework, i.e. they are extended form of an existing one.

2. IaaS: IaaS(Infrastructure as a service) offers virtual machines and other resources[23].

3. PaaS: Platform as a service provides an operating system, programming language execution

environment, database, and web server as a computing platform[23].

4. SaaS: SaaS(Software as a service) cloud providers provide the right to the clients to use the

application software and databases[23].

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 514

5. Programming Language: It refers to the language required for working with a specific simulator.

6. Cost Modelling: The user wants to work on cost modeling as the cloud is pay per use model so he

must make the right choice of the simulator.

7. Simulation Speed: It is the time taken by the simulator to complete or run the simulation.

8. Migration Policy: it refers to where and when to migrate a VM.

9. Physical Modelling: refer to the modeling of physical layer entities such as cache and allocation

policies for memory.

10. Application Model: it refers to the models that are supported by the framework for different

applications.

11. Load balancing: It refers to the mechanism that decides which node will be sent to the virtual

machine and which node will be put on hold[11].

12. Communication modeling: It refers to the communication that takes place in the simulator.

Table 1 2 3 shows the comparison based on different criteria which are shown as follow :

Table (1): A comparison based on the cloud service related environment.

Simulator

Requirements

CloudSim CloudAnalyst CloudReport

IaaS Yes Yes Yes

PaaS No No No

SaaS No No Yes

Migration policy Yes No No

Table (2): A comparison based on could components modeling requirements.

Simulator

Requirements

CloudSim CloudAnalyst CloudReport

Cost modeling Yes Yes Yes

Communication modeling Limited Limited No

Physical modeling No No Yes

Application models Computation and

data transfer

Computation and data

transfer

Computation and data

transfer

Table (3): A comparison based on simulation related requirements.

Simulator

Requirements

CloudSim CloudAnalyst CloudReport

Underlying platform SimJava CloudSim/SimJava CloudSim

Graphical interface No Yes Yes

Programming language used Java Java Java

Load balancing Yes Yes No

Power consumption Yes No Yes

Social network Yes/No Yes No

Simulation speed Mid High High

From table 1, 2, 3 it is observed that infrastructure as service is provided by each simulator and none of these

simulators provides a platform as a service and only CloudReport provides the feature of software as a service.

All the simulators are used for computation and data transfer purposes. Except for CloudSim, both the other

simulators provide GUI(graphical user interface) to the clients which makes it easy to use the simulator. The

simulation speed of all the simulators is fast and displays the results in seconds. Only CloudReport supports

physical modeling for allocating policies. CloudSim is only the simulator that supports migration policy which

helps to avoid bottlenecks, improve the availability of resources. CloudSim and CloudAnalyst provide the load

balancing which prevents any single server from getting overloaded with resources. CloudAnalyst and

CloudReport are the extensions of CloudSim that is they use CloudSim as platform and java is the programming

language that is used in all the three simulators

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 515

4. CONCLUSION

Cloud computing is one of the fastest-growing technology in IT sectors. We use various cloud simulators for

calculating the cloud computing systems and application activities and analyzing the performance of cloud

computing environments. If we want to measure Resource utilization and implementation cost then CloudReport

is the best choice. CloudAnalyst is best when we need to calculate the social network and response time. And

for analyzing complex simulations CloudSim is the best tool out of all these three tools. No simulation tool is

the overall best tool, as each simulator has its advantages and disadvantages so we have to choose the right

simulator according to the situation and the user requirements.

REFERENCES

[1] K. M. Khalil, T. T. Nazmy, and A. M. Salem, “Cloud Simulators – An Evaluation Study CLOUD

SIMULATORS – AN EVALUATION STUDY Khaled M . Khalil , M . Abdel-Aziz , Taymour T .

Nazmy , Abdel-Badeeh M . Salem,” no. April, 2017.

[2] P. Sareen, “Simulation of Cloud Computing Environment using CloudSim,” vol. 4, no. 12, pp. 44–54,

2016.

[3] S. R. Pakize and A. Gandomi, “Comparison Of CloudSim , CloudAnalyst And CloudReports Simulator

in Cloud Computing,” vol. 2, pp. 19–27, 2014.

[4] W. Zhao, Y. Peng, F. Xie, and Z. Dai, “Modeling and simulation of cloud computing: A review,” Proc.

- 2012 IEEE Asia Pacific Cloud Comput. Congr. APCloudCC 2012, pp. 20–24, 2012, doi:

10.1109/APCloudCC.2012.6486505.

[5] L. Zhang, F. Wang, and F. Li, Cloud-Based Simulation. Springer International Publishing.

[6] B. Kumawat, “Design and Implementation of File Storage and Sharing Using Various Cloud Simulators

in Cloud Environment,” vol. 1, no. 1, pp. 34–43, 2015.

[7] B. Wickremasinghe, R. N. Calheiros, and R. Buyya, “CloudAnalyst : A CloudSim-based Visual

Modeller for Analysing Cloud Computing Environments and Applications.”

[8] D. Magalhães, R. N. Calheiros, R. Buyya, and D. G. Gomes, “Workload modeling for resource usage

analysis and simulation in cloud computing,” Comput. Electr. Eng., vol. 47, pp. 69–81, 2015, doi:

10.1016/j.compeleceng.2015.08.016.

[9] A. Zhou, S. Wang, Q. Sun, H. Zou, and F. Yang, “FTCloudSim: A simulation tool for cloud service

reliability enhancement mechanisms,” Proc. Demo Poster Track ACM/IFIP/USENIX Int. Middlew.

Conf. MiddlewareDPT 2013, pp. 3–4, 2013, doi: 10.1145/2541614.2541616.

[10] D. Limbani and B. Oza, “A proposed service broker strategy in cloudanalyst for cost-effective data

center selection,” Int. J. Eng. Res. Appl. India, vol. 2, no. 1, pp. 793–797, 2012.

[11] T. Ahmed, “Analytic Study Of Load Balancing Techniques Using Tool Cloud Analyst . Yogendra

Singh,” vol. 2, no. 2, pp. 1027–1030, 2012.

[12] A. AlSobeh, S. AlShattnawi, A. Jarrah, and M. Hammad, “Weavesim: a Scalable and Reusable Cloud

Simulation Framework Leveraging Aspect-Oriented Programming,” Jordanian J. Comput. Inf. Technol.,

no. 0, p. 1, 2020, doi: 10.5455/jjcit.71-1579451674.

[13] F. Fakhfakh, H. H. Kacem, and A. H. Kacem, “Simulation Tools for Cloud Computing : A Survey and

Comparative Study,” 2017.

[14] “The CLOUDS Lab: Flagship Projects - Gridbus and Cloudbus.” [Online]. Available:

http://www.cloudbus.org/cloudsim/. [Accessed: 01-Jul-2020].

[15] M. Barika et al., “IoTSim-Stream : Modeling Stream Graph Application in Cloud Simulation,” 2019.

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 516

[16] R. Malhotra and P. Jain, “Study and Comparison of Various Cloud Simulators Available in the Cloud

Computing,” Int. J. Adv. Res. Comput. Sci. Softw. Eng., vol. 3, no. 9, pp. 347–350, 2013.

[17] S. Ramasubbareddy, T. Adityasaisrinivas, K. Govinda, S. S. Manivannan, and E. Swetha, “Analysis of

load balancing algorithms using cloud analyst,” Int. J. Recent Technol. Eng., vol. 7, no. 6, pp. 684–687,

2019.

[18] B. Wickremasinghe and others, “Cloudanalyst: A cloudsim-based tool for modelling and analysis of

large scale cloud computing environments,” MEDC Proj. Rep., vol. 22, no. 6, pp. 433–659, 2009.

[19] V. Behal and A. Kumar, “Load Balancing Algorithms in Cloud Heterogeneous Environment,” pp. 200–

205, 2014.

[20] T. Teixeira Sá, R. N. Calheiros, and D. G. Gomes, “CloudReports: An Extensible Simulation Tool for

Energy-Aware Cloud Computing Environments,” pp. 127–142, 2014, doi: 10.1007/978-3-319-10530-

7_6.

[21] R. Jain, “A Survey of Cloud Computing Simulations and Cloud Testing A Survey of Cloud Computing

Simulations and Cloud Testing Abstract : Table of Contents : A Survey of Cloud Computing

Simulations and Cloud Testing,” pp. 1–8, 2013.

[22] R. Kaur and N. S. Ghumman, “A Survey and Comparison of Various Cloud Simulators Available for

Cloud Environment,” vol. 4, no. 5, pp. 605–608, 2015, doi: 10.17148/IJARCCE.2015.45129.

[23] U. Sinha and M. Shekhar, “Comparison of Various Cloud Simulation tools available in Cloud

Computing,” vol. 4, no. 3, pp. 171–176, 2015, doi: 10.17148/IJARCCE.2015.4342.

Mukt Shabd Journal

Volume IX, Issue VII, JULY/2020

ISSN NO : 2347-3150

Page No : 517