Одноранговый обмен

редактировать

Одноранговый обмен или PEX - это протокол связи, дополняющий BitTorrent протокол обмена файлами. Это позволяет группе пользователей (или пиров ), которые сотрудничают, совместно использовать данный файл, чтобы сделать это более быстро и эффективно.

В первоначальной конструкции протокола обмена файлами BitTorrent одноранговые узлы (пользователи) в группе совместного использования файлов (известной как "рой") полагались на центральный компьютерный сервер, называемый трекером, для находить друг друга и поддерживать рой. PEX значительно снижает зависимость одноранговых узлов от трекера, позволяя каждому одноранговому узлу напрямую обновлять другим в рое, какие одноранговые узлы в настоящее время находятся в рое. Уменьшая зависимость от централизованного трекера, PEX увеличивает скорость, эффективность и надежность протокола BitTorrent.

Содержание
  • 1 Описание
    • 1.1 Соглашения об одноранговом обмене
    • 1.2 DHT
  • 2 Версии
  • 3 Клиенты, поддерживающие одноранговый обмен
  • 4 Ссылки
  • 5 Внешние ссылки
Описание

Пользователи, желающие получить копию файла, обычно сначала загружают торрент файл, который описывает файл (ы) для совместного использования, а также URL-адреса одного или более центральных компьютеров, называемых трекерами, которые поддерживают список одноранговых узлов, в настоящее время совместно использующих файл (ы), описанный в файле.torrent. В первоначальном дизайне BitTorrent одноранговые узлы затем зависели от этого центрального трекера, чтобы находить друг друга и поддерживать рой. Более поздняя разработка распределенных хэш-таблиц (DHT) означала, что частичные списки одноранговых узлов могут храниться другими компьютерами в рое, и нагрузка на центральный компьютер отслеживания может быть уменьшена. PEX позволяет одноранговым узлам обмениваться информацией о рое напрямую, не запрашивая (опрос ) компьютер отслеживания или DHT. Поступая так, PEX использует знания одноранговых узлов, к которым подключен пользователь, запрашивая их адреса одноранговых узлов, к которым они подключены. Это быстрее и эффективнее, чем полагаться только на один трекер, и снижает нагрузку на трекер. Он также удерживает рои вместе, когда трекер не работает.

Одноранговый обмен не может использоваться сам по себе для введения нового однорангового узла в рой. Чтобы установить первоначальный контакт с роем, каждый одноранговый узел должен либо подключиться к трекеру с помощью файла ".torrent", либо использовать компьютер-маршрутизатор, называемый узел начальной загрузки, чтобы найти распределенную хеш-таблицу (DHT), которая описывает список пиров роя. Для большинства пользователей BitTorrent DHT и PEX начнут работать автоматически после того, как пользователь запустит клиент BitTorrent и откроет файл.torrent. Заметным исключением являются «частные торренты», которые не доступны в свободном доступе; они обычно отключают DHT.

Соглашения об одноранговом обмене

Расширения BitTorrent, такие как PEX, обычно реализуются с использованием одного из двух общих протоколов расширения, AZMP или LTEP. Оба типа однорангового обмена отправляют сообщения, содержащие группу одноранговых узлов, которые должны быть добавлены в рой, и группу одноранговых узлов, которые должны быть удалены.

Между разработчиками Azureus и μTorrent было согласовано, что любые клиенты, реализующие любой из описанных выше механизмов, стараются соблюдать следующие ограничения при отправке сообщений PEX:

  • Должно быть не более 50 добавленных одноранговых узлов и 50 удалены одноранговые узлы, отправленные в любом заданном сообщении PEX.
  • Сообщение об обмене одноранговым узлом не должно отправляться чаще, чем один раз в минуту.

Некоторые клиенты могут установить эти ограничения и разорвать соединения от клиентов, которые их игнорируют.

DHT

Чтобы создать протокол PEX, обеспечивающий равномерно распределенный выбор одноранговых узлов, можно сформировать небольшую распределенную хеш-таблицу (DHT), локальную для торрента. Для каждого желаемого нового однорангового узла нужно искать (равномерно) случайный ключ и использовать узел, ответственный за ключ, в качестве нового однорангового узла. Это концептуально просто, но потребует значительных накладных расходов.

Для торрентов без трекера неясно, предоставляет ли PEX какое-либо значение, поскольку основной DHT может распределять нагрузку по мере необходимости. Каждый узел DHT, действующий как трекер, может хранить только подмножество одноранговых узлов, но это максимальные подмножества, ограниченные только нагрузкой узла DHT, а не представлением одного узла. Частные торренты обычно отключают DHT, и в этом случае может быть полезен PEX при условии, что одноранговый узел получает достаточно одноранговых узлов от трекера.

Версии

Существуют три несовместимых реализации PEX (создание отдельных «сетей» в рое)

  • Vuze - введено в Azureus
  • BitComet - проприетарно - представлено в BitComet
  • MainLine - введено в μTorrent
Клиенты, поддерживающие одноранговый обмен

Большинство клиентов BitTorrent используют PEX для сбора одноранговых узлов в дополнение к трекерам и DHT. С выпуском Vuze 3.0.5.0 все основные клиенты BitTorrent теперь имеют совместимый одноранговый обмен.

Каждый из этих клиентов реализует ту или иную версию однорангового обмена:

  • Ares Galaxy
  • , поддержка μTorrent PEX
  • Vuze, ранее Azureus, и клиенты на его основе (Vuze PEX - совместим только с клиентом передачи. PEX с другими клиентами был реализован в Vuze и Azureus начиная с версии 3.0.4.3)
  • BitComet поддерживает PEX с использованием проприетарного протокола в своих более старых версиях. Начиная с версии 1.19, также добавлена ​​поддержка реализации PEX μTorrent / Mainline на основе протокола расширения.
  • Bitflu
  • BitTorrent
  • KTorrent реализовал полную поддержку μTorrent PEX начиная с версии 2.1 RC1
  • libtorrent и клиенты на его основе (Deluge, qBittorrent,), совместимые с μTorrent
  • Tixati
  • μTorrent
  • Opera 9.5, поддержка μTorrent PEX
  • qBittorrent, поддержка μTorrent PEX
  • rTorrent
  • Transmission (совместима с реализациями μTorrent и Vuze)
  • на основе исходного кода Transmission, в равной степени полностью поддерживает реализации Vuze и μTorrent, начиная с версии 1.0 (v40)
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-01 07:32:18
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте