为什么点对点编程是一个很难获得好的研究的课题?

时间:2020-03-05 18:42:19  来源:igfitidea点击:

在阅读了有关Gnutella和其他P2P网络如何工作的更多信息之后,我想启动我自己的对等系统。我一直以为我会找到很多可以应用的教程和与语言无关的指南,但是我遇到了一个含糊不清的简单概述。

我只能找到非常小的,精确的P2P代码,除了对所有用户使用客户端/服务器体系结构外,所做的工作不多,这并不是我真正想要的。我想要Gnutella之类的东西,但似乎没有公开发表有关加入该网络的文章。

解决方案

回答

我们可能会在研究Bittorrent上获得更好的成功,我相信创建者已经写了一些论文,而且看来其他论文也是如此。

比特暴君
Bittorent.org,请参阅"开发人员"部分

回答

我不知道我们要使用哪种平台,但这是有关.NET的不错的文章。

回答

我不得不在Cusing Web Services中编写一个基本的Gnutella客户端,并且我认为有关P2P内容的类说明仍然可以在此处和此处获得。

回答

我发现TheoryOrg非官方的BitTorrent规范是Bittorrent信息的最佳在线来源。另外,Monotorrent代码非常简单易懂。还有一个名为" GCT"的项目,该项目在LAN /多播环境中实现JGroups风格的P2P,其代码也同样易于理解(如果有问题)。

回答

我们可以尝试阅读Gnutella2并尝试实现消息传递。为了阅读概念性材料,我们可以阅读Andrew Tannenbaum的Distributed Systems。

回答

我们可以看一下JXTA。与通常用于特定目的(例如Gnutella)的其他p2p实现相反,它的目的是成为一个通用的,与平台无关的p2p框架。

不要被Java的外观迷住了,C / C ++ / C#有可用的绑定,但是核心协议是用XML实现的,应该可以翻译成任何语言。

我们也可以在这里下载免费的书。

回答

带有大量书目的RFC 4981可能是一个很好的起点。