✅✅✅
Протоколы для децентрализованных сетей
Протокол 2-го поколения P2P сетей - BitTorrent
Часть 1. Торрент файлы и содержимое
⬇️⬇️⬇️
BitTorrent «битовый поток» — пиринговый (P2P) сетевой протокол для кооперативного обмена файлами через Интернет.
Торрент (Torrent) — это сервис обмена информацией по сетевому протоколу Bittorrent.
Что включает в себя .torrent файл?
Сам файл торрента, который преобразует несколько десятков килобайт кода в многогигабайтные файлы. Внутри лежит ссылка на трекер.
Трекер - это сервер, который хранит всю информацию о раздаче, а именно сколько людей ее качает, какую часть раздачи скачал каждый из них, и т.д.
Трекер нужен чтобы торрент-клиент на нашем устройстве мог получить IP адреса тех, у кого эта раздача уже скачана (сиды), и тех, кто также, как и вы, хочет скачать или уже качает раздачу (личеры и пиры). После получения этих данных наш торрент-клиент подключается к уже качающим и начинает обмениваться с ними данными по принципу «ты — мне, я — тебе».
Здесь кроется первая проблема торрента:
Если исчезнет трекер, то новые люди, которые хотят скачать раздачу, сделать этого не смогут. Но те, кто уже качает файлы, скорее всего, смогут их докачать, так как список IP адресов сидов у них есть.
Но выход есть и это бестрекерная система работы:
В Торрент-файл зашит адрес не сервера, а первого сида (или нескольких сидов). А они уже хранят адреса других сидов и пиров, и как только вы к нему подключаетесь, то они делятся адресами.
Также в торрент файлах хранится информация о файлах в этой раздаче: их количество, вес, число блоков и их контрольные суммы (SHA1).
В отличие от обычной закачки, раздача всегда поделена на множество блоков, размер которых зависит от веса раздачи и обычно составляет порядка 1 МБ.
Делается это для того чтобы:
Во-первых, это позволяет скачать в раздаче только один или несколько нужных файлов — не нужно качать все.
Во-вторых, так проще проверять файлы
В-третьих, при такой системе новый пир может быстрее начать участвовать в общем процессе: как только один из сегментов скачан и проверен, то наш торрент-клиент оповещает трекер, что мы готовы этот сегмент отдавать другим.
Торрент-файл также включает в себя — passkey. Это — наш личный ключ, состоящий из цифр и букв, который присваивает нам трекер. Он нужен для того, чтобы не нарушалась суть торрента: «ты — мне, я — тебе».
На многих трекерах введено ограничение: если наш ratio ниже определенного то нам запрещается качать с этого трекера, пока наш ратио не поднимется. Тут появляется еще одно правило: если мы скачали торрент-файл на трекере, который мониторит ratio, не отдавать этот файл никому — так как другие люди могут быстро «слить» наш ратио до нуля.
Торрент-файлы стали включать дополнительную информацию о магнет-ссылках и веб-сидах.
Магнет-ссылка — это ссылка напрямую на трекер, которая избавляет нас от «посредника» в виде файла.
Веб-сид - по факту это сервер, который постоянно отдает данные раздачи, ну и бонусом зачастую имеет скорость гораздо выше, чем у обычного человека.
Протоколы для децентрализованных сетей
Протокол 2-го поколения P2P сетей - BitTorrent
Часть 1. Торрент файлы и содержимое
⬇️⬇️⬇️
BitTorrent «битовый поток» — пиринговый (P2P) сетевой протокол для кооперативного обмена файлами через Интернет.
Торрент (Torrent) — это сервис обмена информацией по сетевому протоколу Bittorrent.
Что включает в себя .torrent файл?
Сам файл торрента, который преобразует несколько десятков килобайт кода в многогигабайтные файлы. Внутри лежит ссылка на трекер.
Трекер - это сервер, который хранит всю информацию о раздаче, а именно сколько людей ее качает, какую часть раздачи скачал каждый из них, и т.д.
Трекер нужен чтобы торрент-клиент на нашем устройстве мог получить IP адреса тех, у кого эта раздача уже скачана (сиды), и тех, кто также, как и вы, хочет скачать или уже качает раздачу (личеры и пиры). После получения этих данных наш торрент-клиент подключается к уже качающим и начинает обмениваться с ними данными по принципу «ты — мне, я — тебе».
Здесь кроется первая проблема торрента:
Если исчезнет трекер, то новые люди, которые хотят скачать раздачу, сделать этого не смогут. Но те, кто уже качает файлы, скорее всего, смогут их докачать, так как список IP адресов сидов у них есть.
Но выход есть и это бестрекерная система работы:
В Торрент-файл зашит адрес не сервера, а первого сида (или нескольких сидов). А они уже хранят адреса других сидов и пиров, и как только вы к нему подключаетесь, то они делятся адресами.
Также в торрент файлах хранится информация о файлах в этой раздаче: их количество, вес, число блоков и их контрольные суммы (SHA1).
В отличие от обычной закачки, раздача всегда поделена на множество блоков, размер которых зависит от веса раздачи и обычно составляет порядка 1 МБ.
Делается это для того чтобы:
Во-первых, это позволяет скачать в раздаче только один или несколько нужных файлов — не нужно качать все.
Во-вторых, так проще проверять файлы
В-третьих, при такой системе новый пир может быстрее начать участвовать в общем процессе: как только один из сегментов скачан и проверен, то наш торрент-клиент оповещает трекер, что мы готовы этот сегмент отдавать другим.
Торрент-файл также включает в себя — passkey. Это — наш личный ключ, состоящий из цифр и букв, который присваивает нам трекер. Он нужен для того, чтобы не нарушалась суть торрента: «ты — мне, я — тебе».
На многих трекерах введено ограничение: если наш ratio ниже определенного то нам запрещается качать с этого трекера, пока наш ратио не поднимется. Тут появляется еще одно правило: если мы скачали торрент-файл на трекере, который мониторит ratio, не отдавать этот файл никому — так как другие люди могут быстро «слить» наш ратио до нуля.
Торрент-файлы стали включать дополнительную информацию о магнет-ссылках и веб-сидах.
Магнет-ссылка — это ссылка напрямую на трекер, которая избавляет нас от «посредника» в виде файла.
Веб-сид - по факту это сервер, который постоянно отдает данные раздачи, ну и бонусом зачастую имеет скорость гораздо выше, чем у обычного человека.