On the benefits and costs of offloading among cooperating clouds

https://doi.org/10.1016/j.simpat.2021.102393Get rights and content

Abstract

A model of two multi-class service provisioning clouds which cooperate by offloading jobs from one to the other is analysed in the steady state. The costs of successful and unsuccessful offloading are set against the revenues obtained by serving local and offloaded jobs. The solution is based on approximate class decomposition and fixed-point iterations. It may be generalized to more than two cooperating clouds. The results of several numerical and simulation experiments are presented.

Introduction

Commercial clouds offering different services to paying customers are not normally overloaded. The resources provided tend to be sufficient for the expected demand. Nevertheless, there are times when some of the available resources are fully allocated and customers asking for them have to be turned away. Since losing a customer is clearly an undesirable occurrence, it has been suggested that clouds might cooperate with each other by offloading, and accepting offloads, of demands that cannot be served locally.

We are interested in quantifying the effects of this kind of cooperation between two or more clouds, each of which is capable of serving different types of jobs, requiring different types and amounts of resources. Revenues are obtained by serving jobs, and costs are incurred when jobs are offloaded or lost as a result of failed offloading attempts. Each cloud operates an admission policy that discriminates between jobs originating locally and jobs that are sent as offloads by other clouds. Offloaded jobs that are not admitted by the destination cloud are lost. A utility function taking into account all revenues and costs is introduced, and is used as a measure of profitability for the cooperating clouds. The aim of the paper is to develop algorithms enabling the efficient computation of that function and hence the optimization of admission policies.

A system consisting of two clouds, which will be our main focus of attention, is illustrated in Fig. 1.

Our solution of the appropriate model is based on an approximate decomposition of a multi-dimensional process into a number of single-dimensional ones. That approach achieves high accuracy and is numerically stable. It scales well to models of realistic size. Moreover, it lends itself to being generalized to asymmetric interactions between more than two clouds. We believe that cooperation models of this complexity have not been tackled before.

We begin by describing research that takes the same approach to cooperation between clouds as ours. An early advocacy in favour of offloading, on grounds of both reliability and performance, was presented in Weinman, [1]. That paper did not attempt to model job arrivals and departures. Instead, a static, normally distributed demand was assumed. When the stochastic nature of the demand is taken into account, the models become considerably more complicated. A two-dimensional Markov process modelling the offloads between two data centres with a single job type and a single resource type is studied in Fricker et al. [2], under heavy traffic conditions. Asymptotic approximations are obtained for a regime where both the arrival rates and the resource capacities are proportional to a parameter which grows to infinity. Another special case of offloading, with two job types and two resource types is studied in Thompson [3], again assuming saturation and employing large parameter asymptotics.

The admission policy for offloaded jobs that is used in this paper is a version of the ‘trunk reservation’ policy that was first introduced in telephone call switching networks about forty years ago (for a good overview of the subject, see the book by Ross [4]). Since then, policies of this type have been used or proposed in different areas, including an instance of fog computing where jobs of a single type are offloaded in one direction, see Guillemin and Thompson [5].

In all of the above references, the authors assume, as we do, that jobs which cannot be accommodated on arrival, and cannot be offloaded successfully, are lost. This approach also has the advantage of allowing admission policies which rely only on locally available information.

A different aspect of cooperation between small clouds was studied by Lin et al. [6]. The emphasis in that work is on the way performance considerations, including queueing times, influence the market generated by buying and selling computing resources. That market consists of a single resource type (Virtual Machines) and a single type of requests (one VM per job). The modelling is approximate. The revenues obtained by processing jobs, and the costs of losing jobs are not considered explicitly. Losses may occur due to excessive delays even when jobs are queued. A more recent study of the stability of the resource market, still without modelling job losses, is presented in Pal et al. [7].

