1
Performance Study of Performance Study of Congestion Price Based Congestion Price Based
Adaptive ServiceAdaptive Service
Xin Wang, Henning Xin Wang, Henning SchulzrinneSchulzrinne
((Columbia universityColumbia university))
2
OutlineOutline
• Resource negotiation & Resource negotiation & RNAPRNAP
• Pricing strategyPricing strategy
• User adaptationUser adaptation
• Simulation modelSimulation model
• Results and discussionResults and discussion
3
Resource Negotiation & Resource Negotiation & RNAPRNAP
• AssumptionAssumption: network provides a choice : network provides a choice of delivery services to user of delivery services to user – e.g. diff-serv, int-serv, best-effort, with e.g. diff-serv, int-serv, best-effort, with
different levels of QoS different levels of QoS – with a pricing structure (may be usage-with a pricing structure (may be usage-
sensitive) for each.sensitive) for each.
• RNAPRNAP: a protocol through which the : a protocol through which the user and network (or two network user and network (or two network domains) negotiate network delivery domains) negotiate network delivery services.services.– Network -> UserNetwork -> User:: communicate availability communicate availability
of services; price quotations and of services; price quotations and accumulated chargesaccumulated charges
– User -> NetworkUser -> Network: request/re-negotiate : request/re-negotiate specific services for user flows.specific services for user flows.
• Underlying MechanismUnderlying Mechanism: combine : combine network pricing with traffic engineeringnetwork pricing with traffic engineering
4
Resource Negotiation & Resource Negotiation & RNAP (cont’d.)RNAP (cont’d.)
• Who can use RNAP?Who can use RNAP?– Adaptive applications: adapt Adaptive applications: adapt
sending rate, choice of sending rate, choice of network servicesnetwork services
– Non-adaptive applications: Non-adaptive applications: take fixed price, or absorb take fixed price, or absorb price changeprice change
5
Centralized Architecture Centralized Architecture (RNAP-C)(RNAP-C)
NRN
S1
R1
NRN NRNHRN
HRN
Access Domain - BAccess Domain - A
Transit Domain
Internal Router
Edge Router
Host RNAP Messages
NRN
HRN
Network Resource Negotiator
Host Resource Negotiator
Intra domain messages
Data
6
S1
R1
HRNHRN
Access Domain - B
Access Domain - A
Transit Domain
Internal Router
Edge Router
Host
RNAP Messages
HRN Host Resource Negotiator
Data
Distributed Architecture Distributed Architecture (RNAP-D)(RNAP-D)
7
Resource Negotiation & RNAP Resource Negotiation & RNAP (cont’d.)(cont’d.)
Query
Quotation
Reserve
Commit
Quotation
Reserve
Commit
Close
Release
Query: User enquires about available services, prices
Quotation: Network specifies services supported, prices
Reserve: User requests service(s) for flow(s) (Flow Id-Service-Price triplets)Commit: Network admits the service request at a specific price or denies it (Flow Id-Service-Status-Price)
Per
iodi
c re
-neg
otia
tion
Close: tears down negotiation session
Release: release the resources
8
Pricing StrategyPricing Strategy
• Current Internet: Current Internet: – Access rate dependent Access rate dependent
charge (AC)charge (AC)– Volume dependent charge Volume dependent charge
(V)(V)– AC + V AC-VAC + V AC-V– Usage based charging: time-Usage based charging: time-
based, volume-basedbased, volume-based
• Fixed pricingFixed pricing– Service class independent Service class independent
flat pricing flat pricing – Service class sensitive Service class sensitive
priority pricing priority pricing – Time dependent time of day Time dependent time of day
pricingpricing– Time-dependent service Time-dependent service
class sensitive priority class sensitive priority pricingpricing
9
Pricing Strategy (cont’d.)Pricing Strategy (cont’d.)
• Congestion-based PricingCongestion-based Pricing– Usage chargeUsage charge: :
ppuu= = ff (service, demand, (service, demand,
destination, time_of_day, ...) destination, time_of_day, ...) ccuu(n)(n) = = ppuu x V (n) x V (n)
– Holding chargeHolding charge: : PPhh
ii = = ii x x ((ppuui i - p- puu i-1i-1) )
cchh (n) (n) = = pphh x R(n) x R(n)
x x – CongestionCongestion chargecharge: :
ppcc (n) (n) = min [{ = min [{ppcc (n-1) (n-1) + +
(D, S) x (D-S)/S,0 (D, S) x (D-S)/S,0 }}++, p, pmaxmax] ]
cccc(n)(n) = =
ppcc(n) x V(n) (n) x V(n)
10
User AdaptationUser Adaptation
• Based on perceived valueBased on perceived value
• Application adaptationApplication adaptation
– Maximize total utility over the Maximize total utility over the
total costtotal cost
– Constraint: Constraint:
budget, min QoS & max budget, min QoS & max
QoSQoS
11
User Adaptation (cont’d.)User Adaptation (cont’d.)
• An example utility functionAn example utility function– U U ((xx) = ) = UU00 + + log log ((x / xx / xmm))
• Optimal user demand Optimal user demand – Without budget constraintWithout budget constraint: x: xjj = = jj / p / pjj
– With budget constraintWith budget constraint: x: xjj = (b x = (b x j j / Σ / Σll ll
)) / p / pj j
• AffordableAffordable resource is distributed resource is distributed proportionally among applications of proportionally among applications of the system, based on the user’s the system, based on the user’s preference and budget for each preference and budget for each application.application.
12
Simulation ModelSimulation Model
13
Simulation ModelSimulation Model
14
Simulation Model (cont’d.)Simulation Model (cont’d.)
• Parameters Set-upParameters Set-up– topology1: topology1: 4848 users users– topology 2: topology 2: 360360 users users– user requests: user requests: 6060 kb/s -- kb/s -- 160 160 kb/skb/s– targeted reservation rate: targeted reservation rate: 90%90%– price adjustment factor: price adjustment factor: σσ = = 0.060.06– price update threshold: price update threshold: θθ = = 0.050.05– negotiation period: negotiation period: 30 30 secondsseconds
– usage price: usage price: ppu u = = 0.230.23 cents/kb/min cents/kb/min
15
Simulation Model (cont’d.)Simulation Model (cont’d.)
• Performance measuresPerformance measures– Bottleneck bandwidth Bottleneck bandwidth
utilizationutilization– User request blocking User request blocking
probabilityprobability– Average and total user benefitAverage and total user benefit– Network revenueNetwork revenue– System priceSystem price– User chargeUser charge
16
Design of the ExperimentsDesign of the Experiments
• Performance comparison of Performance comparison of congestion-based pricing system congestion-based pricing system (CPA) with a fixed-price based system (CPA) with a fixed-price based system (FP) (FP)
• Effect of system control parameters: Effect of system control parameters: – target reservation ratetarget reservation rate– price adjustment stepprice adjustment step– price adjustment thresholdprice adjustment threshold
• Effect of user demand elasticityEffect of user demand elasticity
• Effect of session multiplexingEffect of session multiplexing
• Effect when part of users adaptEffect when part of users adapt
• Session adaptation and adaptive Session adaptation and adaptive reservationreservation
17
Performance Comparison Performance Comparison of CPA and FPof CPA and FP
18
Bottleneck UtilizationBottleneck Utilization
Request blocking probabilityRequest blocking probability
19
Request blocking probabilityRequest blocking probability
20
Total network revenue ($/min)Total network revenue ($/min)
21
Total user benefit ($/min)Total user benefit ($/min)
22
Price ($/kb/min)Price ($/kb/min)
23
User bandwidth (kb/s)User bandwidth (kb/s)
24
Average price ($/kb/min)Average price ($/kb/min)
25
Average user bandwidth (kb/s)Average user bandwidth (kb/s)
26
Average user charge ($/min)Average user charge ($/min)
27
Effect of target reservation rateEffect of target reservation rate
28
Bottleneck utilizationBottleneck utilization
29
Request blocking probabilityRequest blocking probability
30
Total user benefitTotal user benefit
31
Effect of Price Adjustment Effect of Price Adjustment StepStep
32
Bottleneck utilizationBottleneck utilization
33
Request blocking probabilityRequest blocking probability
34
Effect of Price Adjustment ThresholdEffect of Price Adjustment Threshold
35
Request blocking probabilityRequest blocking probability
36
Effect of User Demand ElasticityEffect of User Demand Elasticity
37
Average user bandwidthAverage user bandwidth
38
Average user chargeAverage user charge
39
Effect of Session Effect of Session MultiplexingMultiplexing
40
Request blocking probabilityRequest blocking probability
41
Total user benefitTotal user benefit
42
Adaptation by Part of Adaptation by Part of User PopulationUser Population
43
Bandwidth Bandwidth utilizationutilization
44
Request blocking probabilityRequest blocking probability
45
Session Adaptation & Session Adaptation & Adaptive ReservationAdaptive Reservation
46
Bandwidth utilizationBandwidth utilization
47
Blocking probabilityBlocking probability
48
ConclusionsConclusions
• CPA gain over FPCPA gain over FP– Network availability, revenue, Network availability, revenue,
perceived benefitperceived benefit
– Congestion price as control is Congestion price as control is
stable and effectivestable and effective
• Target reservation rate Target reservation rate
(utilization): (utilization):
– User benefit , with too high or too User benefit , with too high or too
low utilizationlow utilization
– Too low target rate, demand Too low target rate, demand
fluctuation is highfluctuation is high
– Too high target rate, high Too high target rate, high
blocking rate blocking rate
49
ConclusionsConclusions
• Effect of price scaling factor Effect of price scaling factor – , blocking rate, blocking rate– Too large Too large , under-utilization, , under-utilization,
large dynamics large dynamics
• Effect of price adjustment Effect of price adjustment
threshold threshold – Too high, no meaningful Too high, no meaningful
adaptationadaptation
– Too low, no big advantageToo low, no big advantage
50
ConclusionsConclusions
• Demand elasticityDemand elasticity– Bandwidth sharing is proportional Bandwidth sharing is proportional
to its willingness to pay to its willingness to pay
• Portion of user adaptation Portion of user adaptation
results in overall system results in overall system
performance improvementperformance improvement