profit maximization for cloud brokers in cloud...

14
Profit Maximization for Cloud Brokers in Cloud Computing Jing Mei , Kenli Li , Senior Member, IEEE, Zhao Tong , Qiang Li, and Keqin Li , Fellow, IEEE Abstract—Along with the development of cloud computing, more and more applications are migrated into the cloud. An important feature of cloud computing is pay-as-you-go. However, most users always should pay more than their actual usage due to the one-hour billing cycle. In addition, most cloud service providers provide a certain discount for long-term users, but short-term users with small computing demands cannot enjoy this discount. To reduce the cost of cloud users, we introduce a new role, which is cloud broker.A cloud broker is an intermediary agent between cloud providers and cloud users. It rents a number of reserved VMs from cloud providers with a good price and offers them to users on an on-demand basis at a cheaper price than that provided by cloud providers. Besides, the cloud broker adopts a shorter billing cycle compared with cloud providers. By doing this, the cloud broker can reduce a great amount of cost for user. In addition to reduce the user cost, the cloud broker also could earn the difference in prices between on-demand and reserved VMs. In this paper, we focus on how to configure a cloud broker and how to price its VMs such that its profit can be maximized on the premise of saving costs for users. Profit of a cloud broker is affected by many factors such as the user demands, the purchase price and the sales price of VMs, the scale of the cloud broker, etc.. Moreover, these factors are affected mutually, which makes the analysis on profit more complicated. In this paper, we first give a synthetically analysis on all the affecting factors, and define an optimal multiserver configuration and VM pricing problem which is modeled as a profit maximization problem. Second, combining the partial derivative and bisection search method, we propose a heuristic method to solve the optimization problem. The near-optimal solutions can be used to guide the configuration and VM pricing of the cloud broker. Moreover, a series of comparisons are given which show that a cloud broker can save a considerable cost for users. Index Terms—Cloud broker, cloud computing, cost reduction, profit maximization, queue model, service demand, VM configuration, VM pricing Ç 1 INTRODUCTION O VER the past few years, cloud computing has experi- enced tremendous development [1]. More and more cloud providers have jumped on the cloud bandwagon, and they centrally manage a variety of resources such as hard- ware and software and deliver them over the internet in the form of services to customers on demand [2]. Thanks to unique properties such as elasticity, flexibility, apparently unlimited computational power [3], and pay-as-you-use pricing model, cloud computing can reduce the require- ment of clients for large capital outlays for hardware neces- sary to deploy service and the human expenses to operate it [4]. Hence, an increasing number of clients are transfer- ring their business to the cloud. One important feature of cloud computing is pay-as-you- use [5], [6], [7], which contains two meanings. First, accord- ing to the customer resource demand such as CPU, mem- ory, etc., the physical machines are dynamically segmented using virtualization technologies and provided to custom- ers in the form of virtual machines (VMs), and customers pay according to the amount of resources they actually con- sumed. Second, the VMs can be dynamically allocated and deallocated at any time, and customers should pay based on how long the resources are actually used. Nevertheless, the pay-as-you-use pricing model is presently only concep- tual due to the extreme complexity in monitoring and audit- ing resource usage [8], and cloud providers usually adopt an hourly billing scheme; in other words, the Billing Time Unit (BTU) of the cloud providers is one hour, for instance, Amazon EC2 [9]. Therefore, the customers should pay for the resources by the hour even if they do not actually utilize the allocated resources in the whole billing horizon [10]. This leads to a waste of resources and raises the cost of cus- tomers to a certain degree. In addition, almost all cloud providers provide two main ways to pay for their instances: On-Demand and Reserved Instances [11], [12]. With On-Demand instances, users pay for compute capacity by per hour depending on which instances they run, and they are recommended for the applications with short-term workloads. Reserved Instances J. Mei, Z. Tong, and Q. Li are with the ed HPCSIP, Ministry of Education of China, College of Information Science and Engineering, Hunan Normal University, Changsha, Hunan 410081, China. E-mail: [email protected], {tongzhao, liqiang}@hunnu.edu.cn. K. Li is with the College of Information Science and Engineering, and National Supercomputing Center in Changsha, Hunan University, Changsha, Hunan 410082, China. E-mail: [email protected]. K. Li is with the College of Information Science and Engineering, and National Supercomputing Center in Changsha, Hunan University, Changsha, Hunan 410082, China, and also with the Department of Computer Science, State University of New York, New Paltz, NY 12561. E-mail: [email protected]. Manuscript received 19 Sept. 2017; revised 19 June 2018; accepted 22 June 2018. Date of publication 28 June 2018; date of current version 12 Dec. 2018. (Corresponding author: Kenli Li.) Recommended for acceptance by B. He. For information on obtaining reprints of this article, please send e-mail to: [email protected], and reference the Digital Object Identifier below. Digital Object Identifier no. 10.1109/TPDS.2018.2851246 190 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 30, NO. 1, JANUARY 2019 1045-9219 ß 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See ht_tp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

Upload: others

Post on 22-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

Profit Maximization for Cloud Brokersin Cloud Computing

Jing Mei , Kenli Li , Senior Member, IEEE, Zhao Tong , Qiang Li, and Keqin Li , Fellow, IEEE

Abstract—Along with the development of cloud computing, more and more applications are migrated into the cloud. An important

feature of cloud computing is pay-as-you-go. However, most users always should pay more than their actual usage due to the one-hour

billing cycle. In addition, most cloud service providers provide a certain discount for long-term users, but short-term users with small

computing demands cannot enjoy this discount. To reduce the cost of cloud users, we introduce a new role, which is cloud broker. A

cloud broker is an intermediary agent between cloud providers and cloud users. It rents a number of reserved VMs from cloud providers

with a good price and offers them to users on an on-demand basis at a cheaper price than that provided by cloud providers. Besides,

the cloud broker adopts a shorter billing cycle compared with cloud providers. By doing this, the cloud broker can reduce a great

amount of cost for user. In addition to reduce the user cost, the cloud broker also could earn the difference in prices between

on-demand and reserved VMs. In this paper, we focus on how to configure a cloud broker and how to price its VMs such that its profit

can be maximized on the premise of saving costs for users. Profit of a cloud broker is affected by many factors such as the user

demands, the purchase price and the sales price of VMs, the scale of the cloud broker, etc.. Moreover, these factors are affected

mutually, which makes the analysis on profit more complicated. In this paper, we first give a synthetically analysis on all the affecting

factors, and define an optimal multiserver configuration and VM pricing problem which is modeled as a profit maximization problem.

Second, combining the partial derivative and bisection search method, we propose a heuristic method to solve the optimization

problem. The near-optimal solutions can be used to guide the configuration and VM pricing of the cloud broker. Moreover, a series of

comparisons are given which show that a cloud broker can save a considerable cost for users.

Index Terms—Cloud broker, cloud computing, cost reduction, profit maximization, queue model, service demand, VM configuration,

VM pricing

Ç

1 INTRODUCTION

OVER the past few years, cloud computing has experi-enced tremendous development [1]. More and more

cloud providers have jumped on the cloud bandwagon, andthey centrally manage a variety of resources such as hard-ware and software and deliver them over the internet in theform of services to customers on demand [2]. Thanks tounique properties such as elasticity, flexibility, apparentlyunlimited computational power [3], and pay-as-you-usepricing model, cloud computing can reduce the require-ment of clients for large capital outlays for hardware neces-sary to deploy service and the human expenses to operate

it [4]. Hence, an increasing number of clients are transfer-ring their business to the cloud.

One important feature of cloud computing is pay-as-you-use [5], [6], [7], which contains two meanings. First, accord-ing to the customer resource demand such as CPU, mem-ory, etc., the physical machines are dynamically segmentedusing virtualization technologies and provided to custom-ers in the form of virtual machines (VMs), and customerspay according to the amount of resources they actually con-sumed. Second, the VMs can be dynamically allocated anddeallocated at any time, and customers should pay basedon how long the resources are actually used. Nevertheless,the pay-as-you-use pricing model is presently only concep-tual due to the extreme complexity in monitoring and audit-ing resource usage [8], and cloud providers usually adoptan hourly billing scheme; in other words, the Billing TimeUnit (BTU) of the cloud providers is one hour, for instance,Amazon EC2 [9]. Therefore, the customers should pay forthe resources by the hour even if they do not actually utilizethe allocated resources in the whole billing horizon [10].This leads to a waste of resources and raises the cost of cus-tomers to a certain degree.

In addition, almost all cloud providers provide two mainways to pay for their instances: On-Demand and ReservedInstances [11], [12]. With On-Demand instances, users payfor compute capacity by per hour depending on whichinstances they run, and they are recommended for theapplications with short-term workloads. Reserved Instances

� J. Mei, Z. Tong, and Q. Li are with the ed HPCSIP, Ministry of Educationof China, College of Information Science and Engineering, Hunan NormalUniversity, Changsha, Hunan 410081, China.E-mail: [email protected], {tongzhao, liqiang}@hunnu.edu.cn.

