SLA negotiation and enforcement policies for revenue maximization and client classification in cloud providers

https://doi.org/10.1016/j.future.2014.03.004Get rights and content

Highlights

  • Providing a set of policies for maximizing BLOs achievement of a Cloud provider.

  • Modeling of client classification as a complementary BLO to Revenue Maximization.

  • Our rules use state-of-the-art cloud technologies: VM migration, elasticity, etc.

  • Development of a fine-grain simulator for exhaustive validation of the model.

Abstract

In Cloud Computing markets, owners of computing resources negotiate with their potential clients to sell computing power. The terms of the Quality of Service (QoS) to be provided as well as the economic conditions are established in a Service-Level Agreement (SLA). The common objective of a Cloud provider is to maximize its economic profit. However, there are situations in which providers must differentiate the SLAs with respect to the type of client that is willing to access the resources or the agreed QoS, e.g. when the hardware resources are shared between users of the company that own the resources and external users.

This article proposes two sets of policies to manage SLAs with respect to the business objectives of a Cloud provider: Revenue Maximization or classification of clients. The criterion to classify clients is established according to the relationship between client and provider (external user, internal or another privileged relationship) and the QoS that the client purchases (cheap contracts or extra QoS by paying an extra fee). The validity of the policies is demonstrated through exhaustive experiments.

Introduction

In recent years, the Utility Computing business model  [1] is increasing its acceptance in the Information Technology sector thanks to the burst of Cloud Computing paradigm  [2]. In Utility Computing, the users of the resources are not necessarily their owners: users run their applications or services in remote data centers and pay as a function of the usage. Utility Computing allows the users to economically benefit from economies of scale, because it minimizes the space and maintenance costs. Cloud Computing has emerged as a successful implementation of Utility Computing because virtualization allows to share physical resources transparently to the clients, by isolating different clients as if each client were using a dedicated physical host.

This article considers a Cloud Computing market in which providers and clients participate in a market to sell or buy services or resources. Although this market model is not common in current commercial Cloud providers, it is based on research proposals for creating a market place of computing resources  [3], [4], [5] and could be potentially applicable in real scenarios. In such a market, a client starts a negotiation process with the providers that fulfill their requirements to establish the terms of the contract  [6], [7]: the client creates a proposal of agreement for each provider that meets its requirements and fills a Service-Level Agreement (SLA) template with its requirements. When the providers receive the SLA proposal, they evaluate it and return their SLA proposals, with economic information such as pricing, and terms of violations. Then, the client chooses the provider whose SLA suits best its interests. From this moment, both parties have reached an agreement, and the terms of the Quality of Service (QoS) to be provided and the economic conditions are kept in the SLA, which is shared between client and provider. If the SLA terms are not fulfilled when the client uses the provider’s resources, the provider must pay a penalty to the client. The penalty is calculated according to the severity of the SLA violation, and could be influenced by other parameters, such as the provider–consumer relationship, framework contracts, or risk assessments.

The behavior of the provider is determined by its Business-Level Objectives (BLO), which are considered when the SLA is negotiated and enforced. For a Cloud provider, the maximization of economic profit is the most common BLO. This objective can be achieved by maximizing the price of the Cloud service, also by minimizing the economic impact caused by the penalties derived from possible violations of the agreed SLAs. However, Revenue Maximization is not the only BLO that a provider could be interested in.

Despite the economic benefits of using computing as a utility, there are still open security reasons to not submit the critical or confidential data to resources that are located in third parties  [8]. For example, a company that stores sensible data about its clients may not be legally allowed to send this information to data centers belonging to a third company. These companies require an in-house infrastructure. Aiming for profitability, they may decide to hire out the spare resources of their data centers to external users that do not have such security or confidentiality restrictions, because the price that external clients pay to use the resources contributes to amortize the cost of the data centers. Thanks to virtualization, a company could provide VMs to external clients without putting its critical data on risk.

In such a scenario, a differentiation between internal and external users is advisable. However, a binary classification of the users as internal/external is not accurate enough in many situations. For example, headquarters of a big company can classify the users of its data centers according to different levels: users from the headquarters that own the resources are completely internal, users from other companies are completely external, and users from other headquarters of the same company are in a middle ground. Even multinationals could define more degrees of proximity for headquarters in the same country and headquarters in other countries. Whilst completely external users pay a fee and completely internal users use the resources for free, the mid-range users would pay a reduced fee to encourage each location to only use resources from external locations when strictly necessary.

Another example of intermediate users are those from trusted entities that decide to share their computing resources for sharing risks and dealing with peaks of workload without the need to overprovision resources. Examples of trusted entities are different companies from the same business cluster  [9].

Clients can be classified according to other criteria. Many service providers classify their clients according to the QoS that they have purchased. For example, Spotify  [10] is an online music provider that classifies its clients in three categories (free, unlimited and premium) according to their monthly fee. The higher the fee, the more the services and QoS: unlimited streaming hours, highest quality of sound, available downloads, etc. The provider must consider the purchased QoS when allocating the resources.

