Incentive-Compatible Interdomain Routing Joan Feigenbaum Vijay Ramachandran

advertisement
Incentive-Compatible
Interdomain Routing
Joan Feigenbaum
Yale University
Vijay Ramachandran
Stevens Institute of Technology
Michael Schapira
The Hebrew University
1
Interdomain Routing
Establish routes between autonomous systems (ASes).
Verizon
AT&T
Comcast
Qwest
Currently done with the Border Gateway Protocol (BGP).
2
Why is Interdomain Routing Hard?
• Route choices are based on local policies.
• Autonomy: Policies are uncoordinated.
• Expressiveness: Policies are complex.
Always choose
shortest paths.
Load-balance my
outgoing traffic.
Verizon
AT&T
Comcast
Qwest
My link to UUNET is for
backup purposes only.
Avoid routes
through AT&T if
at all possible.
3
Welfare-Maximizing Routing
Private information:
Route valuations
v1(.
)
Strategies
a1
p1
AS 1
Mechanism
vn(.
)
an
AS n
pn
Routes
R1,
…,
Rn
For each destination (independently / in parallel), compute:
• A confluent routing tree that maximizes the sum of nodes’ valuations for that
destination, i.e., ∑i vi(Ri) ; and
• VCG payments (nodes are paid for their contribution to the routing tree)
… using a BGP-compatible (distributed) algorithm.
4
VCG Payments
Td is the optimal routing tree to destination d.
Td-k is the optimal tree to d if node k is removed.
• The VCG payment to node k is of the form
pk = ∑i  k vi(Td) – hk(•)
where hk is a function that does not
depend on k’s valuation.
• If
hk({vi}) = ∑i ≠ k vi(Td-k),
then the payment to each node is
pk(Td) = ∑i ≠ k [vi(Td) – vi(Td-k)].
5
Payment Components
• The total payment to node k can be
broken down into payment components:
pk(Td) = ∑i ≠ k pki(Td).
• Each payment component depends only
on the valuations at some node i:
pki(Td) = vi(Td) – vi(Td-k).
• Compute these in a distributed manner.
• Problem: We don’t want to run an
algorithm for every Td-k (not efficient).
6
Routing-Protocol Desiderata
• Does not assume a priori knowledge of the
network topology
• Distributed
• Autonomy-preserving
• Dynamic (responds to network changes)
• Space- and communication-efficient
• Complies with Internet next-hop
forwarding
7
BGP Route Processing
• The computation of a single node repeats the following:
Receive routes
from neighbors
Update
Routing
Table
Choose
“Best”
Route
Send updates
to neighbors
• Paths go through neighbors’ choices, which
enforces consistency.
• Decisions are made locally, which preserves autonomy.
• Uncoordinated policies can induce protocol oscillations.
(Much recent work addresses BGP convergence.)
• Recently, private information, optimization, and
incentive-compatibility have also been studied.
8
Known Results: Welfare Maximization
and Interdomain Routing
Routing-Policy
Class
Good
Centralized
Algorithm?

Good
Distributed
Algorithm?



(and hard to approximate)
(and hard to approximate)
Next Hop


Subjective Cost


(incl. some special cases)
(approx. is easy if >1 tree)


