Differences between revisions 2 and 3
Revision 2 as of 2007-03-27 00:35:52
Size: 2123
Editor: CameronDale
Comment: Added more info and my application status
Revision 3 as of 2007-04-01 19:10:04
Size: 2211
Editor: CameronDale
Comment: Added link to new wiki page
Deletions are marked like this. Additions are marked like this.
Line 34: Line 34:
CameronDale has applied for this project. More details can be [http://www.cs.sfu.ca/~camerond/personal/GoogleSoCDebian.html found here]. CameronDale has applied for this project. More details on the application can be [http://www.cs.sfu.ca/~camerond/personal/GoogleSoCDebian.html found here], and ideas for implementation can be added to the AptBittorrent page.

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

  • Required skills:

    • P2P protocol design
    • python
    • familiarity with the BitTorrent protocol and implementation

Description

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

2006 Proposal

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)

2007 Applications

CameronDale has applied for this project. More details on the application can be [http://www.cs.sfu.ca/~camerond/personal/GoogleSoCDebian.html found here], and ideas for implementation can be added to the ?AptBittorrent page.