Upload
lambert-cox
View
221
Download
1
Tags:
Embed Size (px)
Citation preview
FAIR CHARGES FOR INTERNET CONGESTION
Damon WischikStatistical Laboratory, CambridgeElectrical Engineering, Stanfordwww.stanford.edu/~wischik
INTERNET CONGESTION
Users send packets. When a router’s buffer fills:
it drops further incoming packets. When a user detects a dropped packet, typically:
it reduces its transmission rate; it resends the dropped packet.
Thus congestion slows down file transfers.
AB
WHO DOES WHAT
Users have no incentive to reduce rates If they cooperate, the system works
(Jacobson 1988) If they are greedy, they will cause congestion collapse
(Floyd+Fall 1999)
ENTITY DOES WHAT? KNOWS WHAT? WANTS WHAT?
user chooses rate at which to send packets
how many of its packets are dropped
send lots of packets quickly
router forwards packets; drops some
queue size; net incoming packet rate
?
PRICE AS AN INCENTIVE
Give users an incentive to control congestion let each user send what it wills;
charge accordingly (Gibbens+Kelly 1999)
ENTITY DOES WHAT? KNOWS WHAT? WANTS WHAT?
user chooses rate at which to send packets
its bill; how many of its packets are dropped
low bill; send lots of packets quickly
router forwards packets; drops some; charges users
queue size; net incoming packet rate
control congestion
OBJECTIVE
The network aims to distribute resources efficiently fairly simply
We seek mechanisms that are feasible technologically economically
EFFICIENT. FAIR. SIMPLE.
Economists efficient but impractical pricing schemes
(MacKie-Mason+Varian 1994) regulators are interested in fairness
Engineers simple working idea of fairness, efficiency simple algorithms such as RED
(Floyd+Jacobson 1993) Queueing theorists
analyze how congestion occurs
EFFICIENT. FAIR. SIMPLE.
Economists efficient but impractical pricing schemes
(MacKie-Mason+Varian 1994) regulators are interested in fairness
Engineers simple working idea of fairness, efficiency simple algorithms such as RED
(Floyd+Jacobson 1993) Queueing theorists
analyze how congestion occurs(Wischik 1999)
OUTLINE OF TALK
Define what it means for prices to be efficient fair
Analyse and devise simple charging algorithms
EFFICIENCY
ECONOMIC EFFICIENCY Let there be one router, for simplicity. Let each user
send amount , where experience average drop rate have net utility
Seek to maximize net welfare where and
Charge price Assume user acts to
Vu uX VuuXX )(
)(XLu
)()( XLXU uuu
)()(max?
YLXUu uu
u uXY
)(XPu
)()(max?
XPXU uuu
u u XLYL )()(
ECONOMIC EFFICIENCY Let there be one router, for simplicity. Let each user
send amount , where experience average drop rate have net utility
Seek to maximize net welfare where and
Charge price Assume user acts to
Vu uX VuuXX )(
)(XLu
)()( XLXU uuu
)()(max?
YLXUu uu
u uXY
)(XPu
)()(max?
XPXU uuu
u u XLYL )()(
ECONOMIC EFFICIENCY Let there be one router, for simplicity. Let each user
send amount , where experience average drop rate have net utility
Seek to maximize net welfare where and
Charge price Assume user acts to
Vu uX VuuXX )(
)(XLu
)()( XLXU uuu
)()(max?
YLXUu uu
u uXY
)(XPu
)()(max?
XPXU uuu
u u XLYL )()(
THREE SORTS OF EFFICIENCY
Three different user models: Let be a fluid amount
Let be a random process
Let belong to some fixed traffic
class (Courcoubetis+Kelly+Weber 1997)
Three different optimal prices.
uXYLXP uu /
uX)()( uu XYELYELP
uX)( Bandwidth, Effective uu XP
THREE PRICING SCHEMES
CHARGES EFFICIENT, WHEN FAIR?
SPSP X a fluid quantity
L X a random process
EB X belongs to some fixed traffic class
YLX /
)(
)(
XYL
YL
)(X
FAIRNESS
FAIRNESS 1/4
Effective bandwidth theory says
The EB scheme charge is
This yields a total allocation of costs accounting definition of fairness “crudest but most direct approach”
u ut
tXtCtBE )()(supinf)loss(log ,
]),0[exp(log)(, tXEX uut
)(ˆˆ,ˆ ut
Xt
FAIRNESS 2/4
Let each customer have bundle , and utility
u envies v if
We call an allocation no-envy fair if no one envies anyone else. well-developed mathematical theory
(Thomson+Varian 1985, Baumol 1986) avoids interpersonal comparison of utility; but of no use to us!
u)( uu bUub
)()( vuuu bUbU
FAIRNESS 3/4
The Burden Test for Fairness let C = extra cost of serving customer
X let P = revenue from X if C>P,
the firm makes a loss on X; it must make up the difference by overcharging others
X benefits from cross-subsidization The L scheme charges:
P(X) = C(X) = L(Y) – L(Y-X) precisely the cost of serving a user
SOCIAL INSTABILITY OF L
L charges a user its burden cost C( )=2; C( )=2; C( )=2
Users have an incentive to form coalitions L is socially unstable
queuedserviced
dropped
FAIRNESS 4/4
A price is anonymously equitable if no user, no collection of users,
and no part of a userbenefits from cross-subsidization;
that is, any collection of packets Z is charged at leastP(Z) >= C(Z) = L(Y)-L(Y-Z)
To be fair charge every packet
that contributes to congestion
SAMPLE PATH SHADOW PRICING
Charge every packet whose removal would lead to one less drop(Gibbens+Kelly 1999)
This is anonymously equitable
queued(charged
)serviced
dropped
THREE SORTS OF FAIRNESS
CHARGES A USER
EFFICIENT, WHEN
FAIR?
SPSP the extra cost of each individual packet
X a fluid quantity anonymously equitable
L the net extra cost of its packets
X a probability distribution
satisfies the burden test
EB the effective bandwidth of its distribution
X a predefined traffic type
achieves a total allocation of costs
WHICH FAIRNESS IS BEST?
The three definitions measure different things SPSP = “consumption” L = SPSP – discount EB = SPSP - discount discounts take account of how users
respond Technological considerations:
routers cannot model user behaviour SPSP is the right definition of fairness
A FAIRNESS ANALOGY
Andrew, Betty and Charles share a cake. Each takes one third.
The cost is split equally.
A FAIRNESS ANALOGY
Andrew, Betty and Charles share a cake. Each takes one third.
They each want different amounts: Andrew and Betty demand
exactly one third each; Charles only wants one quarter,
but is happy to eat the rest. Instead of splitting the cost equally,
Charles is given a discount.
SIMPLE CHARGING ALGORITHMS
MARKING AND CHARGING
Let routers mark packets to indicate congestion — but how? (Ramakrishnan+Floyd 1999)
Users should respond by reducing their rate but have no incentive to do so
Let us charge the user for each marked packet,and mark according to SPSP(Gibbens+Kelly 1999)
GOOD MARKING ALGORITHMS
Want to mark according to SPSP SPSP requires foreknowledge:
whether or not a packet should be marked depends on future overflows.
So seek approximations to SPSP: use theory to analyze RED, to see how close it is; to suggest new algorithms—ROSE.
queued(charged
)serviced
dropped
ANALYSIS OF ALGORITHMS
Theorem: (Wischik 1999)sample path large deviations
Let Xi = random amount of work that a user generates at time i, X=(X1,X2,…)
The most likely path to lead to marking is given by can be calculated
Proof: large deviations
)ˆexp(logˆ Xx E
THE RED ALGORITHM
Keep a moving average of queue size
When exceeds a threshold mark each incoming packet, with probability
(Floyd+Jacobson 1993, Cisco 1998) Fair? Not close to SPSP
-5 0 5 10 15
A
-5 0 5 10 15
B
marked packets
bursty flow
smooth flow
inco
min
g w
ork
timeREDSPSP
ttt qqq )1(11
tq tq
tq)( tqP
Paths most likely to lead to marking
SUMMARY
Users need incentives to cooperate, such as congestion charges.
Efficiency? No clear definition Fairness? SPSP
Marks can convey prices, so design simple marking algorithms analyse their behaviour
Other questions market structure? user behaviour?
MARKET STRUCTURE
Marks indicate how much networks should pay each other, where capacity should be expanded.
Who should pay for congestion? only the receiver knows the price but maybe the sender should pay
$6$5$3network service provider
+3 marks +2 marks +1 mark
nspnsp
USER BEHAVIOUR
Is the system stable? Kelly, Maulloo, Tan (1998)
Rate control in communication networks
How might users behave? Gibbens, Kelly (1999)
The evolution of congestion control Microsoft Research Cambridge
A distributed network game