Sunteți pe pagina 1din 10

Future Generation Computer Systems ( ) –

Contents lists available at ScienceDirect

Future Generation Computer Systems


journal homepage: www.elsevier.com/locate/fgcs

A coral-reefs and Game Theory-based approach for optimizing elastic


cloud resource allocation
Massimo Ficco a,∗ , Christian Esposito b , Francesco Palmieri b , Aniello Castiglione b
a
Department of Industrial and Information Engineering, Second University of Naples, Via Roma 29, I-81031 Aversa (CE), Italy
b
Department of Computer Science, University of Salerno, Via Giovanni Paolo II, 132 I-84084 Fisciano (SA), Italy

highlights
• Bio-inspired coral-reefs optimization paradigm to model cloud elasticity.
• Game theory-based approach to identify the best cloud resource reallocation schema Fuzzy linguistic SLA formalization.

article info abstract


Article history: Elasticity is a key feature in cloud computing, which distinguishes this paradigm from other ones, such as
Received 15 January 2016 cluster and grid computing. On the other hand, dynamic resource reallocation is one of the most important
Received in revised form and complex issues in cloud scenarios, which can be expressed as a multi-objective optimization problem
16 May 2016
with the opposing objectives of maximizing demand satisfaction and minimizing costs and resource
Accepted 22 May 2016
Available online xxxx
consumptions. In this paper, we propose a meta-heuristic approach for cloud resource allocation based on
the bio-inspired coral-reefs optimization paradigm to model cloud elasticity in a cloud-data center, and
Keywords:
on the classic Game Theory to optimize the resource reallocation schema with respect to cloud provider’s
Cloud computing optimization objectives, as well as customer requirements, expressed through Service Level Agreements
Elasticity formalized by using a fuzzy linguistic method.
Live-migration © 2016 Elsevier B.V. All rights reserved.
Coral-reefs optimization
Game Theory
Fuzzy linguistic SLA

1. Introduction capacity (CPU power, memory, store capability and network band-
width) [1]. Cloud elasticity is the key feature for implementing
In recent years, cloud computing has attracted attention from server consolidation strategies. It allows for on-demand migration
industry, government and academic worlds. An increasing amount and dynamic reallocation of VMs [2]. NIST defines elasticity as the
of applications make extensive usage of cloud resources, accord- ability for customers to quickly purchase on-demand and auto-
ing to an on-demand, self-service, and pay-by-use business model, matically release as many resources as needed, ideally giving to
with the progressive adoption of cloud-based services by many the user the feeling that the cloud resource capabilities are unlim-
sectors of modern society. One of the main reasons of this suc- ited [3]. Specific elasticity control mechanisms are implemented to
cess is the possibility of acquiring virtual resources in a dynamic decide when and how to scale-up or scale-down virtual resources,
and elastic way. In particular, the emerging virtualization tech- in accordance with the provider’s own optimization objectives, as
nologies allow multiple virtual machines (VMs) to run concur- well as with user-defined settings and requirements formalized
rently on a single physical host, called host machine (HM). Each within the context of a specific Service Level Agreement (SLA) be-
VM, in turn, hosts its operating system, middleware and applica- tween the cloud provider and the customer. In order to do this,
tions, by using a partition of the underlying hardware resources resource usage information, such as CPU load, free memory and
network traffic volumes, for all the available HMs, has to be contin-
uously collected and analyzed on-line. Three different techniques
∗ are used in the implementation of cloud elasticity solutions: repli-
Corresponding author.
cation, migration and resizing [4], resulting in different strategies
E-mail addresses: massimo.ficco@unina2.it (M. Ficco),
christian.esposito@dia.unisa.it (C. Esposito), fpalmieri@unisa.it (F. Palmieri), and approaches for handling resource allocation within a cloud in-
castiglione@ieee.org (A. Castiglione). frastructure.
http://dx.doi.org/10.1016/j.future.2016.05.025
0167-739X/© 2016 Elsevier B.V. All rights reserved.
2 M. Ficco et al. / Future Generation Computer Systems ( ) –

The dynamic resource allocation problem describes the deci- system context [7]. It enables applications to evolve, by follow-
sion of how many HMs are required overall to cope with the cur- ing the users’ demand, without needing traditional ‘‘fork-lift’’ up-
rent demand, and how VMs are (re-)allocated to each HM in the grades, and hence, introduces the degree of adaptiveness that is
individual time intervals. The optimization of resource allocation fundamental for modern big data-centric environments.
consists in minimizing the number of HMs necessary to host all the Generally, Infrastructure as a Service (IaaS) architectures pro-
VMs associated to users’ demands. This is a typical multi-objective vide an elasticity controller, which is responsible for monitoring
optimization task, where the most important goals are the mini- information like CPU load, memory and network traffic, and for
mization of the needed hardware resources and the satisfaction of making decisions on whether or not the virtual resources must
SLAs contracted with the customers. This problem, widely simpli- be scaled or migrated, in accordance with user-defined rules and
fied, is closely related to a commonly known NP-hard combinato- settings [8]. From a user perspective, elasticity allows perfect
rial optimization problem, the ‘‘bin packing’’ problem [5], where matching between instantaneous customer’s needs and resources
the items to be packed can be viewed as the VMs and the bins as available to him, by avoiding the unnecessary reservation of re-
the HM nodes with their multi-dimensional capacity represented sources that are not needed for most of time, with obvious im-
by the available computing power, free memory, storage capabil- pacts on the overall system scalability and performance. From the
ity and network bandwidth. Consequently, our elastic cloud re- provider perspective, elasticity ensures better use of computing
source allocation problem, that is inherently more complex, will be resources, by providing economies of scale, and allowing a much
NP-hard, and thus, a reasonable heuristic solution, achieving near- larger number of users to be served simultaneously [4]. More-
optimal results is strongly desirable. over, it can be used to increase the local resources capacity, by si-
In such a complex multi-objective scenario, traditional opti- multaneously reducing operational costs and energy consumption
mization methods are not able to efficiently provide good results, [9–11].
due to their inherent difficulties in exploring huge solution spaces. Several strategies have been employed in order to support
Hence, novel approaches based on bio-inspired meta-heuristic the implementation of elasticity capabilities, including resizing,
schemes, seem to be the most promising options to achieve a bet- replication, and migration:
ter trade-off between the complexity of the search process and the • Resizing (vertical scaling): according to such strategy, CPU,
optimization of the solutions found. Such schemes rely on models memory and storage resources can be re-sized on a running
and strategies borrowed from the observation of behaviors, and virtual instance, that can be a virtual machine or a container.
evolution mechanisms available in nature, where only the fittest Some of the most significant implementation of resizing
individuals are able to survive in organizations characterized by mechanisms are PRESS [12], ElasticVM [13], and Kingfisher [10].
a high degree of competition. In this direction, to model the elas- • Replication (horizontal scaling): consists of adding/removing
tic resource reallocation dynamics of a typical cloud environment, instances from users’ virtual environments. It is currently
we adopted a Coral-Reefs Optimization (CRO) approach, which ar- the most widely used technique for providing elasticity in
tificially simulates the reefs evolution processes, including corals’ cloud environments [14–16]. Several cloud platforms, such as
reproduction and competition for the space in the reefs [6], which, Amazon and AzureWatch, offer auto-scaling and load-balancing
by analogy, model the continuous demands for resource re-sizing, capabilities in order to split the load between the various
migration and replication, characterizing the operational life-cycle instances. Specific thresholds can be set by customers to add
of VMs hosted within a cloud data center. This approach presents or remove instances depending upon the actual usage.
extremely interesting and promising features in achieving conver- • Live migration: consists in transferring the entire VM runtime
gence towards global optima. status (CPU and memory pages) from the actual host machine
On the other hand, cloud customers can be seen as non- to a new destination host, without preempting its execution
cooperative entities, whose fundamental interest is not the op- [17,18]. It is performed in two steps, in which at first, a pre-
copying of the VM status on the target host is performed (while
timization of the overall system performance, but rather the
the VM is still running); then, the execution of the source
maximization of their individual benefit. Therefore, a natural hint
machine is stopped, a re-copy of the modified pages on the
for carefully driving the VM allocation process comes from classic
destination host is performed, and finally, the migrated VM is
game theory. Accordingly, we used a game theory-based approach
resumed.
to identify the best VM reallocation schema with respect to the crit-
A cloud provider’s resource management facility must
ical requirements specified by the cloud customers in their SLAs,
orchestrate the VM migration in order to simultaneously
formalized by using fuzzy linguistic label sets, and typically char-
minimize resource usage and maximize SLA adherence [19].
acterized by different and even conflicting performance objectives
Specifically, it must provide:
and optimization criteria. This approach is able to drive the com- – Cold-spots migration support: that is related to over-provi-
plex interactions between the customers and the cloud provider sioned resources with low utilization (server sprawl). In
towards a social optimum (i.e., an equilibrium point between their order to reduce severe financial losses for cloud providers,
own demands and goals), by optimizing a global objective function live migration can be used to consolidate VMs (optimize
that takes into account the individual interests of all the involved VMs placement) with the aim of minimizing the number of
entities. powered-on hosts and saving energy [20]. When the amount
The rest of the paper is organized as follows. In Section 2, of resource usage of a host drops below a given threshold,
the strategies and methods currently adopted to implement cloud VMs are migrated to another host providing enough available
elasticity capabilities are presented. Section 3 defines the problem resources capacity (the freed-up HMs are switched-off).
of interest. The proposed approach for elastic resource reallocation – Load balancing migration support: VM migration can be used
is presented in Section 4. The related experimental performance to dynamically move VMs among the available hosts with the
evaluation results are shown in Section 5. Finally, Section 6 aim of rebalancing the utilization of resources over them. A
presents some concluding considerations and remarks. specific decision-making process is enabled when the load
imbalance within the cloud (among heavily loaded hosts and
2. Background and related work lightly loaded ones) exceeds a given threshold [21,22]. Its
objective could achieve equal residual resource capabilities
Elasticity represents a dynamic property of the cloud paradigm, across all the available HMs in order to optimize local
which allows the system to scale on-demand within an operational resource allocations in presence of increasing demands.
M. Ficco et al. / Future Generation Computer Systems ( ) – 3

