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
the complete description of bittorrent protocol:
http://jonas.nitro.dk/bittorrent/bittorrent-rfc.html
There is the libtorrent library.
Here's the API documentation and examples.