1 Mechanism Design for Interdomain Routing Rahul Sami Joint work with Joan Feigenbaum, David Karger, ab Mirrokni, Christos Papadimitriou, and Scott Shen
Dec 21, 2015
1
Mechanism Design for Interdomain Routing
Rahul Sami
Joint work with Joan Feigenbaum, David Karger, Vahab Mirrokni, Christos Papadimitriou, and Scott Shenker.
2
Interdomain Routing
Finding routes between autonomous systems (ASes)
Currently done with the Border Gateway Protocol (BGP).
UMich
Qwest
Comcast
UUNET
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.
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., ..]
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.
6
Economic Mechanism Design
Approach to designing systems for self-interested agents.
Agent 1
Agent n tn
t1
O
Private information
Outcome
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
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
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.
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
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.]
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]:
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?
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!
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.
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
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.
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
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!
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.
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
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.]
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
24
Next-Hop Policies: Optimal Tree
Maximize total welfare W = ui(Pij).
For each destination j, {Pij } forms a tree.
Mechanism goals:
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
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?
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:
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.
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
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
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
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)
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
• 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.]
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
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!
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?