Перейти к содержимому
Калькуляторы

Ретрекер BTRT Очень быстрый приоритезирующий ретрекер

Ретрекер BTRT позволяет опрашивать другие трекеры и ретрекеры,

умеет выдавать в первую очередь локальные IP адреса абонентов оператора и операторов из локального пиринга.

В связке c dpi позволяет реприоритезировать раздачи в пользу локальных раздач, уменьшая долю торрентов во внешних каналах до 12%,

перенаправлять запросы торрент клиентов к внешним трекерам на локальный ретрекер.

 

Инструкция по установке на CentOS 6.x (RedHat и клоны) (осторожно, возможно требует доработки, т.к. в КЭШе он подключается по другому, в связке с nginx):

 

1. Подключите внешний репозиторий vasexperts

rpm --import http://vasexperts.ru/centos/RPM-GPG-KEY-vasexperts.ru
rpm -Uvh http://vasexperts.ru/centos/6/x86_64/btrt/btrt-repo-1-0.noarch.rpm

 

2. Установите ретрекер

yum install btrt

3. Загрузите схему данных в mysql

chkconfig mysqld on
service mysqld start
mysql_secure_installation
--указываем пароль root, на остальные вопросы отвечаем ответами по умолчанию

mysql -u root -p
вводим команды:
CREATE USER 'btrt'@'localhost' IDENTIFIED BY 'secret_password';
GRANT USAGE ON *.* TO 'btrt'@'localhost' IDENTIFIED BY 'secret_password';
CREATE DATABASE IF NOT EXISTS `btrt` ;
GRANT ALL PRIVILEGES ON `btrt` . * TO 'btrt'@'localhost';
GRANT FILE ON *.* TO 'btrt'@'localhost';

подгружаем схему данных
mysql -ubtrt -p btrt < /etc/btrt/btrt.db_creation.sql

4. Корректируем конфигурацию

cp /etc/btrt/btrt.conf.default /etc/btrt/btrt.conf
vi /etc/btrt/btrt.conf
--исправляем настройки 
password:   "secret_password"
   listeners:                          
       -   host:       "localhost"     -> ваш IP или host
           port:       2720            -> 80
cidr_file:  "/etc/btrt/local_cidrs.conf" -> в файл помешаем список CIDR оператора
cidr_file:  "/etc/btrt/neighboring_cidrs.conf" ->  файл помешаем список CIDR операторов из локального пиринга
neighbors:
добавляем другие трекеры и ретрекеры, у которых запрашивать пиры, либо полностью комментарим секцию

5. Запускам ретрекер

service btrt start

Лог в каталоге /var/log/btrt/

 

6. Настройте в dns зону retracker.local

 

Пример настройки для сервера BIND

 

/etc/bind/named.conf.local 
zone "retracker.local" {
       type master;
       file "master/db.retracker.local";
       notify no;
};

/etc/bind/master/db.retracker.local 

$TTL    86400
@       IN      SOA     @ root.retracker.local. (
                       2011050302      ; Serial
                        604800         ; Refresh
                         86400         ; Retry
                       2419200         ; Expire
                         86400 )       ; Negative Cache TTL

@       IN      NS      ns.server.net.  ; здесь указываете имя вашего ns
       IN      A       91.194.162.11   ; IPv4 адрес retracker.local в сети Crimea-IX

7. Настройте bep22 http://www.bittorrent.org/beps/bep_0022.html

 

а) убедитесь что в вашей сети для адресов абонентов настроен Reverse DNS

Запрос dig -x 1.2.3.4 выдает что-то вроде 4.3.2.1.myisp.ru или *.myisp.ru

Если reverse dns не работает, то настройте его.

 

б) добавьте в свою зону myisp.ru SRV запись для ретрекера:

 

$ORIGIN _tcp.myisp.ru.
_bittorrent-tracker     SRV     5 0 80 retracker.local.   

 

Документация по настроечным параметрам http://vasexperts.ru/wiki/doku.php?id=btrt

Изменено пользователем DimaM

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Очень круто! Классно :) А исходники планируете открыть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Очень круто! Классно :) А исходники планируете открыть?

 

да, но позже, для этого нам нужно изолировать его сборку от КЭШ сервера

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

в каком формате хранятся ip адреса в базе?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А можно пример neighbors формата?

 

Пример есть в документации и в самом файле конфигурации.

 

в каком формате хранятся ip адреса в базе?

 

IP(4байта):PORT(2байта) в host формате и есть готовая функция для декодирования

 

Пример

select get_displayed_ipv4_ep(lcpr_ipv4_endpoint) from btrt_local_peers;

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В связке с DPI и приоритезацией может и даст 12%, хотя лично я в это не верю. А вот без DPI и приоритезации польза от реткерера для оператора не заметна, на внешнем канале включение/выключение реткера не заметно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

польза от реткерера для оператора не заметна

 

Точно заметна когда у вас много абонентов, например как в Минске, где все операторы объеденены в локальный пиринг,

в котором присутствуют сотни тысяч абонентов (пиринговый трафик стоит копейки).

PS

Картину несколько портит криво настроенный NAT у многих операторов.

Изменено пользователем DimaM

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

польза от реткерера для оператора не заметна

 

Точно заметна когда у вас много абонентов, например как в Минске, где все операторы объеденены в локальный пиринг,

в котором присутствуют сотни тысяч абонентов (пиринговый трафик стоит копейки).

PS

Картину несколько портит криво настроенный NAT у многих операторов.

 

Даже без DPI? Я смотрел на объёме ~25G внутри одного оператора, разницы что с ретркером, что без не было заметно (без DPI и чего-либо ещё)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

польза от реткерера для оператора не заметна, на внешнем канале включение/выключение реткера не заметно.

