Curiosity is bliss    Archive    Feed    About    Search

Julien Couvreur's programming blog and more

Bittorrent HTTP/web seeding

 

After reading about Battle Torrent, an attempt to make torrents trivial to use and create, I wondered about the possibility of creating torrents without running a BT client (seeder) in addition to the tracker.
One case where that would be useful is when your hosting solution doesn't support running arbitrary code. Also, in terms of setup, since a webserver is already needed to run the tracker, why not use it as the seeder as well?

It turned out that this is already available, although it's not supported by all clients.
Here's the web seeding spec (unofficial), as implemented in BitTornado.
DeHackEd's PHP script is also available from the BitTornado website. Here's some explanations on how to set it up (requires MySQL).


More bittorrent pointers and thoughts
Embedded web server
The reverse approach (embedding the tracker in the BT client) was also implemented, for example in Azureus (which also has a plugin architecture).

HTTP-based client
Like I mentioned in a previous post, there is a desktop BT client that can be controlled via a web interface (ABC client with PHP-4-ABC web interface).
There is also an complete client implemented in PHP, TorrentFlux (requires MySQL). I'm not sure how it works.

Other integrations ideas
Miguel mentioned the idea of a Bittorrent library in .Net.

I think it would also be cool to have a Bittorrent XPCOM component for integration in Mozilla (I know I'm not the only one to want that). It would allow integration with the regular download manager and make it easy to try different UIs and schedulers by hacking XUL and javascript.
And no, I don't want to hear any complaints about the browser (or specifically Mozilla/Firefox) becoming the new desktop ;-)

The two ideas (.Net and Mozilla) could be combined by allowing XPCOM components to be written in .Net languages, the same way that PyXPCOM allows Python components ;-)

Update: Downhill Battle just released Blog Torrent v0.8 (via), that simplifies torrent publishing and downloading.

Update (2005/07/06): Opera is integrating a bittorrent client first. One is coming for Firefox too, as part of the Summer of Code initiative.

Update (2005/09/27): The bittorrent implementation for Firefox, part of the Summer of Code, is making progress (currently alpha): FirePuddle.

comments powered by Disqus