问题
I am looking for a tutorial/blog post on how to implement bittorrent protocol step by step. How it works? How do you make requests to peers? and talk to trackers.
I do not mind the programming language (java,ruby,perl,c#)
回答1:
the complete description of bittorrent protocol:
http://jonas.nitro.dk/bittorrent/bittorrent-rfc.html
回答2:
There is the libtorrent library.
Here's the API documentation and examples.
回答3:
I'd suggest you look at the spec and sources of some OSS clients. You'll have to do some work, but that's how programming works.
回答4:
This is good source http://www.kristenwidman.com/blog/how-to-write-a-bittorrent-client-part-1/ She explains the process step by step...
回答5:
I'm currently implementing a BitTorrent client in Java using this specification.
回答6:
Qt is very easy to read so you can read the Qt Torrent Example (C++)
回答7:
This is a implementation of the bittorrent protocol done in .NET. Its source code is available on github and it has documentation
Monotorrent
回答8:
Implementing the protocol is not that hard by following the specs. However, there are lots of internal things like storage, scalable server, peer/piece pick algorithm, etc.
Earlier BitTorrent implementation or BitTornado used python, which is easy to read. I personally found them useful to understand the internals.
来源:https://stackoverflow.com/questions/990677/implementing-bittorrent-protocol