Комментарии 9
Первый!
Скажу честно, автор оригинальной статьи читает мои мысли. Напоминает старые времена, когда чтобы поиграть в игру, ее нужно было сначала написать. Да, долго, но зато понимаешь, как оно устроено.
И что бы поиграть, мне приходилось писать простенькие игры. Карточные, змейки, стрелялки и прочее… Запускать, играть. После выключения всё удалялось. В следующий раз всё по новой ))))
Годная статья, наткнулся на оригинал полгода назад и по ней тоже посмотрел/изучил как работает торрент. Ну и плюс для размяться поверх этой репы реализовал мультифайловость и параллельную загрузку со случайной записью (не по порядку как в оригинале). Отличная учебная статья.
Многодневное рытьё исходников и тесты выявили причину — кто-то сортирует словари (dictionary, «d»), а кто-то нет.
По поводу аннонсов. С обращением по HTTP всё просто, но сейчас массово пришли UDP трекеры. Есть ли наработки на эту тему?
По поводу аннонсов. С обращением по HTTP всё просто, но сейчас массово пришли UDP трекеры. Есть ли наработки на эту тему?
Это нужно спрашивать у автора оригинальной статьи)
Так инфо хэш в самом торрент файле прописан, его проверяют в сыром виде, до перевода во внутренний формат.
В стандарте раньше не была указана кодировка названий файлов (Юникод vs все остальные) + макось и винда имеют своё одарённое мнение по «составным» символам (типа записи «ё» как код «е» + код точек, но вылезает на всяких иероглифах): одна их принудительно разделяет, другая соединяет.
Так же есть гибридные торрент-файлы, которые подходят и для v1 и для v2, там делается выравнивание файлами пустышками.
Bittorrent с нуля на Go