� K. Li is with the College of Information Science and Engineering, andNational Supercomputing Center in Changsha, Hunan University,Changsha, Hunan 410082, China. E-mail: [email protected].

� K. Li is with the College of Information Science and Engineering, andNational Supercomputing Center in Changsha, Hunan University,Changsha, Hunan 410082, China, and also with the Department ofComputer Science, State University of New York, New Paltz, NY 12561.E-mail: [email protected].

Manuscript received 19 Sept. 2017; revised 19 June 2018; accepted 22 June2018. Date of publication 28 June 2018; date of current version 12 Dec. 2018.(Corresponding author: Kenli Li.)Recommended for acceptance by B. He.For information on obtaining reprints of this article, please send e-mail to:[email protected], and reference the Digital Object Identifier below.Digital Object Identifier no. 10.1109/TPDS.2018.2851246

190 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 30, NO. 1, JANUARY 2019

1045-9219� 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.See ht _tp://www.ieee.org/publications_standards/publications/rights/index.html for more information.

Page 2: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

provide users with a significant discount (up to 75 percentin Amazon EC2) compared to On-Demand instance pricing,but customers should rent instances for long periods, e.g.,from six months to several years, according to the currentplans offered by real cloud providers such as Amazon [9]and Microsoft Azure [13]. Obviously, this discount cannotbe enjoyed by the short-term customers.

Due to above two reasons, the short-term customersalways should pay more than they actually must pay. Toreduce cost for this part of customers, we introduce thecloud broker, an intermediary agent between cloud providersand customers. Fig. 1 shows the relationship among thecloud broker, cloud providers, and customers.

The cloud broker rents the reserved VMs from cloud pro-viders for long periods with the reserved price and outsour-ces the resources as on-demand VMs to customers for alower price with respect to the price that the cloud pro-viders charge for the same VMs. A cloud broker can help toreduce the cost of customers from two aspects. First, thecloud broker takes advantages of the price gap betweenreserved and on-demand VMs, renting the reserved VMswith a good price and outsourcing them as on-demandVMs with a lower price compared with the same VMs pro-vided by cloud providers. Second, the cloud broker adoptsa smaller billing cycle (BTU) than the cloud providers.Adopting the two strategies, the resource utilization can beefficiently increased and the customer requests can beaccommodated with less cost.

In addition to helping customers to reduce their cost, thecloud broker can earn a huge difference in price between thereserved and on-demand VMs [14]. Making profit is one ofthe main objectives of all enterprises. Hence, in this paper,we focus on how to maximize the profit of the cloud broker,andmeanwhile, the customer cost can be reduced efficiently.

Like all business, the profit model of a cloud broker incloud computing is based on two components, namely, therevenue and the cost. For a cloud broker, the revenue is theservice charge to users, and the cost is the renting cost paidto cloud service providers. A profit model of a cloud brokerincludes many considerations, such as the scale (the numberof VMs) of a cloud broker system, the customer demand(the rate that requests submitted to a cloud broker), the rent-ing price (the cost price) that the resources are rented fromcloud providers, the selling price (the sales price) that thecloud broker provides resources to users, the BTU, and soforth. To maximize the profit of a cloud broker, we shouldunderstand both revenue and cost, and in particular, howthey are affected by those factors.

The revenue of a cloud broker is determined by two fac-tors, i.e., the customer demand and the sales price. The cus-tomer demand is measured by the task arrival rate of thecloud broker in this paper. Under a given sales price,the greater (smaller, respectively) the customer demand is,the higher (lower, respectively) the revenue is. Similarly,under a given customer demand, the higher (lower, respec-tively) the sales price goes, the more (less, respectively) therevenue can be obtained.Moreover, the sales price has a greatimpact on the customer demand of a cloud broker. If the salesprice of the on-demand VMs offered by the cloud broker aremuch cheaper comparedwith the same VMs provided by thecloud providers, more customers are attracted to submit theircomputing requests to the cloud broker. On the contrary, ifthe cloud broker raises the sales price of VMs, the customerdemand decreases correspondingly. Hence, determining aproper sales price is a key issue for cloud brokers tomaximizetheir profit, whichwill be calculated in this paper.

The cost of a cloud broker is also determined by two fac-tors, i.e., the cost price of resources and the scale of the ser-vice system. The cost price of resources is determined bycloud providers. The service system can be modeled as amultiserver system, which consists of many resources(VMs) rented from cloud providers. The system scale deter-mines the service capacity of the cloud broker. A cloud bro-ker with a larger system scale can serve more customers,which can obtain more revenue but generate an increasingcost. Hence, the system scale also should be determinedproperly such that the profit of a cloud broker is maximized.

In this paper, we study the problem of optimal multi-server configuration and resource pricing for profit maximi-zation of cloud brokers. To maximize the profit of cloudbrokers, we provide a comprehensive analysis on the profit-affecting factors and formulate an profit maximization prob-lem. By solving the optimization problem, the optimal VMprice and system scale can be obtained such that the profitis maximized. Our main contributions are as follows.

� To reduce the cost of cloud users, a novel businessrole between cloud providers and cloud users, i.e.,cloud broker, is introduced.

� A cloud broker is treated as a multiserver system,which is modeled as an M/M/n/n queuing model.Based on this model, all the profit-affecting factorsare analyzed.

� A detailed analysis on the relationship between thesales price of VMs and the customer demand isgiven. Based on the analysis, the expected charge toa VM request is calculated.

� The optimal multiserver configuration and VM pric-ing problem of cloud brokers for profit maximizationis formulated and a heuristic algorithm combining abrute force search with the partial derivation methodis proposed to calculate the numerical solutions forthe optimization problem.

� A series of numerical calculations are conducted,which show that the cloud broker can reduce thecost for cloud users efficiently and yet make a con-siderable profit at the same time.

The rest of the paper is organized as follows. Section 3presents the models used in this paper, including the cloud

Fig. 1. The cloud broker.

MEI ETAL.: PROFIT MAXIMIZATION FOR CLOUD BROKERS IN CLOUD COMPUTING 191

Page 3: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

broker model, the multiserver system model, the revenueand cost model. Based on these models, the optimal multi-server configuration and VM pricing problem is definedand the profit optimization model is formulated. Section 4introduces our methods to solve the optimization problemto obtain the optimal decision on the VM sales price and thesystem scale. Section 5 conducts a series of numerical calcu-lations to demonstrate the results of our problem. Finally,Section 6 concludes the work.

2 RELATED WORKS

In this section, we provide a snapshot of the existingresearch from the following aspects.

2.1 Cloud Broker as a Scheduler

Nowadays, there are numerous private and public cloudproviders that typically provide many services. Since differ-ent providers usually offer distinct features, e.g.,VirtualMachine (VM) types, pricing schemes, and cloud interfaces,it is becoming challenging for users to find a choice that bet-ter suits the requirements for developing/executing theirapplications. To assist cloud users, a cloud broker mecha-nism is used to transform the heterogeneous cloud marketinto a commodity-like service [14].

The cloud broker has been studied from different per-spectives. In the beginning, the cloud broker was studied asa scheduler between cloud providers and customers. Itrefers to two main aspects: helping customers to select themost appropriate cloud provider and helping providersmake decisions on resource allocation. Hence, the schedul-ing mechanisms are required to optimize the selection ofcloud broker or placement of VMs amongst multiple datacenters of a cloud to reduce the costs of VM deployment orsatisfy other performance constraints such as response time,computing capacity, and so forth [15], [16], [17], [18]. Toachieve the different objectives, many related cloud brokerpolicies have been proposed.

Limbani et al. [16] proposed a cost-aware service proxim-ity based broker policy. Using the proposed policy, a costeffective data center is selected to route user requests. In [19],the authors proposed a new service broker policy for datacenter selection based on the round-robin (RR) algorithm tominimize the service response time. To satisfy differentresource requirements and application performance con-straint of customers,Manasrah et al. [17] proposed a VariableService Broker Routing Policy—VSBRP, which aims toachieve the minimum response time through consideringthe communication channel bandwidth, latency and the sizeof the job. The proposed service broker policy can alsoreduce the overloading of the data centers by redirecting theuser requests to the next data center that yields betterresponse and processing time. Larumbe et al. [18] tookenergy consumption into consideration and proposed anenergy-aware VM placing broker to minimize operationalexpenditures while respecting constraints on Quality of Ser-vice (QoS), power consumption, andCO2 emissions. In addi-tion, many other existing broker policies for data centerselection are based on the location of the data centers, currentexecution load, and so on. The above studies on broker poli-cies focused on how to allocate resources for each request.

Since there are so many cloud providers with differentfeatures, it becomes a challenge for customers to select theone that suits the requirements while with the least costs.Many studies have focused on this problem. Rane et al. [20]researched how to choose one provider for a customeramong many service providers. In this work, a cloudresource broker is proposed to govern the assignment ofproviders’ resources to consumers dynamically. It uses vari-ous requirements and constraints specified by the consumerin the requirement description template as inputs, to calcu-late aggregated requirements using an aggregation algo-rithm. And a service scheduling algorithm is defined to findan optimized match between the aggregated requirementswith the provider’s offerings.

