Upload
doanminh
View
220
Download
6
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