https://github.com/astro/prittorrent2
Next-gen Bitlove.org backend
https://github.com/astro/prittorrent2
Last synced: 8 months ago
JSON representation
Next-gen Bitlove.org backend
- Host: GitHub
- URL: https://github.com/astro/prittorrent2
- Owner: astro
- Created: 2015-08-15T10:23:22.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2015-08-15T10:23:32.000Z (almost 11 years ago)
- Last Synced: 2025-05-14T18:53:52.445Z (about 1 year ago)
- Language: JavaScript
- Size: 109 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Bitlovemaker
Prittorrent
Bithorse
Btpublish
Bitcovery
"CDN-grade BitTorrent"
# Synopsis
A .torrent publishing pipeline: hasher + seeder
# Use-cases
Parentheses denote optional features.
## Bitlove.org backend
- [ ] Hasher driven by loop talking to PostgreSQL
- [ ] HTTP client: writes to disk cache, moves once info_hash is known
- [ ] (Hasher: make Webseeding url-list optional)
- [ ] Disk cache, Web-seeded
- [ ] Main knob: disk space to keep free
- Seeders
- [ ] (Slaves?)
## BitTorrent publishing pipeline
- [ ] Metadata in a DB:
- [ ] Hashed torrents by this instance/cached
- [ ] (Stats)
- [x] Webseed Hasher:
- [x] HTTP API for publishing, serving .torrent files
- [ ] Feed hashed data into disk cache
- [ ] (HTTP client: SOCKS5 support)
- [ ] (File-system backed storage?)
- [x] Tracker
- [x] Serves local seeders adresses
- [ ] Seeder
- [ ] Disk cache
- [ ] (Foreign trackers? mix into local tracker data?)
## Content Distribution Network
- [ ] Seeder/HTTP server:
- [ ] Streaming downloads
- [ ] RFC 6249: Metalink/HTTP: Mirrors and Hashes
- [ ] Slave redirector
- [ ] (Bandwidth limits)
- [ ] (Fair queueing)
- [x] Built-in tracker
- [ ] E-tag = InfoHash?
- [ ] (HTTPS support)
- [ ] (Public Dashboard for a complete Bitlove replacement)
- [ ] (Slave support:)
- [ ] C/S connection
- [ ] Shared password
- [ ] Slave serves files of any servers
- [ ] BitTorrent: By id (ask all masters)
- [ ] HTTP: By path (conflict avoidance by grouping torrents into
sets? servers publish sets to slaves?)
- [ ] Emit statistics
- [ ] Master reuses trusted slaves' addresses to:
- [ ] Redirect HTTP for load-balancing
- [ ] (by load & GeoIP distance)
- [ ] Include in tracker responses
- [ ] Controlled shutdown: deregister synchronously from master, wait
for HTTP downloads to finish