With the help of cloud brokers, the VM requests of a cus-tomer can be allocated in different clouds instead of thesame one [21]. Tordsson et al. [22] took into account userrequirements such as hardware configuration, aggregatedservice performances, total cost, and load balancing, andproposed algorithms for optimized placement of VMs inmulti-cloud environments. The authors considered the VMplacement problem as a 0-1 integer programming (IP) prob-lem, and the total infrastructure capacity and the total costof the deployed VMs are formulated. The modeling lan-guage AMPL is used to solve the 0-1 IP problem. The exper-imental results confirm that the multi-cloud deploymentprovides better performance and lower costs compared tothe use of a single cloud only.

2.2 Cloud Broker as a Company

Along with the development of cloud computing, the role ofthe cloud broker has changed. It moves from the role of ascheduler between cloud providers and customers to thethird-party company that provides cloud computing serv-ices. The difference between cloud brokers and cloud pro-viders is a cloud broker might not have its own resourcesbut rents them from cloud providers.

To maintain a company’s normal operation, making aprofit is necessary. How to increase the profit of the cloudbroker becomes an important problem and it is researchedfrom different perspectives in many works.

The services requests submitted by customers are charac-terized bydifferent requirements such as security and privacyconstraints, the required resources amount, the price andmakespans. To improve profit, the cloud broker should prop-erly allocate the requested services to the best suited cloudinfrastructures based on the customers’ QoS requirements.

The cloud broker studied in [23] is a hybrid cloud broker;that is, the cloud broker can allocate a service to its privateresources or the public clouds. In the paper, the revenue ofa CB consists of the brokering service price and the resourceprovisioning price. If the service is executed on the privateresources of the CB, CB revenue is the sum of the two parts;otherwise, the CB only gets the brokering service price, andthe resource provisioning price is paid to the public clouds.Hence, a greedy way to increase the total revenue of thecloud broker is to maximize the in-house execution of allservices. Due to the limited number of in-house resourcesand the specific QoS requirements of services, the greedymethod is unsuitable, so the heuristic brokering algorithmis proposed in which three allocation patterns, namely,

192 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 30, NO. 1, JANUARY 2019

Page 4: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

Feasible, static Reservation, and Max Occupation, areadopted to allocate particularly critical services to privateresources to maximize the CB revenue.

Nesmachnow et al. [3] proposed a kind of Virtual CloudBrokers (VCB). The VCB rents a number of reserved instan-ces of different VMs from several cloud providers for longperiods of time and outsources them as on-demand VMs fora lower price with respect to what traditional cloud pro-viders charge for the same VMs. The VCB earns the large dif-ference in price between reserved VMs and on-demandVMs. Because the reserved instances bought by the VCB arelimited, in case it cannot fulfill all requests without violatingthe contracted Service Level Agreement (SLA), on-demandVMs are bought from public cloud providers to satisfy thedemand, which leads to a reduction in profit. This paperresearches how to manage the available resources efficientlyto process the most VM requests. This problem is a resourceallocation problem with additional constraints which is NP-hard. The authors build this problem as a profit maximiza-tion model with resource constraints and propose a series offast optimization techniques to solve this problem, includingtwo-step list scheduling heuristics to get the initial solutionsand the fast reordering local search to improve the solutions.

Because VM demand is sporadic, a cloud broker has torent VMs once it faces the risk of underutilization of the VMin subsequent time slots. However, if the VM demanddecreases in the following time slot, a great number of VMsare wasted and the cloud broker might suffer a loss. Toimprove the profit of cloud brokers, the authors in [24]adopted dynamic pricing to control user demand. At thebeginning of each time slot, the broker adjusts the VM sell-ing price according to the VM demand. If the VM demandis much greater than the previous time slot, the price israised to decrease the demand properly. Doing this can effi-ciently control the loss caused by the wasted VMs.

All these works focused on how to improve the profit ofthe cloud brokers under a given configuration. However,for a cloud broker, to achieve the maximal profit, the mostimportant problem is determining how many resources itneeds to rent and how to price the resources. Since there aremany factors that can affect the profit of cloud brokers, andthese profit-affecting factors are affected mutually, it is nec-essary to provide a comprehensive analysis on these factorsand take them into consideration when solving the brokerconfiguration and pricing problem. Based on this idea, theprofit-affecting factors, e.g., the resource renting price, the

resource selling price, the customer demand, the resourcesize, are analyzed comprehensively, and a profit maximiza-tion problem is formulated and solved to get the optimalconfiguration of the virtual platform and the optimal priceof the resources.

3 THE MODELS

In this section, we first describe the cloud structure. Then,we introduce the related models used in this paper, e.g., amultiserver queuing model, a revenue model, and a costmodel. Last, we give a detailed description on the optimalmultiserver configuration and VM pricing problem forprofit optimization.

3.1 Cloud Computing Structure

In the cloud structure (see Fig. 2), three typical parts are con-tained, i.e., cloud service providers, cloud brokers, andcustomers.

In the cloud market, there are various cloud service pro-viders with distinct features such as capacity, price, SLA,and performance. Customers can obtain services and resour-ces from cloud providers directly. However, it is a challengefor customers to find the best choice in terms of performanceand price. In addition, the economic model of the cloud pro-viders is to bill users solely for the time they have used theresources based on an atomic time unit that we call the Bill-ing Time Unit, most often one hour. However, many cus-tomers might use the resources for only several minutes andstill be charged for one hour. Hence, the coarse-grained BTUleads to a lot of waste for customers in terms of resources ormoney.

Moreover, many cloud providers, such as Amazon EC2and Window Azure, provide on-demand instances andreserved instances. With on-demand instances, you pay forcompute capacity by the hour with no long-term commit-ments or upfront payments. You can increase or decreaseyour compute capacity depending on the demands of yourapplication and only pay the specified hourly rate for theinstances you use. Reserved instances provide you with asignificant discount (up to 75 percent) compared to on-demand instance pricing [9]. In this paper, the price ofreserved instances and on-demand instances for unit oftime is denoted as bre and bod (Unit: dollars per unit time),respectively. For a part of customers, they only need to renton-demand instances due to their short-term workloads,hence, they cannot enjoy the discount of reserved instances.

The cloud broker is an intermediary entity between cloudproviders and customers, which emerges to help the custom-erswith short-termworkloads enjoying the discount providedfor long-term customers. It buys a lot of reserved instancesfrom cloud providers for long periods of time to configure itsvirtual resource platform and outsources them as on-demandVMs for a lower price and a fine-grained BTU such as30 minutes with respect to what the cloud service providerscharge for the same VMs. The customers could submit theirservice requests to the cloud provider or the cloud broker, andtheir decisions are affected by the gap between the on-demandVMprices of the cloud broker and the cloudprovider.

This three-tier structure is adopted and researched com-monly from different aspects [3], [14]. In this paper, we

Fig. 2. The three-tier cloud structure.

MEI ETAL.: PROFIT MAXIMIZATION FOR CLOUD BROKERS IN CLOUD COMPUTING 193

Page 5: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

focus on the profit maximization problem of the cloudbroker.

3.2 Multiserver Queue System

The broker studied in this paper only rents resources from asingle cloud provider and provides identical VMs for cus-tomers. Therefore, the VMs provided by the cloud broker arehomogeneous, and they have identical configurations interms of memory, bandwidth, CPU, etc. More complicatedsituations will be studied in further works. In this paper, weassume that a cloud broker serves users’ requests by using amultiserver system, which can be modeled as an M/M/n/nqueuing system as Fig. 3 [25]. This similar models are adop-ted inmany literatures such as [26], [27], [28].

In this M/M/n/n queuing model, the arrival of VMrequests is assumed to be a Poisson stream with arrival rate� (measured by the number of requests per unit of time);i.e., the interarrival times are independent and identicallydistributed (i.i.d.) exponential random variables with mean1=�. In the rest of the paper, the default time unit is onehour (unless explicitly stated). This setting is for conve-nience of calculation under different BTU values. Since thecloud broker attracts customers by the low price, the actualrequest arrival rate � of the cloud broker is determined bytwo factors: the total customer demand, denoted by �max,and the resource price. The relationship will be introducedin Section 3.4.

The cloud broker rents VMs from cloud providers to con-figure its private cloud platform. Assume that the platformsize, in others words, the number of VMs owned by thecloud broker is n. When customers submit service requeststo the cloud broker, the cloud broker determines whetherthe requests are executed in-house or reassigned to publicclouds according to the status of its private cloud. If thereare available VMs in the private cloud, the incoming servicerequests will be executed in-house. However, if there is notany VM available and the incoming service requests cannotbe processed immediately in the private cloud, the cloudbroker will resubmit them to public clouds. These part ofcustomers are lost by the cloud broker. In this scenario, thenumber of requests in the mutliserver system at any timewill not exceed n, that is, the queue length of the mutliserversystem is n. The execution times of tasks on the multiserver

