1

我想在 C 中创建一个允许两个用户共享文件的应用程序。我将把发送文件的人称为服务器,将接收者称为客户端。有几个要求:

  • 用户不需要身份证明,不需要“登录”。你可以说他们对我的申请是未知的。
  • 服务器选择一个文件进行传输,并返回一个简单的约 10 个字符的 ID 字符串/哈希,客户端可以使用它来检索文件。
  • 相同的应用程序用于服务和接收。
  • 我的应用程序必须不需要在远程服务器上运行的专用软件,除非它是免费可用的(例如 bittorrent 跟踪器)。

现在这听起来很像 bittorrent,我正在认真考虑通过 bittorrent 来做这件事。我不确定我会怎么做。有没有用于种子创建/播种/下载的好库?

请通过以下任一方式回答此问题:

  • 为 bittorrent / 其他想法提供可行的替代方案。
  • 在 C 中发布好的库 / 片段 / 实现 bittorrent 协议。
4

3 回答 3

0

这听起来确实像是用 BitTorrent 做的最好的事情。你看过libbt吗?它没有很好的文档记录,但包含一个示例客户端,它是 /src/ 中的 btget.c。

于 2011-01-11T11:45:16.753 回答
0

我现在找到了这个库:rasterbar libtorrent。它在 C++ 中,但我不介意(反正我也不太了解)。

如果其他人正在寻找与我相同的东西,请在这里分享以供将来参考。

于 2011-01-13T19:31:45.347 回答
0

另一个解决方案是通过 IRC 服务器(如 Freenode)发送文件。在使用 bittorrent 打开端口时遇到问题后,我想出了这个解决方案。

于 2011-01-13T22:27:47.710 回答