The usage of the resources by external users can affect the QoS of internal users if the SLAs do not reflect priorities between clients in terms of pricing or allocation of resources. Client Classification is applied to keep high QoS to internal users or users with high QoS requirements. Client Classification considers the information about the users when giving them access to the resources and prioritizes some SLAs according to two criteria:

QoS that the users are willing to acquire: the higher the QoS the higher the price. This is the traditional classification of services in Utility Computing.

Affinity between the client and the provider: clients from the same company as the provider or from entities that have a privileged relationship with the provider can hire the services at better prices, better QoS, or any other privilege. This novel approach was devised with the success of Cluster and Grid Computing, in which organizations share part of their resources with users from other organizations. By prioritizing users to which there is high affinity, organizations can ensure that their internal users will have enough resources or QoS when there is a peak of external demand.

Achieving both Revenue Maximization and Client Classification BLOs can be difficult because of a limitation of current Cloud market models: the lack of communication between market and resource layers. Since the Resource Manager at the infrastructure layer does not have knowledge about the business details, it is difficult to define accurate policies or objectives to be fulfilled by the resources. Similarly, if a business broker negotiates the sale of resources without detailed information about them, this would potentially lead to waste or overload resources. To deal with this problem, we introduce the Economically Enhanced Resource Manager (EERM). The EERM enables bidirectional communication between Business and Resource layers to (1) manage resources and enforce SLAs for maximizing the BLOs and (2) support the negotiation of SLAs for adjusting them to the market status and the real capacity of the providers.

The main goal of this article is facing the problem of Cloud resource management from both business and performance sides, which are often conflicting. We provide an integral solution of several policies that work together for maximizing the achievement of the BLOs of a Cloud provider, dealing with performance issues. We describe and evaluate a set of policies for maximizing the BLOs: Price Maximization and Discrimination, Resources Overselling, Selective SLA Violation, Dynamic Scaling of Resources, and Runtime Migration of VMs. We demonstrate that they can be applied for maximizing two different BLOs: Revenue Maximization and Client Classification. Since both markets and the internal status of the providers change over time, we evaluate the introduced policies in terms of relative results and trends (e.g. using a certain policy you can generally increase the profit).

The experiments have been performed using the EERM simulator  [11]; a fine-grained, customizable Cloud market simulator that triggers several business policies that are defined by users. Both the policies and the simulations are targeting the infrastructure layer within Cloud Computing (Infrastructure as a Service, IaaS). The validity of the policies is evaluated through simulations instead of real executions mainly because of two reasons: the first is the difficulty to acquire a testbed large enough to get representative data from the experiments; the second is that this article does not evaluate the performance, but the business benefits of using an EERM in Cloud Computing markets. These markets are experimental at this moment, and there are no traces currently available of real executions for their reproduction in experiments.

The rest of the article is structured as follows: after a summary of the related work, we introduce the SLA negotiation and enforcement model in Section  3. Section  4 describes the group of policies that have been used for enforcing both Revenue Maximization and Client Classification objectives: their motivation and their application. We demonstrate the validity of the policies in Section  5, which shows the results of the performed simulations. Finally, we expose the conclusions of our work and depict some future research.

Section snippets

Related work

There is a large body of work that considers Business-Oriented Resource Management. Yeo et al.  [12] propose a model for market-based cluster computer with some elements common to EERM. The cluster nodes are connected to a central manager which incorporates other sub-components for performing pricing, job scheduling, monitoring, and dispatching. The main difference from our EERM is that EERM is focused on resource management, so it does not implement some functions such as billing, or identity

Model for SLA negotiation and enforcement

A Cloud market has two main actors: clients and providers. When clients try to buy resources for hosting their services or applications, they send offers to providers to start a negotiation. Each provider owns a set of N physical machines. Each physical machine can host several VMs that execute tasks, such as Web Services or Batch Jobs. The SLA of a task is described as SLA={Rev(vt),C,S,Δt}:

  • Rev(vt) is a revenue function that describes how much money the provider earns after finishing correctly

Business-driven SLA negotiation and enforcement

This article presents policies to autonomously maximize the achievement of the BLOs of a Cloud provider. This section presents two sets of policies classified by their BLO: Revenue Maximization and Client Classification.

To facilitate the reading of this article, the names of the policies are abbreviated according to the following notation PolicyNameBLO Name. PolicyName is an abbreviation of the policy name. The abbreviations of all the policies are shown below, enclosed in parentheses next to

Evaluation

This section described the simulation environment as well as the results of the simulations for each policy introduced in the previous section. As a direct reference, Table 2 shows a summary of the figures that show the results of the simulation for the different policies that are introduced in this article.

Conclusions and future work

This article has introduced a set of policies that can be used for maximizing the achievement rate of the BLOs of a Cloud provider. Two BLOs have been considered: Revenue Maximization and Client Classification. Two facets can be used to classify the clients: client affinity and QoS.

First, we introduced a set of policies for Revenue Maximization: Price Maximization and Resources Overselling, which are triggered when the SLA is negotiated; Selective Violation of SLAs, Dynamic Scaling of Resources

Acknowledgments

This work is supported by the Ministry of Science and Technology of Spain under contract TIN2012-34557, by the European Union (FEDER funds) under contract TIN2012-34557, and by the Generalitat de Catalunya under contract 2009-SGR-980.

