Saturday, January 22, 2005

Dot Net Rocks, Mondays, BitTorrent 'n' stuff...

I've been vaguely aware of BitTorrent as a filesharing type system for a while now. There are a few reasons I haven't been using it, though:

  1. I didn't really know anything about how it works
  2. What I know of filesharing utilities I don't really like, As far as I can tell, they're veritable feasts of security holes and spyware. At least the slightly dubious ones are, and I didn't really know of any un-dubious ones
  3. I'd never seen it applied in a productive way. At the risk of sounding like an old man, the only applications I'd heard of for it revolved around movies and porn. And both.
  4. I never really saw a need for it when we've got FTP and other protocols out there which are perfectly capable of pulling files at my maximum connection speed

However, I've just been listening to DotNetRocks where the team there seem to rate it quite highly.

They rate it so highly, in fact, that Carl and Geoff have a demo video on how to install and use their BitTorrent client of choice, Azureus. Having seen it in action, I actually think it looks like quite a cool thing.

Essentially the way BitTorrent works is this: When you go to download a file, as well as looking for it on the original server, it also finds other machines online that are downloading that file as well. What it then does is pulls down bits of the file from each of these different machines. With the load being shared by all these connections, it shares the bandwidth over the lot.

At the same time, however, it also uploads bits of the file that it's already collected to other computers that request it. So you get this whole 'swarm' download thing going on. The end result is faster downloads. The other benefit of doing this is that (in direct contrast to the normal thing of all clients downloading from one server) the more clients you have downloading a file at once, the faster it'll be, since it'll have more places to download parts of the file from simultaneously.

Where this becomes most relevant is in automatic content stuff like, for example, podcasting (I'm not a big podcaster. I'm not even a small one. My computer & music habits aren't really suited to it.). I only mention podcasting because it's the only context I've seen it used to demonstrate this. But if you happen to have 12 million people who all schedule their podcasting clients to retrieve new content on the hour, each and every one of them will have 11,999,999 peers to pull bits of the file from. Rather than slowing everything right down as the server is flooded, everything gets faster as more people are there to share the download.

Cool huh?

I'm not rushing out and installing Azureus just yet, though. I want to have a bit of a deeper look into security 'n' stuff around it. And it's just gone 3 am, so I haven't got time to go into it now.

I'll get round to it this weekend, though. Mrs Mawoo's out tomorrow, so I'll be able to get it sorted. I could do with having it up and running to download Mondays. Carl's having some bandwidth issues right now, so downloads are coming in reeeaaallllyyyy slow. It'll be interesting to see a comparison, though (assuming there are some other people online to share the load etc...)

Just wanted to share. Time for bed.

No comments: