I'm planning to create a small bittorrent client. I want this one to be my school project. Someone said it is really hard to create. Is it true?
I want to make it very simple. Anyone here knows where should I start?
Printable View
I'm planning to create a small bittorrent client. I want this one to be my school project. Someone said it is really hard to create. Is it true?
I want to make it very simple. Anyone here knows where should I start?
Well, I suppose the first steps would be to learn network programming (are you familiar with it?) and getting familiar with the bittorent protocol (there should be some links on google?).
Nope. I'm not familiar with network programming but I'm willing to study it. What's with the bittorrent protocol? Is it different from network programming itself? Is it a library or something?
Thanks
The bittorent protocol specifies how bittorrent works.
Yes, if hard == lot of work. Learning networking and protocols is no small task. Once you're past that stage it's not all that complicated, but does involve a fair amount of work if you want all the features.
That's why you don't reinvent the wheel. Check out the libtorrent library; it's amazing.
The libTorrent and rTorrent Project
I've seen custom implementations of the bittorrent protocol by professional companies (Blizzard's downloader) and often times they fail in comparison to a simple libtorrent application.
It's also not "hard." With libtorrent you're working at a higher level and don't have to learn the bittorrent protocol, but it helps to know what it is and how it's working for you.
BitTorrent (protocol) - Wikipedia, the free encyclopedia