Про BitTorrent v2, улучшения анонсера и многое другое — TorrentPier 2.4.0.

kovalensky

Разработчик (ex)
Модератор

Please Login or Register to view hidden text.

это следующая версия протокола BitTorrent, которая имеет ряд улучшений:

- Так как хеш каждого файла вшит в торрент файл, клиенты не тратят трафик на скачивание дубликатов.

- Хеш дерево Меркля и вложенность структуры папок, позволяет сократить размер торрент файлов.

- Благодаря хеш дереву, для проверки на битость части файла, необходимо скачать лишь 16Кб листа, раньше приходилось скачивать вcю часть.

- За счёт выравнивания частей (BEP-47), данные каждого файла начинаются на новой части, таким образом при скачивании отдельных файлов, пользователям не приходится скачивать и хранить часть других файлов.

- Можно скачивать раздачу без дубликатов файлов (станет возможно на следующей версии торрент-библиотеки libtorrent).

В движке реализована отдельная страница для показа информации о содержимом v2 поддерживаемых торрент файлов, таких как клиент, дата создания, имена файлов, их хеши.

По идее это позволит поисковикам кешировать эту информацию, как в DHT индексаторах, что поможет вашим пользователям находить отдельные файлы по их хешу, имени файла, направляясь на ваш ресурс.

Отдельный список файлов:
2023-12-10_215106.png

Страница:
94cbf89d182f42fc4ba2823420b7e9ea copy.png

Функция отключается для незарегистрированных пользователей, при условии:

1) Ваш трекер приватный, вы отключили поддержку DHT.

2) Создатель включил приватность торрента в клиенте.

Из улучшений анонсера (да-да, мы и над ним поработали, спустя несколько лет):

- Поддержка IPv6 (по стандарту BEP 7), форум его тоже теперь поддерживает.

- Переработанная система кеша (анонсер+скрейп), для значительного снижения нагрузки на трекер.

- Multi-scrape (BEP 48), позволяет торрент-клиентам узнавать количество раздающих/скачивающих без обращения к анонсеру.

Скрейп не затратен как анонсер, так как не записывает в базу данные и даёт возможность торрент-клиентам показывать реальную статистику, помогать в раздаче, если соотношение раздающих/скачивающих требует этого.

- Показ полных скачиваний (сколько раз этот торрент скачали, со всеми файлами).

- Показ торрент-клиентов пользователей на статистиках раздач.
2023-11-12_213858.png

- Показ последнего раздающего бывшего на раздаче.
2023-11-12_214306.png

- Показ числа торрент-клиентов в статистике трекера администраторской панели, также возможность гибкой корелляции версий этих клиентов.
2023-11-12_215724.png

- В анонсере список пиров сортируется с приоритетом на скачивающих, что позволяет улучшить связность роя.

Другие улучшения:

- Движок перешёл на PHP 8.1, что даёт кратное ускорение благодаря компиляции JIT, не забудьте включить его в php.ini.

opcache.enable = 1
opcache.enable_cli = 1
opcache.jit = 1254
opcache.jit_buffer_size = "128M"
opcache.interned_strings_buffer = 32
opcache.memory_consumption = 256
pcre.jit = 1

- Закрыты две критические уязвимости.
- Инвайт коды по событиям.
- Кнопка "Спасибо".
- Поддержка .webp изображений.
- Поддержка IDN доменов.
- Бан торрент-клиентов или их версий.
- Увеличена длина passkey (предыдущие будут работать).
- Раздачи можно просматривать и скачивать напрямую с Atom (настраиваемо в config.php).
- Инфо-хеши замороженных раздач теперь не показываются, их нельзя скачать, даже через dl.php.
- Показ информации о бан статусе пользователя в теме и профиле.
- Флаги стран в профиле.
И многое другое.



TorrentPier — первый торрент-движок, который поддерживает BitTorrent v2 из коробки. Мы не пошли по общему методу "и так работает".
Я также надеюсь, что эти несколько месяцев баг фиксов и улучшений кода будут полезны администраторам ресурсов.

Нынешняя стадия движка — RC1.
~ 15-го числа релиз RC2.
На Новый Год планируем выпустить стабильную версию, так что ещё раз попрошу пользователей начать мигрировать.

Спасибо, что с нами.
 

Pole

Пользователь
Проводилось ли исследование, сколько пользователей торентов используют клиенты с поддержкой второй версии? Как совместить использование загруженого торрент-файла v2 с тем что его никто не сможет скачать?
 

kovalensky

Разработчик (ex)
Модератор
Pole
Исследования не было, потому что нет единой статистики, кто каким клиентом пользуется.

Если есть опасения совместимости, то пользователи свободны создавать гибридный формат (опция hybrid в клиенте), который совмещает в себе оба протокола (v1 + v2).
Вы можете запретить загрузку v2-only торрентов в config.php.

Скачать v2-only торрент, смогут пользователи с клиентами, которые его поддерживают, на данный момент из популярных на слуху qBittorrent, BiglyBT, PicoTorrent, Tixati и т.д.
 
Сверху