我该如何制作自己的napster?哪些库是这些p2p程序使用的?我不太熟悉套接字编程的概念.你能用Qt4制作p2p程序吗?
自Napster时代以来,我一直在想这个问题.
你怎么会创造下一个"bitorrent"?这是通过使用类似的套接字库?
什么是p2p技术的最新成果?有新闻网站吗?什么是p2p的未来?
P2P或Peer-to-Peer是一种非常难以创建的程序,主要是因为它的结构非常简单.大多数互联网应用程序都是Client-Server,这是因为只要拥有一个你知道可以连接的固定服务器就可以解决很多麻烦.在一天结束时,这或多或少都是Napster所做的,它只是索引文件并说明谁正在托管它们.
创建P2P软件的另一个问题是,即使你创建了一堆虚拟计算机,也可以自己开发它,很少有同行可以测试.您将发现很难测试它缩放到00的用户.
首先,您需要学习使用合适的语言编程,例如C++或C#,可能只是将其作为控制台应用程序来学习该技术.
接下来,了解如何使用文件.如果你不能保存东西就没用多少呢.
接下来的网络 从客户端 - 服务器设置开始,只是为了掌握传输文件.制作一个提供文件的服务器应用程序和一个下载它的客户端应用程序.然后开始将其扩展到一个服务器,为许多客户端提供文件.
最后一步是合并客户端和服务器,以便在对等端下载更多文件时,它可以开始成为服务器并让其他客户端从中下载.
如果你愿意,现在你可以考虑一下GUI.
点对点共享Napster工作的方式只有当你有很多人共享文件时才有意义.这有点像鸡蛋和鸡蛋的问题,但这一切都归结为:没有人使用网络,没有人使用.社交网络等也是如此.
话虽这么说,Qt4确实包括一个支持UDP和TCP的网络模块,这是通过Internet进行通信的基础.有文件和可用示例代码在这里.
关于你的最后一个问题:我认为P2P的未来充满了痛苦和痛苦.大内容是p2p网络最常用的"功能"之后:共享音乐和电影.您的意见可能有所不同.