260 likes | 449 Views
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.
E N D
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 uand a source-destination pair (su,tu). • For each link e, a performance function qe(∙). • qe(∙)is continuousand increasingfor all links. • Routing model • Splittable • Unsplittable
Model (cont.) • User behavior • Users are selfish. • Each minimizes a bottleneck objective: • Social objective • Minimize the network bottleneck:
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 • (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. p1 g= 1 qe(fe)=fe for each e in E. e1 e3 s t e2 p2
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.
Unbounded convergence time (splittable case) g= 2 g= 2 S2 S1 qe(fe)=fe for each e in E T1 T2
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?
Unbounded Price of Anarchy (unsplittable case) S T gA= g gB= 2∙g Price of anarchy Nash flow Optimal flow Network Bottleneck
Unbounded Price of Anarchy (splittable case) gA= g S1 gB=g qe(fe)=2fe for each e in E. S2 T2 Price of anarchy Optimal flow Nash flow T1 Network Bottleneck
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?
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) User B is not routing along paths with minimum number of bottlenecks • Theorem: A Nash flow is optimal if all users route their traffic along paths with a minimum number of bottlenecks. gA= 1 S1 gB= 1 S2 T2 T1 qe(fe)=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? • 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.
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.
Splittable bottleneck games are discontinuous! qe(fe)=fe+2 e1 g= 1 S T e2 qe(fe)=fe Flow configuration Cost