LCP*
General Policy
Forbidden Set
9
Question
• These are mostly negative results.
• Is there a realistic and useful class of
routing policies (i.e., something broader
than LCPs) for which we can get an
incentive-compatible, BGP-compatible
algorithm to compute routes and
payments?
10
Gao-Rexford Framework (1)
Neighboring pairs of ASes have one of:
– a customer-provider relationship
(One node is purchasing connectivity from
the other node.)
– a peering relationship
(Nodes have offered to carry each other’s
transit traffic, often to shortcut a longer route.)
peer
providers
peer
customers
11
Gao-Rexford Framework (2)
• Global constraint: no customer-provider cycles
• Local preference and scoping constraints, which are consistent
with Internet economics:
Preference Constraints
k1
i
k2
R
. . . 1. . .
Scoping Constraints
d
R
. . .2. . .
provider
....
j
peer
i
d
m
customer
k
• If k1 and k2 are both customers, peers,
or providers of i, then either ik1R1 or
ik2R2 can be more valued at i.
• Export customer routes to all neighbors
and export all routes to customers.
• If one is a customer, prefer the route
through it. If not, prefer the peer route.
• Export peer and provider routes to
all customers only.
• Gao-Rexford conditions => BGP always converges [GR01]
12
Efficient Payment Computation
• Next-hop valuations: The valuation of a
route depends only on its next hop.
• Theorem: If Gao-Rexford conditions hold
and ASes have next-hop policies, then
routes and payments can be computed
with “good” space efficiency.
* (We only run “BGP” once.)
13
Next-Hop Payment Computation
• Send augmented BGP update message
whenever best route or availability of a
k-avoiding route changes:
AS k1 AS k2
Y/N Y/N
…
…
AS ki
Y/N
AS Path
ki-avoiding path known?
• When an update message is received:
– Store path and bits in routing table.
– Scan bits to update best k-avoiding next hop.
14
Next-Hop Routing Table
• Store usable routes, availability of k-avoiding routes from
neighbors (for all stored routes), and best k-avoiding next
hops (for current most preferred route).
Destination
AS 1
AS 2
AS 2
Best k-avoiding next hops
AS 2
AS 4
AS 5
Optimal AS path
Y
Y
AS 3
AS 5
Y
Y
d
AS 1
d
Bit vector from update
Alternate AS path
Bit vector from update
• Payment components are derived from next hops:
pki(Td) = vi(Td) – vi(Td-k) for transit k ;
= 0 otherwise.
15
Towards a General Theory
• Gao-Rexford + Next-Hop valuations are a
special case.
• We identify a broad sufficient condition for
valuations that permit BGP-compatible,
incentive-compatible computation of
routes and VCG payments.
16
Dispute Cycles
Relation 1: Subpath
Relation 2: Preference
Q1
R1
vi(Q1) > vi(Q2)
...
...
d
i
i
d
...
R2
Q2
R1
R2
Q1
Q2
• Valuations do not induce a dispute cycle iff there is no cycle
formed by the above relations on all permitted paths in the network.
• No dispute cycle => robust BGP convergence [GSW02, GJR03]
17
Example of a Dispute Cycle
v(12d) = 10
v(1d) = 5
v(23d) = 10
v(2d) = 5
2
1
1d
2d
3d
31d
12d
23d
d
3
v(31d) = 10
v(3d) = 5
Dispute Cycle
Subpath
Preference
18
Policy Consistency
R1
....
Valuations are policy consistent
iff, for all routes R1 and R2
(whose extensions are
not rejected),
k
i
d
...
THEN
R2
(analogous to
isotonicity [Sob.03])
IF
vi((i,k)R1) > vi((i,k)R2)
vk(R1) > vk(R2)
19
Optimality
• Theorem: If the valuation functions are
policy consistent and do not induce a
dispute cycle, then BGP converges to the
globally optimal routing tree.
20
Efficiently Computing Payments
• Local optimality: In a globally optimal
routing tree, every node gets its most
valued route.
• Theorem A: No dispute cycle + policy
consistency => local optimality.
• Theorem B: Local optimality =>
If k is not on the path from i to d, then
payment component pki (Td) = 0.
21
Conclusions
• Gao-Rexford + Next-Hop valuations are a
reasonable class of policies that admit
incentive-compatible, BGP-compatible
computation of routes and VCG payments.
• Only a constant-factor increase in BGP
routing-table size is required.
• Dispute-cycle-free and policy-consistent
valuations generalize this result.
22
Future Work
• Approximability of the interdomain-routing
problem?
– Without restrictions on policies, no good
approximation ratio is achievable [FSS04].
• Remove bank?
• Optimal communication complexity?
23
Technical Report
Full version of this paper is available as
Yale University Technical Report
YALEU/DCS/TR-1342
http://www.cs.yale.edu/publications/
techreports/tr1342.pdf
24
Download