There is quite a large body of literature dealing with cooperation and competition in the context of edge computing. There the term offloading refers to mobile devices sending computationally intensive jobs for execution to one or more edge stations, or possibly to a remote cloud that is generally assumed to be abundantly resourced (e.g., see Abolfazli et al. [8]). In these systems, job transfers take place in one direction only, from a smaller towards a larger service provider, as in the ‘osmotic’ computing paradigm examined by Villari et al. [9]. See also Zhao et al. [10], and Yu and Tang [11], where queueing delays are taken into account only in edge servers but not in remote servers; further, job losses are not evaluated.

Several optimization problems in the edge computing context have been studied using different methodologies. The setting is usually deterministic: the senders, the resource providers and the costs are given, and the question is to decide where to send each request. In El Haber et al. [12], a branch-and-bound algorithm is used to carry out an exhaustive search of the decision space. A similar problem is studied by Wang et al. [13], with emphasis on simplifying the exponential complexity of the branch-and-bound search. Another approach to that optimization, using a learning algorithm, is described by Yang et al. [14]. Guo et al. [15] consider a number of mobile users sending jobs asynchronously to an access point, which then retransmits them to an edge station. The optimization is with respect to the order of retransmission. Han et al. [16] examine a system consisting of a single mobile user generating a sequence of tasks at discrete points of time. Each task consists of a number of subtasks which may be executed in parallel on several edge servers, under a centralized controller. The problem is to estimate the likelihood that a task will not be completed within a given time interval. A survey of edge computing algorithms can be found in [17].

More distantly related to our work is the literature concerned with different forms of cooperation or different criteria for offloading jobs. The concept of a ‘Federated Cloud’, where several clouds agree to aggregate their resources, has received considerable attention. Surveys of that topic can be found in Petcu [18], and Grozev and Buyya [19], while specific architectures are discussed in Kaewpuang et al. [20], Moreno-Vozmediano et al. [21] and Rochwerger et al. [22]. Several authors address various aspects of resource allocation and scheduling in a cloud federation (e.g., see Ardagna et al. [23], Malet and Pietzuch [24] and Papagianni et al. [25]). It has also been suggested that transferring demand between clouds at different geographical locations can be used to lower the overall carbon footprint (Khosravi et al. [26] and Celesti et al. [27]).

A federation is a stronger form of cooperation than offloading. It allows the implementation of global resource allocation and job admission policies. Rather than transferring whole jobs from one cloud to another, component virtual machines may be migrated without interrupting a job. All this requires special management middleware, internetworking, and job types that lend themselves to such treatment. Moreover, the profit maximization of an individual cloud, which is our principal area of interest, is difficult to address within a federation. An implementation of a modified federation, based on bartering resources rather than fully sharing them, is proposed in Goher et al. [28]. That work acknowledges that an important reason for cooperation is to reduce the number of rejected jobs, without addressing the evaluation of the rejection probability.

Our solution methodology is based on fixed-point iterations. Although they have been applied in other fields, these ideas have not been used much in the context of multi-class decomposition. Another example of a similar fixed-point solution for a system with batch arrivals of different types can be found in [29].

The two-cloud model is described in Section 2. Its approximate solution is presented in Section 3. Section 4 contains a number of numerical and simulation experiments aimed at evaluating the accuracy of the approximation and the effect of the admission control policy. A possible generalization to more than two clouds is outlined in Section 5, but is not implemented. The present study deals mainly with the two-cloud model.

Section snippets

The model

We analyse two cloud service providers, S1 and S2, which cooperate by exchanging surplus demand under certain conditions. Resources of R different types are provided, such as CPU cores, storage, interconnection bandwidth, etc. The total resource capacity of cloud Si is specified by the vector Di=(Di,1,Di,2,,Di,R), where Di,r is the amount of type r resource available in cloud Si (i=1,2; r=1,2,,R). The ‘native’ demand, i.e. jobs originally submitted at S1 and S2, consists of K1 and K2

Fixed-point approximation

The proposed solution is based on two simplifications. The first is to assume that the stream of type j jobs offloaded by Si is Poisson, with a fixed rate ξi,j (i=1,2). Consequently, if the rates ξ2,j are known, for j=K1+1,K1+2,,K, then S1 can be analysed in isolation of S2, and if the rates ξ1,j are known, for j=1,2,,K1, then S2 can be analysed in isolation of S1.

