воскресенье, 18 октября 2009 г.

Atrack - A Tracker for Google's App Engine

http://repo.cat-v.org/atrack/

Atrack - A Tracker for Google's App Engine

Atrack is a ntrack / Bittorrent tracker designed from the ground up to run on Google's App Engine grid.

Its main goals are:

  • As small codebase as possible.
  • As fast as possible.
  • As low bandwidth usage as possible.
  • As low memory usage as possible.

For this it relies heavily (and almost completely) on memcached, no data is stored anywhere, and it lets memcached do most of the lifecycle management.

Atrack also aims to respect your privacy: other than what is needed for the most basic tracking (hashes/keys and ip/ports) atrack gathers no information whatsoever. Beyond that no aggregate statistics are kept of anything (at least once the testing/debugging phase is over), and nothing is stored permanently anywhere, not even hashes and ip/ports, they are kept in memory until they are expired by memcached and never written to disk or any other kind of permanent storage.

Live experimental public tracker

An open installation of atrack that you can freely use for anything you like can be accessed at the following addresses:

Use them and help stress-test atrack! ;)

TODO

  • Implement the BT compact tracker data format as per BEP 0023.
  • Take advantage of Python instance caching as a further cache layer on top of memcached.
  • Fully specify and implement the complete ntrack protocol.
  • Implement "scrap convention", but will have to make sure it introduces no performance or privacy issues.
  • Write a test suite.

Future:

  • Support some kind of private tracking? Perhaps IP ACL based?

Source

The latest atrack source is kept in a Mercurial repository, you can check it out as follows:

hg clone http://hg.cat-v.org/atrack/

Experimental / demo deployment

You can find a public tracker running atrack that you can add to any torrent you like at: http://bittrk.appspot.com/announce

Contact

For feedback, bug reports, or anything else email uriel@berlinblue.org Or join #bittorrent in irc.freenode.org.

Known Atrack Installations

License

None. Atrack is in the public domain. Because intellectual property is an oxymoron. Alternatively, if the laws of your country are so braindamaged that they don't recognize the public domain, the code is also available under the ISC and MIT/X licenses.

Credits

Thanks to mjl for feedback and finding many of my "brown paper bag bugs".

Thanks medecau and others in the #bittorrent irc channel for their ideas and feedback.

Thanks to Will for some more suggestions and feedback.

Комментариев нет:

Отправить комментарий