FAIR CHARGES FOR INTERNET CONGESTION Damon Wischik Statistical Laboratory, Cambridge Electrical Engineering, Stanford
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. A B
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) ENTITYDOES WHAT?KNOWS WHAT?WANTS WHAT? userchooses rate at which to send packets how many of its packets are dropped send lots of packets quickly routerforwards 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) (Gibbens+Kelly 1999) ENTITYDOES WHAT?KNOWS WHAT?WANTS WHAT? userchooses rate at which to send packets its bill; how many of its packets are dropped low bill; send lots of packets quickly routerforwards 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) (MacKie-Mason+Varian 1994) regulators are interested in fairness Engineers simple working idea of fairness, efficiency simple algorithms such as RED (Floyd+Jacobson 1993) (Floyd+Jacobson 1993) Queueing theorists analyze how congestion occurs
EFFICIENT. FAIR. SIMPLE. Economists efficient but impractical pricing schemes (MacKie-Mason+Varian 1994) (MacKie-Mason+Varian 1994) regulators are interested in fairness Engineers simple working idea of fairness, efficiency simple algorithms such as RED (Floyd+Jacobson 1993) (Floyd+Jacobson 1993) Queueing theorists analyze how congestion occurs (Wischik 1999) (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
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
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
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.
THREE PRICING SCHEMES CHARGESEFFICIENT, WHENFAIR? SPSP X a fluid quantity LL X a random process EB X belongs to some fixed traffic class
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”
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!
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 queued serviced dropped
FAIRNESS 4/4 A price is anonymously equitable if no user, no collection of users, and no part of a user benefits from cross-subsidization; that is, any collection of packets Z is charged at least P(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) (Gibbens+Kelly 1999) This is anonymously equitable queued (charged) serviced dropped
THREE SORTS OF FAIRNESS CHARGES A USER EFFICIENT, WHEN FAIR? SPSPthe extra cost of each individual packet X a fluid quantityanonymously equitable LL the net extra cost of its packets X a probability distribution satisfies the burden test EBthe 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)(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) (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(Wischik 1999) Let X i = random amount of work that a user generates at time i, X =( X 1,X 2,…) The most likely path to lead to marking is given by can be calculated Proof: large deviations
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)Floyd+Jacobson 1993Cisco 1998 Fair? Not close to SPSP marked packets bursty flow smooth flow incoming work time REDSPSP 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 $3 network service provider +3 marks +2 marks +1 mark nsp
USER BEHAVIOUR Is the system stable? Kelly, Maulloo, Tan (1998) Rate control in communication networks Rate control in communication networks How might users behave? Gibbens, Kelly (1999) The evolution of congestion control The evolution of congestion control Microsoft Research Cambridge A distributed network game A distributed network game