system are i.i.d. exponential random variables t with meant. The average service rate of each system is calculated asm ¼ 1=t, and the server utilization is defined as r ¼�=nm ¼ �=n� t. Let pk be the probability that there arekðk � nÞ service requests (being processed) in the M/M/n/nqueuing system. Then, we have

pk ¼ p01

k!

��

m

�k

; k ¼ 1; 2; . . . ; n; (1)

where

p0 ¼"Xn

k¼0

1

k!

��

m

�k#�1

;

and Eq. (1) holds only when r < 1 [25].Because the number of resources is limited, when and

only when all of the resources in the multiserver system arebusy, the incoming requests are resubmitted to anothercloud. Hence, this part of requests are lost to the cloud bro-ker. Hence, the loss probability PL of customers of the cloudbroker is equal to the probability that there are n requests inthe system, which is calculated as [25]

PL ¼ pn ¼"Xn

k¼0

1

k!

��

m

�k#�1

1

n!

��

m

�n

; (2)

and the number of loss customers in unit time is

�L ¼ �PL ¼ �

"Xnk¼0

1

k!

��

m

�k#�1

1

n!

��

m

�n

: (3)

3.3 Cost Modeling

The cost of a cloud broker consists of many parts such asmanagement cost, configuration cost, etc. However, weonly consider the cost conducted by configuring and operat-ing the virtual multiserver platform in this paper. To config-ure the multiserver platform, a cloud broker rents a lot ofreserved instances from cloud providers for a long-termperiod, and pays them the corresponding rents. Since therental price per reserved instance for unit of time is bre

and n reserved instances are required to configure the

Fig. 3. TheM/M/n/n queue model.

194 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 30, NO. 1, JANUARY 2019

Page 6: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

multiserver platform. Then, the cost per unit of time of thecloud broker is

C ¼ nbre:

3.4 Revenue Modeling

3.4.1 Analysis on the Revenue-Affecting Factors

As previously noted, the cloud broker buys a lot of reservedinstances from cloud providers for long periods of time andoutsources them as on-demand VMs to obtain revenue. Theon-demand VMs provided by the cloud broker have a lowerprice and a fine-grained BTU with respect to what the cloudproviders charge for the same VMs. Hence, there are twomain factors affecting the revenue of cloud brokers.

The first revenue-affecting factor is customer demand,which is measured as the request arrival rate �. Under afixed price, the more the request arrival rate is, the morerevenue that can be obtained. Hence, to improve the reve-nue of a cloud broker, an obvious way is to increase its cus-tomer demand. However, customer demand is changingwith different VM sales prices. Hence, the second affectingfactor is the VM sales price.

Let the price of the on-demand VMs provided by thecloud broker be b per unit of time. The price affects the reve-nue of a cloud broker from two aspects. First, the price has adirect impact on revenue. Under a given demand, a higherprice conducts a higher revenue. Second, the price affectsthe revenue indirectly. The explanations are given as fol-lows. The cloud broker rents reserved instances from cloudproviders with a discount compared with the on-demandinstances and outsources them as on-demand VMs in alower price than the same VMs provided by cloud pro-viders. The low price is the core competitive advantage ofthe cloud broker, and its objective customers are those cus-tomers whose service requests are submitted occasionallyand the execution time is uncertain or short. This portion ofcustomers are inclined to rent on-demand VMs rather thanreserved VMs, but they also want to enjoy the discount thatthe cloud providers provide for long-term customers. Thecloud broker can provide customers the needed resourcesat a lower price. Since the main advantage for the cloud bro-ker to attract customers is its lower price compared withpublic clouds, the price certainly will affect the requestarrival rate, thus affecting revenue, corresponding. Hence,proper pricing is an important issue for the cloud broker.

To obtain profit, the VM sales price of the cloud brokershould be greater than its cost price obviously; that is, therental price that the cloud broker rents reserved instancesfrom cloud providers. Meanwhile, the VM sales priceshould be lower than the on-demand price of cloud pro-viders to attract customers. That is because customers areinclined to select the services of public clouds when the VMsales price of the cloud broker is same as public clouds. Tosum up, the VM sales price of the broker, denoted as b,should be between the range of ½bre;bod�.

To determine a proper sales price for VMs, it is necessaryto understand the relationship between the VM sales priceand the customer demand. In general, the greater the gapbetween the on-demand price bod and the VM sales price ofthe cloud broker b is , the more customers that will beattracted. Let the total customer demand be �max. And we

define the ratio of the actual customer demand of a cloudbroker and the total customer demand as “market shareratio”, which is denoted by p. Fig. 4 shows the relationshipbetween the price b and the market share ratio p. Theprice-demand function in Fig. 4 is a linear demand curvewhich means the percentage p is linearly decreasing withthe increasing price b. From Fig. 4, the market share ratio ofa cloud broker p is equal to pre when the VM sales price isset as bre, and the market share ratio is decreasing to podwhen the price is increasing to bod. Hence, the price-demandfunction can be formulated as

p ¼ pre þ ðpod � preÞ b� bre

bod � bre

:

We adopt the linear price-demand function in this paperbecause it is one of the most commonly used function. Othercomplicated functions will be researched in further works.

3.4.2 Calculation of the Revenue

Based on the above analysis, the price and the customerdemand are the two main factors having an effect on reve-nue. To calculate the revenue, it is necessary to calculate theexpected charge to each request and the actual customerdemand.

Expected Charge. The expected charge of a request isaffected by three factors: the VM sales price, the executiontime of a request, and the BTU of the cloud broker. To studythe expected service charge of a request, we need a com-plete specification on those factors.The following theoremgives the expected charge to a service request.

Theorem 3.1. Assume that the BTU of a cloud broker is U unitsof time. Under a given VM sales price b and average executiontime of tasks t, the expected charge to a service request is

E ¼ Ub1

1� e�U=t: (4)

Proof 3.1. Since the BTU of a cloud broker is U units of time,the charge function of a service request with execution timet can be calculated as

RðtÞ ¼ U

�t

U

�b: (5)

This equation means that a service request is chargedðnþ 1ÞUb if its execution time t is in the intervalðnU; ðnþ 1ÞU �. The bmeans the VMprice per unit of time.

Fig. 4. The relationship between price and customer demand.

MEI ETAL.: PROFIT MAXIMIZATION FOR CLOUD BROKERS IN CLOUD COMPUTING 195

Page 7: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

Recall that the execution time t of each request is i.i.d.exponential random variables with mean t; hence, theprobability distribution function of t is

fðtÞ ¼ 1

te�t=t:

The expected charge to a service request is

E ¼Z 10

fðtÞRðtÞdt

¼X1n¼0

Z ðnþ1ÞUnU

fðtÞðnþ 1ÞUbdt

¼X1n¼0ðnþ1ÞUb

�� e�t=t

������ðnþ1ÞU

nU

¼ UbX1n¼0

e�nU=t

¼ Ub limn!1

1� ðe�U=tÞn1� e�U=t

¼ Ub1

1� e�U=t:

The theorem is proven. tuCustomer Demand. The actual customer demand is

affected by the VM sales price. Under a given VM salesprice b, the request arrival rate of a cloud broker is

� ¼ p�max ¼ pre þ

�pod � pre

� b� bre

bod � bre

!�max:

However, there are a small portion of requests rejectedby the system due to the limited resources. Under a given

system size n and average execution time of requests t, the

percentage of rejected requests PL can be calculated using

Eq. (2); then, the revenue obtained by a cloud broker in an

unit of time can be calculated as

R ¼ �ð1� PLÞE

¼ pre þ

�pod � pre

� b� bre

bod � bre

!�maxUb

1

1� e�U=t

� 1�

"Xnk¼0

1

k!ð�mÞk#�1

1

n!

��

m

�n!:

(6)

3.5 Problem Description

Because the profit is defined as the revenue minus the cost.Hence, according to the above analysis, the expected netprofit of a cloud broker in one unit of time is

Pro ¼ R� C¼ �ð1� PLÞE � nbre;

(7)

where

� ¼ p�max ¼"pre þ

�pod � pre

� b� bre

bod � bre

#�max;

PL ¼ pn ¼"Xn

k¼0

1

k!

��

m

�k#�1

1

n!

��

m

�n

;

and

E ¼ Ub1

1� e�U=t:

From Eq. (7), we can see that the profit is determined bytwo parameters, i.e., the VM price b and the system size n. Tomaximize the profit of a cloud broker, we should find an opti-mal combination of b andn. Hence,we define the profitmaxi-mization problem as an optimal multiserver configurationand VM pricing problem, which is defined as follows: Giventhe total customer demand �max, the average request execu-tion time t, the on-demand resource price bod, the reservedresource price bre, and the corresponding market share ratiopod and pre, find an optimal combination of VM sales price b

