SCALABLESCALABLE Ankit Singla, P. Brighten Godfrey Kevin Fall, Sylvia Ratnasamy, Gianluca Iannaccone...
-
Upload
josue-elmer -
Category
Documents
-
view
215 -
download
1
Transcript of SCALABLESCALABLE Ankit Singla, P. Brighten Godfrey Kevin Fall, Sylvia Ratnasamy, Gianluca Iannaccone...
SCALABLE
Ankit Singla, P. Brighten GodfreyKevin Fall, Sylvia Ratnasamy, Gianluca Iannaccone
R UO ITN
G
FLAT NAMESFLAT NAMESON
Scalable Routing
NUMBER OF NODES = n
NOT VERY SCALABLE!
STATE
=
SHORTEST-PATH ROUTING
?ROU
TIN
G
STAT
E/N
OD
E
6
Local Name Resolution
• Why local name-resolution matters– Google: 400ms delay = 0.59% searches/user– Time for name-resolution is a significant fraction
of latency for short flows (which are the majority)– Fate sharing property
7
• Arbitrary names – independent of location• Useful primitive– Mobility– Security– Simplified management
Flat Names
8
Another Way to Scale• Compact Routing– [Thorup & Zwick ’01, Abraham et al. ’04]– Idea: accept (slightly) longer paths, get lower state
– State => Stretch
(stretch = )
state; stretch = 3
state; stretch = k
.
.
.
state; stretch = 5
Compact Routing
NUMBER OF NODES = n
state; stretch = 1
ROU
TIN
G
STAT
E/N
OD
E
9
11
Disco
Disco: Distributed Compact Routing
• Scalable: state* per node• Efficient: stretch • Flat-names: Route over arbitrary names
*Assumption: partial source routes are of size O(polylog(n))
3..
12
Disco
Local Name Resolution
Name Resolution
NDDisco: Name-Dependent Distributed Compact RoutingNDDisco: Name-Dependent
Distributed Compact Routing
13
NDDisco
sAddr (t) = (L(t), b, t)
t
L(t)
) random landmarks (enable approximately shortest paths)
b
17
Disco
Local Name Resolution
Name Resolution
NDDisco: Name-Dependent Distributed Compact Routing
Name Resolution
18
Name Resolution• Name -> Address
mappings stored in DHT over landmarks
• Similar to prior work [BVR, S4]
Arbitrarily high stretch for address lookup!
st
19
Disco
Local Name Resolution
Name Resolution
NDDisco: Name-Dependent Distributed Compact Routing
Local Name Resolution
20
Local Name Resolution• Scatter t’s address to )
random nodes
• Then each node s has t’s address somewhere in its vicinity w.h.p.
• ‘Scattering’ addresses?• Finding addresses?
ts
?L(t)
Smells like hash functions!
21
Sloppy Groups
• G(t) = nodes w for which first k bits of h(w) match h(t)• Set k such that |G(t)| = () • Groups are sloppy because nodes’ estimates of ‘n’ vary!
Increasing h()
EVERYONE AGREES ON THIS
PARTt
G(t)
22
Address Dissemination
• Requirements:– Low diameter for quick dissemination of addresses– Low messaging overhead– Fault tolerance
Increasing h()
23
Address Dissemination
• Predecessor, successor and small O(1) number of fingers• Distance-vector style dissemination of addresses
Increasing h()
24
1: Overlay Topology
• Predecessor, successor and small O(1) number of fingers– Fault tolerance: Use landmarks to fix overlay when broken– Miserly messaging: each node hears each address O(1) times– We don’t care about routing, only diameter, which is small!
Increasing h()
25
2: Dissemination Protocol
• Disseminate new addresses learnt to overlay neighbors• Record where each address was learnt from (distance vector-like)• Always forward away from the direction received from
– Avoids count-to-infinity problem because of ordered space
Increasing h()
26
Handling Failures: Example
No soft-state required!Update only on changes
Increasing h()
GET NEW NEIGHBOR FROM LANDMARK
WITHDRAW ADDRESSESLEARNT FROM X X
27
Routing in Disco
w(t)
• s computes h(t)• w(t) = Longest-prefix
match for h(t) in Vicinity(s)
First : s w(t) L(t) tLater: s L(t) t
st
L(t)
28
Protocol Messages• Estimating ‘n’: synopses
exchanged with neighbors• Landmark and Vicinity
updates: path vector style• Sloppy-group bootstrap
through landmarks• Address-dissemination:
distance-vector style
s
29
• State at a node– Vicinity: ) closest nodes– Landmarks: ) random landmarks– Address-Groups: ) overlay neighbors
•Stretch– For first packet <= 7– For later packets <= 3
Summary
30
Evaluation
• Protocols– Disco– NDDisco– S4 [Mao et al ‘07]– VRR [Caesar et al ‘06]
• refer to paper
• Topologies– Router-level Internet
topology (n = 192,244)– AS-level Internet topology
(n = 30,610)– Geometric random
graphs, mean degree 8– G(n, m), mean degree 8
33
First-Packet Stretch
GEOMETRIC RANDOM GRAPH16384-NODES
ROUTER-LEVEL INTERNETTOPOLOGY
72
LARGE FIRST-PACKETSTRETCH
DISCO S4
S4
DISCO
LIMITED BY SMALL PATH-LENGTHS IN
TOPOLOGY
34
Later-Packets Stretch
GEOMETRIC RANDOM GRAPH16384-NODES
ROUTER-LEVEL INTERNETTOPOLOGY
DISCO < 1.2NEAR-IDENTICAL
S4DISCO
Are the Landmarks Clobbered?
AS-LEVEL INTERNET TOPOLOGY
35
~4 IN EVERY 10,000 EDGES SEE MORE
CONGESTION
DISCO
36
Conclusion
• Disco routes over flat names with O(1) stretch and state
• What next?– Policy support?– Applications