Chord Protocol: Distributed Hash Table for Peer-to-Peer Networking
Arpit Rawat, Amit Gupta, Richa Gupta · 2024
Chord DHT (Distributed Hash Table) is a robust solution to a basic problem encountered in peer-to-peer (P2P) applications: efficiently locating the node that stores specific data items. In this paper, we perform a comprehensive analysis of Chord's capabilities and contribute to the P2P landscape. In Chord DHT, we connect all the nodes such that they form a ring, and we explore its ability to map keys onto nodes effectively, facilitating data location within the network. Chord's simplicity helps in supporting a single operation—key mapping to a node—data management, which is quite straightforward, by associating keys with data items and storing them at corresponding nodes. Chord DHT also demonstrates remarkable adaptability to dynamic network conditions, where it seamlessly accommodates node joins and departures while remaining capable of answering queries amidst ongoing system changes. Through theoretical analysis, simulations, and experiments, we found that Chord's scalability emerges as a standout feature and is designed to make node state maintenance scaling and communication costs logarithmic with the network's size. Additionally, this paper showcases a practical implementation of Chord DHT in Java. For a better user experience, we made a sophisticated GUI, which was developed using Java AWT and Swing libraries. Our graphical interface enhances usability and interaction with the Chord DHT system. Further, we highlight its practical applicability in real-world scenarios.