Mechanism design for interdomain routing
Download
1 / 40

Mechanism Design for Interdomain Routing - PowerPoint PPT Presentation


  • 111 Views
  • Uploaded on

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)

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Mechanism Design for Interdomain Routing' - trinh


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
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.


Interdomain routing

UUNET

UMich

Comcast

Qwest

Interdomain Routing

Finding routes between autonomous systems (ASes)

Currently done with the Border Gateway Protocol (BGP).


Current interdomain routing
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.


Problems with current routing
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.


High level approach
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.


Economic mechanism design
Economic Mechanism Design

Approach to designing systems for self-interested agents.

Private information

t1

Agent 1

Outcome

O

tn

Agent n


Economic mechanism design1
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.


Algorithmic mechanism design
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.


This work damd for interdomain routing
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!).


Talk outline
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


Model 1 lowest cost routing
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?


Md for lowest cost routing
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.


Lowest cost routing mechanism

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?


Lowest cost routing mechanism1

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!


Bgp based computational model 1
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.


Bgp based computational model 2
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


Computing the prices

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.


A bgp based algorithm

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.


Performance of algorithm
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!


Strategies in computation
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.


Talk outline1
Talk Outline

  • Introduction

  • Lowest-Cost Routing

  • Next-Hop Policy Routing

    - Strategyproof Mechanism

    - Incompatibility with BGP

  • Subjective-Cost Policy Routing

  • Conclusion and Future Directions


Model 2 next hop policies
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.”


Next hop policy routing
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.


Next hop policies optimal tree
Next-Hop Policies: Optimal Tree

Mechanism goals:

  • Maximize total welfare W = ui(Pij).

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


Next hop policies optimal tree1
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)


Strategyproof mechanism
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?


Proving hardness for bgp based routing algorithms
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.


Dynamic sensitivity
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.


Network construction 1

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


Network construction 2

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):


Optimal spanning trees
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


Proof of theorem

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!


Talk outline2
Talk Outline

  • Introduction

  • Lowest-Cost Routing

  • Next-Hop Policy Routing

  • Subjective-Cost Policy Routing

    - A “payment-less” Mechanism

  • Conclusion and Future Directions


Model 3 subjective costs
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}.


Convex subjective costs
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.


A few trees are sufficient
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!


Talk outline3
Talk Outline

  • Introduction

  • Lowest-cost Routing

  • Next-Hop Policy Routing

  • Subjective-Cost Policy Routing

  • Conclusion and Future Directions


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


Related work on incentives in interdomain routing
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]


Some open questions
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?