Sunday, December 12, 2004

BitTorrent - better to give than receive (b/width)

BitTorrent's great, but it's not perfect. It's only really worthwhile for larger files, and once you've downloaded the file what incentive is there to keep your client open? Even if you're not using your upload bandwidth, and you're feeling generous (leaving it on until you need the bandwidth or reboot), are you going to bother to manually start an old download up again? One solution might be to create a start-up run tool/service that sits in the background and (configurably) keeps up the swarm count for any torrents you have - encourage users to turn it on, and make it part of all clients; but another idea I just had would be to credit people for providing upload bandwidth somehow over time. Is there a way of safely implementing this (ie. unhackable) without resort to servers? Then each client could decide how much bandwidth another client gets by how much they've helped the swarm in the past. It would be quite easy to do if each client kept a record of how much it's uploaded over all torrents; but keeping it so you can't exploit that to pretend you're massively in credit would be the hard part. hashes?

I have heard of another attempt at a 'swarming download' technique called exeem, developed by the people who run Suprnova, a major torrent archive (although most of the content is illegal copyrighted stuff. It's still in closed-beta testing as far as I know, but their aims are to reduce the load on the central seeding server and turn it from a monolithic system into a more distributed one with a few of the 'swarm' of PCs downloading the file turning themselves into mini-servers, selected by bandwidth or connection availability. Sounds like a nicer idea if it works well.


  1. might be worth a look. You have to register to access torrents, then site keeps a track of each user's upload/download ratio, encourages fair usage.

  2. There may be other ways too. Torrents look like they're going to be the new way to pick up podcasts and most of the new client releases have bittorrent built in now from what I hear. People wanting to keep an eye on the latest podcast will be wanting to keep their clients running to ping the servers and await new posts; while they're running they can be providing bandwidth to other users for torrents! Great!