一个完全使用C#编写的BitTorrent客户端?

32

有没有完全使用C#编写的BitTorrent客户端(我是指完全)?

我知道用mono编写的BitTorrent客户端,我非常喜欢它。

除了MonoTorrent和BitSharp之外,还有其他正在开发中的使用C#编写的开源BitTorrent客户端吗?

只是想知道在C#程序员中,“使用C#开源比特流客户端”会产生多少兴趣。

编辑:请查看Michael Stum在http://pumpkintorrent.codeplex.com/上发布的Pumpkin Torrent。

@Michael:感谢您分享项目网址。

@Allan:感谢MonoTorrent;)


1
我一个月前开始用C#编写BitTorrent的_Tracker_,接下来会开发客户端。我不知道是否有好的C#实现,但完成后我会在一个月或两个月内添加链接。 - Michael Stum
目前能访问http://pumpkintorrent.codeplex.com/,同时我还在努力研究Tracker的相关知识和协议。B编码已完成,但是B解码还未实现。 - Michael Stum
首先,我非常喜欢monotorrent和bit sharp。我编辑了问题以改变我的语气。真诚地道歉。我只是觉得它还有很长的路要走,才能与其他开源BitTorrent客户端相媲美。是的,我是社区的一员,期待着自己编写一个。 - abhilash
1
http://pumpkintorrent.codeplex.com/ 这个链接已经失效了,我在谷歌上也找不到它。它还存在吗? - user47589
1
只是为了补充一下这个帖子,MonoTorrent对我来说不起作用,并且文档非常差。 - mellis481
显示剩余2条评论
5个回答

34

很遗憾,我没有50个声望来添加评论,所以我不得不写另一个答案。我的问题是针对以下评论提出的:

"但说实话,我觉得它还有很长的路要走才能与其他开源BitTorrent客户端齐头并进。"

您认为哪些功能缺失使其比其他库/客户端劣?包括但不限于以下功能:

  1. 100%平台无关
  2. IPV6支持
  3. 超级种子
  4. 完整的BitTorrent跟踪器
  5. DHT
  6. 点对点交流(utorrent风格)
  7. 加密
  8. 内存缓存
  9. 优先下载
  10. 选择性下载(从技术上讲,这只是优先下载的子集)
  11. 快速Peer扩展
  12. 本地对等发现
  13. 禁止列表(同时列出IP的白名单/黑名单)
  14. 磁力链接下载
  15. 终局模式
  16. Libtorrent扩展协议
  17. 速率限制(每个种子/全局)
  18. Http播种(Webseeding)- getright样式
  19. 单个文件重定位
  20. 您还想要什么 ;)

那么,这只是您没有意识到Monotorrent的全部潜力,还是缺少您认为至关重要的功能?如果是这样,欢迎贡献补丁。

"“written on mono”从来不是坏事。只是我在寻找MS .Net上的东西"

我想你误解了。 MonoTorrent/bitsharp确实可以构建并运行在MS.NET上;)您只需从SVN中检出代码,打开MonoTorrent.sln并按F5即可。

希望有所帮助。


1
@Allan,感谢您的功能列表和详细解释,我非常感激。我认为您误解了我的问题(但我认为现在是时候编辑问题以改变语气了)。是的,我知道Mono项目可以在MS.NET上运行。但再次感谢Alan! - abhilash
1
看起来你正在寻找一个功能丰富的比特流库,而monotorrent并不符合你的需求;)所以如果这不是你在寻找的,那么你在寻找什么呢?无论如何,我唯一能补充的是,monotorrent是目前唯一的开源.NET比特流库 :) - Alan
@Alan,MonoTorrent还在维护吗?文件部分在2009年更新。谢谢! - expert
@ruslan,你有没有看到monotorrent.com上最新的消息?现在源代码可以在github上获得了。没错,它还活着。 - vulcan raven
在 GitHub 上已经有四年没有更新了,而且问题越来越多,看起来可能无法在现代比特流世界中正常工作。 - Jayson Minard

22
MonoTorrent是一个很棒的客户端和服务器库。目前有一个基于GTK#编写的GUI——Monsoon,它只能在Linux上运行。如果你有时间,可以编写一个WPF GUI,或稍微修改一下将Monsoon移植到Windows上。
欲了解更多信息,请联系Alan McGovern。

12
很遗憾,MonoTorrent 没有任何形式的文档说明。 - MichaelvdNet

13

1
除了BitSharp和MonoTorrent之外,还有没有其他的东西?是否有任何基于MS .NET框架编写而不是Mono的东西? - abhilash
维基百科上没有任何关于这个的记录:http://en.wikipedia.org/wiki/List_of_BitTorrent_clients - Nick Devereaux
10
“written on Mono” 为什么是一件坏事?它可以编译成相同的 CIL。只要安装了所有依赖项,就可以在 Windows 上不作修改地运行它。或者,你可以使用后端组件并在其上构建 WinForms/WPF GUI。 - Rytmis
通过“在Windows上运行”我特指“在MS .NET上运行”。 - Rytmis
“使用Mono编写”并不是什么坏事。只是我在寻找MS .Net上的东西,感谢您的回复。 - abhilash
bitsharp是monotorrent的旧名称。 - Mahdi Youseftabar

3

同时也可以看看Hadouken - 这个项目完全使用C#编写,但是作为Windows服务运行。可能可以在Mono上运行。


它是用C++编写的,而不是C#。 - Yar
它以前是用C#编写的,但看起来创建者正在用C++重写代码。主页仍然说它是用C#编写的... - Ben H

2

你为什么认为这是基础呢? ;) 它拥有比许多其他开源(和闭源)Torrent库更高级的功能。我认为你大大低估了monotorrent所提供的东西。


我非常喜欢monotorrent。我的意思是,我真的很爱它,我承认进行比较是不公平的。但是,“先进”的意思是什么?再次强调我并没有低估monotorrent。它是一个很棒的BitTorrent客户端。 - abhilash
@Alan - 是的,真诚道歉。 - abhilash

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接