Announcer & Bittorrent V2 - Поддерживает ?

Я не зря добавил это автоматическое уведомление в скрипт потому, что устал от комментариев типа: У меня не качается, как скачать, выдает ошибку, торрент поврежден итд... Думаю отсановимся на v1+v2 hybrid. Переводить принудительно на v2 и тем более запрещать совсем не хочется, т.к. каждый добровольный сид даже на всратом древнем торрент клиенте сейчас на вес золота. Я сам использую uTorrent_v2.0.4 потому что он единственный, кто в состоянии запуститься (правда запуск длится минут 10), не крашнуться и сидировать 30тыс торрентов

Лучшее - враг хорошего
 
Last edited:
А какие-то клиенты уже практикуют такое? Я думал это был полет фантазии только разрабов qbittorrent резать хэш до 20 бит для совместимости. Торрент сайты сейчас скорее мертвы, чем живы, а перейти только на v2 значит полностью добить их

Также писал ранее, что:
Code:
//$info_hash_sql = rtrim(DB()->escape($info_hash), ' ');
Неправильная конструкция, нельзя экранировать спецсимволы и обрезать пробелы в бинарной строке. Были случаи когда торрент не могли скачать либо не могли зарегистрировать, т.к. после случайного "обрезания" его хэш становился идентичным одному из ранее зареганых торрентов. И чем больше торрентов, тем чаще начнутся проблемы

надо так
Code:
$info_hash_hex = bin2hex($info_hash);

в sql так
Code:
#info_hash    varbinary(20)
#info_hash_v2    varbinary(32)

WHERE HEX(tor.info_hash) = '$info_hash_hex'


Но.... После этих изменений отвалятся старые торренты..
Поэтому пришлось сделать такой костыль из проверок в анонсере
Code:
$info_hash_sql = bin2hex(rtrim(DB()->escape($info_hash), ' '));// старые торренты отвалилисиь пришлось вернуть этот костыль
...
WHERE HEX(tor.info_hash) = '$info_hash_hex'
          OR HEX(tor.info_hash) = '$info_hash_sql'
          OR HEX(tor.info_hash_v2) = '$info_hash_hex'
    OR HEX(tor.info_hash_v2) LIKE '$info_hash_hex%'
Как буду заниматься анонсером, то внесу необходимые правки. Спасибо
 
Как буду заниматься анонсером, то внесу необходимые правки
Надо бы на каком нибудь рабочем проекте протестить, как отреагируют раздачи. Иначе костылей не избежать как в announce так и в scrape
 
Надо бы на каком нибудь рабочем проекте протестить, как отреагируют раздачи. Иначе костылей не избежать как в announce так и в scrape
Таковой проект имеется, обязательно проверю
 
Не проще ли маркировать раздачи ?
Когда основная масса юзеров использует MediaGet или прочие мусорные клиенты, либо скачивают и спрашивают: я хотел скачать книгу, но она весит всего 15кб... что за обман? итд...

В общем, пока что, у меня ни разу не возникало мыслей перейти на v2 🙃
 
В общем, пока что, у меня ни разу не возникало мыслей перейти на v2 🙃
Что-бы перейти на v2, надо думать как v2 )) А вообще мысли возникнут, если понять в чём отличия протоколов и какие плюсы даёт v2
 
Что-бы перейти на v2, надо думать как v2 )) А вообще мысли возникнут, если понять в чём отличия протоколов и какие плюсы даёт v2
Вы думаете как разработчик, сам хочу думать так же. Но приходится подстраиваться под обычных юзеров и именно из-за них приходится "оттягивать конец" v1
 
Потому что они сами обрезают хэш, но это временно, Qbit.... через пару минорных версий в запросах уже будет отправлять все символы.
Не будут, стандарт bep0052 чётко это пишет.
какие плюсы даёт v2?
Самое большое это поиск файлов по хешу, что может помочь восстановить многие мёртвые раздачи, но такое пока никакой торрент клиент не поддерживает и нескоро станет. Можно взять и интегрировать тот же gossiphub протокол от ipfs не изобретая свой велосипед с хеш-блоками файлов.
 
Back
Top