在详细了解 Gnutella 和其他 P2P 网络的功能后,我想启动自己的点对点系统。我以为我会找到大量可以应用的教程和与语言无关的指南,但是我遇到了一个模糊简单的概述。

我只能找到非常小、精确的 P2P 代码,这些代码除了对所有用户使用客户端/服务器架构之外没有做更多的事情,这并不是我真正想要的。我想要 Gnutella 之类的东西,但似乎没有任何公开的文章可以加入该网络。

有帮助吗?

解决方案

我必须使用 Web 服务用 C# 编写一个基本的 Gnutella 客户端,我认为有关 P2P 内容的课堂笔记仍然可用 这里这里.

其他提示

RFC 4981, 拥有庞大的参考书目,可能是一个非常好的起点。

你可能会在研究 Bittorrent 时取得更好的成功,我相信创建者已经写了一些论文,似乎其他人也写了。

比特霸 Bittorent.org,请参阅开发人员部分

我不知道你想使用什么平台,但这里是 关于 .NET 主题的一篇不错的文章.

我找到了 TheoryOrg 非官方 BitTorrent 规范 成为 Bittorrent 信息的最佳在线来源。此外,Monotorrent 代码相当简单且易于理解。还有一个名为“GCT”的项目,它为 LAN/多播环境实现 JGroups 风格的 P2P,其代码同样易于理解(如果有点错误)。

你可以尝试阅读 格努特拉2 并尝试实现消息传递。要阅读概念材料,您可以阅读 Andrew Tannenbaum 的《分布式系统》。

你可以看看 JXTA. 。它的目的是成为一个通用的、与平台无关的 p2p 框架,与通常用于特定目的的其他 p2p 实现(例如 Gnutella)形成鲜明对比。

不要被它的 Java 外观所迷惑,它有可用于 C/C++/C# 的绑定,但核心协议是用 XML 实现的,它应该可以转换为任何语言。

您还可以下载免费书籍 这里.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top