602 R. Buyya et al. / Future Generation Computer Systems 25 (2009) 599–616
Fig. 2. Google search trends for the last 12 months.
next-generation data centers with nodes ‘‘virtualized’’ through
hypervisor technologies such as VMs, dynamically ‘‘provisioned’’
on demand as a personalized resource collection to meet a
specific service-level agreement, which is established through a
‘‘negotiation’’ and accessible as a composable service via Web
Service technologies such as SOAP and REST.
3.2. Characteristics
A set of characteristics that helps distinguish cluster, Grid
and Cloud computing systems is listed in Table 1. The resources
in clusters are located in a single administrative domain and
managed by a single entity whereas, in Grid systems, resources are
geographically distributed across multiple administrative domains
with their own management policies and goals. Another key
difference between cluster and Grid systems arises from the way
application scheduling is performed. The schedulers in cluster
systems focus on enhancing the overall system performance and
utility as they are responsible for the whole system. On the
other hand, the schedulers in Grid systems called resource brokers,
focusing on enhancing the performance of a specific application in
such a way that its end-users’ QoS requirements are met.
Cloud computing platforms possess characteristics of both
clusters and Grids, with its own special attributes and capabilities
such strong support for virtualization, dynamically composable
services with Web Service interfaces, and strong support for
creating 3rd party, value added services by building on Cloud
compute, storage, and application services. Thus, Clouds are
promising to provide services to users without reference to the
infrastructure on which these are hosted.
3.3. Web search trends
The popularity of different paradigms varies with time. The
web search popularity, as measured by the Google search trends
during the last 12 months, for terms ‘‘cluster computing’’, ‘‘Grid
computing’’, and ‘‘Cloud computing’’ is shown in Fig. 2. From the
Google trends, it can be observed that cluster computing was
a popular term during 1990s, from early 2000 Grid computing
become popular, and recently Cloud computing started gaining
popularity.
Spot points in Fig. 2 indicate the release of news related to Cloud
computing as follows:
A IBM Introduces ‘Blue Cloud’ Computing, CIO Today — Nov 15
2007.
B IBM, EU Launch RESERVOIR Research Initiative for Cloud
Computing, IT News Online — Feb 7 2008.
C Google and Salesforce.com in Cloud computing deal, Siliconre-
public.com — Apr 14 2008.
D Demystifying Cloud Computing, Intelligent Enterprise — Jun 11
2008.
E Yahoo realigns to support Cloud computing, ‘core strategies’,
San Antonio Business Journal — Jun 27 2008.
F Merrill Lynch Estimates ‘‘Cloud Computing’’ To Be $100 Billion
Market, SYS-CON Media — Jul 8 2008.
Other more recent news includes the following:
• Yahoo, Intel and HP form Cloud computing labs, Reseller News
— Jul 29 2008.
• How Cloud Computing Is Changing The World, Pittsburgh
Channel.com — Aug 4 2008.
• SIMtone Corporation Takes Cloud Computing to the Next Level
with Launch of First Wireless, ‘‘Zero-Touch’’ Universal Cloud
Computing Terminal, TMCnet — Sep 8 2008.
4. Market-oriented Cloud architecture
As consumers rely on Cloud providers to supply more of
their computing needs, they will require specific QoS to be
maintained by their providers in order to meet their objectives
and sustain their operations. Cloud providers will need to consider
and meet different QoS parameters of each individual consumer
as negotiated in specific SLAs. To achieve this, Cloud providers can
no longer continue to deploy traditional system-centric resource
management architecture that do not provide incentives for them
to share their resources and still regard all service requests
to be of equal importance. Instead, market-oriented resource
management [11,12] is necessary to regulate the supply and
demand of Cloud resources to achieve market equilibrium (where
supply = demand), providing feedback in terms of economic
incentives for both Cloud consumers and providers, and promoting
QoS-based resource allocation mechanisms that differentiate
service requests based on their utility. In addition, clients can
benefit from the ‘‘potential’’ cost reduction of providers, which
could lead to a more competitive market and thus lower prices.
Fig. 3 shows the high-level architecture for supporting market-
oriented resource allocation in Data Centers and Clouds. There are
basically four main entities involved:
• Users/Brokers: Users or brokers acting on their behalf submit
service requests from anywhere in the world to the Data Center
and Cloud to be processed.
• SLA Resource Allocator: The SLA Resource Allocator acts as
the interface between the Data Center/Cloud service provider
and external users/brokers. It requires the interaction of
the following mechanisms to support SLA-oriented resource
management:
◦ Service Request Examiner and Admission Control: When
a service request is first submitted, the Service Request
Examiner and Admission Control mechanism interprets the
submitted request for QoS requirements before determining
whether to accept or reject the request. Thus, it ensures
that there is no overloading of resources whereby many
service requests cannot be fulfilled successfully due to
limited resources available. It also needs the latest status
information regarding resource availability (from the VM
Monitor mechanism) and workload processing (from the
Service Request Monitor mechanism) in order to make
resource allocation decisions effectively. Then, it assigns
requests to VMs and determines resource entitlements for
allocated VMs.
◦ Pricing: The Pricing mechanism decides how service re-
quests are charged. For instance, requests can be charged
based on submission time (peak/off-peak), pricing rates
(fixed/changing) or availability of resources (supply/demand).
Pricing serves as a basis for managing the supply and demand
of computing resources within the Data Center and facilitates
in prioritizing resource allocations effectively.
◦ Accounting: The Accounting mechanism maintains the actual
usage of resources by requests so that the final cost can