– Hot-spots mitigation support: if the HM does not own • due to the overloaded condition of a HM (hot-spot);
enough additional locally available resources to meet the SLA • due to the low utilization of a HM (cold-spot);
requirements of one of its VMs, the involved VM is migrated • due to the imbalance in resource utilization levels of
to another host whenever possible (hot-spot). Specifically, different HMs, leaded from VMs that change their resource
application-level monitoring of VMs must be adopted to requirements dynamically;
detect when the expected performance of the VMs drops • due to the addition/removal of VMs and HMs, which can
below a given threshold. In this case, in order to mitigate the affect the availability of the resources and may require a
hot-spots, additional resources are either added locally, or if change in the overall VM placement/scheduling plan.
the total resource usage of the host running the VM exceeds
2. Which VM must be migrated?: Selecting one or more VMs for
a predefined threshold, a decision-making process is enabled
migration is a crucial decision. The migration process makes
to migrate the VM to another HM [23,24].
the involved VM unavailable for a certain amount of time, as
From a cloud provider’s perspective, the migration process con- well as consumes resources like network and CPU on source and
sists in alleviating hot-spots and improving load-balancing in destination HMs, thus, the performance of co-resident VMs are
order to meet SLAs of customers, whereas reducing cold-spots is temporarily affected due to increased resource requirements
necessary to reduce power consumption (to minimize the number during migration. Therefore, the aim of VM selection is to
of physical machines necessary to host all the VMs). The migra- minimize the migration effort. However, different approaches
tion process addresses each of the previous objectives, but some can be adopted to select the candidate VM for migration.
constraints should be considered: the overhead of the migration • The VM whose resource requirements cannot be locally
process, the impact on applications during migration, the degree fulfilled is selected for migration.
of improvement in the specific resource utilization performance
• It may not always be efficient to select the overloaded VM.
goals [19,25,26].
In particular, if such VM uses a large amount of memory, the
time required for migration will be high. Therefore, the VM
3. Definition of the resource allocation optimization problem with smaller memory could be selected for migration, so that
the memory freed can then be allocated to the other hosted
In order to describe and evaluate the proposed approach, VMs.
we defined a simplified model for resource management in the
• The VM whose SLA requirements are less critical is selected.
cloud computing environment. We consider a scenario, in which
a cloud data-center is composed by several computing nodes, 3. Where to locate the VM?: During migration, the destination
characterized by a set of parameters, such as CPU, memory, HM should have enough resources available, so that, it can
and storage capacity. Specifically, we denote H = (h1 , . . . , hn ) support the incoming migrating VM. However, considering the
as the set of HMs in the data-center, and respectively, C = availability of resources at the destination could be not enough.
(c1 , . . . , cn ) their available (free) resource capacity, where cj is For example, it should be considered how the performance of
described in terms of CPU, RAM, network bandwidth, and storage, VMs that are already hosted on the destination HM will be
with cj = (κc ,j , λc ,j , µc ,j , νc ,j ) respectively. Moreover, we denote affected by the migration, as well as it is necessary trying to
V = (v1 , . . . , vm ) as the set of VMs to be assigned to HM and achieve some consolidation by co-allocating VMs that have high
R = (r1 , . . . , rm ) the set of required virtual resources, where memory sharing potential.
ri = (κr ,i , λr ,i , µr ,i , νr ,i ) represents the amount of resources for
In order to solve the described elastic resource reallocation
running the VM i (in terms of CPU, RAM, bandwidth, and storage).
problem by using Game Theory, we simulate the cloud elasticity
At each step of the allocation process, a set of virtual machines
in a cloud-data center through a Coral-Reefs bio-inspired meta-
W could be involved in the allocation process. Such VMs can
heuristic scheme (CRO) [6]. The CRO scheme represents the reefs
be: (i) new VMs to be allocated in the cloud; (ii) already hosted
structure by using a grid, where each element of the grid (x, y)
VMs that require additional resources, and (iii) already hosted
can host a single or multiple corals (representing components of
VMs that must be reallocated either to minimize the resource
the Game Theory-based solution). Therefore, in order to re-map
waste, or because of a hardware or software failure. Each involved
our resource allocation problem within such a scheme, we assume
VM requires an amount of resources for a time duration d. We
assume κr ,i , λr ,i , µr ,i , νr ,i and dr ,i are random variables, each one that each component hx,y of the grid represents a HM of the set
characterized by a specific probability distribution function pdf (·). H. Thus, we can model the cloud resource allocation problem, by
Specifically, the optimal allocation of the virtual resources required using a hypercube A = {ax,y,z }, in which, for each HM hx,y , the
by each VM is a problem that can be addressed by using stochastic vector Ax,y,i = (ax,y,1 , . . . , ax,y,m ) represents the mapping of the
approaches. To address the heterogeneity of applications deployed VMs to hx,y , where ax,y,i is equal to 1, if the VM vi ∈ V has been
in the cloud, several approaches (and cloud providers) consider assigned to HM hx,y , otherwise it is equal to 0. The same holds for
application tasks as classified in different categories [27]. For each the capacity set C represented by using a cubic matrix C, in which
type of task, they evaluate the probability distribution function each component cx,y is a capacity vector of the HM hx,y equal to
from the empirical data related to the usage of resources ri and the [κc ,x,y , λc ,x,y , µc ,x,y , νc ,x,y ]. The elements of the matrix C have the
task duration di . same size, if the HMs belong to a homogeneous cluster, otherwise,
Regarding live-migration, the optimization problem for cloud they have different dimensions (if the HMs are heterogeneous).
resource reallocation must address three important questions: Briefly, the resource allocation problem exhibits three objective
functions:
1. When to migrate a VM?
2. Which VMs must be migrated? 1. resource minimization: minimize the total amount of data-
3. Which are the set of destination HMs for migration, replication, center resources used to execute the VMs;
and placement of new VMs? 2. resource balancing: allocate VMs on top of each host, so that, the
1. Migration of a VM in a data-center can be triggered: usage rate of host’s resources is kept around a certain threshold;
• periodically: for example, data centers may be heavily used 3. SLA optimization: the allocation process has to be orchestrated,
in the morning, whereas they may be underloaded during the so that, the VMs associated to more critical SLA requirements
night; are privileged.
4 M. Ficco et al. / Future Generation Computer Systems ( ) –

