【教学】什么是KAD
本文转自牛过,作者是:aquayhy
*************************************************
http://www.niuguo.net/forum/topi ... amp;age=0&bpg=1
有人贴,我大致看了一下,应该来说,写的不是很难,当然了…………我英语差,并不能完全看明白
http://forum.emule-project.net/index.php?showtopic=39273
1楼的帖子,不翻译了~~
2楼的帖子,不翻译了~~
3楼的帖子,也不想翻译了…………如果不翻译,就不用翻译了
First a comparison and contrast between ed2k and Kademlia:
首先比较一下ED2K和KAD
Ed2k is a protocol to index the existences of shareable files in private computers. It employs the server-client model, in which the servers facilitate the indexing and the clients privately handle the file transfers between themselves.
大致意思是:ED2K是一个协议,在这个协议下面,文件存放在私人计算机中,通过服务器-客户端的模式,服务器对文件进行索引,客户负责互相传送。
Kademlia is a protocol that removes the need to have servers acting as indexers. All computers involved are nodes of equal rank, and they act as peers in distributing the load of indexing shareable files through the network.
KAD是这样一个协议:它可以不依靠服务器来索引,每个连接进来的计算机都是平等的节点。他们都可以在互联网承担传递共享文件的索引的工作。
As a protocol specification, Kademlia is as described above. Like Ed2k, it does not specify how the nodes themselves handle the file transfers between interested parties.
作为一个协议的规范,KAD就像上面写的那样,和ED2K一样,它并没有指定具体怎么实现节点之间互相传送文件
As it so happens, the current eMule open-source application (v0.30e) is officially a client application on the Ed2k network; i.e., when run, it acts as a client in an Ed2k network. That means it connects to a server (which connects to other servers) which indexes shareable files for the clients it serves.
所以,现在的ED2K是这样工作的,现在的V0.3E版EM,作为一个客户端连接到ED2K网络上面,意思是说:它连接到一个服务器(这个服务器连接到另外一个服务器),这个服务器对客户端共享的文件进行索引。
But that's only half of eMule. The other half is its implementation of MFTP (multisource file transmission protocol), which enables it (as well as others) to transfer files to and from other willing parties.
但是这仅仅是EM的一半作用,另外一半是MFTP(多源文件传送协议),它使文件可以在进到EM网络的客户端之间传来传去。
Now, Kademlia, when it is implemented into eMule--let's call it "Kamulia"--will make eMule a three-protocol application: Two file-indexing protocols and one file-transfer protocol.
现在,Kademlia(我们也喊它Kamulia),被添加到EM中,em就成为一个3协议的工具:两个文件索引协议,和一个文件传送协议。
It means that "Kamulia" has the choice to be either a client in the Ed2k network, or a node in the serverless Kademlia network, or both. And it can exchange files with other clients or other nodes with the same file-transfer protocol.
这就意味着Kamulia既可以作为ED2K网络的一个客户端也可以作为无服务器的KAD网络的一个节点。他们直接可以使用相同的协议和其他的客户和节点直接进行文件的交换
Why another file-indexing protocol? Kademlia has no practical limit on the size of its network of nodes while Ed2k may be nearing its potential capacity in the number of clients per server. Because of its distributed nature, Kademlia is also more immunized from certain Internet denial-of-service attacks, for which Ed2k servers may be much more susceptible. The indexing of shareable files is always global with Kademlia, while indexing is always local to Ed2k servers. So, querying for a source file or a keyword search is a one-step process in Kademlia (albeit, distributively). By contrast, a global search on in Ed2k entails querying separately all active and connected servers.
为什么要弄另外一个文件索引协议?因为KAD将不受现在网络模式的限制:ED2K一个服务器上面的人数有限制,可以不受互联网运行商的封锁,也不怕ED2K服务器会出问题等等…………
If you wish to understand more of how Kademlia works, in a far less technical language, I recommend you invest some time to read here. It may be worth your while to understand and be really involved in something interesting, novel, and brand new.
如果你想更好的理解KAD的工作方式,不看专业术语,推荐你们去读这个
http://forum.emule-project.net/i ... pic=32335&st=20
(后面的看上去没有什么东西了,不翻译了)
Speculation on the exciting future of eMule: Many new shareable files are now rapidly getting larger and may soon exceed the hard-limit of 4 gigabytes that is specified in MFTP. So, it's within the realm of possibility to imagine another file-transfer protocol being soon implemented in eMule to complement the new "Kamulia."
思考现在EM的未来,现在有更多的新文件共享进入EM的网络,也许很快就超过了MFTP协议的4G容量限制。所以可以预见,很快将会有其他的文件协议被添加到EM,来补充新的Kamulia.
[
本帖最后由 韩千惠 于 2006-6-6 16:58 编辑 ]