BOINC & .torrents

Anything "BOINC" specific can be commented on here...such as Project news and announcements etc. Also: any problems with BOINC or maybe you have found something interesting, tell us about it. Chat about the various 3rd party client applications used for some of the projects such as optimised clients.
Post Reply
UBT - Halifax-lad
Posts: 3790
Joined: Mon Mar 13, 2006 12:00 am

BOINC & .torrents

Post by UBT - Halifax-lad »

Won't be long now until BOINC has torrent functionallity
I've been working on the serverside side of this and have come to the
point where there's probably only a few weeks left before I have
something useful to commit to the repository (by the way, it's SVN now
isn't it?).

Once the serverside code is done I'll leave the remaining (clientside)
stuff as an exercise for the reader.

Seeing the servers from the client's point-of-view I'm writing two URLs
allowing clients to query the Bittorrent system:

1) A .torrent-cache/generator located at $PROJECT_URL/torrent_generator.php - a client can query a particular
file to see if a .torrent exists (and if so download it) for a particular file using for instance an URL like  (no, nothing there yet):
http://burp.boinc.dk/torrent_generator. ... ation.data
2) A centralized tracker system located at $PROJECT_URL/torrent_tracker.php - a Bittorrent enabled client can make
use of this tracker to enable P2P downloads of certain project files in
addition to usual HTTP downloads.

For security reasons the centralized tracker does NOT address "(3)
should detect and exploit network topology (e.g. LANs)". This should be
done clientside (for instance using a broadcast<>discover scenario or an
ability to configure "local friend hosts/mirrors" or something that will
then automatically be injected when starting any P2P enabled download...).

-- Janus
David Anderson wrote:
> I'm very interested in adding P2P file downloading capabilities to BOINC.
> This would greatly increase the scope of BOINC;
> e.g. it would make it possible to run a large project
> from a DSL-connected server.
>
> BOINC does its own integrity checking of files:
> the description of a file sent from scheduler to client
> includes a checksum or signature.
> After the client downloads the file (by HTTP,
> or potentially by a P2P mechanism) it verifies the file.
> So the security of the download mechanism doesn't impact BOINC-level security
> (it does impact performance, since files may have to be downloaded again).
>
> Some important design goals:
>
> 1) no router configuration needed
> 2) a mechanism for identifying hosts that
>   supply bad data, and avoiding using them.
> 3) should detect and exploit network topology (e.g. LANs)
> 4) easy to integrate with current BOINC client software;
>   in practice I think this means C++ implementation.
>
> Please let me know if you want to pursue this project.
>
> -- David
Post Reply