## Fast construction of overlay networks

### Cached

### Download Links

- [www.cs.yale.edu]
- [cs-www.cs.yale.edu]
- [www.cs.yale.edu]
- [www.cs.yale.edu]
- [cs-www.cs.yale.edu]
- DBLP

### Other Repositories/Bibliography

Venue: | SPAA |

Citations: | 24 - 2 self |

### BibTeX

@ARTICLE{Angluin_fastconstruction,

author = {Dana Angluin and Yinghua Wu and James Aspnes and Yitong Yin and Jiang Chen},

title = {Fast construction of overlay networks},

journal = {SPAA},

year = {},

pages = {145--154}

}

### Years of Citing Articles

### OpenURL

### Abstract

An asynchronous algorithm is described for rapidly constructing an overlay network in a peer-to-peer system where all nodes can in principle communicate with each other directly through an underlying network, but each participating node initially has pointers to only a handful of other participants. The output of the mechanism is a linked list of all participants sorted by their identifiers, which can be used as a foundation for building various linear overlay networks such as Chord or skip graphs. Assuming the initial pointer graph is weakly-connected with maximum degree d and the length of a node identifier is W, the mechanism constructs a binary search tree of nodes of depth O(W) in expected O(W log n) time using expected O((d+W)nlog n) messages of size O(W) each. Furthermore, the algorithm has low contention: at any time there are only O(d) undelivered messages for any given recipient. A lower bound of Ω(d + log n) is given for the running time of any procedure in a related synchronous model that yields a sorted list from a degree-d weakly-connected graph of n nodes. We conjecture that this lower bound is tight and could be attained by further improvements to our algorithms.

### Citations

3847 | Chord: A scalable peer-to-peer lookup service for internet applications
- Stoica, Morris, et al.
- 2001
(Show Context)
Citation Context ...thms Theory Keywords Overlay networks, asynchronous, merging, Patricia trees 1. INTRODUCTION Consider the problem of rapidly building a peer-to-peer system with a ring or line structure such as Chord =-=[19]-=- or skip graphs [3]. The default assumption in both systems appears to be that nodes will be inserted sequentially, giving a construction time of O(nlog 2 n) for Chord and O(nlog n) for skip graphs. B... |

368 |
A distributed algorithm for minimum-weight spanning trees
- Gallager, Spira
- 1983
(Show Context)
Citation Context ...es, while the other components of the supernode’s state reside at the root. The resulting protocol is similar in many ways to the classic distributed minimum spanning tree protocol of Gallager et al. =-=[8]-=-, although the internal communication costs of components are reduced by our ability to construct a balanced tree by adding new edges to the communication graph. In carrying out this strategy, we have... |

279 |
Trie Memory
- Fredkin
- 1960
(Show Context)
Citation Context ...n+m, W min(n, m))) messages of size O(W) each, where W is the length in bits of an identifier and n and m are the number of elements in the two trees. A Patricia tree [17] is similar to a binary trie =-=[5,6]-=- with all keys stored in the leaves, except that paths with no branches are compressed to single edges. We assume that all keys are bit-strings with fixed width W: shorter strings can be padded with z... |

279 | Parallel prefix computation
- Ladner, Fischer
- 1980
(Show Context)
Citation Context ...nue to appear atomic. If we were willing to accept substantial overhead, a natural approach would be to serialize the processing of incoming messages at the leaves using a parallel-prefix computation =-=[15]-=-, taking advantage that the effects of processing the various incoming messages on the states can be summarized as simple state updates plus possible assignment to the variables waiting and obj, and s... |

271 | P-grid: A self-organizing access structure for p2p information systems
- Aberer
- 2001
(Show Context)
Citation Context ...ry for this change to improve our overall running time. 1.1.4 Tree structures in previous work A distributed trie is used as a search structure for P2P systems in several previous papers. Karl Aberer =-=[1]-=- designed a scalable access structure named P-Grid based on a multilevel trie with each node representing one specific interval of the key space. And at each level every peer is associated with exactl... |

270 | Skip Graphs
- Aspnes, Shah
- 2003
(Show Context)
Citation Context ... Overlay networks, asynchronous, merging, Patricia trees 1. INTRODUCTION Consider the problem of rapidly building a peer-to-peer system with a ring or line structure such as Chord [19] or skip graphs =-=[3]-=-. The default assumption in both systems appears to be that nodes will be inserted sequentially, giving a construction time of O(nlog 2 n) for Chord and O(nlog n) for skip graphs. But how quickly can ... |

79 |
Patricia--practical algorithm to retrieve information coded in alphanumeric
- Morrison
- 1968
(Show Context)
Citation Context ...ting in a delivery queue. This yields similar time bounds, except that the running time must be multiplied by the contention to account for queuing delays. In Section 3.2, we show that Patricia trees =-=[17]-=-, using a parallelized version of the Patricia tree merge procedure of Okasaki and Gill [18], are a good choice for the balanced tree data structure. Using Patricia trees, we obtain a sorted final dat... |

78 | Resource discovery in distributed networks
- Harchol-Balter, Leighton, et al.
- 1999
(Show Context)
Citation Context ...hms have contention at most O(d), use messages of size O(W), and store O(dW) bits of state per node. These limits compare favorably to previously known algorithms in this model for resource discovery =-=[2,10,13,14,16]-=- or leader election [4], which also construct trees over nodes that initially form a weakly-connected graph. In these algorithms, a single participant may receive messages from a very large number of ... |