and system size n for the cloud broker such that its profit ismaximized. The optimization problem can be formulated as

max Proðb; nÞ;subject to

0 < r < 1:

Fig. 5 gives the graph of function Pro where �max ¼ 100,t ¼ 8, bre ¼ 4, bod ¼ 9, pre ¼ 0:5, pod ¼ 0, and U ¼ 0:5.

From the figure, we can see that the profit of a cloud bro-ker is varying with server size n and service price b, andthere must be an optimal combination of n and b where theprofit is maximized. In the next section, we will show howto solve this optimization problem.

In Table 1, we summarize all the notations used in thepaper to improve readability.

4 OPTIMAL SOLUTION

In this section, a partial derivative combined with the bisec-tion search method is adopted to solve the profit optimiza-tion problem.

4.1 The Analytical Method

We first solve our optimization problem analytically,assuming that n and b are continuous variables. To this end,

Fig. 5. The mesh of profit versus n and b.

196 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 30, NO. 1, JANUARY 2019

Page 8: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

a closed-form expression of PL is needed. In this paper, weuse the same closed-form expression as [26], which is

Xnk¼0

ðnrÞkk!� enr:

This expression is very accurate when n is not too small andr is not too large [29]. Since Stirling’s approximation of n! isffiffiffiffiffiffiffiffiffi2pnp ðneÞn, one closed-form expression of PL is

PL � enð1�rÞrnffiffiffiffiffiffiffiffiffi2pnp : (8)

In the following, we will solve our optimization prob-lems based on above closed-form expression of PL. Beforethe solutions are given, we first rewrite Pro as

Pro ¼ �bT

1� enð1�rÞrnffiffiffiffiffiffiffiffiffi

2pnp

!� nbre;

where

� ¼"pre þ

�pod � pre

� b� bre

bod � bre

#�max;

and

r ¼ �t=n;

and

T ¼ U1

1� e�U=t:

4.1.1 Optimal Price

Given �max, t, bre, bod, pre, pod, and n, our objective is to findthe optimal b such that Pro is maximized. To maximizeprofit, bmust be found such that

@Pro

@b¼ 0:

Since

@�

@b¼ pod � pre

bod � bre

�max;

we have

@�b

@b¼ �þ pod � pre

bod � bre

�maxb;

and

@PL

@b¼ 1ffiffiffiffiffiffiffiffiffi

2pnp

"@enð1�rÞ

�@b

rn þ enð1�rÞ@rn

@b

#

¼ 1ffiffiffiffiffiffiffiffiffi2pnp

"�rnenð1�rÞ

�� 1

m

@�

@b

��

þ enð1�rÞnrn�11

nm

@�

@b

#

¼ enð1�rÞrnffiffiffiffiffiffiffiffiffi2pnp @�

@b

1� r

mr

¼ PL@�

@b

1� r

mr:

(9)

Furthermore, we get

@Pro

@b¼��þ @�

@bb

�ð1� PLÞT þ �bT

�� PL

@�

@b

1� r

mr

¼ �ð1� PLÞT þ bT@�

@b

hð1� PLÞ � PLnð1� rÞ

i:

(10)

We cannot obtain a closed-form solution to b, but we canget the numerical solution to it. In Fig. 6, we demonstratethe net profit in one unit of time as a function of the price b

and the server size n. The profit is calculated based on theprecise PL as Eq. (2), and the parameters are set as follows.bre and bod are set as 4 and 9; pre and pod are set as 0.5 and 0;t is set as 8, BTU is set 0.5, and �max is set as 100. FromFig. 6, it is apparent that the Pro function is a convex curve

TABLE 1Notations Used in this Paper

Notation Description

bre the unit price of reserved resources rented from cloudproviders

bod the unit price of on-demand resources rented fromcloud providers

b the unit price of resources provided by cloud brokerspre the percentage of customers attracted by cloud brokers

at the price brepod the percentage of customers attracted by cloud brokers

at the price bodn the server size of virtual platform owned by the cloud

brokert the execution time of a request and t is the

average execution time�max the maximal task arrival rate, which presents the total

customer demand� the actual task arrival rate of a cloud brokerr the server utilization of a cloud brokerpk the probability that k requests are in the systemR the total revenue of a cloud brokerC the total cost of a cloud brokerPL the loss probability of customers due to limited

resources

Fig. 6. Optimal profit versus resource price.

MEI ETAL.: PROFIT MAXIMIZATION FOR CLOUD BROKERS IN CLOUD COMPUTING 197

Page 9: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

on which exists an extreme point. So, the @Pro=@bmust havea decreasing interval during which we could find the zeropoint by the standard bisection method [30]. The algorithmis given as Algorithm 1. By the algorithm, the optimal valueof b in Fig. 6 is 7.5885, 6.5064, 5.4675, 4.5985, 4.5000 for n ¼100, 200, 300, 400, 500, respectively.

In Fig. 7, we demonstrate the optimal price and maximalprofit in one unit of time as a function of n and �max. There-fore, for each combination of n and �max, we find the opti-mal price for a cloud broker and the correspondingmaximal profit it can obtain. The parameters are set to besame as Fig. 6.

From the figures, we can see that under a given �max, theoptimal price is decreasing with the increase in system size.This is explained as follows. It is obvious that more VMslead to more cost. To utilize the resources sufficiently andimprove the revenue, the VM price is lowered to attractmore customers, which is so-called small profits but quickturnover (SPQT) strategy. However, the optimal profit isnot monotone increasing with the increasing system size.When the system size reaches a certain point, the extra costconduct by increasing VMs further starts to exceed the

increased revenue by adopting the SPQT strategy. Hence,the total profit increases at the early stage and thendecreases. Moreover, the figures show that the optimal priceand the optimal profit are all related with the �max. Under agiven system size, a greater �max will lead to a higher opti-mal price and more profit.

Algorithm 1. Finding the Optimal Price

Input: �max, t, n, bre, bod, pre, and pod;Output: optimal price opt b of resources and optimal profit

opt pro;1: opt b ¼ �1, opt pro ¼ �1;2: bstart the minimal price satisfying r < 1;3: bend bod;4: calculate Derstart andDerend using Eq. (10);5: ifDerstart �Derend > 0 then6: opt b ¼ bstart;7: calculate optpro using Eq. (7);8: exit;9: end if10: whileDerstart �Derend > error do11: bmiddle ¼ ðbstart þ bstartÞ=2;12: calculate Dermiddle using Eq. (10);13: ifDerstart �Dermiddle > 0 then14: bstart bmiddle;15: else16: bend bmiddle;17: end if18: end while19: opt b ¼ ðbstart þ bendÞ=2;

In Algorithm 1, the partial derivative is calculated basedon the estimation value of PL first, and then the extremal sol-utions are solved using the bisection search method. Hence,the solutions obtained by Algorithm 1 have a certain of errorwith the precise solutions. To verify the precision of the solu-tions, we compare the optimal solutions obtained by ourmethod with that obtained by a brute force search method.The comparison results are given in Table 2. In the compari-son, the System size n is set from 50 to 450 in step of 50, �max

is set as 100, and other parameters are same as Fig. 7. Fromthe results, we can see that the error is less than 2 percentwhen the n is greater than 200. When the n is smaller than200, with the decrease of n, the error becomes greater. That isbecause the error between the estimation value and precisionvalue of PL is very largewhen n is small.

Fig. 7. Optimal size and maximal profit versus n and �max.

TABLE 2Quality of Solutions (Optimal Price)

nBrute Force Search Partial Derivatives

Error(%)b Pro b Pro

50 8.1371 202.6171 8.4496 166.2390 17.954%100 7.5885 347.8085 7.8580 316.6733 8.952%150 7.0442 436.0837 7.2576 415.8876 4.631%200 6.5064 468.1743 6.6521 458.9012 1.981%250 5.9787 445.1308 6.0431 443.4117 0.386%300 5.4675 368.5473 5.4309 368.0427 0.137%350 4.9883 241.1389 4.9688 241.0231 0.048%400 4.5985 68.8678 4.5979 68.8678 0.000%450 4.5001 -128.8486 4.5001 -128.8486 0.000%

198 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 30, NO. 1, JANUARY 2019

Page 10: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

4.1.2 Optimal Size

Given �max, t, bre, bod, pre, pod, and b, our objective is to findn such that Pro is maximized. To maximize profit, n mustbe found such that

@Pro

@n¼ 0:

Since

ðerÞn ¼ elnðerÞn ¼ en lnðerÞ;

we have

@ðerÞn@n

¼ ðlnðerÞ � 1ÞðerÞn;and then

@PL

@n¼

@enð1�rÞrnffiffiffiffiffiffi

2pnp

�@n

¼@ ðerÞne�nrffiffiffiffiffiffi

2pnp

�@n

¼ e��m

@ðerÞn@n

ffiffiffiffiffiffiffiffiffi2pnp � ðerÞn @

ffiffiffiffiffiffi2pnp@n

