Mechanisms for Internet Routing Aditya Akella Shuchi Chawla

  • Slides: 31
Download presentation
Mechanisms for Internet Routing Aditya Akella Shuchi Chawla 12/4/2001

Mechanisms for Internet Routing Aditya Akella Shuchi Chawla 12/4/2001

Why Game Theory + Internet? Game Theory is HOT So is the Internet A

Why Game Theory + Internet? Game Theory is HOT So is the Internet A lot of recent theory n n Applying Game Theory to Internet Game theoretic analyses for w Quality of Service w Congestion Control w Multi-Path and Shortest-Path routing w…

Past Research Worst-Case Equilibria (Koutsoupias et. al. ) n n Impact of lack of

Past Research Worst-Case Equilibria (Koutsoupias et. al. ) n n Impact of lack of co-ordination Followed-up by Selfish Routing (Roughgarden et. al. ) Algorithmic Mechanism Design (Nisan et. al. ) n n Ensures social behavior from selfish agents Discussed in class

Outline Problem Statement The Abstract Model The Cost of Anarchy Pricing Mechanisms Internet Routing

Outline Problem Statement The Abstract Model The Cost of Anarchy Pricing Mechanisms Internet Routing

The Problem Routing in the Internet – end-users (flows) are selfish Conflicting goals n

The Problem Routing in the Internet – end-users (flows) are selfish Conflicting goals n n Users’ goal: achieve low end-to-end latency Network’s goal: ensure low overall latency Impact n n How bad is the situation without any mechanism? What is a good mechanism?

Why is this Tough? The notion of social cost function unclear Need a distributed

Why is this Tough? The notion of social cost function unclear Need a distributed solution n Way to distribute and compute costs Solution concept n Nash Equilibrium or Bayes-Nash or Dominant Strategy

The Abstract Model Each agent routes flow along one or many of available links

The Abstract Model Each agent routes flow along one or many of available links f(x) = latency along a single link Degrees of freedom n n n Who are the agents? Strategies are available to agents Social cost function

Agents Each packet is a selfish agent n n Dynamically chooses a link with

Agents Each packet is a selfish agent n n Dynamically chooses a link with min cost Cannot alone make a significant impact on the load and cost Unit sized flows are selfish agents n n Choose link with min cost and route entire flow on it (Pure Strategy) Pick any link with some probability and route entire flow on it (Mixed Strategy)

Social Cost Function Weighted average of link latencies xf(x) Maximum latency over all links

Social Cost Function Weighted average of link latencies xf(x) Maximum latency over all links max{f(x)} Which one is the correct one is unclear we study all scenarios

Latency function along a link Typical for the Internet: f(x) = 1/(c-x) c: capacity

Latency function along a link Typical for the Internet: f(x) = 1/(c-x) c: capacity of link Properties n n Increasing gradient Linear/polynomial functions – easy analysis

