Kademlia (Kad)

Kademlia is a distributed hash table (DHT) communication protocol for decentralized peer-to-peer networks.

The Kademlia network is made up of a wide range of nodes, which interact with each other through User Datagram Protocol (UDP). Each node on the network is identified by a unique binary number called node ID. The node ID is used to locate values (block of data) in the Kademlia algorithm. The values are also interlinked within a Kademlia network with a specific value’s key, a binary number of fixed length.

In 2002, Petar Maymounkov and David Mazieres introduced the Kademlia network.

It is categorized by two standardized terms, Alpha and K, and a third irregular term, B. The Kademlia network consists of network nodes and the node ID provides a direct road map for file or resource searches.

The Kademlia network algorithm requires the information about the associated key for searching specific values. The search is made in several steps; in each step, the algorithm looks for the node that is closest to the key of the connected node. Because of its decentralized structure, Kademlia builds a strong defense against a denial of service attack. Its decentralized structure is equally advantageous when the nodes become flooded.

Kademlia is widely employed in file sharing networks because it makes it quite easy to search for information in file-sharing networks. This is because keywords are used for making file name searches, and each file name is divided into its basic words. Such special keywords are diced and put in network storage, along with their corresponding file hash and file name. Public networks that are based on the Kademlia network algorithm include


  • Kad network
  • Overnet
  • BitTorrent
  • Osiris sps
  • Gnutella

Ka
demlia is also implemented in libraries including

  • Hashmir
  • SharkyPy
  • Mojito

Post a Comment

0 Comments