From b0e3b379d3b927dfa3f573021d0eee42197cb56d Mon Sep 17 00:00:00 2001 From: mykola2312 <49044616+mykola2312@users.noreply.github.com> Date: Fri, 18 Oct 2024 02:00:04 +0300 Subject: [PATCH] write notes --- notes.txt | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 notes.txt diff --git a/notes.txt b/notes.txt new file mode 100644 index 0000000..4ef62ce --- /dev/null +++ b/notes.txt @@ -0,0 +1,14 @@ +The purpose of retracker is to be tracker and an announce proxy at the same time. + +retracker shall expose it's internal tracker cache as standalone tracker, +implementing HTTP and UDP announces. Available for non-proxied peers, serving as regular tracker. + +Then, server another HTTP and UDP endpoints as announce proxy. Local peer requesting announce +to proxied tracker shall be matched by announce URL and tracker key (if there is), or another identifier +like peer_id. Proxy endpoint is available only for requests that match forementioned tracker key. +When request is made to proxy endpoint and it matches key - re-announce to destination trackers should be made and +on successful peer list retrieval - local tracker cache updated. If not, peers from cache should be returned. + +On re-announce to destination trackers, proxied peer's real IP must be injected into announce request and +other parameters should remain same as in original request. +