55 | A Fast and Simple Randomized Parallel Algorithm for Maximal Matching
- Israeli, Itai
- 1986
(Show Context)
Citation Context ..., pairs off a constant fraction of the nodes on average in O(1) time. 1 This algorithm is described in Section 3.1. The problem solved is similar to the problem of constructing a distributed matching =-=[11, 20]-=-, except that there is no requirement that paired nodes be joined by an edge in the original knowledge graph. A complication is that since the original knowledge graph is directed, at any time a node ... |

46 | New models and algorithms for future networks
- Cidon, Gopal, et al.
- 1995
(Show Context)
Citation Context ...se messages of size O(W), and store O(dW) bits of state per node. These limits compare favorably to previously known algorithms in this model for resource discovery [2,10,13,14,16] or leader election =-=[4]-=-, which also construct trees over nodes that initially form a weakly-connected graph. In these algorithms, a single participant may receive messages from a very large number of other participants in a... |

34 | Lazy updates for distributed search structures
- Johnson, Krishna
- 1993
(Show Context)
Citation Context ...rformance of the algorithm depends on the lookup pattern and the paper also lacks proof. Others have proposed using B-tree variants to index small numbers of nodes (hundreds) in distributed databases =-=[12,21]-=-. 2. MODEL We assume that in the initial state each process knows the identifiers of some number of other processes. This information forms a knowledge graph, a directed graph with one vertex per proc... |

25 | Fast mergeable integer maps
- Okasaki, Gill
- 1998
(Show Context)
Citation Context ...ngleton nodes, leading to a tree of depth Θ(n) using the simple algorithm. Instead, we describe an algorithm obtained by parallelizing the sequential Patricia tree merge procedure of Okasaki and Gill =-=[18]-=-; this algorithm, described in Section 3.2, assigns a single leaf node and at most one internal node of the Patricia tree to each physical node in the system, and merges two Patricia trees of depth W ... |

24 |
Fat-Btree: An Update-Conscious Parallel Directory Structure
- Yokota, Kanemasa, et al.
- 1999
(Show Context)
Citation Context ...rformance of the algorithm depends on the lookup pattern and the paper also lacks proof. Others have proposed using B-tree variants to index small numbers of nodes (hundreds) in distributed databases =-=[12,21]-=-. 2. MODEL We assume that in the initial state each process knows the identifiers of some number of other processes. This information forms a knowledge graph, a directed graph with one vertex per proc... |

18 | Efficient peer-to-peer lookup based on a distributed trie
- Freedman, Vingralek
- 2002
(Show Context)
Citation Context ...frequently and randomly pairwise which is not so achievable in application. Although the paper provides some simulation results, it doesn’t give further proof. Michael J. Freedman and Radek Vingralek =-=[7]-=- presented a similar approach while taking advantage of information piggybacking during lookups to achieve dynamic partitioning and lazy updates. However, the performance of the algorithm depends on t... |

17 |
La Briandais. File searching using variable length keys
- De
- 1959
(Show Context)
Citation Context ...n+m, W min(n, m))) messages of size O(W) each, where W is the length in bits of an identifier and n and m are the number of elements in the two trees. A Patricia tree [17] is similar to a binary trie =-=[5,6]-=- with all keys stored in the leaves, except that paths with no branches are compressed to single edges. We assume that all keys are bit-strings with fixed width W: shorter strings can be padded with z... |

15 | Asynchronous resource discovery
- Abraham, Dolev
- 2003
(Show Context)
Citation Context ...hms have contention at most O(d), use messages of size O(W), and store O(dW) bits of state per node. These limits compare favorably to previously known algorithms in this model for resource discovery =-=[2,10,13,14,16]-=- or leader election [4], which also construct trees over nodes that initially form a weakly-connected graph. In these algorithms, a single participant may receive messages from a very large number of ... |

15 | Sorting on a parallel pointer machine with applications to set expression evaluation
- Goodrich, Kosaraju
- 1989
(Show Context)
Citation Context ...ges that happen sequentially. 1.1.3 Parallel Sorting Algorithms for sorting on parallel machines have been studied extensively. The closest such algorithm to our work is that of Goodrich and Kosaraju =-=[9]-=- for a parallel pointer machine, which also proceeds by building a binary tree over nodes and then merging components according to the tree. Their algorithm makes use of a clever parallel linked-list ... |

15 | parallel approximation algorithms for maximum weighted matching
- Uehara, Chen
- 2000
(Show Context)
Citation Context ..., pairs off a constant fraction of the nodes on average in O(1) time. 1 This algorithm is described in Section 3.1. The problem solved is similar to the problem of constructing a distributed matching =-=[11, 20]-=-, except that there is no requirement that paired nodes be joined by an edge in the original knowledge graph. A complication is that since the original knowledge graph is directed, at any time a node ... |

11 | An O(log n) randomized resource discovery algorithm. Available online http://www.autoidlabs.orgluploads!medialMITAUTOID-TR-004.pdj. Last accessed 23rd
- Law, Siu
- 2000
(Show Context)
Citation Context ...hms have contention at most O(d), use messages of size O(W), and store O(dW) bits of state per node. These limits compare favorably to previously known algorithms in this model for resource discovery =-=[2,10,13,14,16]-=- or leader election [4], which also construct trees over nodes that initially form a weakly-connected graph. In these algorithms, a single participant may receive messages from a very large number of ... |

10 | Deterministic resource discovery in distributed networks
- Kutten, Peleg, et al.
- 2001
(Show Context)
Citation Context |

9 | Asynchronous resource discovery in peer to peer networks
- Kutten, Peleg
- 2002
(Show Context)
Citation Context |