According to the above described schema, the allocation developed by the Cloud Select Industry Group (CSIG), as a strate-
problem can be formulated in the following way. The minimum gic way to help EU businesses in using the Cloud. Another well
number k of physical hosts needed to satisfy the VMs resource known initiative in the area of Cloud SLA standardization is being
requirements must be determined: carried out by ISO/IEC JTC 1/SC38 on 19 086 Information Technol-
ogy (Cloud Computing) Service Level Agreement (SLA) Framework
n 
m
 and Terminology [34].
k= ax,y,i , for each kind of resources (κ, λ, µ, ν). (1)
Following these initiatives, several projects have been recently
x,y=1 i=1
funded by the EU to further investigate on the formalization
The resource capacity cx,y on each involved HM hx,y must satisfy and management of SLAs. In the last years, some efforts have
all the VMs assigned to it, so that, the sum of resource demands been devoted both from the academic and industrial organizations
of all the VMs allocated on each HM hx,y should not exceed cx,y . towards the introduction and formalization of security-related
Moreover, a small amount ϵ of free resources should be guaranteed parameters in the SLAs [35]. Among these, it is worth mentioning
in each machine, in order to offer a certain degree of vertical the SPECS project [36], which focuses on Security SLAs (i.e., SLAs
scaling to applications without requiring any migration. Thus, for containing security guarantees) and aims at building a framework
each host hx,y ∈ HM, the physical resource constraints must be for the development of secure cloud applications, according to
expressed as: the SLA life-cycle (negotiation, enforcement and monitoring).
Despite these and other similar initiatives, the current debate is
m
 far from being concluded, and the need of a standardized structure,
ax,y,i ∗ ri < (cx,y − ϵ), for 1 < x, y < n. (2) terminology and syntax for SLAs in clouds is still an open issue.
i =1
Since, there is no common agreement on which properties
Finally, each VM vi is associated with a weight ωi , which to be considered in a SLA, we have decided to keep such
represents the value of the criticality associated to the SLA properties generic, without discriminating if they are related to
requirements to be met. The allocation process has to optimize the performance, dependability or security. Therefore, we assume a
VMs that have the highest weight ωi . generic formulation of SLA contracting as a set of criteria, each
representing one of the possible quality properties that a customer
is interested to monitor and obtain, such as a performance grade,
4. The meta-heuristic approach
a reliability degree or security level. Correspondingly, we have a
vector of n available QoS properties for a SLA binding between a jth
This section, first, introduces a fuzzy linguistic model for
customer, namely Cj , and a provider, for a given task, namely τCj :
formalizing a generic SLA [28], established between the cloud
QoS (τCj ) = {q1 , q2 , . . . , qn }. We assume that each customer, before
customer and the cloud provider (Section 4.1). Then, the CRO
submitting a task, has provided to the cloud platform an agreed
algorithm, based on the coral-reefs behavior, is adopted to simulate
SLA binding in the form of a set of values, under which, the quality
the continuous requests of new cloud resources needed to trigger
properties should not fall during the task execution. Specifically, if
the resize, replication and migration processes characterizing
we indicate with fi the monitored value assumed by the ith quality
cloud data center activities (Section 4.2). Last, in Section 4.3, we property, at run time, we have that fi ≥ qi .
describe how to use a game theory-based approach to identify The generality of our SLA formalization does not involve the
the best VM allocation scheme with respect to the requirements number and type of the quality properties, but also the values
formalized in the previous section. that they can assume. Specifically, there are some properties that
naturally may have numeric expressions, such as the performance
4.1. SLA formalization by using linguistic label sets grade indicated in terms of the latency in completing some
particular actions, or the reliability degree (expressed in terms
When a customer gains access to cloud-based services accord- of the number of nines of reliability) of the cloud platform
ing to a pay-by-use model, starting from its specific requirements, in completing the tasks. Such a quantitative expression of the
it fills out a SLA with the service provider, whose satisfaction quality properties is naturally obtained by the monitoring activities
is continuously monitored by the SLA management system [29]. operated by the SLA management system, but it is difficult to be
Such a set of requirements formally documents the service(s) handled by human operators, especially if they are not experts in
needed, performance expectations, responsibilities and limits be- these contexts. Not all the operators may be aware of the meaning
tween cloud service providers and their customers. At the moment, of nines for reliability, or are able to express an acceptable value of
there is no standard that univocally determines the structure, for- nines for their applications. Considering that SLAs are specified by
mat, syntax and semantic of the SLA requirements; neither the list humans, it is necessary to have a more human-friendly qualitative
of important criteria within a SLA has been established. approach to the expression of these properties. For this reason, in
Currently, the only available standard supporting both a for- this work, we have adopted linguistic labels, such as adjectives
mal representation of SLAs and a protocol for their automation like LOW or HIGH, to express the value of a particular quality
is WS-Agreement (WSAG) [30], which was born in the context properties required by the cloud customer. In addition, we use the
of GRID computing and has been widely adopted, in the con- fuzzy linguistic modeling theory, where a fuzzy set is associated to
text of many Cloud-oriented FP7 projects (e.g., SPECS, Contrail, a given linguistic label [37], taken from a properly-defined set of
mOSAIC, Optimis, Paasage), to represent SLAs in the Cloud en- terms, such as the following one of five terms:
vironment. The interest in WSAG has led in the last years to S = s0 : N (NONE ), s1 : L(LOW ), s2 : M (MEDIUM ),
the introduction of several extensions to the devised SLA life-
s3 : H (HIGH ), s4 : P (PERFECT ). (3)
cycle and to the development of techniques for its automation
[31,32]. Nevertheless, WSAG only prescribes the main elements In any linguistic approach to information modeling, in addition
of the agreement and leaves many details to custom implementa- to the linguistic descriptors of the adopted terms, we need to define
tions. Therefore, disputes often arise on the structure of the agree- the associated semantics, which is typically done by means of fuzzy
ments, and on how the provided quality of service is monitored sets defined in the [0, 1] interval, which are usually described by
against the agreed SLA requirements. The European Commission a membership function µÃ with a triangular, trapezoidal or other
has issued a set of guidelines for SLAs in cloud computing [33], shapes. If we consider a numeric value for a given quality property,
M. Ficco et al. / Future Generation Computer Systems ( ) – 5