Consider an arbitrary isolated cloud, S, with K job types and R resource types. The vector of resource capacities D, the rates of

Numerical and simulation results

The purpose of this section is to assess the accuracy of the proposed approximations by comparing them with simulations. We shall also try to examine the effect which the visible fractions have on the achievable profits.

The first experiment focuses on the Type Decomposition approximation for an isolated, non-cooperating cloud, S. There are three job types, roughly corresponding to the ‘medium’, ‘large’ and ‘extra large’ types in the A1 family offered by the Amazon EC2 (Elastic Computing Cloud)

More than two cooperating clouds

The decomposition ideas of Section 3 can, in principle, be generalized to groups of more than two clouds, at the expense of a considerable increase in computational complexity.

Suppose that a group of N clouds, S1, S2, , SN, have agreed to cooperate. The resource capacity of cloud Si is specified by the vector Di and its native demand consists of Ki types of jobs. Including the admitted offloads, each cloud may thus end up serving a total of K=K1+K2++KN different job types. Number all job

Conclusions

We have attempted to quantify the trade-offs between benefits and costs in the context of intercloud cooperation. Since the models representing the interactions between clouds are too complex to allow an exact solution, we have developed iterative approximation algorithms. Those approximations have been shown to be efficient and accurate.

An important observation that emerged from experimentation is that a properly tuned resource reservation policy is key to maximizing the benefits of

Acknowledgments

The first author acknowledges the research project, Creation of a scalable fault-tolerant information system of enterprise digitalization using Big Data technologies (AP09259208), funded by the Science Committee, Ministry of Education and Science, Republic of Kazakhstan under programme 217 and sub-programme 102.

References (30)

  • GuilleminF. et al.

    Performance of a trunk reservation policy in distributed data centres

    Perform. Eval.

    (2018)
  • ArdagnaD. et al.

    Dual time-scale distributed capacity allocation and load redirect algorithms for cloud systems

    J. Parallel Distrib. Comput.

    (2012)
  • WeinmanJ.

    Intercloudonomics: Quantifying the value of the intercloud

    IEEE Cloud Comput.

    (2015)
  • FrickerC. et al.

    Analysis of an offloading scheme for data centers in the framework of fog computing

    ACM Trans. on Modeling and Performance Evaluation of Computing Systems (ToMPECS)

    (2016)
  • ThompsonG.

    Stochastic Models for Resource Allocation in Large Distributed Systems

    (2017)
  • RossK.W.

    Multiservice Loss Models for Broadband Telecommunication Networks

    (1995)
  • S.-H. Lin, R. Pal, M. Paolieri, L. Golubchik, Performance driven resource sharing markets for the small cloud, in:...
  • PalR. et al.

    Are federated cloud sharing systems sustainable?: On dynamic sharing markets and their stability

    IEEE Trans. Sustain. Comput.

    (2020)
  • AbolfazliS. et al.

    Cloud-based augmentation for mobile devices: Motivation

    Taxonomies, and Open Challenges, IEEE Communications Surveys & Tutorials

    (2014)
  • VillariM. et al.

    Osmotic computing: A new paradigm for edge/cloud integration

    IEEE Cloud Comput.

    (2016)
  • T. Zhao, S. Zhou, X. Guo, Y. Zhao, Z. Niu, A cooperative scheduling scheme of local cloud and Internet cloud for...
  • X. Yu, L. Tang, Competition and cooperation between edge and remote clouds: A Stackelberg game approach, in: Procs....
  • El HaberE. et al.

    Joint optimization of computational cost and devices energy for task offloading in multi-tier edge-clouds

    IEEE Trans. Commun.

    (2019)
  • WangY. et al.

    Cooperative task offloading in three-tier mobile computing networks: An ADMM framework

    IEEE Trans. Veh. Technol.

    (2019)
  • YangB. et al.

    Computation offloading in multi-access edge computing: A multi-task learning approach

    IEEE Trans. Mob. Comput.

    (2020)
  • Cited by (0)

    View full text