The Cost of Anarchy If it isn’t too bad, why design a mechanism? [RT

The Cost of Anarchy If it isn’t too bad, why design a mechanism? [RT 00] – average latency with packets as agents n n Linear latencies: Nash 4/3 opt General latencies: bi-criteria result – impractical Extended to flows as agents – yet another bicriteria result! Allowing mixed strategies – discussed later

Minimizing average latency In both situations Nash can be arbitrarily bad Total flow origin

Minimizing average latency In both situations Nash can be arbitrarily bad Total flow origin 1 1 destination xk Opt cost= 1 -k(1+k)-(k+1)/k Nash cost=1

Minimizing max latency [KP 99] – flows as agents with mixed strategies, linear latency

Minimizing max latency [KP 99] – flows as agents with mixed strategies, linear latency n n two links: Nash 3/2 opt m links: Nash/Opt log m/log m

Min. max latency – pure strategies OPT solution for max latency – load each

Min. max latency – pure strategies OPT solution for max latency – load each link equally Nash solution when packets are agents – all links have equal latencies They are the same!! Same holds for flows as agents.

Avg latency & mixed strategies Compare to max latency case Nash equilibria are the

Avg latency & mixed strategies Compare to max latency case Nash equilibria are the same – agents see same cost OPT solution is the same – if latency gradient is increasing Quality of Nash compared to Opt is similar to Max latency case

At a glance… Nash/Opt for linear latencies Pure strategies Mixed strategies Avg latency 4/3

At a glance… Nash/Opt for linear latencies Pure strategies Mixed strategies Avg latency 4/3 Max latency 1 log m/log log m Note – [KP 99] results worse than [RT 00] Mixed strategies make the situation worse

Why are mixed strategies worse? Agent i routes with +ve probability on links l

Why are mixed strategies worse? Agent i routes with +ve probability on links l Si Consider pure strategies {l 1, l 2, …, ln}: li Si Cost of mixed strategies is a convex combination of costs of pure sets At least one pure set has better cost

Why are mixed strategies worse? All flows may seem well distributed But… With some

Why are mixed strategies worse? All flows may seem well distributed But… With some small probability some links get heavily loaded. Expected max load increases

General latency functions Extremely hard to analyze n n Computing nash equilibria Determining their

General latency functions Extremely hard to analyze n n Computing nash equilibria Determining their cost Example – we will try to analyze square latency on two links where the goal is to minimize max latency

Minimizing max latency. . 2 links 3 kinds of agents LINK 1 LINK 2

Minimizing max latency. . 2 links 3 kinds of agents LINK 1 LINK 2 A: send all flow on link 1 p 1 -p C: send on link 1 w/ prob p link 2 w/ prob 1 -p B: send all flow on link 2 All agents are at equilibrium: A: pi(1 -p)c-i(c choose i) (i+a)2 < B(c, p, i) (c-i+1+b)2 B: B(c, p, i) (i+a+1)2 > B(c, p, i) (c-i+b)2 C: B(c-1, p, i) (i+a+1)2 = B(c-1, p, i) (c-i+b)2

Simplify to get p* = ½ + (b-a)/2(c-1) Doesn’t help! Recall – mixed strategies

Simplify to get p* = ½ + (b-a)/2(c-1) Doesn’t help! Recall – mixed strategies are bad Conjecture – the worst Nash equilibrium has all agents distributed over the two links

n agents – each routes on link 1 with probability ½ Cost of opt

n agents – each routes on link 1 with probability ½ Cost of opt = (n/2)2 Cost of Nash < 3 n(n-1)/4 Nash is at most 3 times worse than Opt

Lower bound for m links, linear latency m flows, m links, each flow distributed

Lower bound for m links, linear latency m flows, m links, each flow distributed 1/m over all links Throw m balls into m bins Old result from mathematics: Expected maximum = log m/log m Recent unpublished work shows matching upper bound

Pricing Mechanisms How to design a mechanism? Implications on Routing in the Wide. Area

Pricing Mechanisms How to design a mechanism? Implications on Routing in the Wide. Area

Designing a Mechanism - Motivation Agents base their selfish decisions on perceived link cost

Designing a Mechanism - Motivation Agents base their selfish decisions on perceived link cost Pricing Schemes should rely on this fact n n Choose link costs cleverly and distribute these rather than the true costs Assumption: Users rely on cost reported by the network w Don’t compute independently n Cost used as a routing hint and not charged to the users

Lessons learnt from [RT 00] At Nash equilibrium, all links have same cost At

Lessons learnt from [RT 00] At Nash equilibrium, all links have same cost At social optimum, all links have same latency gradient n n Mechanism should induce a Nash equilibrium in which all links have same latency gradient (xf(x))’ Our price should be equal to the latency gradient p(x) = d/dx {xf(x)}

This was simple! This is a VCG mechanism Agent’s cost f(xi) = xif(xi) when

This was simple! This is a VCG mechanism Agent’s cost f(xi) = xif(xi) when xi=1 Social cost = xif(xi) Easy to implement using congestion bit

Implementation Concerns Flows in the Internet cannot tolerate reordering n Require unsplittability Load is

Implementation Concerns Flows in the Internet cannot tolerate reordering n Require unsplittability Load is not fixed n Some Long flows, many Short flows

But… Short flows are much smaller than long ones n n Can extend the

But… Short flows are much smaller than long ones n n Can extend the results for splittable case to short flows easily Each agent is now a short flow Short flows determine the equilibrium

Impact of Long Flows Arrival and departure of long flows n n Perturbs the

Impact of Long Flows Arrival and departure of long flows n n Perturbs the equilibrium of short flows But infrequent Arrival and departure of short flows n n Very frequent Helps the network of short flows reach a new equilibrium quickly after perturbation Routing of the short flows ensures that the path taken by long flows is `right’

Conclusions We designed a mechanism and its implementation that works for n n n

Conclusions We designed a mechanism and its implementation that works for n n n Minimizing average latency Gives congestion notification to agents Works without assumptions of splittable flow or flows of equal size