Fig. 1. The set of five terms in Eq. (3) and its semantics as fuzzy sets.

then the function µÃ specifies the membership in the vaguely and some changes are needed. Specifically, such an index can be
defined set A of such a number, with an output within the interval formulated as follows:
[0, 1]. An example of a balanced linguistic label set of five terms, n
as in Eq. (3), i.e., with terms that are uniformly and symmetrically

σ (τCj ) = φ(wi ) · (φ(qi ) − f¯i ) (5)
distributed in the [0, 1] interval, and the underlying fuzzy sets are i=0
depicted in Fig. 1.
Typically, the tuning of the parameters characterizing the where, ωi is a weight given to the ith property. Such a weight is a
membership functions for the linguistic terms within a fuzzy measure of the importance of the satisfaction of a given propriety
variable can be made by experts and must be tailored to the specific for the consumer, and it is formulated in terms of a fuzzy linguistic
characteristics of the measure it represents. Since, we assume a label provided by the consumer.
balanced linguistic term sets, we adopt a partition of the interval
[0, 1] in even parts among the fuzzy sets of the adopted linguistic 4.2. Simulating cloud elasticity by Coral Reefs-based ecosystem
terms. approach
Since, we have formulated the set of requirements in a SLA
as fuzzy linguistic labels, we have the problem of comparing Coral-Reefs Optimization (CRO) is a meta-heuristic approach
crisp numeric values returned by the SLA management system classified as a bio-inspired algorithm, similarly to ant colony
with these requirements. Such a problem can be resolved by a optimization [39] and artificial bee colony (ABC) [40] schemes. It
proper process of converting a fuzzy linguistic label into a crisp artificially simulates the behavior of a coral reefs ecosystem to
number, called defuzzification [38], namely φ(l), where l is a fuzzy tackle optimization problems. The algorithm mimics the process of
linguistic label in the label set Λ. Defuzzification of a linguistic the sexual and asexual coral reproduction, as well as the process of
label is performed by using the centroid method, by considering coral reefs formation, where a fight for space occurs. The scope is to
the membership function of the linguistic term as the input to find a place in the reefs where the coral can be settled, considering
the operation. Such a method determines the geometric center that the space in the reefs is a limited resource compared with the
of the membership function over the x-axis. Typically, a required high reproduction rate of the corals. Therefore, corals must fight
property can assume a single linguistic label, or even a set of to obtain a place in the reefs. In particular, in each step of the CRO
them, each with a given membership degree. In the second case, algorithm, a set of coral larvae is generated, and each larva must
defuzzification is obtained by computing the weighted median fight to obtain a place in the reefs. The result of this fight is that
point among the centroids obtained for each linguistic label, where some corals die, because they cannot defend the place where they
the weights are the membership degrees for each label. are located, as well as not all larvae find any place in the reefs where
Both the two crisp numbers must be within the [0, 1] interval,
they can be settled [41]. It depends on how strong the larva is, i.e.,
if the values of fi are not within such an interval, they can be
how good the solution to the optimization problem is.
normalized as follows. Let us assume that, the values admissible for
(i) (i) Specifically, CRO algorithm simulates the life of the corals in
a given monitored property fi lie between Blower and Bupper , we can
a reef Λ modeled as a grid of NxM elements, during different
convert it into an attribute with values between 0 and 1, according
generations. We assume that each grid element (x, y) of Λ, is
to the following transformation:
able to allocate a micro-colony of corals Φ(x,y) , representing a
 (i) solution to the optimization problem, which is encoded as a string
fi − Blower
for a positive property of numbers in a given alphabet Γ . According to the considered

 B(i) − B(i)


upper lower scenario, the reefs represent the cloud infrastructure, where each
f¯i = (4)
 B(upper

i)
− fi grid element (x, y) is a HM, and the micro-colony Φ(x,y) represents

 (i) (i)
for a negative property the set of hosted VMs A = {ax,y,i }.
Bupper − Blower The initialization of the CRO algorithm consists in randomly
where, a positive property means that high values for such a assigning some elements in the reefs to be occupied by corals and
characteristic indicates a better services (e.g., higher number some other elements to be empty, where new corals can freely
of nines indicates a higher reliability degree), while a negative settle and grow in the future. The rate between free/occupied
property has an opposite interpretation (e.g., a higher values in elements determines the initial population density ρ0 (with 0 <
milliseconds as completion time indicates worse performances). ρ0 < 1). By analogy, during the initialization process, only some
After, we have brought all the involved measures, i.e., fi and qi HMs host one or more VMs, whereas the other are free.
for all i = 0, . . . , n, in a form that is comparable, we are able to The CRO is based on the fact that the reefs will progress, as long
compute a satisfaction degree, which is a measure of the satisfac- as stronger corals survive, whereas less healthy corals perish. This
tion of the SLA properties by the current task settings in the cloud means that, the cloud resource utilization changes over time. The
platform. If such an index is negative, then the quality of the pro- VMs are replicated and migrated, as well as new VMs are added,
vided cloud service does not respond to the customer requirements and others are removed (turned-off).
6 M. Ficco et al. / Future Generation Computer Systems ( ) –

