【问题标题】:Simple file transfer简单的文件传输
【发布时间】:2011-01-11 11:11:29
【问题描述】:

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

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

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

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

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

【问题讨论】:

  • 如果你只是在 2 方之间传输文件,这听起来很像 bittorrent。

标签: c bittorrent transfer


【解决方案1】:

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

【讨论】:

  • 是的,我已经找到了,但我仍在寻找替代品,原因有两个:文档错误和 GPL。
【解决方案2】:

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

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

【讨论】:

  • 讨厌。谁想出了这些可笑的 C++ 接口?
【解决方案3】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-26
    • 2011-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-16
    • 2020-12-05
    相关资源
    最近更新 更多