什么是电驴啊?
电驴(eDonkey)是什么?
电驴是被称为“点对点”(p2p)的客户端软件-一个用来在因特网上交换数据的工具。 一个用户可以从其他用户那里得到文件,也可以把文件散发给其他的用户。
电驴和其他的点对点客户端软件的祖先是一个叫做“Napster”的mp3***享工具——尽管Napster只比电驴大几年,但是电驴 在技术上则超过了Napster。Napster使用它自己的中心服务器来把两个点连接起来,然而电驴有成百上千个这样的服务器——由单个的用户们来维持。这样的充当服务器的用户们仅需要运行一个小小的程序并***享出他们几KB 字节的因特网连接,就可以为成百上千甚至更多的其它用户服务。在这个强大而分散的网络的支持下,电驴甚至 可以经得起愤怒的好莱坞制片商们RIAA的司法攻击。因为某些原因,他们想要限制不经控制的信息流……
当你在电驴上发布文件的时候,你实际连接的那个服务器得到文件的“身份”(hash)并把它写到一个清单里——如果文件被 一个以上的用户***享,服务器会意识到这一点——一个用户可以同时从所有的该文件的拥有者那里下载这个文件——你下载 9兆的“块”,整个文件的不同部分被加到一个“.part”文件里——该文件表示了你原来要下载的文件(因此它跟该文件有着 同样的大小)——当收到所有的部分后,这个.part文件被重命名为原来的文件并被移动到incoming文件夹。这样,你就可以 从不同的人那里当“块”下来——象从一个用户那里下载一样,但是速度却要快得多。
用户Z拥有整个的“文件1”——“abcedfgh”代表这个文件的分割开的“块”,这样,当用户Y从用户Z那里当“块f”的时候,用户 X和Y正在交换块g和a,——用户W此时并没有文件的任一部分,但是一当他完整地接到“块g”后,他会马上把它***享给其他用户—— 这样就保证了最快速的文件的分布。
当你想找到某个特定的文件的时候,你可以用搜索功能(你的客户端把你要搜索的文件的名字发送到你连上的那个服务器上,服务器会察看它的清单,当该文件可用的时候,它把该文件的特定的属性返回到客户端并告诉它拥有该文件的客户端机器“ID”。
这是一个告诉你网络的工作流程的示例性图表,你可以看见客户端是如何与服务器和其他客户端通信的——唯一一个被遗漏的连接是服务器之间的通信。
服务器清单是你的电驴目录下的一个文件,被称为"server.met"——这个文件包括了电驴服务器的IP和名字。当你连接到服务器,发送搜索请求 到你连接的那个服务器,以及,如果需要的话发送扩展搜索请求到别的服务器的时候要用到这个文件。在因特网上有一些永久保持更新的服务器清单, 其中之一可以在http://ed2k.2x4u.de/list.html找到。
大多数的服务器都是由象你一样的用户来操作的,大部分都是由ADSL动态IP来连接到因特网。这就是说,他们的IP(用来标识某个用户的 “因特网定位”的地址——每人都有IP)每24小时都要改变——比如说,在你的服务器清单上有一个IP为213.45.65.71的服务器,明天它可能 (大多数情况下)会变得完全不一样——你的客户端只知道在server.met中有的IP,因此它会找不到上面所说的那样的服务器了。 结论:你必须有规律地更新你的服务器列表——你可以手工点击上面描述的更新过的服务器列表中的链接,或者运行一个自动更新器, 你可以在"tools"(工具)部分找到,自动更新器会自动地从“更新过的服务器列表”里得到server.met。
你现在知道电驴是什么,文件的散布是怎么工作的,你怎么发送搜索请求,并且对服务器怎样工作也有了基本的了解——但是你还不知道 你会上传文件来保持网络的运转:这是电驴工作的基本原理(也是文件***享的概念):人人为我,我为人人!这也就是说: 其它的用户会从你的硬盘上当文件——就象你当他们的一样!***享文件是必需的,每个人都必须***享出文件,这样才能从网络中得到最多! 明显地,如果有些人认为他们应该对自己的硬盘吝啬一点(显而易见,在硬盘上有剩余空间是非常有用的 ;-))或者对上传的带宽 吝啬一点,因此把上传带宽限制到低于可能达到的值的话,整个网络都会受损——最大的可用下载速度等于最大上传速度之和 ——如果你不上传,你自己也会损失。所以,在你的硬盘上建立一个目录,把已经下载的文件放在这里并且***享此目录。