25
ACROSS Workshop at ITC 27, Ghent 11/9/2015 Resource Pricing and Provisioning Strategies in Cloud Systems: A Stackelberg Game Approach Valeria Cardellini, Valerio di Valerio and Francesco Lo Presti

Resource Pricing and Provisioning Strategies in Cloud ... · ACROSS Workshop at ITC 27, Ghent 11/9/2015 Resource Pricing and Provisioning Strategies in Cloud Systems: A Stackelberg

Embed Size (px)

Citation preview

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Resource Pricing and Provisioning Strategies in Cloud Systems: A

Stackelberg Game Approach

Valeria Cardellini, Valerio di Valerio and Francesco Lo Presti

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Talk Outline

Background and Motivation

Provisioning Model and Assumptions

Pricing schemes

Optimal Pricing as IaaS/SaaS Stackelberg Game Existence of equilibria

Equilibria computation

Numerical Examples

Conclusions

1

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Backgroung and Motivation

Software as a Service – SaaS Provider’s applications running on a cloud infrastucture

Infrastucture as a Service – IaaS Compute, storage and network resources as on-demand

service

Virtualization techniques - VMs

2

SaaS

SaaS

IaaS

Acquire VMs

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Backgroung and Motivation

Issues Dynamic Resource Provisioning

Pricing Schemes vs Auction Reserved, on demand, spot

SaaS provider strategies, IaaS strategy

3

SaaS

SaaS

IaaS

Acquire VMs

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Backgroung and Motivation

Issues Dynamic Resource Provisioning

Pricing Schemes vs Auction Reserved, on demand, spot

SaaS provider strategies, IaaS strategy

4

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Related work

Too many to mention…with different settings and assumptions Auction

Welfare maximization

Profit maximization

Game Theory/Mechanism Design Single round

– Equilibria

Multiple rounds

– Bidding strategies

» MDP, Reinforcement Learning

Closest to our (which inspired this work) Generalized Nash Equilibria (Ardagna et al, TSC ’13)

5

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Contributions

Formulate the spot VM pricing and provisioning problem as a Stackelberg game

Provide proof of existence of game equilibria under suitable assumptions

Algorithms for computing equilibria

6

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Problem Setting and Assumptions

SaaS providers offer service to end users Service are hosted on a IaaS Cloud

Assume al VMs are equal Same CPU, memory, etc.

Revenue/penalty depends on the performance offered to their customers (SLA) Performance depends on workload and number of allocated VMs

Captured by a suitable Utility Function

Saas Providers want to maximize their utility SaaS utility strictly concave function of number of VMs and

twice differentiable Diminishing returns

7

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Problem Setting and Assumptions

IaaS provider sells VMs to SaaS Providers Different VMs pricing schemes (~ Amazon EC2 offer)

Flat instances Reserved instances, One time payment + fixed time unit rate f

On Demand instances Fixed time unit rate d

Spot instances Variable rate s

Typically d > f >> s

Iaas Provider wants to maximize its revenue

8

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Provisioning Model

Periodic Provisioning SaaS provision VMs periodically (e.g., every hour) based

on (expected) workload Each SaaS has a fixed amount of flat it acquired in the past

At the beginning of each time interval:

1. Each SaaS provider determines: Number of flat instances (he owns) to use (fixed price f)

Number of on demand to buy (fixed price d)

How many spot instances to buy (variable price s)

2. IaaS provider determines: Spot price s

9

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Provisioning Model

2 step Provisioning

1° step: SaaS providers decide how many flat VMs to use and how many on demand VMs to buy As to optimize their utility

Assume IaaS provider has enough resources to satisfy flat and on demand VMs requests

no competition in this step

2° step: IaaS IaaS provider sells its unused capacity as spot VMs

Cheap

Finite amount -> competition

We study the game arising in the 2° provisioning step

10

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Two Spot instances Pricing schemes

SaaS announce maximum price they would accept ~ budget constraint

Same Spot Price Model (SSPM): IaaS sets a unique spot price for all SaaS providers Users whose max price is lower than actual price will not

get any spot instances

Multiple Spost Price (MSPM): IaaS can set different price for different SaaS providers Price will not exceed SaaS max price

11

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Step 2: Different spot prices

SaaS user u

spot price

max spot price

su number of

spot VMs

Θu utility function

12

SaaS PROVIDER 1 PROBLEM

Maxs1 Θ1(s1,σ1)

Subject to: residual cap.

usu

å £

SaaS PROVIDER n PROBLEM

Maxsn Θn(sn,σn)

Subject to: residual cap.

usu

å £

. . .

IaaS PROVIDER

Max

Subject to:

us usu

å

mins £ us £ umax

s

us

us

umax

s

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Step 2: Same spot prices for all SaaS providers

13

SaaS PROVIDER 1 PROBLEM

Maxs1 Θ1(s1,σ)

Subject to: residual cap.

s1=0 if s1>σ1max

usu

å £

SaaS PROVIDER n PROBLEM

Maxsn Θn(sn,σ)

Subject to: residual cap.

sn=0 if sn>σnmax