Mario Macías obtained his Master Degree in Computer Sciences at the Universitat Autonoma de Barcelona. After some years of working in IT companies, he joined Barcelona Supercomputing Center (BSC) in 2006 to work in European Research Projects and carry out his Ph.D. studies at Technical University of Catalonia (UPC). He combines his main job at BSC with his lectures about Object-Oriented programming at UPC.

References (36)

  • D.A. Menascé et al.

    Business-oriented resource management policies for e-commerce servers

    Perform. Eval.

    (2000)
  • N. Poggi et al.

    Self-adaptive utility-based web session management

    Comput. Netw.

    (2009)
  • M.A. Rappa

    The utility business model and the future of computing services

    IBM Syst. J.

    (2004)
  • R. Buyya et al.

    Market-oriented cloud computing: vision, hype, and reality for delivering it services as computing utilities

  • J. Altmann, C. Courcoubetis, G.D. Stamoulis, M. Dramitinos, T. Rayna, M. Risch, C. Bannink, Gridecon: a market place...
  • D. Neumann et al.

    SORMA—building an open grid market for grid resource allocation

  • S. Garg et al.

    Mandi: a market exchange for trading utility and cloud cocmputing services

    J. Supercomput.

    (2011)
  • M. Macias, J. Guitart, Using resource-level information into nonadditive negotiation models for cloud market...
  • M. Macias, O. Fito, J. Guitart, Rule-based SLA management for revenue maximisation in cloud computing markets, in: 2010...
  • L.M. Kaufman

    Data security in the world of cloud computing

    IEEE Secur. Priv.

    (2009)
  • M.E. Porter

    Clusters and the new economics of competition

    Harv. Bus. Rev.

    (1998)
  • Spotify, 2014....
  • Economically Enhanced Resource Manager, 2014....
  • C.S. Yeo et al.

    A taxonomy of market-based resource management systems for utility-driven cluster computing

    Softw. Pract. Exp.

    (2006)
  • M.J. Freedman, C. Aperjis, R. Johari, Prices are right: managing resources and incentives in peer-assisted content...
  • S. Wee, Debunking real-time pricing in cloud computing, in: 11th IEEE/ACM International Symposium on Cluster, Cloud and...
  • T. Pueschel, D. Neumann, Management of cloud infrastructures: policy-based revenue optimization, in: International...
  • M. Macias et al.

    Client classification policies for SLA negotiation and allocation in shared cloud datacenters

  • Cited by (41)

    • Compensation and pricing strategies in cloud service SLAs: Considering participants’ risk attitudes and consumer quality perception

      2022, Electronic Commerce Research and Applications
      Citation Excerpt :

      To alleviate users’ concerns about unexpected outages, the CSP always publishes an SLA along with the cloud service. The SLA embodies a list of key parameters, such as service price, functionality descriptions (e.g., storage size, supported computing tasks), service level (e.g., response time, availability and throughput) and guarantee compensation if service requests cannot be fulfilled at the promised metrics (Macías and Guitart 2014; Hussain et al., 2022b). It is well known that CSPs have benefited from proper pricing strategies (Keskin and Taskin 2015; Nan et al. 2019; Chen et al. 2019).

    • Do ‘green’ data centres really have zero CO<inf>2</inf> emissions?

      2022, Sustainable Energy Technologies and Assessments
      Citation Excerpt :

      According to the literature, three representative IT load profiles (Load Profile A, B and C) are considered in this work, as shown in Fig. 1. Load Profile A is based on the data provided by the Internet Service Provider on the Web workload pattern of the university domain [35], and is publicly used by Rahmani et al. [47] to model the operation of a data centre. Load Profile B is widely used to test different cooling system and simulate the data centre cooling demand [21,20].

    • Modelling and optimisation of microgrid configuration for green data centres: A metaheuristic approach

      2020, Future Generation Computer Systems
      Citation Excerpt :

      As a case study for modelling, we assume a data centre with a structure shown in Fig. 1 and a server farm consisting of 40,000 computer servers. The annual hourly server utilisation and power consumption of the data centre are generated based on the weekly utilisation profile presented by Macías and Guitart [39] and the simulation power model presented in [40]. Fig. 5 shows the annual hourly power consumption profile of the data centre for whose microgrid configuration is optimised.

    View all citing articles on Scopus

    Mario Macías obtained his Master Degree in Computer Sciences at the Universitat Autonoma de Barcelona. After some years of working in IT companies, he joined Barcelona Supercomputing Center (BSC) in 2006 to work in European Research Projects and carry out his Ph.D. studies at Technical University of Catalonia (UPC). He combines his main job at BSC with his lectures about Object-Oriented programming at UPC.

    Jordi Guitart received his M.S. and Ph.D. degrees in Computer Science from the Technical University of Catalonia (UPC), in 1999 and 2005, respectively. Currently, he is an associate professor at the Computer Architecture Department of the UPC and an associate researcher at Barcelona Supercomputing Center (BSC). His research interests are oriented towards innovative resource management approaches for modern distributed computing systems. He is involved in a number of European projects.

    View full text