We've recently moved hosts! Please report any weirdness with the wiki (or spam) on Utopia.

Conspire BitTorrent Integration

From BBSWiki

Jump to: navigation, search

In the golden days of the BBS era, BBSes were important vehicles for the distribution of files as well as for communication. Recently, the model of the file sharing club has seen some resurgence on the Internet. It may be time to bring file sharing back to the nuDOC branch of the BBS world, with a twist which minimizes load on the BBS itself (at the cost of some availability).

This extension is envisioned as an extension which allows users with supporting clients to attach files (in the form of .torrents) to messages or possibly in old-BBS-style "file bases" and serve them to other users. This would likely be accomplished using something like Rasterbar libtorrent. Libtorrent already supports DHT (mandatory), PEX (Peer Exchange, highly desirable) and protocol encryption (mandatory). DHT in particular allows for 'trackerless' torrents and minimal load on the BBS machine. It also claims to have low overhead and a small memory footprint.

Contents

[edit] Server support

The BBS would store .torrents associated to messages and possibly to file bases, similar to the dialup boards of yore.

[edit] Web client

If a web interface to the BBS is developed, torrents could be downloaded and used with any normal BitTorrent app.

[edit] BBS as peer

Subject to configuration, the BBS could download a copy of shared files and then act as another seed for some period of time. It could do this for no files, for files which sysops specifically choose, or for all files. Throttling would be a big issue here, as would potential legal issues, which would be left up to the sysops in question. Integration with an external, pre-existing libtorrent-based daemon would likely be the best method of serving torrent content.

[edit] Client support

Clearly, this would not be supported for users telnetting or sshing in to a client running on the BBS machine itself. Users running clients at home could take advantage of the feature, as could users using any type of web client, who could just download a .torrent associated with a post or file library. Throttling, e.g. to avoid blowing a VPS bandwidth allotment, is an issue.

[edit] Keeping torrents alive

Since BBSes aren't terribly active, one model would be a user-configurable "cache" of some size limit. The user would select files to download, and the files would be saved where the user requested, but they would continue to be served from the "cache" copy for some period of time afterwards. This would be dictated by the amount of space allotted and by rules similar to how Azureus auto-removes its upgrade torrents "based on the needs of the swarm" after they are downloaded and shared for a bit -- likely older items with few or no other seeds would be preferentially kept when expiring something.

Personal tools