如何在 2 个设备之间建立 p2p 连接,例如 torrent

How to build a p2p connection between 2 devices like torrent

我想构建一个包含 2 个或更多设备的系统。系统内的设备可以通过p2p方式相互发送文件,不通过服务器(发送的文件不上传到服务器)

为了清楚起见,假设我的系统有 2 台 PC 放置在 2 个不同的地方(不是 LAN 网络,也没有静态 ip),它们可以在没有服务器的情况下通过互联网相互共享文件。我不想将共享文件上传到服务器(不需要时间和内存)。

当然我的系统仍然会有一个服务器和一个数据库,它们将存储数据并通过套接字在两个设备之间传输一些重要信息。

我在网上查了很多,找到的都是种子网络。不知道怎么搭建torrent这样的系统

我还没有决定使用哪种语言或框架 (Java, C#, Python, NodeJS)。 欢迎任何关于教程、语言、库、框架的建议。

谢谢大家

既然有服务器,那就简单多了。

  1. 用你的服务器搭建ICE结构做NAT穿越

  2. 您在寻找其他节点时,可能需要一些机器来释放服务器的压力,所以LSD和DHT都是推荐的。

  3. 用peer wire协议发送文件真好

有一个开源项目 libtorrent 可能对您有用。我认为你可以只使用它的一部分来实现你的设计。至于语言,libtorrent是用C++写的,但不是很重要