1 / 40

Mechanism Design for Interdomain Routing

Mechanism Design for Interdomain Routing. Rahul Sami. Joint work with Joan Feigenbaum, David Karger, Vahab Mirrokni, Christos Papadimitriou, and Scott Shenker. UUNET. UMich. Comcast. Qwest. Interdomain Routing. Finding routes between autonomous systems (ASes)

trinh
Download Presentation

Mechanism Design for Interdomain Routing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mechanism Design for Interdomain Routing Rahul Sami Joint work with Joan Feigenbaum, David Karger, Vahab Mirrokni, Christos Papadimitriou, and Scott Shenker.

  2. UUNET UMich Comcast Qwest Interdomain Routing Finding routes between autonomous systems (ASes) Currently done with the Border Gateway Protocol (BGP).

  3. Current Interdomain Routing ASes have pairwise business agreements (customer-provider/peer) Use BGP to: - Learn about their neighbors’ routes - Select a route - Pass on selected route to their neighbors (with modifications) UMich UUNET Qwest Comcast Routing policy implicitly depends on business agreements.

  4. Problems with Current Routing Uncoordinated, unstructured routing policies can lead to problems: [Griffin et al., Tangmunarunkit et al., ..] • Unstable routes (routes keep changing). • Inefficient routes. • Very difficult to diagnose problems.

  5. High-level Approach Q: Can we systematically include business incentives into interdomain routing? • Prevent problems due to opaque policies. • Enable coordination through multilateral agreements. Use tools from: • Economics/Game Theory to reason about incentives • Theoretical CS to analyze computational efficiency while working within realistic networking constraints.

  6. Economic Mechanism Design Approach to designing systems for self-interested agents. Private information t1 Agent 1 Outcome O tn Agent n

  7. Economic Mechanism Design Approach to designing systems for self-interested agents. Private information Strategies Mechanism t1 a1 p1 Agent 1 Outcome O tn an pn Agent n Payments Strategyproof mechanisms: Regardless of what other agents do, each agent i maximizes her utility by revealing her true private information.

  8. Algorithmic Mechanism Design [Nisan & Ronen, ’99] • Algorithmic Mechanism Design • Distributed Algorithmic Mechanism Design (DAMD) • Polynomial-time computable O( ) and pi( ) • Centralized model of computation [Feigenbaum, Papadimitriou, Shenker ’00] • Computation is distributed across a network. • Need both efficient computation and • modest communication requirements.

  9. This Work: DAMD for Interdomain Routing • Natural real-world problem with distributed control and distributed computation. • Real-world constraint: protocol compatibility - BGP is not going to be replaced overnight. - Need to be able to gradually phase in a mechanism. Challenges: • Models need to capture the essence of routing, • yet be simple enough to analyze. • Theoretical analysis of protocol compatibility • is challenging (but fun!).

  10. Talk Outline • Introduction • Lowest-Cost Routing - Strategyproof mechanism - BGP-based Computation Model - A BGP-compatible Distributed Algorithm • Next-Hop Policy Routing • Subjective-Cost Policy Routing • Conclusion and Future Directions

  11. Model 1: Lowest-Cost Routing [Feigenbaum, Papadimitriou, S., Shenker, PODC ’02.] ASes private information: Per-packet costs cost = 2 cost = 3 a b source cost = 4 dest. d Goal: Use lowest-cost route for every source-destination pair. How much should transit ASes be paid?

  12. MD for Lowest-Cost Routing Private Information: Per-packet costs {ck} Outputs: Route from every source to every sink. Payments: Payment to each node { pk } Objectives: • Lowest-cost paths (LCPs) • Strategyproofness • BGP-based distributed algorithm Prior work: [Nisan-Ronen ’01]: • Strategyproof mechanism for single source-destination pair. • Polynomial-time centralized computation. [Hershberger-Suri ’01]: • Faster payment computation for Nisan-Ronen mechanism.

  13. pij pij k k Lowest-Cost Routing Mechanism Under reasonable conditions, there is a unique strategyproof mechanism that always computes LCPs : j b k Inputs: Reported per-packet costs ck Output: Lowest-cost paths (LCPs) 2 3 8 i Payments: For each packet from i to j, pay node k on the lowest-cost path a price j b : k 2 = ck+ Cost of LCP from i to j without using k 8 3 – Cost of LCP from i to j using k i Is the price-computation compatible with BGP?

  14. pij pij k k Lowest-Cost Routing Mechanism Under reasonable conditions, there is a unique strategyproof mechanism that always computes LCPs : j b k Inputs: Reported per-packet costs ck Output: Lowest-cost paths (LCPs) 2 3 8 i Payments: For each packet from i to j, pay node k on the lowest-cost path a price j b : k 2 = ck+ Cost of LCP from i to j without using k 8 3 – Cost of LCP from i to j using k i Is the price-computation compatible with BGP? YES!

  15. BGP-based Computational Model (1) • Follow abstract BGP model of [Griffin & Wilfong]: • Ignore all intradomain routing issues. • Ignore optimizations like route aggregation. • Each AS has a routing table with LCPs to all other nodes: AS Path Dest. AS1 AS3 AS5 AS1 AS2 AS7 AS2 Entire paths are stored, not just next hop.

  16. 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: Advertise modified routes Receive routes from neighbors Update routing table • Complexity measures: − Number of stages required for convergence • − Total communication

  17. k pbj k k k pij pij pij Computing the Prices =ck+Cost of min-cost k-avoiding path from i to j – Cost of LCP from i to j j Key observations: • Min-cost k-avoiding path • passes through one of i’s neighbor k a • Price can be related to costs and • price paid to k by that neighbor, e.g., i b d =+cb+ci Using this, we can show that prices can be computed with local dynamic programming, with nodes exchanging only costs and prices.

  18. k pij 3 pi1 5 pi1 A BGP-based Algorithm LCP cost LCP and Path Prices Dest. Cost AS3 AS5 AS1 c(i,1) AS1 c1 • Initially, all prices are set to . • Then, each node runs the following computation: Update routes and prices Advertise modified routes and prices Receive routes and prices from neighbors Final state: Node i has accurate values.

  19. Performance of Algorithm d = maximum length of LCP d’ = maximum length of min-cost k-avoiding path Theorem : Our algorithm computes the VCG prices correctly, and converges in max(d,d’) stages. • Measuring a recent Internet AS graph, we found • d=9, d’=11 (assuming uniform costs). Conclusion: Mechanism is BGP-compatible!

  20. Strategies in Computation • Mechanism is strategyproof : ASes have no • incentive to lie about ck’s. • However, payments are computed by the strategic • agents themselves  they may be able to • manipulate the mechanism in other ways. • One approach [Mitchell, S., Talwar, Teague]: • Digitally sign every message. • A better solution [Shneidman & Parkes, 2004]: Prevent manipulation using digital signatures and redundant communication.

  21. Talk Outline • Introduction • Lowest-Cost Routing • Next-Hop Policy Routing - Strategyproof Mechanism - Incompatibility with BGP • Subjective-Cost Policy Routing • Conclusion and Future Directions

  22. Model 2: Next-Hop Policies [Feigenbaum, S., Shenker, PODC ’04.] • Lowest-cost routing is inadequate • Routing policies depend on other factors, • e.g., customer-provider/peer relationships cust. j i peer Need to express: “AS i prefers any route through customer over any route through peer.”

  23. Next-Hop Policy Routing Next-hop preference model: • Each AS i assigns avalue ui(Pij)to each potentialroute Pij. • ui(Pij)depends only on the first hop of path Pij. cust. 5 j i peer 2 • Captures preferences due to customer-provider/peer agreements.

  24. Next-Hop Policies: Optimal Tree Mechanism goals: • Maximize total welfare W = ui(Pij). • For each destination j, {Pij} forms a tree.

  25. Next-Hop Policies: Optimal Tree Mechanism goals: • Maximize total welfare W = ui(Pij). • For each destination j, {Pij} forms a tree. 8 a 5 6 c 3 1 2 i j 3 5 b Optimal tree: Maximum-weight directed spanning tree (MDST)

  26. Strategyproof Mechanism Under reasonable conditions, there is a unique strategyproof mechanism that maximizes welfare: Inputs: Reported valuations ui(.)  weighted graph G Routes: Maximum-weight directed spanning tree (MDST) T* in G Payments: Node k is paid an amount pk = W(T*) – uk( T*) – W(T-k ) where T-k = MDST in G – {k} Is there a BGP-based algorithm to compute prices?

  27. Proving Hardness for BGP-based Routing Algorithms Requirements for any BGP-compatible algorithm: [P1] Each AS uses O(l) space for a route of lengthl. [P2] The routes converge in O(log n) stages. [P3] Most changes should not have to be broadcast to most nodes: i.e., few nodes can individually trigger (n) updates. Hardness results must hold: • For “Internet-like” graphs: • O(1) average degree • O(log n) diameter • Small numeric values, and remains hard if perturbed slightly.

  28. Dynamic Sensitivity Theorem: A distributed algorithm for the MDST mechanism cannot satisfy property [P3]. 5 7 9 9 9 9 B2 R2 B4 R4 B1 R1 B3 R3 9 9 9 9 7 7 5 3 2 j • Blue spanning tree is MDST. • Red spanning tree is MDST if any Bx is removed. • Change in any edge changes the price of everyBx.  Any change triggers update messages to all blue nodes! Conclusion: MDST mechanism not BGP-compatible.

  29. L- 2k -1 B R B R L- 2k -1 k-cluster k-cluster (k+1)-cluster Network Construction (1) (a) Construct 1-cluster with two nodes: L-1 red port blue port L  2 log n + 4 B R L-1 1-cluster (b) Recursively construct (k+1)-clusters: red port blue port

  30. 5 7 9 9 9 9 B R B B R R B R 9 9 9 9 7 7 5 3 2 j Network Construction (2) (c) Top level: m-cluster with n = 2m + 1 nodes. blue port red port B R m-cluster L- 2m -1 L- 2m -2 j Destination Final network (m = 3):

  31. Optimal Spanning Trees Lemma: W(blue tree) = W(red tree) + 1 W(any other sp.tree) + 2 Proof: If a directed spanning tree has red and blue edges, we can increase its weight by at least 2: L- 2k -3 L- 2k -3 B R k-cluster k-cluster (k+1)-cluster L- 2k -1 L- 2k -3 B B k-cluster k-cluster (k+1)-cluster

  32. 5 7 9 9 9 9 B R B B R R B R 9 9 9 9 7 7 5 3 2 j Proof of Theorem • MDST T* is the blue spanning tree. • For any blue nodeB, T-B is the red spanning tree on N–{B}. • A small change in any edge, red or blue, changes pB = W(T*) – uB(T*) – W(T-B)  Any change triggers update messages to all blue nodes!

  33. Talk Outline • Introduction • Lowest-Cost Routing • Next-Hop Policy Routing • Subjective-Cost Policy Routing - A “payment-less” Mechanism • Conclusion and Future Directions

  34. Model 3: Subjective Costs [Feigenbaum, Karger, Mirrokni, S., WINE’05.] • Each AS i assigns a subjective cost ci(k) to every • transit AS k. • If i uses route Pij to destination j, it incurs a • cost ci(Pij) = kPij ci(k) . • Special case: Forbidden-set routing Mechanism design goals: • Minimize total cost C = i ci(Pij). • Routes to destination j form a tree T. Minimizing C is computationally hard even for very restricted cases: costs in {0,1} or costs in {1,2}.

  35. Convex Subjective Costs Special case: Weighted average of two objective metrics (e.g., latency and loss rate): • Each transit AS k has two “lengths” l1(k), l2(k). • ci(k) = λil1(k) + (1 – λi)l2(k) • λi [0,1] is privately known to i. l2 only l1=1, l2=10 l1 only b e a j l1=2, l2=2 50% l1 50% l2 f d l1=10, l2=1  Hard to find optimal tree or (1+ε)-approximation.

  36. A Few Trees are Sufficient Relax the problem definition: • Allow r > 1 trees to each destination j. • Each AS i has r possible routes to j, and uses the • one which it likes best. Theorem: O(log n) trees sufficient to include a (1+ε)-approximately optimal route for everyi. • Each tree is LCP-tree for some cost metric  easy BGP-based implementation. • Tree construction does not use private information  trivially strategyproof ! This is a feasible mechanism for interdomain routing!

  37. Talk Outline • Introduction • Lowest-cost Routing • Next-Hop Policy Routing • Subjective-Cost Policy Routing • Conclusion and Future Directions

  38. Summary • An approach combining incentive analysis, distributed algorithmics, and practical constraints is feasible and useful to understand and improve the interdomain routing system. • Explores trade-off between expressiveness and routing complexity. • “Practical” issues like protocol compatibility can be modeled and analyzed.

  39. Related Work on Incentives in Interdomain Routing • Policy routing convergence/oscillation [Griffin, Gao, Rexford, Shepherd, Wilfong,...] • Convergence with next-hop policies [Feamster, Johari, Balakrishnan] • Repeated-game Models of Routing [Afergan, Wroclawski] • Strategies in Computation [Shneidman, Parkes]

  40. Some Open Questions • Is there a tractable, sufficiently expressive class of policies? • Can the MDST be approximated? • Can we take into account both source preferences and transit costs? • Study alternatives to strategyproof mechanisms • Does routing complexity generally increase with subjectivity?

More Related