470 likes | 651 Vues
How Bad is Selfish Routing. A survey on existing models for selfish routing. Professor John Lui, David Yau and Dah-Ming Qiu presented by Joe W.J. Jiang 2004-05-18. Outline of my talk. Introduction to selfish routing Preliminaries and Nash equilibrium How bad is selfish routing
E N D
How Bad is Selfish Routing A survey on existing models for selfish routing Professor John Lui, David Yau and Dah-Ming Qiu presented by Joe W.J. Jiang 2004-05-18
Outline of my talk • Introduction to selfish routing • Preliminaries and Nash equilibrium • How bad is selfish routing • Other models on selfish routing & related work • Conclusions and problems
Introduction to selfish routing • Routing in the Internet: • RIP (distance vector routing, Bellman-Ford) • OSPF (link state routing, Dijkstra) • BGP (exterior gateway protocol) • These routing metrics of the above protocols are generally based on hop counts. • There is an inherent inefficiency from the users’ perspective: bandwidth, latency, jitter. • There is an incentive for users to choose routes themselves.
Selfish routing in the Internet • Source routing : Nimrod -- route information is contained in the header of route request • Overlay routing: Detour or RON – routing via peer nodes in the overlay network • Such end-to-end route selection is selfish by nature, optimizing their own performance without considering others’.
Selfishness in the Internet • Internet: users with a multitude of diverse economic interests browsers routers servers • Selfishness: parties will deviate from their protocol if it is in their interest. • How to study these problems: Algorithmic Game Theory – algorithms + game theory
Where are you? • Introduction to selfish routing • Preliminaries and Nash equilibrium • How bad is selfish routing • Other models on selfish routing & related work • Conclusions and problems
Routing Problems Optimization problem: • given a network, a traffic rate between each pair of nodes • latency function of each edge • objective: the total latency is minimized
Nash Equilibrium • A Nash Equilibrium is a set of strategies (one status) one for each player, such that no player has incentive to unilaterally change his action. • Players are in equilibrium if a change in strategies by any one of them would lead that player to earn less than current strategy. • It is well known that Nash equilibria do not in general optimize social welfare – “Prisoner’s Dilemma”.
Braess’s Paradox 1 • the price of anarchy: 2/1.5 = 4/3! x 1 1/2 0 s t 1/2 1 x average latency= 1+0.5 =1.5 average latency= 1+1 =2
Some Algorithmic Issues • Price of Anarchy A measure of degradation of performance caused by lack of cooperation (regulation) – selfishness. • Mechanism Design How to design games so that selfish behaviors would lead to desire outcome. • Coalitional Games E.g., how to share costs incurred by a group of users.
Mathematical Models • A directed graph G=(V, E) • source-sink pairs {si, ti} for i=1,..,k • rate ri 0 of traffic between si and ti for each i=1,..,k • set of si-ti paths Pi • P • for each edge e, a latency function le(•)– nonnegative, differentiable, non-decreasing.
Mathematical Model – Traffic and Flows • A flow vector specifies a traffic pattern fp= amount of flow on si-ti path P • flow of an edge e • A flow f is said to be feasible if for all i, • We call triple (G, r, l) an instance. • The latency of a path P • cost of all flows C(f) --total latency
Flows and game theory • Flow represents routes of many noncooperative agents • each agent controlling infinitesimally small amount • cars in a highway system • packets in a network • The cost (total latency) of a flow represents social welfare. • Agents are selfish in that • minimize personal latency • do not care about social welfare
Flows at Nash equilibrium • A flow is at Nash equilibrium (or is a Nash flow) if no agent can improve its latency by changing its path.
Wardrop’s Principle In particular, all paths to which fassigns positive amount of flow, have equal latency, say Li(f)
Optimal Flow • An optimal flow is a flow that minimizes total latency/ average latency. • Convex programming:
Optimal Flow (Solution) • If the objective function ce(fe)=le(fe)fe is convex, global optimal = local optimal • We expect a flow to be locally optimal if and only if the marginal benefit of decreasing flow along any si-ti path ≤ the marginal cost of increasing flow along any other si-ti path.
Where are you? • Introduction to selfish routing • Preliminaries and Nash equilibrium • How bad is selfish routing • Other models on selfish routing & related work • Conclusions and problems
A simple bad example 1 ½*1=1/2 1 s t 1 1*1=1 ½*1/2=1/4 x the price of anarchy = 1/ (3/4) =4/3 !
Important results The most important theorem: Theorem If (G, r, l) has linear latency functions, then ρ(G, r, l)≤4/3
Proof of 4/3 coordination ratio cost of optimal at rate r/2 cost of increasing from optimal at rate r/2 to optimal at rate r cost of optimal at rate r = + optimal at r/2C(f/2)≥1/4 • C(f) At least (r/2) •L≥1/2 •C(f)
A simple example 1 x 1 0 s t 1 x 1/2
Extensions • Flows at Approximate Nash Equilibrium • Finitely Many Agents: Splittable Flow • Finitely Many Agents: Unsplittable Flow • Central regulation.
Where are you? • Introduction to selfish routing • Preliminaries and Nash equilibrium • How bad is selfish routing • Other models on selfish routing & related work • Conclusions and problems
Related Papers • How bad is selfish routing -- Roughgarden & Tardos • Worst-case Equilibrium -- Koutsoupias & Papadimitriou • The Price of Selfish Routing -- Mavronicolas & Spirakis • Realistic Models for Selfish Routing in the Internet -- Akella
KP model (task allocation model) m servers Main emphasizes on service cost (routing cost neglected) n jobs Cost = service cost
KP model (cont) Main emphasizes on service cost (routing cost neglected) Routing in a network consisting of parallel links only Scheduling-type problems: Schedule tasks to minimize the execution time (cost)
KP model (cont) • simple routing model: • two nodes • m parallel links with speeds si • (1 · i · m) • n jobs with weights wj • (1 · j · n) • service cost: • the delay of a connection is proportional to load on link
Cost measure • After each job selects a link: Jobs(j) = jobs assigned to link j Costof jobs assigned to link j: • Total weight of jobs assigned to link j over the speed of link j • (Total) cost of a configuration maxj {Cj} • Social optimum(minimized cost) min maxj {Cj }
Results • Koutsoupias and Papadimitriou’99 • defined the problem • solved some of most basic cases • for 2 identical links price of anarchy = 1.5 • for 2 links price of anarchy is ¸ ¼ 1.618 • for m identical links price of anarchy is • for m links price of anarchy is
KP’s conjecture • Koutsoupias-Papadimitriou conjecture • for m identical links • price of anarchy is • “most natural behavior (random) is worst” • proved by Mavronicolas & Spirakis
Akella’s Model • Selfish users choose routes that maximize the bandwidth available to the flow. • Bandwidth available to agent i • Objective function is total bandwidth used by all users • The price of anarchy in a network with n flows ban be as large as Ω(n)
Where are you? • Introduction to selfish routing • Preliminaries and Nash equilibrium • How bad is selfish routing • Other models on selfish routing & related work • Conclusions and problems
Conclusions & Problems • Selfish behaviors would degrade the performance of the network. • However, some simulation results on Internet show that selfish routing is close to optimal routing. ??? • Other problem: route oscillation (Internet/ overlay network) • Goal: how to design network or design games (what information should users know? ) so that selfish behavior would lead to desired outcome?
Thank you for your attention! The End