[show abstract][hide abstract] ABSTRACT: Structured peer-to-peer overlay networks, like distributed hash tables (DHTs), map data items to the network based on a consistent hashing function. Such mapping for data distribution has an inherent load balance problem. Data redistribution algorithms based on randomized matching of heavily loaded nodes with light ones can deal with the dynamics of DHTs. However, they are unable to consider the proximity of the nodes simultaneously. There are other methods that rely on auxiliary networks to facilitate locality-aware load redistribution. Due to the cost of network construction and maintenance, the locality-aware algorithms can hardly work for DHTs with churn. This paper presents a locality-aware randomized load-balancing algorithm to deal with both the proximity and network churn at the same time. We introduce a factor of randomness in the probing of lightly loaded nodes in a range of proximity. We further improve the efficiency by allowing the probing of multiple candidates (d-way) at a time. Simulation results show the superiority of the locality-aware two-way randomized algorithm in comparison with other random or locality-aware algorithms. In DHTs with churn, it performs no worse than the best chum-resilient algorithm. It takes advantage of node capacity heterogeneity and achieves good load balance effectively even in a skewed distribution of items
IEEE Transactions on Parallel and Distributed Systems 07/2007; 18(6):849-862. · 1.80 Impact Factor
[show abstract][hide abstract] ABSTRACT: Summary form only given. There are many structured P2P systems that use DHT technologies to map data items onto the nodes in various ways for scalable routing and location. Most of the systems require O(logn) hops per lookup request with O(logn) neighbors per node, where n is the network size. We present a constant-degree P2P architecture, namely Cycloid, which emulates a cube-connected-cycles (CCC) graph in the routing of lookup requests. It achieves a time complexity of O(d) per lookup request by using O(1) neighbors per node, where n = d· 2<sup>d</sup>. We compare Cycloid with other two constant-degree systems, Viceroy and Koorde in various architectural aspects via simulation. Simulation results show that Cycloid has more advantages for large scale and dynamic systems that have frequent node arrivals and departures. In particular, Cycloid delivers a higher location efficiency in the average case and exhibits a more balanced distribution of keys and query loads between the nodes.
Parallel and Distributed Processing Symposium, 2004. Proceedings. 18th International; 05/2004