SAAS/ Cloud Simulation

pullfarmInternet και Εφαρμογές Web

3 Νοε 2013 (πριν από 3 χρόνια και 11 μήνες)

88 εμφανίσεις

SAAS/ Cloud Simulation

1.
Introduction:

The
ad
vent of cloud computing service

has

changed the way business is

functioning over
the

years.
Many IT based companies have started using this technology in order to
save time
, money
and resources
. Clou
d computing provides services
in the form of software, platform and
I
nfrastructure which are
referred as
:




SaaS (software as a service):

The Cloud Computing System provides s
oftware as a

service

as per the demands of

the customer.

The customer can access t
his software from
anywhere in the world. Example of SaaS providers: Google,
Amazon
, Salesforce CRM
[3]
.



PaaS (platform as a service)
:

The Cloud Computing System provides platform as a
service
to develop various applications to the customer and

the complete responsibility
of maintaining the platform is taken care too
. Microsoft .Net is an example of one
platform.

The PaaS model is placed in between the Saa
S and IaaS models. Examples:
Microsoft Azure
[3]
.



Iaa
S (infrastructure as a service):

The C
loud Computing System provides infrastructure
like memory, security, CPU, server, disks

as a service to its
customers. The

customer has
to install all the other platforms that he wants upon this layer.

Examples: Amazon AWS,

Joyent, GoGrid
[3]
.



For all th
ese services you have to pay for only what you use.

These services let the IT
companies to stop focusing on the hardware and software
related

problems and focus mainly on
their product development and
other
research activities [1
].


2.
Need for Cloud Simul
ation:


The demands of the consumers of cloud computing vary based on various factors like application
usability, security,

maintainability,

size, environment etc
. It is also difficult for the consumers to
test the performance of their application be
cause
of the hypothetical and dynamic nature

of the
cloud.
Hence, it

is viable for them to test their appl
ication in a controlled environment

before
getting it into the cloud

[1
]
.



A reasonable solution to the above problem is to
reproduce

the cloud computing

environment
using cloud simulation technologies
[1
]
. Ther
e
are many readily available cloud si
mulation tools
which can be used for replicating the actual cloud settings with a good success rate.
Cloud
simulation offers solace to consumers who are reluctan
t to deploy their system directly on the
cloud without understandi
ng the technical jargons. This will also help vendors who are offering
Sa
aS to improve their efficiency.


There are different simulation techniques available

for different use
. We explain some of the
simulations

below.


3.
Grid
Computing and
Simulation
:



3.1
Introduction:

Grid computing is a distributed computing infrastructure used for computing large amounts of
data, using a vast amount of resources. It
combines multiple com
puters or administrative
domains to solve a specific task. All the computers are connected by a conventional network
interface
, like Ethernet
.

The main feature of Grid computing is that it can facilitate commercial
transactions or assemble volunteer comput
ing. The management and s
cheduling of resources in
grid computing environment
is quite difficult and it requires sophisticated tools fo
r analyzing and
fine
-
tuning
algorithms before applying them to the real systems [
10
].


The complexity of algorithms on the distributed systems of various resources can be effectively
analyzed

by Grid simulation techniques. Simulation is also used for examining very large
hypothetical problems that may otherwise require many active users and
resources

[10
].

A pictorial representation of the worldwide grid computing is given
below [10]
.


3.2
GridSim:

GridSim
[11]

is a software toolkit or platform that allows users to model and simulate the
characteristics of Grid resources with different config
urations. GridSim helps customers to
study
the nuance of grids and analyze
complex algorithms and methodologies in a controlled
environment. Using GridSim, researchers are able to conduct repeatable experiments and studies
which are not possible in a real
time massive Grid Systems.

3.3
Features

of GridSim:

[need to paraphrase]

The important features of GridSim are given below.



It allows modeling of different resource characteristics and their failure properties;



It enables simulation of workload traces tak
en from real supercomputers;



It supports reservation
-
based or auction mechanisms for resource allocation;



It allocates incoming jobs based on space
-
or time
-
shared mode;



It has the ability to schedule compute
-

and/or data
-
intensive jobs;



It has a background network traffic functionality based on a probabilistic distribution.
This is useful for simulating data
-
intensive jobs over a public network where the network
is congested.



