Debian BitTorrent Proxy
Mentor: (add yourself here if you're proposing yourself as a mentor)
Summary: expand on/modify BitTorrent to work with large, constantly updating collections of files such as the Debian archive
- P2P protocol design
familiarity with the BitTorrent protocol and implementation
BitTorrent is a peer-to-peer file sharing application designed to reduce the costs of hardware, hosting and bandwidth resources for the original distributor by allowing downloading peers to share downloaded data with others. This project proposes to create a backend or proxy to the Debian package distribution tool apt, which will allow it to download packages from other users of Debian in a BitTorrent-like manner, thus reducing the costs incurred by the Debian project.
Some of the discussion has already occurred in a previous project (see the 2006 Proposal below), and identified these concerns with the current BitTorrent implementation:
- the packages are too small and there are too many to create individual torrents for each
- the archive is too large to track efficiently as a single torrent
- piece sizes are bigger than many packages, so avoiding wasted bandwidth is a concern
- if multiple torrents may contain the same files (e.g. architecture:all packages), then some communication needs to occur between users of different torrents
- the client can be informed of an updated package while trying to download an outdated one
Expand the BitTorrent protocol/application to work effectively with large, constantly updating collections of files such as the Debian archive. Requires a good understanding of P2P protocol design, significant reimplementation of the BitTorrent code, and an ability to think through new protocols (AnthonyTowns)
CameronDale has applied for this project. More details can be [http://www.cs.sfu.ca/~camerond/personal/GoogleSoCDebian.html found here].