Bottleneck Routing Games in Communication Networks Ron Banner and Ariel Orda Department of Electrical Engineering Technion- Israel Institute of Technology
Dec 20, 2015
Bottleneck Routing Games
in Communication Networks
Ron Banner and Ariel Orda
Department of Electrical Engineering Technion- Israel Institute of Technology
Selfish Routing Often (e.g., large-scale networks, ad hoc
networks) users pick their own routes. No central authority.
Network users are selfish. Do not care about social welfare. Want to optimize their own performance.
Major Question: how much does the network performance suffer from the lack of global regulation?
Selfish Routing: Quantifying the Inefficiency
A flow is at Nash Equilibrium if no user can improve its performance. May not exist. May not be unique.
The price of anarchy: The worst-case ratio between the performance of a Nash equilibrium and the optimal performance.
The price of stability: The worst-case ratio between the performance of a best Nash equilibrium and the optimal performance.
Cost structures of flows
Additive Metrics (path performance= sum of link performances) E.g., Delay, Jitter, Loss Probability. Considerable amount of work on related routing games:
[Orda, Rom & Shimkin, 1992]; [Korilis, Lazar & Orda, 1995];
[Roughgarden & Tardos, 2001]; [Altman, Basar, Jimenez & Shimkin, 2002];
[Kameda, 2002]; [La & Anantharam, 2002]; [Roughgarden, 2005]; [Awerbuch, Azar & Epstein, 2005]; [Even-Dar & Mansour, 2005]; …
Bottleneck Metrics (path performance = worst performance of a link on a path). No previous studies in the context of networking games!
Bottleneck Routing Games (examples)
Wireless Networks: Each user maximizes the smallest battery lifetime along
its routing topology.
Traffic bursts: Each user maximizes the smallest residual capacity of the
links they employ.
Traffic Engineering: Each user minimizes the utilization of the most utilized
buffer Avoids deadlocks and packet loss.
Each user minimizes the utilization of the most utilized link.
Avoids hot spots. Attacks:
usually aimed against the links or nodes that carry the largest amount of traffic.
Each user minimizes the maximum amount of traffic that a link transfers in its routing topology.
Model
A set of users U={u1, u2,…, uN}.
For each user, a positive flow demand u and a source-destination pair (su,tu).
For each link e, a performance function qe(∙). qe(∙) is continuous and increasing for all links.
Routing model Splittable Unsplittable
Model (cont.)
User behavior Users are selfish. Each minimizes a bottleneck objective:
Social objective Minimize the network bottleneck:
.e ee E
B f Max q f
0
( ) .ue
u e ee E f
b f Max q f
Questions
Is there at least one Nash Equilibrium?
Is the Nash equilibrium always unique?
How many steps are required to reach equilibrium?
What is the price of anarchy?
When are Nash equilibria socially optimal?
Existence of Nash Equilibrium
Theorem: An Unsplittable Bottleneck Game admits a Nash equilibrium Very simple proof.
Theorem: A Splittable Bottleneck Game admits a Nash Equilibrium. Complex proof.
Splittable bottleneck games are discontinuous!
• why
Hence, standard proof techniques cannot be employed!
Questions Is there at least one Nash Equilibrium?
Yes!
Is the Nash equilibrium unique?
How many steps are required to reach equilibrium?
What is the price of anarchy?
When are Nash equilibria socially optimal?
Non-uniqueness of Nash Equilibria
s t
(fp1=1, fp2=0) & (fp1=0, fp2=1) are Unsplittable Nash flows.
(fp1=0.5, fp2=0.5) & (fp1=0.25, fp2=0.75) are Splittable Nash flows.
I.e.: at least two different Nash flows for each routing game.
e2
e1
e3
p1
p2
= 1
qe (f
e )=fe for each e in E.
Questions Is there at least one Nash Equilibrium?
Yes!
Is the Nash equilibrium always unique? No!
How many steps are required to reach equilibrium?
What is the price of anarchy?
When are Nash equilibria socially optimal?
Convergence time (unsplittable case)
Theorem: the maximum number of steps required to reach Nash equilibrium is
For O(1) users, convergence time is polynomial.
2
2UU E
Questions Is there at least one Nash Equilibrium?
Yes!
Is the Nash equilibrium always unique? No!
How many steps are required to reach equilibrium?
Unsplittable:
Splittable: ∞
What is the price of anarchy?
When are Nash equilibria socially optimal?
2
2UU E
Unbounded Price of Anarchy (unsplittable case)
2
3 ef
e eq f e
1
2 ef
e eq f e
A=
B= 2∙
S T
Network Bottlene
ck
Optimal flow
Nashflow
4
3e
e
Price of anarchy
3e
Unbounded Price of Anarchy (splittable case)
Network Bottlene
ck
Nash flow
Optimal
flow
2
Price of anarchy
22
S2
S1
T2
T1
qe (f
e )=2 fe for each e in E.
B=
A=
3
22
Questions Is there at least one Nash Equilibrium?
Yes!
Is the Nash equilibrium always unique? No!
How many steps are required to reach equilibrium?
Unsplittable:
Splittable: ∞
What is the price of anarchy?
∞
When are Nash equilibria socially optimal?
2
2UU E
Optimal Nash Equilibria (unsplittable case)
Theorem: The price of stability is 1.
Good news Selfish users can agree upon an optimal
solution. Such solutions can be proposed to all users
by some centralized protocol.
Bad news We prove that finding such an optimal Nash
equilibrium is NP-hard.
Optimal Nash Equilibria (splittable case)
Theorem: A Nash flow is optimal if all users route their traffic along paths with a minimum number of bottlenecks.
S2
S1
T2
T1
qe(fe)=fe for each e in E.
B= 1
A= 1
User B is not routing along
paths with minimum number of
bottlenecks
Network = 1.5BottleneckNetwork 1Bottleneck
Questions Is there at least one Nash Equilibrium?
Yes!
Is the Nash equilibrium always unique? No!
How many steps are required to reach equilibrium?
Unsplittable: Splittable: ∞
What is the price of anarchy? ∞
When Nash equilibriums are socially optimal? Unsplittable: each best Nash equilibrium (though NP-hard
to find). Splittable: each Nash equilibrium with users that
exclusively route over paths with a minimum number of bottlenecks.
2
2UU E
Some more results…
Unsplittable: link performance functions of qe(x)=xp
Price of anarchy is O(|E|p). This result is tight!
Splittable: Nash equilibrium with users that exclusively route over paths with minimum number of bottlenecks. The average performance (across all links) is
|E| times larger than the minimum value. This result is tight!
Conclusions
Bottleneck games emerge in many practical scenarios. (yet, they haven't been considered before).
A Nash equilibrium in a bottleneck game: Always exists Can be reached in finite time with
unsplittable flows Might be very inefficient.
Conclusions (cont.)
BUT, by proper design, Nash equilibria can be optimal! Unsplittable: any best equilibrium. Splittable: any equilibrium with users that route over
paths with minimum number of bottlenecks.
With these findings, it is possible to optimize overall network performance. Steer users to choose particular Nash equilibria.
Unsplittable: propose a stable solutions to all users. Splittable: provide incentives (e.g., pricing) for
minimizing the number of bottlenecks.