It provides clear and well
-
defined interfaces for implementing

different resource
allocation algorithms; and



It allows modeling of several regional Grid Information Service (GIS) components.

3.4
GridSim Architecture:

GridSim is a multi
-
layered architecture which enables new layers to be easily added and
captures th
e replic
a of grid computing environment
.

The first layer in the architecture is
managed by SimJava which enables communication between various grid components. The
second layer
forms the core elements of the G
ridSim and is mainly
responsible for simulations
in G
ridSim. The third and fourth layers deal with modeling and simulation of services specific to
computational and Data Grids r
espectively
. The components of the fifth layer “User code” help
users in performing their own schedu
lers and resource allocations in order to examine their
own algorithms.

The architectural representation is given below.



4.
Cloud Simulation
:

4.1
Overview
:


As
the grid simulation

toolkits failed to isolate the multi
-
layer service differentiation among
SaaS, PaaS and IaaS layers in the cloud computing environment
, many cloud simulation tools
have been proposed to overcome this issue.
Big Companies like Yahoo and HP have established
global Cloud computing testbed known as Open Cirrus with a federation of
data centers in
10
different organizations.
But i
n these kinds of testing environments it is hard to conduct
repeatable experiments because the resource conditions will vary with time, very expensive to
build and also limited accessibility only to its memb
ers of collaboration.

[1]

4.2
CloudS
im


CloudSim

is an extensible simulation toolkit which is described as a framework for modeling
and simulation of both single and inter
-
networked (federation of clouds) clouds. Now HP and
other leading organizations and also many universities around the world are usin
g CloudSim for
Cloud resource provisioning, energy
-
efficient management of data center resources, optimization
of Cloud computing and
for research activities.
[1]

4.2a
Uses of CloudSim
:



Usage of CloudSim reduces time and effort required to test cloud based
applications.



It allows the applications to be tested in different cloud environments and developers can
implement this with less effort.



Modeling and simulation of even large scale cloud computing environments.



Support for simulation of network
connections within the simulated elements.



Since Cloud is a pay


as


you


use model, CloudSim provides a platform for modeling
and simulation of economic entities for enabling real
-
time trading of services between
customers and cloud providers.



Availab
ility of a Virtualization engine that leads to the creation and management of many
independent co host applications.
[1]



4.2b
CloudSim Architecture:


The following figure shows a multi
-
layered design of the CloudSim

architecture and also its
software framework. The very first layer in the layered CloudSim architecture is the User Code
which makes entities like applications, number of users and their applications, virtual machines
and others available to hosts. The ne
xt layer is the CloudSim which is made up of many
fundamental classes (java).
[1]







4.2c Implementation of CloudSim:

These are some of the key components required for the implementation of the CloudSim:

Cloudlet
: The
complexity

of cloud based
applications

is measured in terms of their
computational requirements by CloudSim. Cloudlet class models these application services.
Furthermore
,

CloudletScheduler is used to implement the policies to determine the processing
power share among many Cloudle
ts in a virtual machine.
[1]

Datacenter
: This class is used to model the cloud based hardware or infrastructure services.
Furthermore
,

the DatacenterCharateristics class is used to provide information regarding the data
center resources.
[1]

DatacenterBroker
:

This class
model
s a broker who is responsible for mediating negotiations
between Cloud service provider and the customer. These negotiations are mainly driven by QoS
requirements. The

broker studies various cloud service providers and also negotiates for

allocation of various resources and services as per the QoS requirements to provide the best for
the customer.
[1]

Host
: This class is used to model physical resources such as it is used to assign the policy to
share the processing pow
er, memory and bandwi
dth among
various virtual machines.
[1]

Network Topology
: This class gives information for inducing the network
behavior

in the
simulation.
[1]


CloudCoordiantor and Sensor
: CloudCoordinator is responsible for periodic monitoring of the
internal state of dat
a center resources. It also undertakes dynamic load
-

shredding decisions for
which it uses the dynamic performance information. For monitoring performance
parameters

implementation of sensor is necessary.
[1]