After the initialization process, the reefs formation in terms measures if the VM i can be hosted by a physical machine that
of the corals reproduction is artificially simulated by the CRO satisfies such requirements. The described optimization problem
algorithm until an objective criteria is achieved. Several operators has been faded by a Game Theory approach described in the next
are used to imitate corals reproduction, which model the following section.
five different reproduction procedures and phenomena: According to the coral model, each larva located either in a
free space, or in an occupied one, has to fight against the existing
1. Brooding (internal sexual reproduction): Selected couples will
corals, and only the strongest individuals will survive. A VM can be
form a coral larva by sexual crossover. It consists in the
migrated from its hosting HM, either to acquire more resources, or
generation of new larvae by copying and mutation of existing
to make available resources to other VMs which have more critical
corals. This reproduction procedure generates a coral larva,
SLA requirements, as well as to minimize the number of active
which is a copy of its parent and it is randomly mutated. The
HMs. Moreover, in the considered cloud context, if the cloud is
produced larva is then released to be located in the reefs.
public, we can assume that the resources are unlimited and all the
2. Budding (asexual reproduction): The budding model consists of
requests can be always satisfied (larvae cannot be deprecated). If
the formation of a coral larva by means of a random mutation of
the objective is the optimization of the resource utilization in a
the brooding-reproductive coral (self-fertilization considering
private cloud, we can assume that the resources are limited and
hermaphrodite corals). It consists in sorting all the corals
some requests could not be successfully allocated into a place
according to their health. From this sorted list, a fraction of the
(whose capacity eventually grows), during the current allocation
best corals are duplicated and tried to be located in the reefs.
step (larvae are deprecated). The deprecated larvae will be queued
3. Broadcast Spawning (external sexual reproduction): New larvae
for the next allocation step. Finally, the allocation process must
could come from outside the reefs, and try to settle in the reefs.
minimize the number of migrations per step.
4. Catastrophic events in the reefs: at the end of each reproduction
step p, a small number of corals in the reefs can be depredated
4.3. Distributed strategic resource allocation with Game Theory
by polyps. The depredation operator is applied with a very small
probability Pp at each step p.
The abstraction provided by the CRO algorithm perfectly
5. Natural death: Corals may die during the reefs formation phase,
disciplines and models the competing behavior of the VMs within
thus liberating space in the reefs for next coral generation.
a cloud infrastructure, to obtain the resources needed to satisfy
Note that, the corals that have been reproduced by using a method both the consumers’ SLA requirements and the cloud provider’s
in the current generation cannot be selected to reproduce by using benefit. Therefore, according to the problem formulated in the
other methods. previous section, the issue to be treated is determining: (1) which
After the sexual and asexual reproduction, the larvae produced VM has to be migrated from a certain HM, and towards which HM
have to be placed to grow in the reefs. Therefore, in the considered such VM should be migrated or replicated, and (2) where allocate
cloud context, the larvae represent either a request of additional new VMs. These objectives have been performed with the intent
cloud resources from a hosted VM, or a replication request of VM of optimizing the satisfaction degree for all the consumers and
instance, or a request of resources from a new VM. Therefore, minimizing the number of active HMs.
the previous phenomena simulate, respectively, the following As a consequence, our game-theoretic scheme is applied in
behaviors: the two mentioned situations. In the following, we resolve the
migration case, since both the replication and allocation of new
1. brooding: the co-residency of a VM i with other tenants can
VMs are a naive relaxation of the first one (the problem is to
require additional resources, activating a decision process for
determine only the destination of the VM and not which VM
choosing whether re-size VM i or migrate a hosted VM from the
must be replicated or created, while in the migration case both
host machine. In the last case, it is necessary to decide which
elements must be determined). Such a problem has been resolved
VM migrates, and on which HM it has to be deployed;
in a strategic manner by means of the Game Theory [42], which
2. budding: reducing or increasing the load can trigger an auto-
has been already identified as a really promising framework for
scaling process, which can involve either the turn-off of a
managing resource reallocation within clouds [43]. The overall
VM instance, or the activation of a replicated VM instance,
goal of the approach, called in the literature as the social welfare,
respectively; in the second case, it is only necessary to decide
is to maximize the satisfaction of customers’ SLA requirements
on which HM it has to be deployed;
by the capabilities provided of the selected HMs, and minimizing
3. broadcast: the new larvae represent requests to host new VMs,
the number of globally involved HMs in the cloud infrastructure.
which have to be allocated on the more appropriate HMs;
Specifically, we assume that the set of VMs in a HM are the players
4. catastrophic events: a software or hardware failure is generated
of a one-shot game, which has a set of strategies among which
on a HM, i.e., one or all the VMs running on the host machine
they can make an action in the game. Such strategies for the
fail; in this case, all the involved VMs must be replicated on
ith player are binary
n values being elements of the set indicated
other hosts; eventually the failed HM is removed from the
with S pi = {s∅ , j=0 si }, where s∅ indicates the strategy of not
cloud;
migrating, while si is the strategy of migrating towards the ith HM
5. natural death: a VM has completed its work or is turned off.
of the cloud that hosts n usable HMs. When a player selects a given
Therefore, the reefs are defined by VMs, where the set of VMs strategy, namely s̄ within its strategy set, it has to pay a certain cost,
deployed on the cloud HMs represent a possible solution I for namely Φ p (s̄). Dually, the player receives the payoff φ p (s̄), which
the modeled problem. Each coral i is labeled with an associated is the gain achievable by a player when following a given strategy,
health evaluation function that measures the fitness of such coral considering the costs implied by the chosen strategy. In our case,
within each micro-colony f (Φ(x,y)i ) : I ⇒ R, which represents the game is defined non-cooperative since players are selfish, i.e.,
the problem’s objective function. Such a function is equal to the there is no direct communication among the players, and each one
satisfaction index σ (τCj ), that we have defined in Eq. (5). It is only cares to minimize its own cost, or dually to maximize their
used for comparing corals during the selection or reproduction payoff, without considering the state of the other players (with the
processes. This aspect means that each VM requires a certain eventuality of damaging them, even if it is not intentional). In our
amount of cloud resources (e.g., CPU, memory and storage) to game, we have to define a way so that, the strategy that maximizes
satisfy the SLA contracted with the cloud customer. f (Φ(x,y)i ) the payoff of each player is the one achieving the optimal social
M. Ficco et al. / Future Generation Computer Systems ( ) – 7

welfare of our optimization problem. Specifically, the payoff of a is low and the residual capacity is high (this is done to promote
given strategy can be formalized as follows: the selection of a scarcely used active HM). In the other two
cases, the cost assumes a null value, when the residual capacity
n
 is high and the weight of the VM is high, or a value ϵ when the
φ p (s̄) = s∅ · σ (s∅ ) + s∅ sj · [σ (sj ) − δ+HM − Φ p (sj )], (6)
residual capacity is low and the weight of the VM is low. ϵ can
j =0
be properly selected in order to discourage a migration towards
where all these contribution to the payoff function have values a HM with a limited residual capacity, despite the weight of
within the interval [0, 1]. σ (·) indicates the satisfaction degree the migrating VM is low; for this reason ϵ is a function of the
expressed by Eq. (5), considering the strategy in input, i.e., κ parameter.
migration or no migration, δ+HM is the cost to be paid if a new
Definitely, the cost for the migration is formulated as follows:
HM is activated as the result of the migration, and Φ p (si ) expresses
the cost for the migration from the current HM to the target one. Φ (sj ) = (ω1 + ω2 ) · cost migr + ω2 · cost move
p

