Enhancing the performance of distributed hash tables in the presence of network address translators

Kripa Shankar Karukurichi Subramanian, Purdue University

Abstract

Peer-to-Peer (P2P) networks are preferred over other content distribution service architectures since they provide more resilience and higher availability through wide scale replication of content at large numbers of peers. Many algorithms based on Distributed Hash Tables (DHTs) have been developed in the last few years to make searching on a P2P network more efficient. Though many benchmarks have been developed in the past to study the performance of DHT algorithms, none of them have focused on the presence of Network Address Translators (NATs). With more than half of the computers in the world connected to the Internet being behind NATs, DHTs cannot afford to ignore them. We study the performance of DHTs and analyze the causes of failures by modeling their behavior with NATs in p2psim (an open-source simulator). We first propose a generic master-slave design that will help Chord (a well known DHT) extend its reach to nodes that are behind the most restrictive of NATs. Exploiting the real world distribution of NATs and prevalent implementation characteristics of Chord, we also propose a more specific solution that can a large subset of nodes behind NATs become active members of the ring. We have implemented both these designs in p2psim, and obtained various performance metrics. Our results from the numerous experimental runs show that DHTs like Chord can be made more scalable without destabilizing the system. We hope that these plots will aid in effective management of trade-offs and in engineering an approach based on the characteristics of the P2P application and the network.

Degree

M.S.E.C.E.

Advisors

Rao, Purdue University.

Subject Area

Computer science

Off-Campus Purdue Users:
To access this dissertation, please log in to our
proxy server
.

Share

COinS