110 likes | 242 Views
Know thy Neighbor’s Neighbor Better Routing for Skip Graphs and Small Worlds. Moni Naor Udi Wieder. Properties of Greedy. Simple – to understand and to implement. Local – If source and target are close, the path remains within a small area in the keyspace.
E N D
Know thy Neighbor’s NeighborBetter Routing for Skip Graphs andSmall Worlds Moni Naor Udi Wieder
Properties of Greedy • Simple – to understand and to implement. • Local – If source and target are close, the path remains within a small area in the keyspace. • Howver, route not optimal with respect to the degree. O(log n)
Question Can Greedy Routing be further shortened Without compromising the good properties? This paper examines this issue.
Optimal diameter For a graph in which each node has degree d, The optimal diameter is O(logdn) When d=log n, the optimal diameter is O(log n/log log n) Proof?
Neighbor of Neighbor (NoN) Routing Each node has a list of its neighbor’s neighbors.The message is routed greedily to the closest neighbor of neighbor (2 hops). This means: • Let w1, w2, … wk be the neighbors of current node u • For each wi find zi, the closest neighbor to target t • Let j be such that zj is the closest to target t • Route the message from u via wj to zj • The first hop may not be a greedy choice.
Degree Optimal P2P Routing • Different routing schemes • Viceroy emulates the butterfly network • Constant degree • O(log n) hops for routing • Constructions emulating De-Bruijn graphs • Can achieve any degree/number of hops tradeoff • In particular degree O(log n) and O(log n/ log log n) hops • Routing is not greedy
0 1 0 0 1 1 0 0 1 0 1 0 1 1 0 1 1 0 Skip-Graphs • Each node (resource) has a name. • Nodes are arranged on a line sorted by name. b a c f d e Each node chooses a random string of bits. An edge is established if two nodes share a prefix which is not shared by the nodes between them.
0 1 0 0 1 1 0 0 1 0 1 0 1 1 0 1 1 0 Theorem: Using the NoN algorithm, the expected path length of any lookup is . Routing in Skip-Graphs • Greedy Routing – use longest edge possible. • Path length is (log n) w.h.p. The NoN algorithm optimizes over two hops.
= d l d o g d 1 [ ] [ ( ) j ] 0 X D 0 ¸ > l d ; 2 o g Skip Graphs – degree optimality d 0 X - # of two hop paths between d and D - the event a message reached the node d. • Call a NoN 2-hop successful if it reduces the distance from d to log d . • Need O(log log n) succesful 2-hops to get to distance 1. Lemma: Prob Sufficiency of lemma:
The Cost/Performance of NoN • Cost of Neighbor of Neighbor lists: • Memory: O(log2n) - marginally higher. • Communication: Is it tantamount to squaring the degree? • Neighbor lists should be maintained (open connection, pinging, etc.) • NoN lists should only be kept up-to-date. • Lazy updates: Updates occur only when communication load is low – supported by simulations. Networks of size 217 show 30-40% improvement
Conclusions • NoN Greedy seems like an almost free tweak that is a good idea in many settings.