The cost value, i.e., δ+HM , has to be properly selected in order + (ω2 − κ) · cost alloc + κ · ϵ(κ). (10)
to discourage the activation of a new HM and can be modeled
as a constant, or can be assumed as a function of the actual The scope of the game is achieved by identifying a point of
number of active HMs, in order to make it higher as the number equilibrium among players. It is named Nash equilibrium in the
of HMs increases. This is needed to keep the number of active HMs case of non-cooperative games, based on the concept of domain
minimal. In addition, the cost Φ p (si ) is composed of three different strategy, i.e., given a certain strategy s̄ ∈ S, it is not profitable
contributions to be properly considered: for a player to select a different strategy than the one in the
current profile, assumed dominant, since a different strategy will
• The VM that has to migrate experiences a temporary unavail- not change or even augment the needed costs, so a player has no
ability, and this causes an inefficiency and a delay in the comple- incentive to change strategy:
tion of the allocated task. Such an effect is modeled by a proper
cost function, which depends on the VM to be migrated and the ∃s ∈ S : ∀p ∈ P , ∀x ∈ Y , φ̄ p (sp , s−c ) ≥ φ̄ p (x, s−p )
(11)
criticality of the task running on the VM. In fact, the bigger is →s is a Nash equilibrium.
the VM to be migrated, the higher is the inefficiency to be expe-
Specifically, if we consider that the first decision to be taken is to
rienced. Analogously, more critical is the task allocated to the
migrate or not, and then, to identify the most suitable HM towards
VM and more serious would result the inconvenience caused
which the deployment must take place, we have that no migration
by the migration. Such a cost can be formulated by assuming a
is profitable if the following condition holds:
constant value for the inefficiency, weighted by the sum of the
importance and the weight of the VM to be migrated: σ (s∅ ) ≥ σ (s∗ ) − δ+HM − Φ p (s∗ ), (12)
Φ (sj )contr1 = (ω1 + ω2 ) · cost migr ,
p
(7) where s∗ is the strategy of the migration towards the most
convenient HM, which is the one that resolve such an optimization
where ω1 and ω2 are real numbers in the [0, 1] interval given
problem:
by the defuzzification of a fuzzy linguistic label respectively
indicating the importance and the weight of the player. The s∗ = max si · [σ (si ) − δ+HM − Φ p (si )]. (13)
first one is inherited by the player from the task allocated to its i=0,...,n

VM, while the second one is assigned at the allocation time of Eq. (12) can be further improved in order to find a condition for the
the VM and is determined according to threshold-based rules: migration or not:
if the request of resource for a VM is within a given interval
i
[rdown , rup
i
], then the VM has assigned li to ω2 . σ (s∗ ) − σ (s∅ ) ≥ δ+HM + Φ p (s∗ ), (14)
• There is a cost to pay in order to physically move the VM, and which means that is convenient to migrate, only if, the improve-
allocate it to the destined HM (e.g., in terms of power energy ment obtained in terms of improved satisfaction of the customer’s
and network bandwidth). Such a cost is a proper function of the SLA requirements is higher than the costs to be paid for this op-
weight of the VM to be migrated: eration. Moreover, such a solution, minimizes the number of HMs
jointly activated, thanks to the cost of the additional HM inserted
Φ p (sj )contr2 = ω2 · cost move . (8)
in Eq. (13).
• When a VM is migrated to a new HM, it causes an inefficiency
to the other VMs already hosted by the destination HM. Such 5. Experimental results
a situation is modeled by a proper cost function, depending on
the number and type of the hosted VMs. Moreover, each HM According to the proposed Coral Reefs-based ecosystem ap-
is characterized by a capacity C , which has to be split among proach, each grid element (x, y) of the reef (modeled in our context
the hosted VMs. We can have a situation where the residual as a vector A = {ax,y,i }) represents a HM hx,y . We assume that, the
capacity is not sufficient for the migrated VM and/or the space available (resource capacity cx,y ) within each element hx,y is
migration may cause a considerable reduction in the capacity different, i.e., the HMs are heterogeneous. Moreover, the HM hx,y
available for an eventual resizing of one of the hosted VM. Such can host a set of VM instances (micro-colony), such that Eq. (2) is
a case can be considered in computing the cost of migration, verified.
by having a function that augments its value as the residual Thus, at each step of the simulation process, the CRO-algorithm
capacity decreases (due to the migration): computes which VM instances require more resources (brooding),
activating a decision process for choosing whether to re-size the
Φ p (sj )contr3 = (ω2 − κ) · cost alloc + κ · ϵ(κ), (9)
VM (if there are still resources available on the HM), or migrating
where κ indicates the residual capacity of the jth HM at the time one of the instances hosted on the involved HM. We assume an
of decision, and cost alloc is a constant. Such a formulation implies increase or a reduction of resources, which is no greater than
the highest value, when the weight of the migrating VM is high 30% compared to the resources already used by the involved
and the residual capacity is low. On the contrary, the cost is VM. In order to make the simulated scenario more realistic, we
negative, i.e., we have an incentive, when the weight of the VM assume that the increase of resources may also be negative. In
8 M. Ficco et al. / Future Generation Computer Systems ( ) –

Fig. 2. The behavior of the decision process.

Fig. 3. Number of migrations and replications requests to be satisfy, during each Fig. 4. Time need to reallocate the allocation requests computed at each step pi .
simulation step pi .

this case, the decision process implies a resize (reduction) of the


resources used by the involved VM. Moreover, assuming that
some kind of auto-scaling policy has been contracted in the SLA,
the algorithm computes which instances are subjected to a load
increase or reduction (budding), which triggers either the turn-off
of a replicated VM instance (scaling-down), or the activation of a
new VM instance (scaling-up). Finally, the algorithm decides which
VM instance has to be removed (for natural death or catastrophic
events), and how many added (broadcast). Then, by using Game
Theory, we identify which VMs of the involved HMs must be
migrated, and what are the destination HMs on which he migrated
or replicated instances have to be deployed, as well as what are the
destination HMs on which the new VMs can be deployed. During
each simulation step, the amount of free resources available on Fig. 5. Number of active HMs and VMs instances hosted in the cloud ecosystem.
each HM is updated according to the decision process.
In order to make the experimental results more clear, we Finally, Fig. 5 represents graphically how the number of the
assume that, at each step, only a new VM is added to the cloud, involved physical hosts (i.e., the number of active HMs that host
and no VMs are removed. Therefore, the number NM /R of VMs to at last a VM) and the number of VM instances hosted in the cloud
be reallocated is the sum of migration and replication requests ecosystem (such as VM (pi ) = VM (pi−1 ) + R + 1) increase during
NM + NR + 1. Moreover, at step 0, we assume that five VMs are the simulation process.
already hosted in the cloud, and they are deployed on some HMs,
as well as the allocation of each new VM i on the host hx,y requires
6. Conclusions
an amount of resources ri included in the range:

(cm ∗ 0.1) < ri < (cm ∗ 0.3), (15) In this work, a new bio-inspired and game theoretic-based
meta-heuristic scheme for managing elastic resources reallocation
where cm represents the average resource capacity ci,j of the HMs in cloud infrastructures has been presented.
available in the cloud ecosystem. Specifically, the proposed solution leverages an evolutionary
The results reported in Fig. 2 show the behavior of the decision algorithm based on the observation of the reefs structure and coral
process. In particular, for each simulation step, the number of reproduction, showing a very interesting behavior to simulate the
migrations (M) and replications (R) are reported, together with the continuous requests of new cloud resources, which trigger the
number of the involved instances (VMs) and the physical host on resize, replication and migration processes characterizing cloud
which they are hosted (HMs). data-center activities. It also exploits the competition dynamics
Fig. 3 shows, at each step pi , the total number of migrated among the strategic users (with their SLAs) and service providers
and replicated requests (NM /R ), generated by the Coral-Reef bio- (with their revenue maximization objectives), to converge towards
inspired algorithm, which must be satisfied. socially optimal equilibrium solutions that are able to satisfy
In Fig. 4 is shown, for each simulation step pi , the simulation the apparently contradicting interests of the involved parties.
time necessary for computing the allocation schema (i.e., to In particular, a game theory-based approach is used to identify
reallocate in the cloud the VMs allocation requests computed by the best VM reallocation schema with respect to the conflicting
the Coral-Reef algorithm). performance objectives of the customers and the cloud provider,
M. Ficco et al. / Future Generation Computer Systems ( ) – 9

