eDonkey2000的历史
eDonkey2000的原作者为Jed McCaleb。第一版于2000年9月6日发布。2000年9月16日,可运行于Microsoft Windows和Linux上的客户端和服务器端版本发布。
和早先的P2P软件Napster相比,eDonkey2000可以从不同客户端来源下载同一文件的不同片段。这样能够更加有效地利用所有来源,而不是仅使用同一来源。
eDonkey2000最初的几个版本和Napster一样,服务器是相互独立的。但是后来的服务器版eDonkey2000启用了服务器以形成一个搜索网络。这使得服务器可以从连接于本地的客户端向其他服务器进行搜索查询,也可以允许客户端于服务器网络中的任何服务器上找到来源,因而增加了下载群的大小。用户也可以找到并下载同一服务器上的客户端没有的文件。
与Napster相比的第三个好处是eDonkey2000在搜索时使用了文件Hash,而不是简单的文件名。用户搜索的是关键字,对在eD2k服务器上存储的文件名列表进行匹配,但服务器返回到客户端的则是一个与这些文件相应的Hash值列表。选择文件后,客户端会根据Hash值进行下载。这意味着,一个文件可以有不同的文件名和不同的客户端来源,但是只要是拥有相同Hash值的文件,就将被认为是完全相同的文件。
这个客户端和服务器两个级别的P2P网络架构,既不像Napster的那种集中性系统,也不像Gnutella的分散性系统,而是平衡了这两种系统。 Napster的高度集中使之成为了反盗版诉讼的目标。Gnutella的最初设计为完全弃用服务器而进行纯点对点搜索。由于点对点搜索需要大规模的传输开销,因此很快这也被证明是行不通的。
后来第二级P2P文件***享系统使用了类似eDonkey2000的设计(下载由多个来源提供的相同文件的文件段),但是对服务器网络进行了改进,类似的例子有BitTorrent,它将文件搜索功能“搜索Torrent”和搜索下载来源功能“Torrent Tracker”分离了开来。