研究kademlia有1年半了,
搜集过很多的资料,只是都被我不小心删除掉了,这里发布一些经典的资料。KadC:一个比较经典的C实现的kademlia协议KadC:http://kadc.sourceforge.net/ 下载链接, 不过目前这个库已经很久没有人更新了,这个库实现了kademlia协议几乎全部的内容,但是有一个关键的部分没有实现,就是存储发布信息,即发布信息是 可以成功的,但是目标节点并没有存储这些信息,因此在成功发布之后不能搜索到发布的内容,这个实现运行于Linux平台,windows下可以用 cygwin或者mingw模拟运行。
emule:电骡是我研究时间比较长的一个东东,开源的,软件下载地址,源码下载地址,目前最新版本是0.48a,我看得主要是0.47c的源码,然后前一阵 verycd除了一个easyemule,easyemule源码,算是emule的mod吧,还比较适合国内用,加入了反吸血,不过我还没有怎么仔细看源码,对于emule这个东东,我也发布过几篇学习的文章:emule中节点加入Kad网络过程(源代码详解) emule中kad网络深入解析。与emule(windows平台)类似的有linux下的amule。sharaza实现了多种 协议,其中包括kademlia协议。
revconnect:这个东东也很厉害,也是p2p的文件共享基于DC++, 但是结果呈现的方式和emule的完全不同,第一次看到它的呈现方式时觉得确实不错(相比较于emule),这个东东相当于是internet上的网络邻 居,呵呵,不过在国内不太流行,用户不太多,国外用户还是很多的,源码写的也很不错,底层同样是基于kademlia协议。
我主要就是看了这三个项目,其中前两个的源码仔细研究过,不过emule的代码确实有点复杂,到现在我只能说能够将kademlia模块弄出来做些应用。
下面共享一些我机器里的资源:
Kademlia: A Peer-to-peer Information System Based on the XOR Metric,这是kadmelia协议提出者发表的
,呵呵scrolling="no" src="http://cid-72a2a08f90f7ca43.skydrive.live.com/embedrowdetail.aspx/p2p/kademlia/kpos.pdf" marginheight="0" marginwidth="0" style="border: 1px solid rgb(221, 229, 233); margin: 3px; padding: 0px; width: 240px; height: 66px; background-color: rgb(255, 255, 255);">
kademlia协议原理简介:这是国内一个高人写的,不错
scrolling="no" src="http://cid-72a2a08f90f7ca43.skydrive.live.com/embedrowdetail.aspx/p2p/kademlia/Kademlia%e5%8d%8f%e8%ae%ae%e5%8e%9f%e7%90%86%e7%ae%80%e4%bb%8bV1_1.pdf" marginheight="0" marginwidth="0" style="border: 1px solid rgb(221, 229, 233); margin: 3px; padding: 0px; width: 240px; height: 66px; background-color: rgb(255, 255, 255);">
emule 0.47a source:0.47a vc8的源码,已经包含相关的库了。
scrolling="no" src="http://cid-72a2a08f90f7ca43.skydrive.live.com/embedrowdetail.aspx/p2p/kademlia/eMule-0.47a-Export2.rar" marginheight="0" marginwidth="0" style="border: 1px solid rgb(221, 229, 233); margin: 3px; padding: 0px; width: 240px; height: 66px; background-color: rgb(255, 255, 255);">
revconnect中kademlia库的源码
scrolling="no" src="http://cid-72a2a08f90f7ca43.skydrive.live.com/embedrowdetail.aspx/p2p/kademlia/Kademlia%20for%20revconnect.rar" marginheight="0" marginwidth="0" style="border: 1px solid rgb(221, 229, 233); margin: 3px; padding: 0px; width: 240px; height: 66px; background-color: rgb(255, 255, 255);">
revconnect 0.674p的源码
scrolling="no" src="http://cid-72a2a08f90f7ca43.skydrive.live.com/embedrowdetail.aspx/p2p/kademlia/revconnect-0.674p-src.zip" marginheight="0" marginwidth="0" style="border: 1px solid rgb(221, 229, 233); margin: 3px; padding: 0px; width: 240px; height: 66px; background-color: rgb(255, 255, 255);">
A performance evaluation of the kad-protocol.pdf:这是法国的一篇硕士论文,对emule中的kademlia协议做了比较详细的分析。
scrolling="no" src="http://cid-72a2a08f90f7ca43.skydrive.live.com/embedrowdetail.aspx/p2p/kademlia/A%20performance%20evaluation%20of%20the%20kad-protocol.pdf" marginheight="0" marginwidth="0" style="border: 1px solid rgb(221, 229, 233); margin: 3px; padding: 0px; width: 240px; height: 66px; background-color: rgb(255, 255, 255);">
An Analysis of BitTorrent's Two Kademlia-Based DHTs.pdf:分析bt中使用的kademlia协议的缺点,并提出了一些改进方法。
scrolling="no" src="http://cid-72a2a08f90f7ca43.skydrive.live.com/embedrowdetail.aspx/p2p/kademlia/An%20Analysis%20of%20BitTorrent%e2%80%99s%20Two%20Kademlia-Based%20DHTs.pdf" marginheight="0" marginwidth="0" style="border: 1px solid rgb(221, 229, 233); margin: 3px; padding: 0px; width: 240px; height: 66px; background-color: rgb(255, 255, 255);">
Analytical Study on Improving Lookup Performance of Distributed Hash Table Systems under Churn.pdf:分析了在churn(即网络拓扑动态变化较大)情况下DHT的查询性能,以kademlia协议为代表。
scrolling="no" src="http://cid-72a2a08f90f7ca43.skydrive.live.com/embedrowdetail.aspx/p2p/kademlia/Analytical%20Study%20on%20Improving%20Lookup%20Performance%20of%20Distributed%20Hash%20Table%20Systems%20under%20Churn.pdf" marginheight="0" marginwidth="0" style="border: 1px solid rgb(221, 229, 233); margin: 3px; padding: 0px; width: 240px; height: 66px; background-color: rgb(255, 255, 255);">
Improving lookup performance over a widely-deployed dht .pdf:对kademlia协议进行优化的文章
scrolling="no" src="http://cid-72a2a08f90f7ca43.skydrive.live.com/embedrowdetail.aspx/p2p/kademlia/Improving%20lookup%20performance%20over%20a%20widely-deployed%20dht%20.pdf" marginheight="0" marginwidth="0" style="border: 1px solid rgb(221, 229, 233); margin: 3px; padding: 0px; width: 240px; height: 66px; background-color: rgb(255, 255, 255);">
Improving the Performance and Robustness of Kademlia-based Overlay Networks.pdf:kademlia协议优化
scrolling="no" src="http://cid-72a2a08f90f7ca43.skydrive.live.com/embedrowdetail.aspx/p2p/kademlia/Improving%20the%20Performance%20and%20Robustness%20of%20Kademlia-based%20Overlay%20Networks.pdf" marginheight="0" marginwidth="0" style="border: 1px solid rgb(221, 229, 233); margin: 3px; padding: 0px; width: 240px; height: 66px; background-color: rgb(255, 255, 255);">
<script src="http://blog.yo2.cn/images/wz/wz.js" type="text/javascript"></script>