40
1 Mechanism Design for Interdomain Routing Rahul Sami Joint work with Joan Feigenbaum, David Karger, ab Mirrokni, Christos Papadimitriou, and Scott Shen

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

  • View
    219

  • Download
    1

Embed Size (px)

Citation preview

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

1

Mechanism Design for Interdomain Routing

Rahul Sami

Joint work with Joan Feigenbaum, David Karger, Vahab Mirrokni, Christos Papadimitriou, and Scott Shenker.

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

2

Interdomain Routing

Finding routes between autonomous systems (ASes)

Currently done with the Border Gateway Protocol (BGP).

UMich

Qwest

Comcast

UUNET

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

3

UUNET

Comcast

Qwest

Current Interdomain Routing

ASes have pairwise businessagreements (customer-provider/peer)

Use BGP to: - Learn about their neighbors’ routes - Select a route - Pass on selected route to their neighbors (with modifications)

UMich

Routing policy implicitly depends on business agreements.

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

4

Problems with Current Routing

• Unstable routes (routes keep changing).

• Inefficient routes.

• Very difficult to diagnose problems.

Uncoordinated, unstructured routing policies can lead to problems: [Griffin et al., Tangmunarunkit et al., ..]

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

5

High-level Approach

Q: Can we systematically include business incentives into interdomain routing?

Use tools from:•Economics/Game Theory to reason about incentives

•Theoretical CS to analyze computational efficiency

while working within realistic networking constraints.

– Prevent problems due to opaque policies.– Enable coordination through multilateral agreements.

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

6

Economic Mechanism Design

Approach to designing systems for self-interested agents.

Agent 1

Agent n tn

t1

O

Private information

Outcome

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

7

Economic Mechanism Design

Approach to designing systems for self-interested agents.

Strategyproof mechanisms: Regardless of what other agents do, each agent i maximizes her utility by revealing her true private information.

Agent 1

Agent n

Mechanism

p1

pn

tn

t1a1

an

O

Private information Strategies

Payments

Outcome

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

8

Algorithmic Mechanism Design

• Algorithmic Mechanism Design

• Distributed Algorithmic Mechanism Design (DAMD)[Feigenbaum, Papadimitriou, Shenker ’00]

[Nisan & Ronen, ’99]

– Polynomial-time computable O( ) and pi( )

– Computation is distributed across a network.

– Need both efficient computation and modest communication requirements.

– Centralized model of computation

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

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:

•Theoretical analysis of protocol compatibility is challenging (but fun!).

•Models need to capture the essence of routing, yet be simple enough to analyze.

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

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

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

11

Model 1: Lowest-Cost Routing

ASes private information: Per-packet costs

a b

sourcedest.

d

cost = 2

cost = 3

cost = 4

Goal: Use lowest-cost route for every source-destination pair.How much should transit ASes be paid?

[Feigenbaum, Papadimitriou, S., Shenker, PODC ’02.]

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

12

MD for Lowest-Cost Routing

• Strategyproofness• BGP-based distributed algorithm

• Lowest-cost paths (LCPs)

Per-packet costs {ck } Private Information:

Route from every source to every sink.Outputs:Payment to each node { pk }Payments:

Objectives:

Prior work:

• Strategyproof mechanism for single source-destination pair.• Polynomial-time centralized computation.

[Hershberger-Suri ’01]:• Faster payment computation for Nisan-Ronen mechanism.

[Nisan-Ronen ’01]:

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

13

Lowest-Cost Routing Mechanism

Payments: For each packet from i to j, pay node k on the lowest-cost path a price

= ck + Cost of LCP from i to j without using k

– Cost of LCP from i to j using k

pijk

Under reasonable conditions, there is a unique strategyproofmechanism that always computes LCPs :

Inputs: Reported per-packet costs ck

Output: Lowest-cost paths (LCPs)

k

32

8

i

bj

k

32

8

i

bjp

ijk :

Is the price-computation compatible with BGP?

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

14

Lowest-Cost Routing Mechanism

Payments: For each packet from i to j, pay node k on the lowest-cost path a price

= ck + Cost of LCP from i to j without using k

– Cost of LCP from i to j using k

pijk

Under reasonable conditions, there is a unique strategyproofmechanism that always computes LCPs :

Inputs: Reported per-packet costs ck

Output: Lowest-cost paths (LCPs)

k

32

8

i

bj

k

32

8

i

bjp

ijk :

Is the price-computation compatible with BGP? YES!

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

15

BGP-based Computational Model (1)

• Follow abstract BGP model of [Griffin & Wilfong]:

• Each AS has a routing table with LCPs to all other nodes:

Entire paths are stored, not just next hop.

Dest. AS Path

AS3 AS5 AS1AS1

AS7 AS2AS2

– Ignore all intradomain routing issues.– Ignore optimizations like route aggregation.

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

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: Receive routes

from neighbors Update routing table

Advertise modified routes

• Complexity measures: − Number of stages required for convergence − Total communication

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

17

Computing the Prices

= ck + Cost of min-cost k-avoiding path from i to j – Cost of LCP from i to j

pijk

a

bdi

k

jKey observations:•Min-cost k-avoiding path passes through one of i’s neighbor

•Price can be related to costs and price paid to k by that neighbor, e.g.,

= + cb + cipij

k pb

j

k

pijk

Using this, we can show that prices can be computedwith local dynamic programming, with nodes exchanging only costs and prices.

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

18

A BGP-based Algorithm

AS3 AS5c(i,1) AS1 c1

Dest. Cost LCP and Path Prices LCP cost

