打印

电驴技术&心得精彩文章一览

0
第十篇:关于KAD网络的一些解释

eMule官方网站于2004年2月27日正式发布Kademlia官方版本:eMule v0.42b。这个版本的主要新增功能就是支持Kademlia network(简称Kad)。

eMule以前版本连接的是传统 eD2k network,该网络的特点是用户运行eMule时,首先连结到一个服务器,通过该服务器用户连结到其它Clients进行下载。

对于Kad,用户不需要连结服务器,而是直接连结到Clients。因此,Kad也被称之为Serverless network(无服务器网络)。Kad具有传统eD2k所不具备的优势,虽然还处于开发阶段,但从长远角度看,Kad将更具发展潜力。

eMule v0.42b版本同时支持传统eD2k以及Kad。安装后用户可以从连结选项 中自行选择使用或不使用Kad,也可以两者同时使用。现有ED链接对两种network完全通用。进行文件搜索时,需要选择 kad (对应Kademlia) 或 server (对应eD2k)。这一版本目前还存在一定的问题,主要是系统资源占用量较老版本有所加大,另外存在一定程度的Memory Leak(内存泄漏)。


Kademlia 网路的详细解释

基本上,Kademlia不是一個網路,是一個很熱門的技術,通稱為DHT (Distributed Hash Table 分散式雜湊表)。Kademlia雖說不是DHT中最好的,但是已經相當不錯,而且很新。DHT有很多應用,但是P2P可能是其中最重要的。因為它可以讓 P2P網路,完全不必使用伺服器。目前我所知道的網路,大概只有Freenet和早期的Gnutella沒有類似伺服器的東西。其他的網路,舉凡 Fasttrack,eDonkey,OpenNap,WinMX等等,都有類似伺服器的東西。但是前兩者的著名問題是效率不彰,因此DHT就可以幫助解決這個問題。另外沒有伺服器的好處,一是不怕伺服器被有關單位查禁,二是可以讓更多人連上P2P網路。像Overnet就是使用Kademlia技術的純 P2P網路,但是eMule Kademlia並沒有和Overnet相容,聽說是eMule的設計師認為Overnet不夠好,所以把Overnet不好的地方修改了。總之,Overnet/eMule Kademlia都是基於Kademlia的網路,只是eMule並沒有發明另一個新名稱罷了。至於哪個會成功,我個人看好eMule,因為 eDonkey網路上超過7成以上使用eMule。Overnet雖然問世超過1年,但是使用人數始終無法站上百萬。如果eMule Kademlia能把使用者帶進來,我想基於純P2P的好處,eMule Kademlia網路可能超過5百萬,超過Fasttrack的極盛時期。

kad网络是一种根本不需要服务器的架构,每个emule客户端负责处理一小部分search和source finding的工作。分配工作的原理是基于客户端的唯一id和search或者source的hash之间的匹配来决定。比如说LordOfRing1.avi这个文件由用户abc来负责(通过文件的hash决定),则任何用户共享这个文件的时候都会告诉用户abc我有这个文件,其他用户去下载这个文件的时候也会询问abc,abc告诉他们谁有这个文件,source finding就完成了。search的方法也差不多,每个人负责一个keyword。

至于如何找到用户abc则是通过一种将用户id异或的方式,两个id的二进制异或值决定他们之间的逻辑距离,比如1100距离1101要比距离1001近。当一个哟用户加入kad后,首先通过一个已知的用户找到一批用户的id和ip:port。当此用户A要寻找某特定用户x时,A先询问几个已知的逻辑距离X较近的用户,如x1,x2,x3,x1,x2,x3会告诉A他们知道的更加近的用户的id,ip和port,一次类推,A最终就能找到X。寻找的次数应该在logN数量级,N是总人数

[ 本帖最后由 jameszy 于 2006-1-17 11:13 AM 编辑 ]

TOP

0
[转贴]优化eMule, 降低CPU和资源使用率(推荐)


通过下面一些设置可以使eMule耗用更少的资源。点击“ 选项 ”开始进行如下设置。

常规:

1) 不要选中 “显示欢迎窗口”

显示:

1) “进度条样式”滑动至扁平。
2) 不要选中 “在标题栏中显示传输比例”。
3) 不要选中 “在分类标签上显示下载信息”。
4) 选中 “禁用已知客户列表”。
5) 选中 “禁用排队列表”。
6) 选中 “更改尺寸后不重建统计图形”。

连接:

1) 不要选中 “显示额外开销的带宽”。
2) 根据你的网络连接情况填写合适的上传和下载数据。

服务器:

1) 选中 “移除无响应服务器,在1次重试后”。

设置统计信息显示:

1) 增加时间间隔 (图形更新间隔,统计信息树更新间隔)。
2) 如果你根本不需要这些图形,你可以把图形更新间隔滑动至最左边来禁用它。
3) 如果你根本不需要这些统计,你可以把统计信息树更新间隔滑动至最左边来禁用它。

扩展设置:

1) 不要选中 “详细(额外的程序反馈)”。
2) 把 “队列大小”滑动至最左边。

下载文件的数量:

不要同时下载大量的文件。eMule 不得不尝试同时处理大量文件和源,这可能会导致你被服务器禁止。

TOP

0
哥们的好东西,应该推广才是,大力支持兄台。

TOP

0
楼猪表现可以的,淫民永远支持泥!!!!!!!!

TOP

0
好详细,谢谢楼主分享!!顶!

TOP

0
小弟刚刚下了一个电驴的软件在老大这学到相关知识真是大长见识老大万富金安

TOP

0
这么长啊,要看完还真要有点耐心,只看了一半就烦了,呵呵

TOP

0

谢谢 非常 喜欢 这个论坛

谢谢 非常 喜欢 这个论坛谢谢 非常 喜欢 这个论坛谢谢 非常 喜欢 这个论坛谢谢 非常 喜欢 这个论坛谢谢 非常 喜欢 这个论坛谢谢 非常 喜欢 这个论坛谢谢 非常 喜欢 这个论坛

TOP

0
有帮助.谢谢楼主了!

TOP

0
随着一声『财神到』,天上掉下个馅饼砸到你头上,你获得了『财神爷』赠送的4个分
感谢无私伟大的楼主!

TOP

当前时区 GMT+8, 现在时间是 2024-5-12 15:31