A BGPbased Mechanism for LowestCost Routing Rahul Sami
A BGP-based Mechanism for Lowest-Cost Routing Rahul Sami Yale University http: //www. cs. yale. edu/~sami Joint work with: Joan Feigenbaum Christos Papadimitriou Scott Shenker Yale U. C. Berkeley ICSI 1
Lowest-Cost Routing Mechanism-design Problem World. Net Qwest UUNET Sprint Agents: Transit ASs Inputs: Transit costs Outputs: Routes, Payments 2
Strategyproof Mechanism Design Private “types” t 1 Strategies a 1 p 1 Agent 1 Mechanism tn Agent n an Output O pn Payments Agent i chooses strategy a i to maximize her utility. Strategyproof mechanisms: Regardless of what other agents do, each agent i maximizes her utility by revealing her true private type information t i. 3
Algorithmic Mechanism Design AMD (Nisan-Ronen ’ 99): Introduced computational efficiency into mechanism-design framework. • Polynomial-time computable O( ) and p i( ) • Centralized model of computation Distributed AMD (Feigenbaum-Papadimitriou-Shenker ’ 00) • Computation is distributed across the network • “Good network complexity”: − Polynomial-time local computation − Modest in total number of messages, messages per link, and maximum message size. 4
Outline • VCG Mechanism for Lowest-Cost Routing • “BGP-based” Computational Model • DAM for Lowest-Cost Routing • Open Questions 5
Problem Statement Agents’ types: Per-packet costs {ck } (Unknown) global parameter: Traffic matrix [Tij] Outputs: {route(i, j)} Payments: {pk} Objectives: • Lowest-cost paths (LCPs) • Strategyproofness • “BGP-based” distributed algorithm 6
Previous Work Nisan-Ronen, 1999 • Single (source, destination) pair • Links are the strategic agents • “Private type” of l is cl • (Centralized) strategyproof, polynomial-time mechanism pl d. G|cl= - d. G|cl=0 Hershberger-Suri, 2001 • Compute m payments as quickly as 1 7
Our Formulation vs. NR, HS • Nodes, not links, are the strategic agents. • All (source, destination) pairs • Distributed “BGP-based” algorithm Advantages: ü More realistic model ü Deployable via small changes to BGP 8
Notation • LCPs described by indicator function: Ik(c; i, j) { 1 0 if k is on the LCP from i to j, when cost vector is c otherwise k • c Ι (c 1, c 2, …ck-1 , , ck+1…, cn) 9
A Unique VCG Mechanism Theorem 1: For a biconnected network, if LCP routes are always chosen, there is a unique strategyproof mechanism that gives no payment to nodes that carry no transit traffic. The payments are of the form k pk = Tij pij , where i, j k pij = ck Ik(c; i, j) + k [ Ir(c Ι ; i, j ) cr r - Ir(c; i, j ) cr ] r 10
Features of this Mechanism • Payments have a very simple dependence onk traffic [Tij ]: payment pk is the sum of per-packet prices pij. k • Cost ck is independent of i and j, but price pij depends on i and j. k • Price pij is 0 if k is not on LCP between i, j. k • Price pij is determined by cost of min-cost path from i to j not passing through k (min-cost “k-avoiding” path). 11
BGP-based Computational Model (1) • Follow abstract BGP model of Griffin and Wilfong: Network is a graph with nodes corresponding to ASes and bidirectional links; intradomain-routing issues are ignored. • Each AS has a routing table with LCPs to all other nodes: LCP Dest. AS 1 AS 3 AS 5 AS 1 AS 2 AS 7 AS 2 LCP cost 3 2 Entire paths are stored, not just next hop. 12
BGP-based Computational Model (2) • An AS “advertises” its routes to its neighbors in the AS graph, whenever its routing table changes. • The computation of a single node is an infinite sequence of stages: Receive routes from neighbors Update routing table Advertise modified routes • Complexity measures: − Number of stages required for convergence − Total communication 13
Constructing k-avoiding Paths k pij = ck + Cost ( P-k(c; i, j) ) – Cost ( P(c; i, j) ) Three possible cases for P-k(c; i, j): j i ’s neighbor on the path is (a) parent k (b) child a (d) unrelated i in tree of LCPs to j. b d In each case, ka relation to neighbor’s LCP or price, e. g. , k (b) pij = pbj + cb + ci k ü pij is the minimum of these values. 14
A “BGP-based” Algorithm LCP and path prices Dest. cost AS 1 AS 3 AS 5 c 1 3 pi 1 5 AS 1 LCP cost c(i, 1) pi 1 • LCPs are computed and advertised to neighbors. • Initially, all prices are set to . • Each node repeats: − Receive LCP costs and path prices from neighbors. − Recompute path prices, selecting lowest prices. − Advertise changed prices to neighbors. k Final state: Node i has accurate pij values. 15
Performance of Algorithm d = maxi, j || P ( c; i, j ) || d’ = maxi, j, k || P-k ( c; i, j ) || Theorem 2: Our algorithm computes the VCG prices correctly, uses routing tables of size O(nd) (a constant factor increase over BGP), and converges in at most (d + d’) stages (worst-case additive penalty of d’ stages over the BGP convergence time). 16
Open Question: Strategy in Computation • Mechanism is strategyproof : ASes have no incentive to lie about ck’s. • However, payments are computed by the strategic agents themselves. How do we reconcile the strategic model with the computational model? • First approach : Digital Signatures [Mitchell, Sami, Talwar, Teague] Is there a way to do this without a PKI? 17
Open Question: Overcharging • In the worst case, path price can be arbitrarily higher than path cost [Archer&Tardos, 2002]. • This is a general problem with VCG mechanisms. • Statistics from a real AS graph, with unit costs: Mean node price : 1. 44 Maximum node price: 9 90% of prices were 1 or 2 Overcharging is not a major problem! How do VCG prices interact with AS-graph formation? 18
- Slides: 18