eDonkey2000 was created by
Jed McCaleb, cofounder of
Stellar, and was first released on September 6, 2000. On September 16, 2000, client and server versions were available for
Microsoft Windows and
Linux. Compared to earlier P2P file-sharing program
Napster, eDonkey2000 featured "swarming" downloads, meaning that clients could download different pieces of a single file from different peers, effectively utilizing the combined bandwidth of all of the peers instead of being limited to the bandwidth of a single peer. At first, servers were isolated from one another as with Napster, but later versions of the eDonkey2000 server software enabled servers to form a search network. This allowed servers to forward search queries from their locally connected clients to other servers, allowing clients to effectively find peers connected to any server on the server network, thereby increasing download swarm size. It also allowed clients to find and download files not available from clients connected to the same server. A third improvement compared to Napster was the use of file
hashes instead of simple filenames in search results. File searches initiated by the user were keyword-based and matched against the filename list stored on the eDonkey2000 server, but the server returned a list of filenames paired with the hash values of those files to the client. When selecting a file from the list presented to the user, the client would actually initiate a download by hash value. This meant that a file could have many different filenames across different peers, but would be considered identical for purposes of downloading if its hash was the same. The two-level (client and server) peer-to-peer network architecture offered a balance between centralized systems like Napster, and decentralized systems like
Gnutella. Where Napster ultimately proved to be vulnerable was its centralized server cluster, which was a stable target for legal action. Gnutella's original design, featuring total elimination of the server network in favor of purely peer-to-peer searching, quickly proved to be infeasible due to massive search traffic overhead between peers. Later 2nd-level P2P file sharing systems use a similar design to eDonkey2000 (downloading files in pieces by hash from multiple peers simultaneously) but innovate in the design of the server network, such as in the case of
BitTorrent, which separates the file search feature ("torrent search") from the download peer locating feature ("torrent tracker"). == eDonkey2000 client ==