实施Bittorrent协议

我正在寻找教程/博客文章,如何一步一步实现bittorrent协议。 怎么运行的? 你如何向同侪请求? 并跟踪跟踪器。

我不介意编程语言(Java,ruby,Perl,C#)

bittorrent协议的完整描述:

http://jonas.nitro.dk/bittorrent/bittorrent-rfc.html

有libtorrent库。

这里是API文档和示例 。

我目前正在使用这个规范在Java中实现一个BitTorrent客户端。

我build议你看看一些OSS客户端的规格和来源。 你将不得不做一些工作,但这是编程的工作原理。

Qt很容易阅读,所以你可以阅读Qt Torrent示例 (C ++)

这是在.NET中完成的bittorrent协议的实现。 它的源代码在github上可用,它有文档

Monotorrent

按照规范执行协议并不难。 然而,存储,可伸缩服务器,对等/挑选algorithm等内部的东西很多。

较早的BitTorrent实现或BitTornado使用Python,这是很容易阅读。 我个人发现它们对理解内部是有用的。