Distributed Admission Control and Congestion Pricing Peter Key peterkey@microsoft.com

Preview:

Citation preview

Distributed Admission Control and Congestion Pricing

Peter Keypeterkey@microsoft.comhttp://research.microsoft.com/network/disgame.htm

Subplot …

Can guarantees be provided using pricing alone?

Refs: F.P. Kelly (Stats Lab, Cambridge Uni.), P.B Key , S.Zachary (Heriot-Watt Uni.), Distributed Admission Control, preprint

Outline

Introduction Congestion Pricing

Adaptive Admission Control Mathematical Framework Examples

Binomial ModelVirtual Queue markingCritical Timescales

DiscussionCommodity markets and Futures

Resource system (‘network’)

Resource j

Capacity Cj

User /route r Ajr links users to resources

Basic Idea

Users generate load (packets)Network sends back signals (load

dependent)Signals : proportional to load

Act as feedback indicators Represent pricing signals

marginal incremental costs (derivatives …)congestion costsreal money or virtual / distributed mint

Optimisation Framework (for fairness)

CAxts

xUMaxr

r

..

U System optimum

U is utility

rr txxUMax User optimum

rr

jr

jj

rr

xAy

yCxUMax

U C is cost function,eg

C y Cj j c h

Solution

Consistent set of taxes (prices) and load exist s.t.

rr

jj

jj

rrj

jr

txU

dy

dC

onstraineddC

d

xxU

nedunconstrai

case c

0 if

U

Eg Network chooses taxes, user chooses load,solution is network, user and System optimal.But dependent on Utility function, so ….

Matching prices to load

For bounded prices, have to match price load to capacity

ie, require maximum amount users prepared to pay < maximum network can charge

Eg, if xr satisfies then require

'( ) 1r rU x

rr

x C

Admission Control

Send a number of probe packets through the network

Enter the network if none of these packets are marked

Assume: Poisson arrivals, rate Let a(mj) be probability accepted at

node jindependently

User policy

User /route r

M probepackets

Enter if less than m probePackets marked

Product form distribution

1

0 1!

jr mnr

jr R j J kr

n a kn

Equilibrium distribution for the number of calls in progress

n-1 n+1n

v a(n-1) v a(n)

n+1n

Fixed Point Approximation

Define stationary acceptance probability for J={j}, R={r}

Then fixed point approximation for network has unique solution

1, ( )

defr

j j jnr r

E nA n n

{ }:

( , )j j j j

j r ii r jr j r

A A

A

Acceptance ProbabilitiesExample 1

Eg , let 1-aj(mj) be probability any of a number of probe packets are marked

Eg for a burst-scale model, where there is long-range dependence

Pr ( , )j j j ja m Binomial m p

Rejection Probabilities & PDFs

20 40 60 80 100n

0.2

0.4

0.6

0.8

1

1- aHnLRejection probabilities Equilibrium CDF

Setup: =50, thresholds 10, 20

n20 40 60 80 100

n

0.2

0.4

0.6

0.8

1

PDFs

Setup: =50, thresholds 10, 20

n

20 40 60 80 100n

0.025

0.05

0.075

0.1

0.125

0.15

0.175

20 40 60 80 100n

0.05

0.1

0.15

0.2

Setup: =100, thresholds 10, 20

Shadow Prices (buffered)

Max Queue Length Q

Time

Qu

eu

e L

en

gth

packets

Q

Fixed ServiceRate

Mark all packets from start of ‘busy period’ until last packet loss.

Virtual Queue Marking

Put arrivals into a virtual queue, and mark on this

Capacity capacity cv c, eg c

Buffer size bv b , eg b

Virtual Queue Example