VM
: This class is used to model a virtual
machine in the cloud which includes allocation of all
the virtual machines on the hosts which is selected based upon the requirements for a VM
deployment. This class is also responsible for allocation of processor cores among the VMs.
[1]


5.
Examples of
SaaS Simulation
:

SaaS (Software as a service) is becoming increasingly popular as many companies are opting to
deliver their services to their client through cloud. SaaS has become a dominant model to create
and deliver various applications. So simulation

plays a very important role.

There are few organizations which are offering SaaS simulations
:

D
ezineforce

Dezineforce

provide a simulation model known as HPC Simulation On
-
Demand (SaaS).
Dezineforce HPC based simulation provides an easy and quick way to

access HPC applications
without the need to own, implement or manage the HPC infrastructure. So the organizations
opting for this service need not worry about HPC deployments. This is best suitable if the
organization has its members in many locations to
justify local simulation resources.
[4]



Waveller Cloud
:

Waveller Cloud is an audio & noise simulati
on system that is delivered as “
Software as a
Service
”.
Running audio and noise simulations in the computing cloud allows easy scaling of the
computation
infrastructure.

The frequency
domain si
mulations

take considerable amoun
t of time
but
can utilize the dynamic resources allocation in Cloud
Computing environment very well
which leads to performance improvement in simulation turnaround times. This simulati
on system
also allows

easy collaboration and adoption to design process and reduced cost in systems and
software administration
.

[5]

SIMCAN simulation platform

SIMCAN is a

modular simulation platform which is used for

modeling a wide range of HPC
architectures. The main features
of this simulation platform
are flexibility to model

different
architectures easily and to scale these

models
by maintaining
the
good

level of performance
and accuracy.

[6]


6. Future Work:

Clo
ud simulation in the past one year has gained more visibility .Plenty of new projects, both
academically and in industry have emerged . The latest cloudsim toolkit offers support for
modeling and simulation of hot topics in cloud computing, green/power awa
re cloud computing
and federated cloud computing. At the same time new features were added and major
improvements were made in simulation core which allowed scalability and performance of
simulations. As far as the future work is concerned, new pricing and

provisioning policies are to
be incorporated to the cloudsim
.

They

are

also providing support for practical and concrete
network models which capture the message routing and latency behavior.










References:

1.

Rodrigo N. Calheiros, Rajiv Ranjan, Anton
Beloglazov , César A. F. De Rose and Rajkumar Buyya,
CloudSim: A
Toolkit for Modeling and Simulation of Cloud Computing
,
http://www.buyya.com/papers/CloudSim2010.pdf

, June 14 2010.


2.

Rodrigo N.
Calheiros, Rajiv Ranjan, Anton Beloglazov , César A. F. De Rose and Rajkumar Buyya,
CloudSim: A Novel Framework for Modeling and Simulation of Cloud Computing


Infrastructures and Services
,
http://www.cloudiquity.com/2009/03/cloudsim
-
offers
-
cloud
-
computing
-
simulation/

,

March 14 2009.


3.

Abhishek, W
hat is the actual difference between IaaS, SaaS and PaaS
inCloud

Computing?,
http://abhishekclf.wordpress.com/2010/09/28/what
-
is
-
the
-
actual
-
difference
-
between
-
iaas
-
saas
-
and
-
paas
-
in
-
cloud
-
computing/
,

September 28 2010.


4.

Dezineforce


Empowering designers
,
http://www.dezineforce.com/overview
-
and
-
optimisation
-
made
-
easy.aspx

5.

Waveller Cloud
,
http://www.waveller.com/Waveller_Cloud/
.

6.

Simcan Simulation Platform,
http://simcan.sourceforge.net/

7.

Environments and Evaluation of Resource Provisioning Algorithms

8.

http://en.wikipedia.org/wiki/Cloud_computing

9.

http://www.computerweekly.com/galleries/2
41360
-
2/The
-
difference
-
between
-
Saas
-
Paas
-
and
-
Iaas.htm


10.

GridSim:

A Grid Simulation Toolkit for Resource Modelling and Application
Scheduling for Parallel and Distributed Computing
,
http://www.buyya.com/gridsim/



11.

GridSim Toolkit
,
http://www.cct.lsu.edu/~dsk/eScience2007Posters/sulistio.html