2pn

¼ e��mðlnðerÞ � 1ÞðerÞn ffiffiffiffiffiffiffiffiffi

2pnp � ðerÞn ffiffiffiffi

p2n

p2pn

¼ enð1�rÞrn�lnðerÞ � 1ffiffiffiffiffiffiffiffiffi

2pnp � 1

2n

1ffiffiffiffiffiffiffiffiffi2pnp

¼ PL

�lnðerÞ � 1� 1

2n

:

(11)

Then, we get

@Pro

@n¼ �bTPL

�1þ 1

2n� lnðerÞ

�� bre: (12)

Similarly, we cannot get the closed-form expression of n,so we can use the bisection method [30] to find the numeri-cal solution of n. In Fig. 8, we demonstrate the net profit inone unit of time as a function of the price b and the systemsize n. The parameters are same as Fig. 6. From Fig. 8, it isapparent that the Pro function is also a convex curve thatcontains an extreme point. Adopting the bisection method,the optimal size n in Fig. 8 is 400, 320, 240, 163, 84 for b ¼ 4,5, 6, 7, 8, respectively.

In Fig. 9, we demonstrate the optimal size and maximalprofit in one unit of time as a function of b and �max. Under dif-ferent �max, we observe the changing trend of the optimal sizefor a cloud broker and the correspondingmaximal profit it canobtain. The parameters are same as those in Fig. 6. Fig. 9ashows the trend of the optimal system size with the increasingVM sales price under different �max. From the figure we cansee that under a given �max, the optimal system size decreaseswith the increase of VM price. Thus, if a cloud broker sets ahigher price, the number of VMs it rented from public cloudsshould be reduced. That is because a higher sales price leads toa decrease of customer demand; hence, on the premise of satis-fying customer demand, the rented VMs should be reduced tocut down the rental cost. In addition, we can find from Fig. 9athat under a fixed price, more VMs are needed when the �max

is increasing, as a greater �max also leads to more VM requestsin a unit of time arriving at the cloud broker. The cloud brokershould rent more VMs to provide enough computing capacityto the increasingVM requests.

Fig. 9b shows the corresponding profit under the config-urations in Fig. 9a. The figure shows that the optimal profitshows a consistent trend with the �max value, whereasunder a given �max, the optimal profit first increases with

Fig. 8. Optimal profit versus total investment.

Fig. 9. Optimal profit and maximal profit versus b and �max.

MEI ETAL.: PROFIT MAXIMIZATION FOR CLOUD BROKERS IN CLOUD COMPUTING 199

Page 11: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

the increasing sales price and starts decreasing after anextreme point. This is explained as follows. At the beginning,the VM sales price is low, and the revenue is increased withthe increasing price. Although the cost is also increased corre-spondingly, the increased cost is lower than the increased rev-enue, so the total profit shows an increasing trend. Surpassinga special price, increasing the VM sales price can no longerraise the total profit because the increased cost starts surpass-ing the increased revenue. Hence, the profit shows a decreas-ing trend.

Similar with Table 2, we compare the optimal sizeobtained by our method with that obtained by a brute forcesearch method, and the comparison results are given inTable 3. In the comparison, the VM price b is set from 4.0 to8.5 in step of 0.5, the �max is set as 100, and the other param-eters are same as Fig. 7.

4.1.3 Optimal Size and Price

Given �max, t, bre, bod, pre, and pod, our third problem is to findn and b such that the profit is maximized.We just need to findn and b such that @Pro=@n = 0 and @Pro=@b = 0,where @Pro=@nand @Pro=@b have been derived in the last two sections. Thetwo equations can be solved by the grid bisection methodwhich is adopted in [26]. The algorithm is given as follows.

In Table 4, we demonstrate the optimal size and price that acloud broker should be configured under different �max, andthe corresponding profit per unit of time that the cloud brokercan obtain. The �max is set from 60 to 130 in step of 10. Fromthe table, we can see that with the increase of �max, the optimalprice undergoes no evident change. The optimal size isincreasingwith the increased �max aswell as the optimal profit.

Algorithm 2. Finding the Global Optimal Size and Price

Input: �max, t, bre, bod, pre, and pod;Output: optimal number opt n of rented VMs and optimal

price opt b;1: find a proper interval of VM size [nstart; nend];2: calculate the optimal price opt bstart under nstart by

Algorithm 1;3: calculate the optimal price opt bend under nend by

Algorithm 1;4: calculate Derstart andDerend using Eq. (12) with parametersðnstart; opt bstartÞ and ðnend; opt bendÞ, seperately;

5: ifDerstart �Derend > 0 then6: opt n ¼ nstart and opt b ¼ opt bstart;7: calculate opt pro using Eq. (7);8: break;9: else10: whileDerstart �Derend > error do11: nmiddle ¼ ðnstart þ nstartÞ=2;12: calculate the optimal price opt bmiddle under nmiddle by

Algorithm 1;13: calculate Dermiddle using Eq. (12) with parameters

ðnmiddle; opt bmiddleÞ;14: ifDerstart �Dermiddle > 0 then15: nstart nmiddle;16: else17: nend nmiddle;18: end if19: end while20: opt n ¼ nstart and opt b ¼ opt bstart;21: end if

Moreover, Table 4 also shows a comparison between theoptimal solution of our method (Partial Derivative Optimiza-tion, PDO for short)and that solved by the brute force searchmethod (BFS). The results show that the profit obtained byour strategy is close to the global optimal profit adopting the(BFS), and the error rate is less than 2 percent. For example,the profit calculated by PDO is 460.6158 when �max is 100,which is only 1.65 percent less than the accurate global opti-mal profit calculated by BFS. Moreover, we compare the com-putation time (T) of two methods, and the performanceparameter is defined as Computation Time Saving Ratio(TSR),which is calculated as

TSR ¼ Time of BFS � Time of PDO

Time of BFS:

TABLE 3Quality of Solutions (Optimal Price)

bBrutal Force

SearchPartial

Derivatives Error(%)

n Pro n Pro

4.0 400 -13.6067 400.08 -13.9267 2.352%4.5 360 162.8083 360.08 162.4883 0.197%5.0 320 299.0461 320.08 298.7261 0.107%5.5 280 395.2308 280.08 394.9108 0.081%6.0 240 451.5263 240.08 451.2063 0.071%6.5 201 468.2427 200.08 467.8389 0.086%7.0 163 446.1830 160.08 445.1413 0.233%7.5 124 385.5531 120.08 383.6483 0.494%8.0 84 286.8998 80.08 284.3525 0.888%8.5 43 152.0922 40.08 149.6756 1.589%

TABLE 4Quality of Solutions (Optimal Size and Price)

�max

Brutal Force Search Partial DerivativesError(%) TSR(%)

nopt bopt Proopt T (unit: s) nopt bopt Proopt T (unit: s)

60 122 6.474 268.8419 22.381 128 6.5223 263.3711 0.519 2.03% 97.68%70 142 6.474 318.2826 22.112 150 6.5004 312.1968 0.509 1.91% 97.70%80 163 6.468 368.0537 22.064 171 6.4971 361.4982 0.556 1.78% 97.48%90 183 6.474 418.0824 22.155 192 6.4923 411.2474 0.493 1.63% 97.77%100 204 6.462 468.3418 21.95 205 6.5865 460.6158 0.481 1.65% 97.81%110 224 6.468 518.7865 21.978 234 6.4899 510.7347 0.497 1.55% 97.74%120 245 6.462 569.3975 21.974 252 6.514 561.4408 0.463 1.40% 97.89%130 266 6.456 620.1480 21.926 276 6.4852 611.2303 0.438 1.44% 98.00%

200 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 30, NO. 1, JANUARY 2019

Page 12: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

The comparative results show that the computing efficiencyof our method is much higher than BFS but only a littleaccuracy loss.

5 PERFORMANCE ANALYSIS AND COMPARISON

In this section, a series of numerical calculations are con-ducted to verify the function of the cloud broker.

5.1 Performance Analysis

The emergence of the cloud broker provides customers onemore choice when selecting the providers of cloud comput-ing. It can not only provide the same service as the publicclouds but also save a great amount of cost for customers.In the following, we conduct a series of numerical calcula-tions to compare the cost of users when they submitrequests to a cloud broker or public clouds, respectively.

According to Theorem 3.1, it is known that the expectedcharge to a service request is determined by three factors:the BTU U , the VM sales price b, and the average executiontime t. To verify the effect of the three factors on the usercost, we conduct three groups of calculations in the follow-ing. Amazon EC2, AEC for short, is adopted as the compari-son. AEC is compared with the cloud broker under differentparameters to verify how much cost they can save for users.The performance metric is formulated as

Cost Saving Rate ¼ E of AEC � E of a Cloud Broker

E of AEC:

Here, the BTU of AEC is set as 1 unit of time and its on-demand price bod and reserved price bre are set as 9 per unitof time and 4 per unit of time, respectively. The average exe-cution time t is set as 8 unit of time. Substituting theseparameters into Eq. (4)

