创建P2P /分散式文件共享网络

Par*_*ker 7 networking p2p file-sharing

我想知道在哪里可以了解更多关于分散式共享和P2P网络的信息.理想情况下,我想创建一些东西来帮助学生通过他们的大学网络彼此共享文件,这样他们就可以分享而不用担心外部实体.

我不打算在这里建立下一个Napster,只是想知道这个想法是否可行.是否有任何开源P2P网络可以调整,以做我想要的?

Cam*_*tin 3

基本上你需要一个服务器(嗯,你不需要服务器,但它会让它变得更简单)来在文件哈希列表等其他东西之间存储用户IP。
该服务器可以在你想要的任何环境中(其中很舒服)。

然后,每个客户端连接到服务器(它应该有一个dns,它可以是免费的,我曾经使用过no-ip.com一次)并首先发送基本信息(例如它的IP和文件哈希列表) ,然后时不时地发送一些内容(比如每 5 分钟或更短时间)来报告它仍然可以访问。

当客户端搜索文件/用户时,它只是询问服务器。

这是一个集中式网络,但文件共享将在 p2p 客户端到客户端连接中完成。
这样做的原因是,如果没有一些参考,您就无法知道要连接的 IP。

只是为了澄清这个服务器问题:
- 种子使用跟踪器
- eMule 的 ED2K 使用lugdunum 服务器
- eMule 的“真正的 p2p”Kademlia 使用已知节点(客户端)(大部分时间都是从这样的服务器获取的)。