usu

å £

. . .

IaaS PROVIDER

Max

Subject to:

us su

å

mins £s

s

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Step 2 as Stackelberg game

14

SaaS PROVIDER 1 PROBLEM

Maxs1 Θ1(s1,σ1)

Subject to: residual cap.

usu

å £

SaaS PROVIDER n PROBLEM

Maxsn Θn(sn,σn)

Subject to: residual cap.

usu

å £

. . .

IaaS PROVIDER

Max

Subject to:

us usu

å

mins £ us £ umax

s

SaaS subgame

STACKELBERG GAME FOLLOWERS

Play a non-cooperative game to maximize their utility

STACKELBERG GAME LEADER

Maximizes its revenue by adjusting the spot price(s)

IaaS provider sets the spot price(s)

SaaS providers return the equilibrium number of spot VMs

us

ACROSS Workshop at ITC 27, Ghent 11/9/2015

SaaS subgame

Fixed spot price vector , compute SaaS equilibrium

Generalized Nash Game strategy space depends on other players

Jointly Convex Gen. Nash Game Equilibrium can be computed solving the associated

Variational Inequality (VI)

Associated VI function is strongly monotone

15

SaaS PROVIDER 1 PROBLEM

Maxs1 Θ1(s1,σ1)

Subject to: residual cap.

usu

å £

SaaS PROVIDER n PROBLEM

Maxsn Θn(sn,σn)

Subject to: residual cap.

usu

å £

. . .

ACROSS Workshop at ITC 27, Ghent 11/9/2015

SaaS subgame

Theorem: there is exactly one variational equilibrium of the followers subgame

16

SaaS PROVIDER 1 PROBLEM

Maxs1 Θ1(s1,σ1)

Subject to: residual cap.

usu

å £

SaaS PROVIDER n PROBLEM

Maxsn Θn(sn,σn)

Subject to: residual cap.

usu

å £

. . .

ACROSS Workshop at ITC 27, Ghent 11/9/2015

IaaS Problem

17

SaaS PROVIDER 1 PROBLEM

Maxs1 Θ1(s1,s-1,σ1)

Subject to: residual cap.

usu

å £

SaaS PROVIDER n PROBLEM

Maxsn Θn(sn,s-n,σn)

Subject to: residual cap.

usu

å £

. . .

IaaS PROVIDER

Max

Subject to:

us usu

å

mins £ us £ umax

s

SaaS subgame

IaaS provider sets the spot price

SaaS providers return the equilibrium number of spots VMs

us

ACROSS Workshop at ITC 27, Ghent 11/9/2015

IaaS Problem

is the solution of the SaaS subgame

Theorem: there is at least one Stackelberg equilibrium of the IaaS game Under both pricing schemes

18

IaaS PROVIDER

Max

Subject to:

us usu

å

mins £ us £ umax

s

us

ACROSS Workshop at ITC 27, Ghent 11/9/2015

IaaS Problem: MSPM

IaaS Problem is Mathematical Problem with Equilibrium Constraints Cannot be directly solved

Solution computed by solving a sequence of perturbed (smooth) problem [Facchinei et al ‘99]

19

IaaS PROVIDER

Max

Subject to:

us usu

å

mins £ us £ umax

s

us

ACROSS Workshop at ITC 27, Ghent 11/9/2015

IaaS Problem: SSPM

Need to resort to a brute force approach 1. Discretize the spot price interval

2. Compute SaaS subgame equilibrium 1. Easy, it turns out to be a potential game

3. Pick up the price that corresponds to the largest IaaS revenue

20

IaaS PROVIDER

Max

Subject to:

us su

å

mins £s

s

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Numerical examples: Homogeneous Scenario

SaaS provider capacity 160 VMs

10 SaaS homogenoeus providers, max price 0.5$

Spot price vs SaaS load

21

Number of available and sold spot VMs during the 2° stage

Optimal spot price

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Numerical examples: Heterogenous Scenario

SaaS provider capacity 160 VMs

10 SaaS heterogenous provider, same utility function but max price=[0:1; 0:14; 0:18; 0:22; 0:26; 0:30; 0:34; 0:38; 0:42; 0:46]$

Spot price vs SaaS load

22

Number of available and sold spot VMs during the 2° stage

Optimal spot price

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Numerical examples: Heterogenous Scenario

SaaS provider capacity 160 VMs

10 SaaS heterogenous provider, same utility function but max price=[0:1; 0:14; 0:18; 0:22; 0:26; 0:30; 0:34; 0:38; 0:42; 0:46]$

MSPM vs SSPM optimal spot price

23

MSPM SSPM

ACROSS Workshop at ITC 27, Ghent 11/9/2015

Conclusions

Studied Cloud Resource Provisioning problem

Formulated the spot pricing as a Stackelberg game IaaS as leader

SaaS providers as followers

Considered two pricing schemes

Provided proof of existence of equilibria

Presented algorithms for equilibria computation

Future work

Study multi IaaS/SaaS problem

Extend the work to other provisioning/pricing schemes

Compare the results with auction based schemes

24