Tyto
A BitTorrent tracker that's fast, safe, and rock-solid.
Install / Use
/learn @deekerno/TytoREADME
Tyto is an open source BitTorrent tracker written in Rust. It aims to be safe, performant, and rock-solid.
Why?
Tyto was created to facilitate the distribution of media through the BitTorrent protocol. Many of the popular tracker software available has not been updated in more than a decade. Many aspects that were "nice-to-have" at the time, e.g. IPv6 support, multithreading, etc., have become quite necessary at the scale at which modern deployments operate. Tyto implements many of the newest official standards and de facto extensions in order to create a robust and performant distibution system that can be used to serve many swarms with minimal downtime.
Features
- [ ] Configuration hot-reloading
- [x] Global metrics
- [x] IPv4 and IPv6 support
- [ ] Private tracker support
- [ ] Storage-agnostic backend
- [ ] Swarm statistics
Usage
Building
Tyto requires the latest stable version of Rust.
$ git clone git@github.com:adcrn/tyto.git
$ cd tyto
Edit config.toml to the desired configuration, and then build the program. Testing is also available.
$ cargo test
$ cargo build --release
Running
Make sure that the storage backend and path have been correctly added to the configuration before starting the program. Then start it up! The -c flag is also available to provide an alternate path to a configuration file.
$ ./target/release/tyto
Performance
The tracker makes heavy use of async/await and does its best to reduce excessive allocation of objects. The following stats were achieved on a 2017 MacBook Pro:
❯ wrk -t3 -c90 -d1m -s wrk_load_test.lua http://localhost:6666
Running 1m test @ http://localhost:6666
3 threads and 90 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 3.89ms 815.50us 22.07ms 97.30%
Req/Sec 7.79k 462.48 8.76k 81.17%
1395683 requests in 1.00m, 512.99MB read
Requests/sec: 23258.34
Transfer/sec: 8.55MB
The stress-testing procedure can be found in wrk_load_test.lua and makes use of the wrk program.
License
MIT
Similar Projects
Related Skills
himalaya
342.5kCLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
node-connect
342.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
85.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
coding-agent
342.5kDelegate coding tasks to Codex, Claude Code, or Pi agents via background process
