The non-english sites are not maintained by eDonkey2000.
eDonkey2000 doesn't rely on one central server yet searches are quick and your client doesn't get bogged down with endless search requests. You have the ability to search all the files being shared anywhere on the eDonkey2000 network.
It allows you to transfer any type of file. It automatically resumes interrupted transfers from alternate sources. It even introduces ways to share a whole collection of files together so you can be sure to get all the songs in an album or all pieces of a movie. Users will be able to download a file from multiple sources at the same time thus insuring that transfers will be as fast as possible.
Files can be uploaded while being downloaded. This insures that a rare file that is wanted by many people will be distributed as quickly as possible.
Our UI code will be open sourced soon and we will provide an API into the client core. This will allow anyone to write their own UI or improve and extend ours.
The server and client are both distributed for free. There are Linux and Windows versions available with Mac versions coming soon.
There are two applications that work together to create a Donkey network, the client and the server. The donkey client is what people use to share and download files. The donkey server is what the clients connect to in order to search and find other users to download from. The server is sort of like a phone book. Clients look in it to find other clients with the files they want. No files pass through the server.
Searching: Every client is connected to one server as its main server. It tells this server what files it has shared. Each server maintains a list of all the shared files of all the clients connected to it. When a client searches it sends the search request to its main server. The server then matches all files it knows about to the search and returns this list to the client.
Downloading: When a client chooses to download a file, either from search results, a collection, viewing a friend's shared files, or where ever, it first gathers a list of all the clients that have the file it wants. It first asks its main server for all the clients that have the file. Then it will connect to and ask any other servers it knows about to ask if they have clients with the file. Once it finds other clients with the file it then asks each client for a different piece of the file. It keeps doing this until the whole file is assembled.
This diagram shows what kind of things are passed over the various connections in a Donkey network.
This diagram shows some of the advanced features of eDonkey2000's download mechanism. Client Z has all parts of File 1 (the lower case letters represent parts of a file). Client W, X, and Y all want to download File 1. Since Client X and Client Y both have different pieces of File 1 they can not only get the file from Client Z, but they can start sending the file to each other. This allows the file to be distributed much faster without using more bandwidth of Client Z. Client W can start downloading the file even if the source of the file (Client Z) no longer has enough bandwidth to send.