by optimizing a global objective function that takes into account [17] T. Knauth, C. Fetzer, Scaling non-elastic applications using virtual machines,
the individual interests of all the involved entities. in: Proc. of the 4th Int. Conf. on Cloud Computing, CLOUD, 2011, pp. 468–475.

The CRO-based model strongly characterizes the proposed [18] K. Lazri, S. Laniepce, J. Ben-Othman, When dynamic VM migration falls under
the control of vm users, in: Proc. of the IEEE 5th Int. Conf. on Cloud Computing
solution by simulating interesting elasticity properties of the cloud Technology and Science, CloudCom, 2013, pp. 395–402.
paradigm. Due to its evolutionary nature, in which the collective [19] M. Mishra, A. Das, P. Kulkarni, A. Sahoo, Dynamic resource management using
emergent behavior of the ‘‘reefs’’ exhibits a great deal of global virtual machine migrations, IEEE Commun. Mag. 50 (9) (2012) 34–40.
intelligence, capable of complex tasks, the resulting schema can [20] S. Ricciardi, D. Careglio, G. Santos-Boada, J. Sol-Pareta, U. Fiore, F. Palmieri, Sav-
provide a good scalability in presence of a large number of virtual ing energy in data center infrastructures, in: Proceedings—1st International
Conference on Data Compression, Communication, and Processing, CCP 2011,
machines and host-related resources available into the cloud.
2011, pp. 265–270.
We analyzed the performance of the proposed approach by [21] E. Arzuaga, D.R. Kaeli, Quantifying load imbalance on virtualized enter-
implementing a simple simulation-based proof of concept scenario prise servers, in: Proc. of the 1st Int. Conf. on Performance Engineering,
that considered both providers and users together with their (WOSP/SIPEW), ACM, 2010, pp. 235–242.
available resources, capacities and SLAs. The experimental results [22] A. Gulati, A. Holler, M. Ji, G. Shanmuganathan, C. Waldspurger, X. Zhu,
Vmware distributed resource management: Design, implementation, and
validated our hypothesis that a combined bio-inspired and game
lessons learned, 2012.
theoretic-based meta-heuristic approach, does not only achieve a
[23] X. Zhang, Z.-Y. Shae, S. Zheng, H. Jamjoom, Virtual machine migration in
satisfactory solution in terms of adaptiveness and elasticity, but it an over-committed cloud, in: Proc. of the IEEE Network Operations and
also can lead to significant performance improvements in terms Management Symposium, NOMS, 2012, pp. 196–203.
of convergence time, when the problem scales towards very large [24] N.M. Calcavecchia, O. Biran, E. Hadad, Y. Moatti, VM placement strategies for
clouds with plenty of machines and VMs to be reallocated. cloud scenarios, in: Proc. of the IEEE 5th Int. Conf. on Cloud Computing, CLOUD,
2012, pp. 852–859.
[25] Andrei Sfrent, Florin Pop, Asymptotic scheduling for many task computing in
References big data platforms, Inform. Sci. 319 (20) (2015) 71–91.
[26] Mihaela-Andreea Vasile, Florin Pop, Radu-Ioan Tutueanu, Valentin Cristea,
Joanna Kolodziej, Resource-aware hybrid scheduling algorithm in heteroge-
[1] Weiwei Lin, Baoyun Peng, Chen Liang, Bo Liu, Novel resource allocation model neous distributed computing, Future Gener. Comput. Syst. 51 (2015) 61–71.
and algorithms for cloud computing, in: Proc. of the 4th Int. Conf. on Emerging [27] M. Ficco, B. Di Martino, R. Pietrantuono, S. Russo, Optimized task allocation
Intelligent Data and Web Technologies, 2013, pp. 77–82. on private cloud for hybrid simulation of large-scale critical systems,
[2] M. Ficco, C. Esposito, Henry Chang, Kim-Kwang Raymond Choo, Live migration Future Gener. Comput. Syst. (2016) http://dx.doi.org/10.1016/j.future.2016.
in emerging cloud paradigms, IEEE Cloud Comput. (2016) 12–19. 01.022. available online at: http://www.sciencedirect.com/science/article/pii/
[3] L. Badger, R. Patt-Corner, J. Voas, Draft cloud computing synopsis and S0167739X16300061.
recommendations recommendations of the national institute of standards and [28] C. Esposito, A. Castiglione, F. Palmieri, M. Ficco, Trust management for
technology, NIST Spec. Publ., vol. 146, Available at: distributed heterogeneous systems by using linguistic term sets and
http://csrc.nist.gov/publications/drafts/800-146/Draft-NIST-SP800-146.pdf. hierarchies, aggregation operators and mechanism design, Future Gener.
[4] Gu. Galante, L.Carlos E. de Bona, A survey on cloud computing elasticity, in: Comput. Syst. (2015) available online at:
Proc. of the IEEE/ACM 5th Int. Conf. on Utility and Cloud Computing, 2012, http://www.sciencedirect.com/science/article/pii/S0167739X15003878.
pp. 263–270. [29] V. Casola, A. Mazzeo, N. Mazzocca, M. Rak, A SLA evaluation methodology in
[5] M. Garey, D. Johnson, Computers and Intractability: A Guide to the Theory of service oriented architectures, Adv. Inf. Secur. 23 (2006) 119–130.
NP-completeness, W.H. Freeman and Co, 1979. [30] A. Andrieux, K. Czajkowski, A. Dan, K. Keahey, H. Ludwig, T. Nakata, J. Pruyne,
[6] S. Salcedo-Sanz, A. Pastor-Sanchez, D. Gallo Marazuela, A. Portilla-Figueras, J. Rofrano, S. Tuecke, M. Xu, Web services agreement specification (WS-
A novel coral reefs optimization algorithm for multi-objective problems, Agreement), in: Global Grid Forum, The Global Grid Forum (GGF), 2004.
in: Proc. of the Intelligent Data Engineering and Automated Learning, in: LNCS, [31] R. Kubert, G. Katsaros, T. Wang, A RESTful implementation of the WS-
vol. 8206, Springer Berlin Heidelberg, 2013, pp. 326–333. agreement specification, in: Proceedings of the Second International Work-
[7] D. Agrawal, A. El Abbadi, S. Das, A.J. Elmore, Database scalability, elasticity, and shop on RESTful Design, Ser. WS-REST’11, ACM, New York, NY, USA, 2011,
autonomy in the cloud, in: Proc. of the 16th Intl. Conf. on Database Systems for pp. 67–72.
Advanced Applications, Springer-Verlag, 2011, pp. 2–15. [32] A. De Benedictis, M. Rak, M. Turtur, U. Villano, REST-based SLA management for
[8] L.M. Vaquero, L. Rodero-Merino, R. Buyya, Dynamically scaling applications in cloud applications, in: Proceedings of REST-based SLA Management for Cloud
the cloud, SIGCOMM Comput. Commun. Rev. 41 (2011) 45–52. Applications, WETICE 2015, Larnaka, Cyprus, pp. 93–98.
[9] R.N. Calheiros, C. Vecchiola, D. Karunamoorthy, R. Buyya, The aneka platform [33] European Commission. Cloud Service Level Agreement Standardisation
and qos-driven resource provisioning for elastic applications on hybrid clouds, Guidelines, 2014, available online at
Future Gener. Comput. Syst. 28 (6) (2011) 861–870. https://ec.europa.eu/digital-agenda/en/news/cloud-service-level-agreement-
[10] Z. Shen, S. Subbiah, X. Gu, J. Wilkes, Cloudscale: elastic resource scaling standardisation-guidelines.
for multi-tenant cloud systems, in: Proc. of the 2nd Symposium on Cloud
[34] International Organization for Standardization (ISO). ISO/IEC DIS 19086-1,
Computing, (SOCC), ACM, 2011, pp. 1–14.
June, 2015, available online at http://www.iso.org/iso/home/store/catalogue_
[11] S. Ricciardi, F. Palmieri, J. Torres-Vials, B. Di Martino, G. Santos-Boada, J. tc/catalogue_detail.htm?csnumber=67545.
Sol-Pareta, Green data center infrastructures in the cloud computing era,
[35] V. Casola, A. De Benedictis, M. Rak, On the adoption of security SLAs in the
in: Handbook of Green Information and Communication Systems, 2013,
cloud, in: Accountability and Security in the Cloud, in: LNCS, vol. 8937, 2014,
pp. 267–293.
pp. 45–62.
[12] Z. Gong, X. Gu, J. Wilkes, Press: Predictive elastic resource scaling for cloud
[36] M. Ficco, M. Rak, SLA-oriented security provisioning for cloud computing,
systems, in: Proc. of the 6th Int. Conf. on Network and Service Management,
in: Cloud Computing and Services Science, in: LNCS, vol. 367, Springer-Verlag,
(CNSM), IEEE, 2010, pp. 9–16.
2013, pp. 230–244.
[13] W. Dawoud, I. Takouna, C. Meinel, Elastic vm for cloud resources provisioning
[37] D. Bacciu, M.G. Buscemi, L. Mkrtchyan, Adaptive fuzzy-valued service
optimization, in: Advances in Computing and Communications, Vol. 190,
selection, in: Proceedings of the 2010 ACM Symposium on Applied Computing,
Springer Berlin, Heidelberg, 2011, pp. 431–445.
SAC, March 2010, pp. 2467–2471.
[14] J.O. Fito, I.G. Presa, J.G. Fernandez, Sla-driven elastic cloud hosting provider,
in: Proc. of the 18th Euromicro Conf. on Parallel, Distributed and Network- [38] T.J. Ross, Fuzzy Logic with Engineering Applications, third ed., Wiley, 2010.
Based Processing, (PDP), IEEE, 2010, pp. 111–118. [39] M. Dorigo, V. Maziezzo, A. Colorni, The ant system: optimization by a colony
[15] N. Roy, A. Dubey, A. Gokhale, Efficient autoscaling in the cloud using predictive of cooperating ants, IEEE Trans. Syst. Man Cybern. 26 (1) (1996) 29–41.
models for workload forecasting, in: Proc. of the 4th Int. Conf. on Cloud [40] D. Karaboga, B. Basturk, On the performance of the artificial bee colony (ABC)
Computing, (CLOUD), IEEE, 2011, pp. 500–507. algorithm, Appl. Soft Comput. 8 (2008) 687–697.
[16] N. Vasic, D. Novakovic, S. Miucin, D. Kostic, R. Bianchini, Dejavu: accelerating [41] S. Salcedo-Sanz, J.E. Sanchez-Garcia, J.A. Portilla-Figueras, S. Jimenez-
resource allocation in virtualized environments, in: Proc. of the 17th Intl. Conf. Fernandez, A.M. Ahmadzadeh, A coral-reef optimization algorithm for the
on Architectural Support for Programming Languages and Operating Systems, optimal service distribution problem in mobile radio access networks, Trans.
(ASPLOS), ACM, 2012, pp. 423–436. Emerg. Telecommun. Technol. 25 (11) (2013) 1057–1069.
10 M. Ficco et al. / Future Generation Computer Systems ( ) –