AS1

• Initially, all prices are set to .• Then, each node runs the following computation:

Final state: Node i has accurate values.pijk

pi1 3 pi1

5

Receive routes and prices

from neighbors

Update routes

and prices

Advertise modified routes

and prices

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

19

Performance of Algorithm

d’ = maximum length of min-cost k-avoiding path

d = maximum length of LCP

Our algorithm computes the VCG prices correctly, and converges in max(d,d’) stages.

Theorem :

Measuring a recent Internet AS graph, we found d=9, d’=11 (assuming uniform costs).

Conclusion: Mechanism is BGP-compatible!

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

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 signaturesand redundant communication.

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

21

Talk Outline

• Introduction• Lowest-Cost Routing• Next-Hop Policy Routing

- Strategyproof Mechanism- Incompatibility with BGP

• Subjective-Cost Policy Routing• Conclusion and Future Directions

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

22

Model 2: Next-Hop Policies

cust.

peer i

j

•Lowest-cost routing is inadequate•Routing policies depend on other factors, e.g., customer-provider/peer relationships

Need to express: “AS i prefers any route throughcustomer over any route through peer.”

[Feigenbaum, S., Shenker, PODC ’04.]

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

23

Next-Hop Policy Routing

Next-hop preference model:• Each AS i assigns a value u

i(Pij) to each potential route Pij.

• u i(Pij) depends only on the first hop of path Pij.

Captures preferences due to customer-provider/peer agreements.

cust.

peer i

j5

2

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

24

Next-Hop Policies: Optimal Tree

Maximize total welfare W = ui(Pij).

For each destination j, {Pij } forms a tree.

Mechanism goals:

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

25

Next-Hop Policies: Optimal Tree

Maximize total welfare W = ui(Pij).

For each destination j, {Pij } forms a tree.

Mechanism goals:

i

b

a

j

c5

8

3

3

Optimal tree: Maximum-weight directed spanning tree (MDST)

6

2

5

1

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

26

Strategyproof Mechanism

T-k = MDST in G – {k}where

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 )

Is there a BGP-based algorithm to compute prices?

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

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 length l.

[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.

• For “Internet-like” graphs: O(1) average degree O(log n) diameter

• Small numeric values, and remains hard if perturbed slightly.

Hardness results must hold:

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

28

Dynamic Sensitivity

B3 R3

9

9B4 R4

9

97

79

9

9

9

7

j

B1 R1B2 R2

5

35

2

• Blue spanning tree is MDST.• Red spanning tree is MDST if any Bx is removed.• Change in any edge changes the price of every Bx.

Any change triggers update messages to all blue nodes!

Theorem: A distributed algorithm for the MDST mechanism cannot satisfy property [P3].

Conclusion: MDST mechanism not BGP-compatible.

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

29

Network Construction (1)

(a) Construct 1-cluster with two nodes:

B R

1-cluster

redport

blueport

(b) Recursively construct (k+1)-clusters:

blueport

redport

L-1

L-1

B R B R

k-cluster k-cluster

(k+1)-cluster

L- 2k -1

L- 2k -1

L 2 log n + 4

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

30

Network Construction (2)

(c) Top level: m-cluster with n = 2m + 1 nodes.

B R

m-clusterL- 2m -1 L- 2m -2

jDestination

Final network (m = 3):

redport

blueport

B R9

9B R

9

97

79

9

9

9

7

j

B R B R

5

35

2

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

31

Optimal Spanning Trees Lemma: W(blue tree) = W(red tree) + 1 W(any other

sp.tree) + 2Proof: If a directed spanning tree has red and blue edges, we can increase its weight by at least 2:

B

B R

k-cluster k-cluster

(k+1)-cluster

L- 2k -3L- 2k -3

B

k-cluster k-cluster

(k+1)-cluster

L- 2k -1L- 2k -3

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

32

Proof of Theorem

B R

9

9B R

9

97

79

9

9

9

7

j

B R B R

5

35

2

• MDST T* is the blue spanning tree.

• For any blue node B, T-B is the red spanning tree on N – {B}.

• A small change in any edge, red or blue, changes

Any change triggers update messages to all blue nodes!

p B = W(T*) – uB(T*) – W(T-B)

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

33

Talk Outline

• Introduction• Lowest-Cost Routing• Next-Hop Policy Routing• Subjective-Cost Policy Routing

- A “payment-less” Mechanism• Conclusion and Future Directions

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

34

Model 3: Subjective Costs

• Each AS i assigns a subjective cost ci(k) to every transit AS k.

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}.

• Special case: Forbidden-set routing

• If i uses route Pij to destination j, it incurs a cost ci(Pij) = kPij ci(k) .

[Feigenbaum, Karger, Mirrokni, S., WINE’05.]

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

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) = λi l1(k) + (1 – λi)l2(k)– λi [0,1] is privately known to i.

Hard to find optimal tree or (1+ε)-approximation.

l1 only

50% l1

50% l2

l1=1, l2=10

l1=10, l2=1

a

b

d

j

l1=2, l2=2

e

f

l2 only

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

36

A Few Trees are Sufficient

• Allow r > 1 trees to each destination j.

O(log n) trees sufficient to include a (1+ε)-approximately optimal route for every i.

Theorem:

Relax the problem definition:

• Each AS i has r possible routes to j, and uses the one which it likes best.

– 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!

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

37

Talk Outline

• Introduction• Lowest-cost Routing• Next-Hop Policy Routing• Subjective-Cost Policy Routing• Conclusion and Future Directions

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

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.

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

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]

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

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?