| 1 | = Bittorent download service = |
| 2 | |
| 3 | The idea is to create a ''extension package'' for BASE that provides a service for loading files into BASE using the Bittorrent protocol. The extension installs itself as a service extension to the web application. Users may then upload a '.torrent' file to the service, which will take care of downloading the files and importing them to the BASE file system. The use case is to support uploading of huge files to BASE. Using the regular http or ftp upload is sensitive to network speed and temporary connection problems, etc. The bittorrent protocol can resume file upload after a computer or network failure and it has built-in verification that data has not been corrupted during the transfer. |
| 4 | |
| 5 | The typical use case is something like this: |
| 6 | |
| 7 | * A user has one or more large files that needs to be uploaded to BASE. |
| 8 | * Using a bittorrent application the user creates a '.torrent' file. |
| 9 | * The same bittorrent program is used to seed the files and it should also have a built-in tracker. |
| 10 | * The user uploads the '.torrent' file to BASE. |
| 11 | * The bittorrent download service now starts transferring the files to a temporary location on the BASE server. |
| 12 | * When all files have been transferred they are loaded into the BASE file system and can be used in BASE. |
| 13 | |
| 14 | We are planning to use the [http://sourceforge.net/projects/hpbtc/ HPBTC] bittorrent library on the server side. On the client side the user must use a bittorent application that is capable of creating torrent files and has built-in tracker. One such application is [http://www.vuze.com/ Vuze]. |
| 15 | |
| 16 | We are not supporting tracker-less torrents which means that torrents downloaded from sites like ''The Pirate Bay'' will not work. |
| 17 | |
| 18 | = License = |
| 19 | |
| 20 | [http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU General Public License version 2]. |
| 21 | |
| 22 | = Download = |
| 23 | |
| 24 | NOTE! This software has not yet been released. Source code can be downloaded from the subversion repository. The latest development (''maybe unstable; do not use on a production server'') revision can be checked out from the repository using the following command: |
| 25 | |
| 26 | `svn co http://baseplugins.thep.lu.se/svn/extensions/net.sf.basedb.torrent/trunk torrent-devel` |