Согласен. Вот ТОП-10 нашего ретрекера (активных абонентов около 40K, суммарный канал в мир примерно 20Г):

Grand Theft Auto San Andreas + MultiPlayer [0.3e] - 25
X-Men.Apocalypse2016.D.TS.avi - 9
The SIMS 4 by xatab - 9
Counter-Strike_1.6.exe - 8
Zootopia.2016.BDRip.1080p.ExKinoRay.mkv - 7
Na.grebnE.2O15.D.HDRip.1.46Gb.avi - 7
3apros.v.druz1a.2016.D.1400MB.avi - 6
BeLoSneGkO.I.OHOTNIK.2.2O16.D.WEBRip.14OOMB_KOSHERA.avi - 6
Zootopia.2016.D.HDRip.1400MB.avi - 6
DFFIO - 6

Из всех торрентов 96.6% уникальны и не повторяются. При таком раскладе получить хоть сколько-нибудь заметную экономию трафика нереально. ГТА и Зоотопию скачали по разу и все, капля в море. :) Потому ректрер скорее для абонентов чем для оператора - вдруг кому то повезет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вообще-то в паре с DPI заметно изменяется распределение:

Распределение BRT<->DPI активно

 

а это распределение когда у оператора нет связки BRT<->DPI:

Не установлена связка с ретрекером

 

это на интервале с полдня до 20:00 у двух разных операторов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

падает сервис с сообщением:

07.06.2016-08:26:59 [CRITICAL  ]: Unexpected error occurred while tracker process executing: remote_endpoint: Transport endpoint is not connected

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

падает сервис с сообщением:

07.06.2016-08:26:59 [CRITICAL ]: Unexpected error occurred while tracker process executing: remote_endpoint: Transport endpoint is not connected

 

это ошибка вашей файловой системы

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вообще-то в паре с DPI заметно изменяется распределение:

Распределение BRT<->DPI активно

 

а это распределение когда у оператора нет связки BRT<->DPI:

Не установлена связка с ретрекером

 

это на интервале с полдня до 20:00 у двух разных операторов.

 

Не показательно. Можно две такие картинке на одном операторе за один интервал время в разные дни, но только чтоб дни были равноценны (т.е. пн, вт, ср, чтв)?

 

Кстати, а автоматическое подсовывание файла с приоритетами сетей в uTorrent так и не запилили? Всё ещё вручную надо .xml ему скармливать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не показательно. Можно две такие картинке на одном операторе за один интервал время в разные дни, но только чтоб дни были равноценны (т.е. пн, вт, ср, чтв)?

вторник (12:00-20:00):

треккер + DPI

обычная сеть

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Bigmazy

Так это две разные сети с разными объёмами трафика, в разных городах и прочими разными условиями. Или я не прав? тогда почему объёмы такие разные в сравнении

 

Я когда работал в ISP, была забавная геозависимость. В городе, который областной центр было в 1.3-1.5(!!!) раза меньше трафика на абонента, чем в городе-спутнике(типичный мухосранск). А в некоторых мухосрансках до сих пор даже DC-хабами пользуются. Это как потребление водки, сигарет, популярность фитнес-центров и прочего - в разных городах оно сильно разное

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На пробу запустили у себя BTRT. И столкнулись с тем, что на торренты, которые скачиваются с NNM-Club, ретрекер выдает utorrent'у "HTTP Error 400".

 

Например, торрент http://nnm-club.me/forum/viewtopic.php?t=1104009

В логах у BTRT:

13.02.2017-12:57:23 [ERROR     ]: Remote address: 1.2.3.4 - bad request: "/announce.php?size=3701079709&comment=http%3A%2F%2Fnnmcl
ub.to%2Fforum%2Fviewtopic.php%3Fp%3D8692231&name=%C7%E5%EC%EB%E5%F2%F0%FF%F1%E5%ED%E8%E5+%282016%29+WEB-DL+%5BH.264%2F1080p-LQ%5D&in
fo_hash=%a1%84M%12%2cW%d5%085%8b%9e%e3H%3b%27K%f4c%a7%c8&peer_id=-UT3230-%21p%10%aal0%26%e2N%e6%b2%8a&port=54321&uploaded=49152&down
loaded=0&left=0&corrupt=0&key=A5282258&event=started&numwant=200&compact=1&no_peer_id=1"

Понятно, что запрос какой-то кривой. Но opentracker отрабатывает нормально. Хотелось бы это и на BTRT как-то пофиксить.

 

И еще в логах проскакивает

Remote address: 1.2.3.4 - invalid "event" parameter in announce request: "paused"

Изменено пользователем Agent2006

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

на машину с DPI имеет смысл ставить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В 13.02.2017 в 15:39, Agent2006 сказал:

Понятно, что запрос какой-то кривой. Но opentracker отрабатывает нормально. Хотелось бы это и на BTRT как-то пофиксить.

 

В 07.06.2016 в 10:49, DimaM сказал:

07.06.2016-08:26:59 [CRITICAL ]: Unexpected error occurred while tracker process executing: remote_endpoint: Transport endpoint is not connected

Решили ли эти вопросы?

@DimaM На отвязывание от кэша подзабили? Есть ли более подробное описание, кроме как в разделе btrt вашей вики? Статистику нормальную не делали этому продукту?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

>Решили ли эти вопросы?

их и не было никогда в коммерческой версии

наверное все дело в nginx

завтра посмотрю

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 час назад, DimaM сказал:

>Решили ли эти вопросы?

их и не было никогда в коммерческой версии

наверное все дело в nginx

завтра посмотрю

нету нгинкса, веб сервер же не нужен по сути ретрекеру.

а что с запросами ннмклаба?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.