Suppose we want to track derivative of queue , (or suppose cost=P[exceed thresh)

M/M/1 (can use other SRD processes)

Equate derivate to a VQ with reduced rate

For virtual queue, rate , thresh K-1, put

[buffer exceeds ] KP K

111 K

K

VQ Thresholds

20000 40000 60000 80000 100000

20

40

60

80

100

120

VQ treshold , Price 0.2 , tcrit =0.1 , H=0.8

Timescales

Connection

Reaction (RTT)

Packet Level

averagerate

Seconds

line rate

ms

s

Application Network

ms

s

Critical timescale

Critical Timescales

Large deviation approach (many sources asymptotic – Courcoubetis and Weber)

1lim log Pr , , supinf , ( )N st

Nc Nb Nn stn s t s b ctN

where 0,1, log sX ts t E e

st

t* and s* are extremals, t* is the critical timescale.

If mark as shadow price, is typical marking time

Critical timescales for VQ

Eg for a Gaussian process, arrival rate , Hurst parameter H

*(1 ) 1

b Ht

c H

1* *

1(1 ) 1vq

b Ht t

Hc

11

2 214

1 1log

2

b cP

n

2 1H

Critical timescales

Example 1Critical Timescales

Threshold Loading Leased line LAN Backbone

1 0.2 0.005 0 0.0000210 0.89 0.27 0.06 0.00145 0.984 5.1 1 0.017

180 0.997 81 17 0.27

Critical timescales

Example 2 BUT, need to have critical timescale less

than time between arrivals (for decisions to be independent)

This is (mean holding time)/(number of calls) in equilibrium 0 as n

Hence, keep virtual queue small, just for cell

scale

Congestion Prices (Timescales)

60 secs LAN)

1 Sec (Backbone)

Example 2 – packet marking

Mark packets if size of Virtual Queue exceeds threshold

IfM probe packets sent

where is mean packet service time(if connections generate packets at rate r,

service rate is c, then =r/c, and 1/ represents “capacity” of queue )

1{0,1 ( ) }Kj j ja m Max K m

Rejection Probabilities & PDFs, VQ marking

Rejection probabilities Equilibrium CDF

Setup: =50, thresholds 5,10

n

20 40 60 80 100n

0.2

0.4

0.6

0.8

1

1- a

20 40 60 80 100n

0.2

0.4

0.6

0.8

1

1- a

PDFs

Setup: =50, thresholds 5,10

n

Setup: =100, thresholds 5,10

20 40 60 80 100n

0.05

0.1

0.15

0.2

1- a

20 40 60 80 100n

0.02

0.04

0.06

0.08

0.1

0.12

1- a

Blocking vs. Marking (price)

50 75 100 125 150 175 200n

0.1

0.2

0.3

0.4

0.5

0.6

Pr

50 75 100 125 150 175 200n

0.1

0.2

0.3

0.4

0.5

0.6

Pr

VQ marking, threshold K=10, capacity (1/)=100

1 Probe packet 5 Probe packets

Blocking

marking

Mixing adaptive and non-adaptive traffic

Simple model: two types of traffic Non-adaptive traffic, requires unit

bandwidth Adaptive traffic: reacts to signals can

halve its bandwidth requirementSuppose price (congestion marking

probability) not to go above 0.2Gives acceptance boundaries

Price regions

Acceptance Boundaries

5 10 15 20 25 30 35n1

2.5

5

7.5

10

12.5

15

n2 8Target Excedeence Prob 0.010 , C= 25.54<

Underload

Overload

To give a price blocking of 10-4

5 10 15 20 25 30

0.2

0.4

0.6

0.8

1

Capacity =25.5 (eg LAN with voice, PCM coding)

Prop. Of adaptive traffic required

Total arrival rate

Discussion

Congestion pricing works well for adaptive applications

We have constructed a model for streams/flows where decisions made by end-systems

System is robust, and can be analysed /engineered

Facilitators

Critical timescales (of marking) small compared to interarrival times, (comparable to RTTs?)

Small buffers in Virtual Queue (compared to transmission delay) to detect quickly

Target loads below 100% …Simple feedback signal, eg ECN bit/byteSignal reflects costsPrices need to match demandUser interface simple (risk apportionment)

Recommended