Francesco Palmieri received the M.S. degree and the


[42] M.J. Osborne, A. Rubinstein, A Course in Game Theory, The MIT Press, 1994.
Ph.D. degree in computer science from the University
[43] F. Palmieri, L. Buonanno, S. Venticinque, R. Aversa, B. Di Martino, A distributed
of Salerno. He was an Assistant Professor at the Second
scheduling framework based on selfish autonomous agents for federated cloud University of Napoli. Currently he is an Associate Professor
environments, Future Gener. Comput. Syst. 29 (6) (2014) 1461–1472. at the University of Salerno. His research interests
include advanced networking protocols and architectures
and network security. He has been the director of the
Massimo Ficco received the degree in computer engi- Networking Division of the Federico II University of Napoli
neering from the University of Naples Federico II (IT) in and contributed to the development of the Internet in Italy
2000 and the Ph.D. degree in information engineering as a senior member of the Technical-Scientific Advisory
from the University of Parthenope in 2010. He is an assis- Committee and of the CSIRT of the Italian NREN GARR.
tant professor in the Department of ‘‘Ingegneria Industri- He serves as the editor-in-chief of an international journal and participates to the
ale e dell’Informazione’’ at the Second University of Naples editorial board of other ones.
(SUN). From 2000 to 2010, he was a senior researcher at
the Italian University Consortium for Computer Science Aniello Castiglione received a Ph.D. in Computer Science
(CINI). His current research interests include software en- from the University of Salerno, Italy. Actually he is an
gineering architecture, cloud computing, security aspects adjunct professor at the University of Salerno (Italy)
of critical infrastructure, and mobile computing. and at the University of Naples ‘‘Federico II’’ (Italy). He
received the Italian National Academic Qualification (ASN)
as Associate Professor in Computer Science. He serves
as a reviewer for several international journals and is
Christian Esposito received the graduate-degree in com- Managing Editor of two international journals. He also
puter engineering in 2006, and the Ph.D. degree in 2009 acts as a reviewer in around 50 international journals. He
from the University of Naples Federico II. Currently, he served as Program Chair and TPC member in around 90
is a postdoc researcher in the Institute of High Perfor- international conferences. He acted as a Guest Editor in
mance Computing and Networking (ICAR) at the National several journals and serves as Editor in several editorial boards of international
Research Council (CNR). His main interests include mobile journals. He published more than 100 papers in international journals and
computing, benchmarking, aspects of publish/subscribe conferences. One of his papers has been selected as ‘‘Featured Article’’ in the
services, and reliability strategies for data dissemination IEEE Cybersecurity initiative. He has been involved in forensic investigations,
in large-scale critical systems. collaborating with several Law Enforcement Agencies as a consultant. He is a
member of several associations, including ACM, IEEE. His current research interests
include Information Forensics, Digital Forensics, Security and Privacy on Cloud,
Communication Networks and Applied Cryptography.

S-ar putea să vă placă și