E of AEC ¼ 76:5937:

5.1.1 User Cost vesus b

In the first group of calculations, we observe how the VMsales price b affects the user cost under the given BTU.

From Eq. (4) it is apparent that the user cost is linearlyincreasing with the price b. In Table 5, we show the averagecost of users when b is varying from bod to bre in step of 1 (tis set as 8, and the BTU U is set as 0.5 and 1, respectively).

We have calculated that the average cost of users in AECis 76.5937. The table shows that when users submit theirrequests to a cloud broker with a lower VM sales price com-pared with AEC, a great deal of cost can be saved. And thelower the price is, the more cost that can be saved.

5.1.2 User Cost versus BTU

In the second group of calculations, we observe how theBTU affects the user cost under a given VM sales price. Weset the VM sales price b of the cloud broker as bod and2=3bod, respectively. The BTU of cloud brokers is varyingfrom 1=6 to 1 in step of 1=6. In addition, the average execu-tion time t is set as 8. The user cost of cloud brokers in dif-ferent situations and the cost saving rate compared withAEC are given in Table 6.

The results in Table 6 show that the user cost is affectedgreatly by the BTU of cloud brokers. The smaller the BTU is,the more cost that can be saved for users on average. Forexample, assume that the execution time of a request is 2.1; ifit is submitted to a cloud broker with a BTU of 1, the totalcost is 1� d2:1=1eb ¼ 3b, and if it is submitted to a cloud bro-ker with U={5/6, 4/6, 3/6, 2/6, 1/6} , the total cost is 2:50b,2:67b, 2:50b, 2:33b, and 2:17b, respectively. Although some-times a smaller BTU leads to a higher cost, e.g., the cost of 4/6-BTU is greater than that in 5/6-BTU, the overall trend ofthe average cost is decreasingwith the decreasing BTU.

Moreover, even though the VM sales price of a cloud bro-ker is set the same as the price of AEC, it still can reduce costfor users by setting a smaller BTU. For example, when theVM sales price of a cloud broker b is set as bod, the cost ashigh as 5.015 percent can be saved compared with AEC.

5.1.3 User Cost vesus t

In the third group of calculations, we observe how theparameter t affects the user cost under the given VM salesprice and BTU. The VM sales price b of the cloud broker is

TABLE 5User Cost vesus b (t=8, E of AEC=76.5937)

U b 4 5 6 7 8 9

0.5 E 33.0104 41.2630 49.5156 57.7682 66.0208 74.2734Cost Saving Rate 56.902% 46.127% 35.353% 24.578% 13.804% 3.029%

1 E 34.0417 42.5521 51.0625 59.5729 68.0833 76.5937Cost Saving Rate 55.556% 44.444% 33.333% 22.222% 11.111% 0.000%

TABLE 6User Cost vesus BTU (t=8, E of AEC=76.5937)

b U 1/6 2/6 3/6 4/6 5/6 1

23bod

E 48.5017 49.0069 49.5156 50.0278 50.5434 51.0625Cost Saving Rate 36.677% 36.017% 35.353% 34.684% 34.011% 33.333%

bodE 72.7526 73.5104 74.2734 75.0417 75.8151 76.5937

Cost Saving Rate 5.015% 4.026% 3.029% 2.026% 1.017% 0.000%

MEI ETAL.: PROFIT MAXIMIZATION FOR CLOUD BROKERS IN CLOUD COMPUTING 201

Page 13: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

set as 2=3bod ¼ 6 and the BTU is set as 1=6, 3=6, and 1,respectively. The user cost is calculated for the cloud brokerand AEC separately when the t value is set as 0.5, 4, 8, 12,24, respectively. The results are given in Table 7.

Table 7 shows that when the cloud broker has the sameBTU and lower price comparedwith AEC, the cost of users inthe cloud broker is always smaller than that in AEC, but theratio of saved cost is not changing with the increasing t.When both of the BTU and the VM sales price of the cloudbroker are smaller than that of AEC, the ratio of saved cost bythe cloud broker is affected by t, and the smaller the t is, thegreater the amount of cost that can be saved for the users bythe cloud broker.

5.1.4 Saved Cost Ratio Under Optimal Solution

In the last group of calculations, we show the average usercost of a cloud broker under the optimal system size andVM sales price calculated by our method. The BTU of thecloud broker is set as 0.5, and the average execution time ofrequests t is set as 8. In Table 8, the optimal size, the optimalprice, the optimal profit, and the average user cost are listedwhen the �max is varying from 60 to 130 in step of 10. Theresults show that for a cloud broker with a given BTU, nomatter how great the �max is, the average user cost remainsunchanged so long as the average execution time of requestsis fixed. Under the optimal configuration, the cloud brokercan save about 30 percent cost for users on average.

6 CONCLUSIONS

In this paper, we focus on the profit maximization problem ofcloud brokers. A cloud broker is an intermediary entitybetween cloud service providers and customers, which buys

reserved instances from cloud providers for long periods oftime and outsources them as on-demand VMs for a lowerprice andfine-grainedBTUwith respect towhat the cloud ser-vice providers charge for the sameVMs. Due to the lower ser-vice price and the finer-grained BTU compared with thepublic clouds, the cloud broker can save much cost for cus-tomers. This paper tries to guide cloud brokers on how to con-figure the virtual resource platform and how to price theirservice such that they can obtain the maximal profit. To solvethis problem, the virtual resource platform is modeled as anM/M/n/n queue model, and a profit maximization problem isbuilt in which many profit-affecting factors are analyzedbased on the queuing theory, as well as the relationshipbetween them. The optimal solutions are solved combiningthe partial derivative and bisection method. Lastly, a series ofcalculations are conducted to analyze the changing trend ofprofit and the ratio of user cost savings.

In this paper, we adopt the linear price-demand pricewhen we analyze the broker’s profit since it is the most com-mon function in real market. Whereas, different cloud mar-kets might show different price-demand relationship. Hence,we will extend our study to consider more complicated price-demand curves in the further.

ACKNOWLEDGMENTS

The authors thank the anonymous reviewers for their valu-able comments and suggestions. The research was partiallyfunded by the Key Program of National Natural ScienceFoundation of China (Grant No. 61432005), the NationalOutstanding Youth Science Program of National NaturalScience Foundation of China (Grant No. 61625202), theNational Natural Science Foundation of China (Grant Nos.61602170, 61502165, 61772182, 61370095, 61472124), ChinaPostdoctoral Science Foundation (Grant No. 2018T110829).

REFERENCES

[1] B. Rajkumar, J. Broberg, andA.M. Goscinski,Cloud Computing: Prin-ciples and Paradigms, vol. 8. Hoboken,NJ, USA:Wiley, 2011, pp. 1–41.

[2] A. Fox, R. Griffith, A. Joseph, R. Katz, A. Konwinski, G. Lee,D. Patterson, A. Rabkin, and I. Stoica, “Above the clouds: A berkeleyview of cloud computing,” Dept. Elect. Eng. Comput. Sci., Univ.California, Berkeley, CA,USA, Tech. Rep. UCB/EECS-2009–28, 2009.

[3] S. Nesmachnow, S. Iturriaga, and B. Dorronsoro, “Efficient heuris-tics for profit optimization of virtual cloud brokers,” IEEE Comput.Intell. Mag., vol. 10, no. 1, pp. 33–43, Feb. 2015.

[4] K. Li, J. Mei, and K. Li, “A fund-constrained investment schemefor profit maximization in cloud computing,” IEEE Trans. Serv.Comput., p. 1, 2016, doi: 10.1109/TSC.2016.2589241.

TABLE 8User Cost Under Optimal Configuration (t=8, U=0.5)

�maxDerivation Optimal

nopt bopt Proopt User Cost Cost Saving Rate

60 128 6.5223 263.3711 53.8262 29.725%70 150 6.5004 312.1968 53.6455 29.961%80 171 6.4971 361.4982 53.6182 29.997%90 192 6.4923 411.2474 53.5787 30.048%100 205 6.5865 460.6158 54.3558 29.034%110 234 6.4899 510.7347 53.5586 30.074%120 252 6.5140 561.4408 53.7575 29.815%130 276 6.4852 611.2303 53.5194 30.126%

TABLE 7User Cost vesus t

U t 0.5 4 8 12 24

E of AEC (U=1, b=6) 10.4087 40.6873 76.5937 112.5625 220.5312

1/6 E (b=6) 3.5277 24.5035 48.5017 72.5012 144.5006Cost Saving Rate 66.108% 39.776% 36.677% 35.590% 34.476%

3/6 E (b=6) 4.7459 25.5312 49.5156 73.5104 145.5052Cost Saving Rate 54.404% 37.250% 35.353% 34.694% 34.021%

1 E (b=6) 6.9391 27.12487 51.0625 75.0417 147.0208Cost Saving Rate 33.333% 33.333% 33.333% 33.333% 33.333%

