3 ms·
How to Write a BitTorrent Client, Part 1
- cheatdeath 10y agoI recently went through the same thing – building my own simple BitTorrent client, mostly just due to curiosity about how the protocol works. There were some tricky parts, most of which are outlined in this but I found the underlying concept so simple. I guess simplicity is a requirement for scale and resilience. I wrote up my adventure too: http://seanjoflynn.com/research/bittorrent.html http://seanjoflynn.com/research/bittorrent.html
- andreicon 10y agothis is actually pretty cool. i think cryptocurrencies could benefit from the implementation of some design features from the bittorrent protocol.
- SlashmanX 10y agoFeross has some great implementations of the different pieces of BitTorrent (including parsing torrent files, magnets etc) in JavaScript on his GitHub[0]. Would recommend people take a look if they find this blog post interesting. [0] - https://github.com/feross?tab=repositories https://github.com/feross?tab=repositories
- joeblau 10y agoThis is something that's been on my list of things to do for a while and I've never gotten around to it. Thanks for this post.
- Vojislav_Dabic 10y agoIllegal
- emodendroket 10y agoWhat part of this do you think is illegal?
- zielmicha 10y agoFor "Writing BitTorrent Client" workshops I've made, I have created "introductory" tracker and peers (they, for example, display friendly errors if you make invalid protocol requests): https://torrent.zielmicha.com/ https://torrent.zielmicha.com/ The source is on Github: https://github.com/zielmicha/torrent-workshops https://github.com/zielmicha/torrent-workshops (unfortunately you need to register before using it, but you can even use fake mail)
- allenkim6 10y agoIf anyone is interested in a similar writeup for a bittorrrent client for node.js, check out my tutorial here: http://allenkim67.github.io/bittorrent/2016/05/04/how-to-make-your-own-bittorrent-client.html http://allenkim67.github.io/bittorrent/2016/05/04/how-to-mak...
- siculars 10y agoLove! Thanks!