I may need to set up a program to manage torrents and since I only know how to download them using a client I figure I should learn how they work.
Anyone have any tutorials or articles on how these infamous torrents work?
Printable View
I may need to set up a program to manage torrents and since I only know how to download them using a client I figure I should learn how they work.
Anyone have any tutorials or articles on how these infamous torrents work?
BitTorrent is actually a protocol, it was created to address the bandwidth problem associated with high demand downloads.
Normally should you want someone to download a program you have made, you will host it on a server for your users. However, the more popular your program becomes and the more people downloading the slower it becomes for those downloading it.
BitTorrent addresses this problem by allowing the host to publish the file. Once people start downloading the file, BitTorrent splits it up into lots of pieces and during the download users also upload the file to other people downloading it. This in effect shares the download among multiple hosts. Therefore, the more people downloading the file, the quicker it will download for each individual, conversly however, if no one is downloading the file then it is limited to the bandiwdth of the server the file was published on.
http://www.bittorrent.com/guide.html
Thanks for your reply.
I em however looking for more indepth information than that. I figured that out pretty much myself since it is a minor advancement on the p2p multiple source idea.
I em looking for how and what the trackers do, how they operate, what their goals are.
- What scraping is
- the exact pipeline of exchange between clients, the tracker, other clients
Someone out there must have written a technical document on these things.
I do not need to write a downloader of torrents but I do need to write a program to manage a database of torrents via the internet.
This is the official specification, its on the same site I gave you in the previous post. You have all the info you need there to create a BitTorrent application ;)
http://www.bittorrent.com/protocol.html
http://www.bittorrent.com/bittorrentecon.pdf
Exactly what I wanted, thank you.