202 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 30, NO. 1, JANUARY 2019

Page 14: Profit Maximization for Cloud Brokers in Cloud Computingcs.newpaltz.edu/~lik/publications/Jing-Mei-IEEE-TPDS-2019.pdf · Profit Maximization for Cloud Brokers in Cloud Computing

[5] L. M. Vaquero, L. Rodero-Merino, J. Caceres, and M. Lindner, “Abreak in the clouds: Towards a cloud definition,” ACM SIG-COMM Comput. Commun. Rev., vol. 39, no. 1, pp. 50–55, 2008.

[6] P. Mell and T. Grance, “The NIST definition of cloud computing,”Nat. Inst. Standards Technol., vol. 53, no. 6, 2009, Art. no. 50.

[7] R. Buyya, C. S. Yeo, S. Venugopal, J. Broberg, and I. Brandic,“Cloud computing and emerging it platforms: Vision, hype, andreality for delivering computing as the 5th utility,” Future Genera-tion Comput. Syst., vol. 25, no. 6, pp. 599–616, 2009.

[8] R. Zhang, K. Wu, M. Li, and J. Wang, “Online resource schedulingunder concave pricing for cloud computing,” IEEE Trans. ParallelDistrib. Syst., vol. 27, no. 4, pp. 1131–1145, Apr. 2016.

[9] Amazon EC2. 2017. [Online]. Available: http://aws.amazon.com[10] W. Wang, D. Niu, B. Li, and B. Liang, “Dynamic cloud resource

reservation via cloud brokerage,” in Proc. IEEE Int. Conf. Distrib.Comput. Syst., 2013, pp. 400–409.

[11] J. Mei, K. Li, A. Ouyang, and K. Li, “A profit maximizationscheme with guaranteed quality of service in cloud computing,”IEEE Trans. Comput., vol. 64, no. 11, pp. 3064–3078, Nov. 2015.

[12] S. Chaisiri, B.-S. Lee, and D. Niyato, “Optimization of resourceprovisioning cost in cloud computing,” IEEE Trans. Serv. Comput.,vol. 5, no. 2, pp. 164–177, Apr.–Jun. 2012.

[13] Microsoft Azure. 2017. [Online]. Available: http://www.microsoft.com/windowsazure

[14] O. Rogers and D. Cliff, “A financial brokerage model for cloudcomputing,” J. Cloud Comput., vol. 1, no. 1, pp. 1–12, 2012.

[15] D. D’Agostino, A. Galizia, A. Clematis, M. Mangini, I. Porro, andA. Quarati, “A QoS-aware broker for hybrid clouds,” Comput.,vol. 95, no. 1, pp. 89–109, 2013.

[16] D. Limbani and B. Oza, “A proposed service broker strategy incloudanalyst for cost-effective data center selection,” Int. J. Eng.Res. Appl., vol. 2, no. 1, pp. 793–797, 2014.

[17] A. M. Manasrah, T. Smadi, and A. Almomani, “A variable servicebroker routing policy for data center selection in cloud analyst,” J.King Saud Univ. Comput. Inf. Sci., vol. 29, pp. 365–377, 2017.

[18] F. Larumbe and B. Sans�o, “Green cloud broker: On-line dynamicvirtual machine placement across multiple cloud providers,” inProc. IEEE Int. Conf. Cloud Netw., 2016, pp. 119–125.

[19] M. Radi, “Efficient service broker policy for large-scale cloud envi-ronments,” Int. J. Comput. Sci., vol. 12, 2015, Art. no. 1.

[20] D. Rane and A. Srivastava, “Cloud brokering architecture fordynamic placement of virtual machines,” in Proc. IEEE 8th Int.Conf. Cloud Comput., 2015, pp. 661–668.

[21] H. Sarbazi-Azad and A. Zomaya, “A cloud broker architecture formulticloud environments,” pp. 359–376, 2013.

[22] J. Tordsson, R. S. Montero, R. Moreno-Vozmediano, andI. M. Llorente, “Cloud brokering mechanisms for optimized place-ment of virtual machines across multiple providers,” FutureGeneration Comput. Syst., vol. 28, no. 2, pp. 358–367, 2012.

[23] A. Quarati, A. Clematis, A. Galizia, and D. D’Agostino, “Hybridclouds brokering: Business opportunities, QoS and energy-savingissues,” Simul. Modelling Practice Theory, vol. 39, no. 8, pp. 121–134, 2013.

[24] G. Saha and R. Pasumarthy, “Maximizing profit of cloud brokersunder quantized billing cycles: A dynamic pricing strategy basedon ski-rental problem,” in Proc. Allerton Conf. Commun. ControlComput., 2015, pp. 1000–1007.

[25] L. Kleinrock, Queueing Systems: Theory, vol. 1. Hoboken, NJ, USA:Wiley, 1975.

[26] J. Cao, K. Hwang, K. Li, and A. Y. Zomaya, “Optimal multiserverconfiguration for profit maximization in cloud computing,” IEEETrans. Parallel Distrib. Syst., vol. 24, no. 6, pp. 1087–1096, Jun. 2013.

[27] V. Hajipour, V. Khodakarami, and M. Tavana, “The redundancyqueuing-location-allocation problem: A novel approach,” IEEETrans. Eng. Manage., vol. 61, no. 3, pp. 534–544, Aug. 2014.

[28] S. Liu, S. Ren, G. Quan, M. Zhao, and S. Ren, “Profit aware loadbalancing for distributed cloud data centers,” in Proc. IEEE Int.Symp. Parallel Distrib. Process., 2013, pp. 611–622.

[29] K. Li, “Optimal configuration of a multicore server processor formanaging the power and performance tradeoff,” J. Supercomput.,vol. 61, no. 1, pp. 189–214, 2012.

[30] A. Eiger, K. Sikorski, and F. Stenger, “A bisection method for sys-tems of nonlinear equations,” ACM Trans. Math. Softw., vol. 10,no. 4, pp. 367–377, 1984.

Jing Mei received the PhD in computer sciencefrom Hunan University, China, in 2015. She is cur-rently an assistant professor with the College ofInformation Science and Engineering, HunanNormal University. Her research interests includeparallel and distributed computing, cloud comput-ing, etc. She has published 14 research articlesin international conference and journals, such asthe IEEE Transactions on Computers, the IEEETransactions on Service Computing, the ClusterComputing, the Journal of Grid Computing, andthe Journal of Supercomputing.

Kenli Li received the PhD degree in computer sci-ence from the Huazhong University of Science andTechnology, China, in 2003. He was a visitingscholar with the University of Illinois at Urbana-Champaign from 2004 to 2005. He is currently thedean and a full professor of computer science andtechnology with Hunan University and deputydirector of National Supercomputing Center inChangsha. Hismajor research areas include paral-lel computing, high-performance computing, grid,and cloud computing. He has published more than

150 research papers in international conferences and journals such as theIEEE Transactions on Computers, the IEEE Transactions on Parallel andDistributed Systems, the IEEE Transactions on Signal Processing, theJournal of Parallel and Distributed Computing, ICPP, and CCGrid. Heserves on the editorial board of the IEEE Transactions on Computers. Heis an outstandingmember of the CCF. He is a senior member of the IEEE.

Zhao Tong received the BSc degree in computerscience from the Beijing Institute of Technology, in2007, and the PhD degree in computer sciencefromHunan University, China, in 2014. Currently, heis a lecturer with the College of Information Scienceand Engineering, Hunan Normal University. Hisresearch interests include modeling and schedulingfor parallel and distributed computing systems, par-allel system reliability, and parallel algorithms.

Qiang Li received the MS degree in computerscience and technology from the National Univer-sity of Defense Technology, in 2004, and the PhDdegree in computer science and technology fromBeihang University, China, in 2011. Currently, heis an associate professor with the College ofInformation Science and Engineering, HunanNormal University. His research interests includedistributed computing, cloud computing, and soft-ware engineering.

Keqin Li is a SUNY distinguished professorof computer science. His current researchinterests include parallel computing and high-performance computing, distributed computing,energy-efficient computing and communication,heterogeneous computing systems, cloud com-puting, big data computing, CPU-GPU hybridand cooperative computing, multicore comput-ing, storage and file systems, wireless communi-cation networks, sensor networks, peer-to-peerfile sharing systems, mobile computing, service

computing, Internet of things, and cyber-physical systems. He haspublished more than 510 journal articles, book chapters, and refereedconference papers, and has received several best paper awards. He iscurrently or has served on the editorial boards of the IEEE Transac-tions on Parallel and Distributed Systems, the IEEE Transactions onComputers, the IEEE Transactions on Cloud Computing, the IEEETransactions on Services Computing, the IEEE Transactions on Sus-tainable Computing. He is a fellow of the IEEE.

" For more information on this or any other computing topic,please visit our Digital Library at www.computer.org/publications/dlib.

MEI ETAL.: PROFIT MAXIMIZATION FOR CLOUD BROKERS IN CLOUD COMPUTING 203