Web Site

Internet-description.com



» Internet » Peer ton Peer » Topics begins with K » Kademlia


Page modified: Saturday, June 24, 2006 10:37:14

Kademlia is minutes for Peer ton Peer of nets. It specifies kind and structure of the net, reglementiert communication between the knots and the exchange of information.

Demarcation

Kademlia serves above all the purpose file sharing. Filesharing Tools differ primarily in the mechanism for finding the made available files to the Download.

Tools of the first generation, like Napster, possess a central server, which knows all files existing in the system and their owner. With inquiries the central server is contacted and downloaded then the appropriate file by one the owner registered there. This beginning possesses two disadvantages: On the one hand such systems are susceptible in relation to Denial OF service attacks against the central indexation server. On the other hand this beginning for legal reasons for file sharing is unsuitable: The operator of the indexation server it is to be examined not possibly all made available files on copyright infringements, it is however for contents made available illegaly by participants jointly responsible.

Tools of the second generation, like Gnutella, do without the central indexation server. Here inquiries are passed on to a part of the knots in the system. For these it is then examined whether the participant possesses a suitable file to the Download. The participant possesses a file this to the Anfrager is returned. With this beginning, since not all knots are queried, not all suitable files can be found.

Tools of the third generation, to which also Kademlia belongs, repair this problem: Over the existing LAN/WAN (e.g. Internet) is developed a second, virtual lattice structure (a so-called distributed Hashtabelle). This structure replaces the central indexation server of Tools of the first generation. So it is to be found possible all looked for files in the net, without needing a central indexation server.

Function mode

Basis of Kademlia is the Internet Protocol and the connectingless UDP based on it.

Each knot is identified by a clear number ("„Node ID "“). This number serves not only for its identification, but by the Kademlia algorithm for further purposes is at the same time consulted.

A knot, which would like to join the net, must go through first one "„Bootstrapping "“process mentioned: In this phase the algorithm receives the IP address of a knot, which already admits in the Kademlia net is from the user (or from a stored list). If the knot was never before in the net, it computes a coincidental ID, which was not assigned yet. It uses these up to leaving the net.

Since there is no central instance, which can take over an indexing of the existing files, this task is equally divided on all Clients: A knot, which possesses information, calculated first a clear and always equal long bit sequence, which characterizes this information (Hash value). The length of the Hashes used in the net and the Node IDs must be equal long. It looks for now in the net the knots, whose ID (counted in bits) "“to the Hash exhibit the smallest "„distance, and conveys to them their contact contacts.

If a host looks for exactly this information, it carries out the same procedure and arrives thereby at the knots which stored, who possesses this information in the net. The search can be received now a direct connection to the source and receive the information. It is thus guaranteed that the search finds the contact contacts of the source exact in the place, where this left it. Since the net is understood usually in constant change, the contact contacts are distributed on several knots and updated every few hours by the source. (REFERENCE: With Filesharing Tools one is "„information "“as a rule a file.)

"„The distance specified above "“does not have to do anything with geographical conditions, but designates the distance within the ID range. Thus it can occur (and it becomes) that e.g. a knot from Germany and one are from Australia as it were "„neighbours "“. The distance between the knots in the Kademlia ID space is calculated by the mathematical XOR function and amounts to always log2 (ID1 XOR ID2).

  • When finding a knot slope ELT itself the algorithm intelligently ever more near at these near, until he is found or an error returns. The number during this search maximally to asking knots corresponds to the distance of this knot from one. If the number of participants in the net should double itself, then one must ask not twice as many knots - to separate per duplication only one knot more. The necessary range does not scale thus linear with the size of the net.
  • Further advantages are particularly in the decentralized structure, which increases the resistance clearly against DDoS attacks. Even if a whole set of knots is attacked, does not have for the net all too-large effects. With the time the net knits itself then around these "„holes "“around again and the problem is solved.

By optimization the range needed for minutes can be lowered on relatively small values, the source exchange of eMule is here a good example.

Clients

Clients, which implement the Kademlia algorithm (nets are among themselves incompatible):

  • VarVar (first Client with Kademlia, own net)
  • eDonkey2000
  • MLDonkey
  • eMule (starting from v0.42) and aMule (starting from version 2.1.0), name: Kad
  • Azureus (starting from version 2.3)
  • BitTorrent (starting from version 4.1.0, beta phase)
  • eXeem - development adjusted, contains advertisement
  • ANts P2P

Related links


Articles in category "Kademlia"

We found here 8 articles.

K

» Kademlia
» KaZaA
» Kazaa Lite
» Kazaa Lite K
» Kazaa Lite Resurrection
» Kazaa Lite Tools K
» Kazaa Lite variants
» KTorrent

Related Websites

We found here 4 related websites.

Page cached: Wednesday, July 5, 2006 23:55:15
Valid XHTML 1.0!  Valid CSS!

Page copy protected against web site content infringement by Copyscape