Ретрекер: различия между версиями
[отпатрулированная версия] | [отпатрулированная версия] |
Matolch (обсуждение | вклад) |
Unxed (обсуждение | вклад) Нет описания правки |
||
Строка 2: | Строка 2: | ||
[[Файл:Scheme2.svg|thumb]] |
[[Файл:Scheme2.svg|thumb]] |
||
'''Ретрекер''' (retracker, также встречается термин ''псевдотрекер'') — |
'''Ретрекер''' (retracker, также встречается термин ''псевдотрекер'') — технология оптимизации обмена битторрент (bittorrent) трафиком внутри локальных сетей. Ретрекер позволяет установить прямое соединение по протоколу битторрент между абонентами, каждый из который использует внутренний (локальный) IP-адрес. Технически ретрекер представляет собой простейший [[BitTorrent-трекер|bittorrent трекер]], как правило, анонимный, работающий внутри адресного пространства [[Домовая сеть|локальной сети]] интернет провайдера. Использование ретрекера позволяет [[Peer|пирам]] обмениваться трафиком на повышенной скорости, используя внутреннюю адресацию локальной сети провайдера, так как доступ к локальной сети у многих российских интернет провайдеров разрешен на более высокой скорости, нежели доступ в интернет. Кроме того, использование ретрекера снижает нагрузку на магистральные каналы связи за счет того, что абонентам не нужно скачивать по отдельности одни и те же данные. |
||
Для того, чтобы bittorrent клиент смог воспользоваться преимуществами ретрекера, нужно добавить в список announce url торрента announce url ретрекера. Некоторые трекеры делают это автоматически, добавляя адреса авторизованных ретрекеров на основании анализа IP адреса пользователя. В других случаях пользователям приходится добавлять announce url ретрекера в торрент-файлы самостоятельно, или с помощью специальных программ — торрент-патчеров. Некоторые провайдеры предпринимают попытки установки прозрачного [[прокси-сервер|прокси]], перехватывающего обращения по [[HTTP]] портам к популярным трекерам. Такой прокси изменяет torrent файлы при скачивании и добавляет к ним локальный ретрекер. Также распространенной практикой является добавление основным трекером во все торрент-файлы адреса «retracker.local», который отображается на IP действующего ретрекера DNS серверами провайдера. Существуют также и другие решения проблемы локального обмена битторрент-трафиком. |
Для того, чтобы bittorrent клиент смог воспользоваться преимуществами ретрекера, нужно добавить в список announce url торрента announce url ретрекера. Некоторые трекеры делают это автоматически, добавляя адреса авторизованных ретрекеров на основании анализа IP адреса пользователя. В других случаях пользователям приходится добавлять announce url ретрекера в торрент-файлы самостоятельно, или с помощью специальных программ — торрент-патчеров. Некоторые провайдеры предпринимают попытки установки прозрачного [[прокси-сервер|прокси]], перехватывающего обращения по [[HTTP]] портам к популярным трекерам. Такой прокси изменяет torrent файлы при скачивании и добавляет к ним локальный ретрекер. Также распространенной практикой является добавление основным трекером во все торрент-файлы адреса «retracker.local», который отображается на IP действующего ретрекера DNS серверами провайдера. Существуют также и другие решения проблемы локального обмена битторрент-трафиком. |
Версия от 13:48, 14 июня 2010
Ретрекер (retracker, также встречается термин псевдотрекер) — технология оптимизации обмена битторрент (bittorrent) трафиком внутри локальных сетей. Ретрекер позволяет установить прямое соединение по протоколу битторрент между абонентами, каждый из который использует внутренний (локальный) IP-адрес. Технически ретрекер представляет собой простейший bittorrent трекер, как правило, анонимный, работающий внутри адресного пространства локальной сети интернет провайдера. Использование ретрекера позволяет пирам обмениваться трафиком на повышенной скорости, используя внутреннюю адресацию локальной сети провайдера, так как доступ к локальной сети у многих российских интернет провайдеров разрешен на более высокой скорости, нежели доступ в интернет. Кроме того, использование ретрекера снижает нагрузку на магистральные каналы связи за счет того, что абонентам не нужно скачивать по отдельности одни и те же данные.
Для того, чтобы bittorrent клиент смог воспользоваться преимуществами ретрекера, нужно добавить в список announce url торрента announce url ретрекера. Некоторые трекеры делают это автоматически, добавляя адреса авторизованных ретрекеров на основании анализа IP адреса пользователя. В других случаях пользователям приходится добавлять announce url ретрекера в торрент-файлы самостоятельно, или с помощью специальных программ — торрент-патчеров. Некоторые провайдеры предпринимают попытки установки прозрачного прокси, перехватывающего обращения по HTTP портам к популярным трекерам. Такой прокси изменяет torrent файлы при скачивании и добавляет к ним локальный ретрекер. Также распространенной практикой является добавление основным трекером во все торрент-файлы адреса «retracker.local», который отображается на IP действующего ретрекера DNS серверами провайдера. Существуют также и другие решения проблемы локального обмена битторрент-трафиком.
Важно не путать ретрекеры с обычными локальными трекерами локальных сетей. Ретрекер не ставит задачи обмена торрент-файлами, систематизации торрент-файлов, поиска и так далее. Ретрекер служит исключительно средством повышения скорости обмена данными между пирами.
История ретрекеров
Впервые идея ретрекера была описана и реализована абонентом под псевдонимом unxed сети Корбина телеком (Санкт-Петербург) 24 августа 2007 года.[1] 21 сентября 2007 с подобной инициативой[2] выступила администрация трекера rutracker.org[3]. При этом администрация rutracker.org крайне негативно отозвалась о попытках пользователей локальных сетей организовывать собственные ретрекеры, и предложила свой собственный вариант централизованной установки ретрекеров на технических площадках провайдеров. Первый ретрекер от rutracker.org заработал в пиринговом пространстве домашней сети TiERA в Санкт-Петербурге 5 февраля 2008[4].
Подход rutracker.org в корне не устраивал пользователей, провайдеры которых не желали устанавливать у себя ретрекеры официально. Поэтому в качестве альтернативы «официальным провайдерским» ретрекерам в сентябре 2008 года опять же в сети Корбина телеком в Санкт-Петербурге силами пользователей этой сети была запущена система локальных ретрекеров (re-tracker.ru). С октября 2008 года подобная система начала функционировать в московской сети компании Корбина телеком, покрыв почти полностью городскую локальную сеть.
Впоследствии администрация трекера rutracker.org отказалась от практики добавления индивидуальных адресов ретрекеров на основе диапазона IP клиента. Вместо этого во все торренты добавляется адрес retracker.local (таким образом, желающие провайдеры могут сделать переадресацию этого адреса на свой ретрекер через свои сервера dns).
К сожалению, адрес retracker.local поддерживается далеко не во всех локальных сетях, и, кроме того, не работает, если пользователь использует dns сервера, отличные от dns серверов своего провайдера. Поэтому проблема создания пользовательских ретрекеров в локальных сетях до сих пор остается актуальной.
Система локальных (пользовательских) ретрекеров
Система локальных ретрекеров устроена следующим образом: торрент-файл, который скачивает пользователь, перехватывается программой Torrent Patcher, после этого измененный файл передается торрент-клиенту, например µTorrent. Во время патчинга добавляются списки ретрекеров. Также программа поддерживает «безопасный» способ добавления ретрекеров посредством Magnet-ссылки (работает только на µTorrent версии 1.8.1 и выше). После этого торрент клиент делает запрос на трекеры и на локальные ретрекеры, после запроса на локальные он получает список локальных пиров и это даёт возможность передавать данные по протоколу bittorrent на скорости локальной сети провайдера. При этом сами локальные ретрекеры обычно устанавливают у себя пользователи-энтузиасты.
Преимущества
Преимущества создания ретрекеров на базе компьютеров абонентов (в отличие от ретрекеров, установленных на площадке провайдера):
- возможность работы ретрекера с любым интернет-трекером (а не только с теми, с кем «договорится» провайдер)
- независимость от желания или нежелания провайдера установить ретрекер
- независимость от желания или нежелания администрации крупных трекеров включать адрес ретрекера в торрент-файлы, выдаваемые пользователям данной сети
Недостатки
Недостатки подобного подхода:
- пользователи вынуждены добавлять к торрентам адреса ретрекеров вручную либо устанавливать специализированные патчеры торрентов
- в случае отказа всех пользовательских ретрекеров одновременно (что, конечно, весьма маловероятно) система перестанет работать, а bittorrent-клиенты абонентов будут генерировать бессмысленный трафик
Поддержка ретрекеров через адрес retracker.local
Оригинальная реализация идеи ретрекера была опубликована 10 марта 2009 на сайте nag.ru [5]. Смысл ее сводится к тому, чтобы либо на стороне трекеров, либо на стороне битторрент-клиентов автоматически добавлять во все торренты адрес вида http://retracker.local/. Таким образом, каждый провайдер через настройки своих dns серверов сможет самостоятельно указать адрес своего сервера-ретрекера (а если провайдер не имеет сервера-ретрекера, возможно использование пользовательских ретрекеров через редактирование файла hosts). С 18 сентября 2009 года популярный трекер rutracker.org добавляет в торренты для российских адресов http://retracker.local [6].
Преимущества
- Трекеру не требуется содержать базу адресов, тратить ресурсы на обработку и прочее.
- Позволяет не иметь проблем при смене внешних адресов провайдером, всё автоматически начнёт действовать.
- Даже в случае падения основного трекера локальный продолжит работу и пользователи смогут продолжить скачку.
Недостатки
- Использование зоны .local вызывает конфликт с сервисами Zeroconf — mDNS (например Avahi) и противоречит Draft RFC «Multicast DNS» [7].
- Некоторые торент-клиенты, например Deluge, Vuze обращаются только к первому ответившему трекеру, таким образом либо retracker.local использован не будет, либо будет использован только он.
- Использование абонентом сторонних DNS сервисов (OpenDNS, Google Public DNS и др.) приведет к необходимости ручного указания абонентом IP адреса ретрекера в файле hosts.
Другие решения проблемы локального обмена bittorrent трафиком
На сайте bittorrent.org был опубликован проект расширения протокола битторрент для автоматического обнаружения локальных трекеров.[8] Популярный bittorrent-клиент µTorrent поддерживает это расширение протокола включением опции isp.bep22 в разделе «Дополнительно» окна настроек. В последней на 24.09.2009 версии программы 1.8.4 эта опция по умолчанию выключена, как и в текущих бета версиях 2.0.
Санкт-Петербургский интернет провайдер Ozerki.net использует собственную технологию добавления адреса ретрекера в торрент файлы. Согласно сообщению администратора сети, трафик с торрент-трекеров с помощью фаервола iptables перенаправляется на прокси-сервер на базе Squid, который в свою очередь обрабатывает все скачиваемые пользователями торрент-файлы программой-патчером.[9]
13 ноября 2009 года санкт-петербургский интернет-провайдер SmartHome объявил о запуске своей реализации перехвата и добавления адреса ретрекера, опубликовав полное описание технологии на форуме nag.ru[10], а также анонсировал поддержку расширения isp.bep22 в локальной сети.[11]
Возможности, подобные использованию ретрекеров, предоставляет функция «Local Peer Discovery», присутствующая в bittorrent клиенте µTorrent начиная с версии 1.7 build 1065, выпущенной 5 апреля 2007[12]. Так как эта функция использует multicast пакеты, блокируемые большинством интернет провайдеров для защиты от вирусных эпидемий, область ее применения ограничивается небольшими локальными сетями, состоящими из одного сегмента.
Интересные факты
- Популярный bittorrent клиент µTorrent имеет встроенный анонимный трекер, который может использоваться в качестве ретрекера. Включить его можно в меню «Настройки», «Дополнительно», «bt.enable_tracker» — true. Адрес трекера будет http://ваш_IP:порт_uTorrent/announce
Примечания
- ↑ О введении ретрекера (Корбина, Санкт-Петербург)
- ↑ Идея заключалась в том, чтобы на основании анализа IP адреса клиента определять его провайдера, и добавлять в торрент-файл адрес ретрекера, соответствующий данному провайдеру. При этом добавлялись только ретрекеры, установленные у провайдеров «официально», то есть, на основании договоренности с администрацией трекера.
- ↑ Оптимизация обмена битторрент-трафиком в локальных сетях. Обсуждение на rutracker.org (топик № 405935)
- ↑ http://www.spbit.ru/news/n45521/
- ↑ Идея поддержки ретрекеров через адрес retracker.local на сайте nag.ru
- ↑ Автоматическое добавление адреса retracker.local во все торренты проанонсировано в поздравительном сообщении администратора трекера с юбилеем.
- ↑ Draft RFC «Multicast DNS»
- ↑ Проект расширения протокола битторрент
- ↑ http://ozerki.net/forum/viewtopic.php?f=1&t=21365&start=15
- ↑ Описание технологии перехвата и добавления адреса ретрекера от провайдера SmartHome
- ↑ Анонс провайдера SmartHome о поддержке расширения isp.bep22
- ↑ История изменений µTorrent 1.7
Ссылки
- Система локальных ретрекеров (есть свой патчер торрентов, доступны исходные коды для .NET 2.0)
- pCache — система кэширования p2p трафика
- Псевдотрекер — свободная реализация ретрекера и патчера торрентов, доступны исходные коды на языках php/perl.