how bad is selfish routing a survey on existing models for selfish routing professor john lui, david...
Post on 22-Dec-2015
215 views
TRANSCRIPT
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
browsersroutersservers
• 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
• the price of anarchy:
2/1.5 = 4/3!
x 1
s t
x1
1/2
1/2
average latency= 1+0.5 =1.5
0
average latency= 1+1 =2
1
Some Algorithmic Issues
• Price of AnarchyA measure of degradation of performance caused by lack of cooperation (regulation) – selfishness.
• Mechanism DesignHow to design games so that selfish behaviors would lead to desire outcome.
• Coalitional GamesE.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.
i iP
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
PeP Pe ff:
iPP P rfi
Pe eeP flfl )()(
Ee eee
PPP fflfflfC )()()(
P
Flows and game theory
• Flow represents routes of many noncooperative agents– each agent controlling infinitesimally small a
mount • 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.
otherwisef
PPiff
PPiff
f
flflf
PP,...,k}{i
lrGf
P
P
P
P
PPP
~
where,)~
()( have we],,0[
and , ,1 allfor if mequilibriuNash at
is ),,( instancefor feasible flowA :Definition
2
1
21
211
Wardrop’s Principle
).()( ,0 with and
1every for ifonly and if mequilibriuNash
at is instancefor feasible flowA
21121 flflfP,PP
,...,k}{i
(G,r,l)fLemma:
PPPi
k
iii rfLfC(G,r,l)
fLemma
1
)()( then ,
instancefor mequilibriuNash at flow a is If :
In particular, all paths to which f assigns 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:
)()( )()( eeeeeEe
ee fflfcfcMinfMinC
PP
P f
Eeff
,...,k}{irf
P
PePpe
iPP
P
i
0
1
:
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.
)(xcdx
dc ee
Pe
eeP fcfc )()(
. ,0 with and
1every for ifonly and if form theof
programconvex afor optimal is flowA :
21121 (f)c(f)cfP,PP
,...,k}{i (NLP)
fLemma
PPPi
Beckman’s Interpretation
eeeeeeeeeeee fflflfflfcfl )()())(()()(*
. instancefor
mequilibriuNash at isit ifonly and if optimal is
for feasible flow aThen above. as defined function
cost marginal with , edgeeach for function convex a is
in which instancean be Let :
)(G,r,l
(G,r,l)
fl
e
(x)lx(G,r,l)Corollary
*
*
e
Existence of Nash Equilibrium
.~
then m,equilibriuNash at flows
are ~
if Moreover, m.equilibriuNash at flow
feasible a admits functionslatency ingnondecreas
,continuous with instanceAn :
)fC( C(f)
ff,
(G,r,l)Lemma
PP
P f
Eeff
,...,k}{irf
fh
xhdttlxh
P
PePpe
iPP
P
Eeee
e
x
ee
i
0
1
:subject to ,Min
convex is )( ,)(set :Proof
:
0
A good but not optimal upper bound
)C(f
C(f)ρ(G,r,l)
f
f(G,r,l)Definition
*
*
ratioon coordinati the, mequilibriuNash at flow a and
, flow optimalan with instancean For :
),,( , if 0
lrGdttlxlxCorollaryx
ee
)()(
)(
)(
)()( :Proof
***
0
0
*
fCffl
tl
tl
fflfC
Ee
eee
Ee
f
e
Ee
f
e
Eeeee
e
e
A good but not optimal upper bound (cont)
3),,( 2, ,)( ..
1),,(then
reals enonnegativ and integer positive afor
)( if :
2
,
0 ,
lrGpxxlge
plrG
ap
xaxlCorollary
e
ie
p
i
iiee
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
pp /1)1(1
pp /1)1( s t
1
x
1
the price of anarchy = 1/ (3/4) =4/3 !
p
pp p
p
when ,0
)1(1 :latency totalthe1
1*1=1
½*1=1/2
½*1/2=1/4
1
Bicriteria Results
. then ,2for feasible is and
for mequilibriuNash at flow a is If :
)C(fC(f)r,l)(G,f
(G,r,l)fTheorem**
if )(
if )()(
ee
eeee fxxl
fxflxl
eeeee fflxlxlx )()()(
)(
)(
)()()()( ******
fC
ffl
flflffCffl
Eeeee
eeeeee
eeee
)(22)(
)()(
)()0()( )()0(***
*
fCrfL
ffLffl
fLlflfLl
iii
i PPPi
PP
iPPiP
i
)()(
)(2)(
)()()(
*
**
***
fCfC
fCffl
fCfCffl
PP
eeee
Bicriteria Results (cont)
. then ,2for feasible is and
for mequilibriuNash at flow a is If :
)C(fC(f)r,l)(G,f
(G,r,l)fTheorem**
.1
then ,1for feasible is and
for mequilibriuNash at flow a is If :
)C(fγ
C(f)γ)r,l)(G,(f
(G,r,l)fTheorem
**
Worst-Case Ratio of 4/3 with Linear Latency Functions
eee
e eeee
eeeee
bxaxl
fbfafC
babxa(x) lEe
2)(function cost marginal thedenote
)(
)0,( edgeeach For
*
2
Pee
*ee
Pee
*ee
*Pi
*
Peeee
Peeee
Pi
eee
bfabfa
,fPPP,i
G fb
bfabfa
fPPP,i
Gf
Eebxa(x)l
(G,r,l)Lemma
22
0 with and pair
sink-sourceeach for iff in optimal (globally) if flow a )(
,0 with and pair
sink-sourceeach for iff in mequilibriuNash at is flow a (a)
Then, .each for
functionslatency edge with instancean be Let :
corollary
m.equilibriuNash
at isit iff optimal is for feasible flow a ,vector
rateany for then , form theof is function
latency edgeeach in which network a ba Let :
(G,r,l)r
xa(x)ll
GCorollary
eee
Important results
. respect to with oflatency theequals 2 respect to
with path on flow theincreasing ofcost marginal the(b)
,2for optimal is 2 flow the(a)
thenm,equilibriuNash at flow a is and
functionslatency linear has Suppose :
fPf
P
,l)r (G,f
f
(G,r,l)Lemma
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
=
cost of optimal at rate r/2
cost of increasing from optimal at rate r/2 to optimal at rate r
+
optimal at r/2 C(f/2)≥1/4 • C(f)
At least (r/2) •L ≥1/2 • C(f)
Lemma
k
ii
**i
*
*
ii
**i
*
)r(fLδ)C(f
δ)r,l)(G,(
δf
ts
) (fLf
(G,r,l)Lemma
1
least at cost has 1 instance problem the
for flow feasible a ,0any for Then, . respect towith
path an on flow increasing ofcost marginal minimum
thebeLet flow. optimalan is for which functions
latencylinear with instancean is Suppose :
)(least at cost would to
from flow of units additional routingthen
in ingnondecreas is each if that note
**
*
fLrts
r
rL
iiii
i
ii
A simple example
x 1
s t
x1
0
1
2
31
2
111)( cost total
122
1flow
2
1 additionalby increaseCost
24))((*)(
*
2/12/1
*
fC
xxxxfLxxi
Proof of lemma
)()()()(
)(function cost theofconvexity *****
2
eeeeeeeeee
eee
flfffflffl
xbxaxlx
k
i PPPPi
k
i PPPPP
Eeeeee
Eeeee
Eeeee
i
i
fffLfC
ffflfC
flffffl
fflfC
1
****
1
****
*****
))(()(
))(()(
)()()(
)()(
Proof of ρ(G, r, l)≤4/3
)(4
3)(
)(4
1
4
1
2
1
4
1)2/(
)(2
1)2/(
2)()2/(
2)2/()2/()(
*
2
2
1
1
**
fCfC
fC
fbfa
fbfafC
fCfC
rfLfC
rfLfCfC
eeeee
eeeee
k
i
ii
k
i
ii
. respect to with oflatency theequals
2 respect to with path on flow the
increasing ofcost marginal the:Recall
fP
fP
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)
Main emphasizes on service costMain emphasizes on service cost(routing cost neglected)(routing cost neglected)
Cost = service costCost = service cost
mm servers servers
nn jobs jobs
KP model (cont)
Main emphasizes on service costMain emphasizes on service cost(routing cost neglected)(routing cost neglected)
Scheduling-type problemsScheduling-type problems::Schedule tasks to minimize the execution time (cost)Schedule tasks to minimize the execution time (cost)
Routing in a network consisting of parallel links onlyRouting in a network consisting of parallel links only
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 proportion
al to load on link
Cost measure
• After each job selects a link:Jobs(j) = jobs assigned to link jCost of jobs assigned to link j:
• Total weight of jobs assigned to link j over the speed of link j
• (Total) cost of a configurationmaxj {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)
iagent of RTT is where,/1
/1i
ii
ie r
r
rb
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