BitTorrent/Термины
Здесь описаны некоторые дополнительные понятия, встречающиеся при использовании Битторрент.
Шифрование протокола
[править]Шифрование протокола (англ. Protocol Encryption) поддерживается в БТ клиентах Azureus, BitComet и µTorrent (совместимо друг с другом). В основном шифрование используется для борьбы с провайдерами, распознающими и подавляющими БТ трафик.
Несколько моментов:
- Клиент, начинающий соединение, может запросить шифрованное соединение.
- Все совместимые клиенты, принимая соединение с таким запросом, соглашаются на шифрование вне зависимости от своих настроек.
- При этом трафик шифруется в обе стороны (и скачивание и отдача).
Теперь рассмотрим настройки шифрования в µTorrent.
Есть три варианта для исходящих (тех, которые начинает ваш клиент) соединений:
Выкл: устанавливать обычное (нешифрованное) соединение
Это настройка по умолчанию.
Если ваш провайдер не подавляет БТ трафик и у вас открыт порт для входящих соединений, то можете смело оставлять так. Пользователи, которые из-за своего провайдера могут пользоваться только шифрованным соединением, сами к вам подсоединятся с предложением его начать (если, конечно, они правильно настроили себе клиенты).
Включено: предлагать шифрование, но в случае неудачи устанавливать обычное соединение
То есть шифрованные соединения вам предпочтительнее, но принципе подходят и обычные.
Эта настройка имеет смысл, если ваш провайдер частично подавляет ваш БТ трафик — то есть ваш клиент может и качать и отдавать по обычным соединениям, но медленно.
Кроме того, вы можете выбрать этот вариант, если лично у вас провайдер нормальный, при этом вы снаружи недоступны (порт закрыт), но все-таки хотите общаться с «подавленными» пользователями, которые сами с вами установить соединения не могут из-за вашего порта.
Такой выбор — это компромисс, потому как для шифрования оба клиента используют дополнительные ресурсы процессора, а при такой настройке многие начинаемые вами соединения будут шифроваться, когда они могли бы быть обычными. Кроме того, процент «подавленных» провайдерами пользователей неизвестен, и может быть на раздачах, где вы участвуете, их вообще нет.
Форсировано: предлагать шифрование, и в случае неудачи обычное соединение НЕ устанавливать
То есть обычные соединения для вас бесполезны — ваш провайдер полностью или слишком сильно их подавляет.
В этом — и только в этом — случае имеет смысл также убрать находящуюся рядом галочку «Пропуск…». Убирание галочки означает, что обычные соединения вы не будете также и принимать.
Разумеется, если у вашего клиента недоступен снаружи порт прослушивания, то входящих соединений у вас в принципе нет и эта галочка ни на что не влияетю
Как определить, подавляет ли ваш провайдер нешифрованный БТ трафик?
Можно поспрашивать соседей по провайдеру. Или посетить местные форумы. Или сделать web-поиск по названию провайдера и словам БитТоррент, или BitTorrent, или encryption, и т. п.
Несколько крупных западных провайдеров есть в списке Azureus: ISP that are bad for BT, или можно про них поискать на форуме на dslreports.com.
Можно попытаться примерно определить самому: разрешить в клиенте шифрование, подсоединиться к популярным раздачам и в клиенте посмотреть, как много качается или отдается на шифрованных и обычных соединениях. В µTorrent шифрованные соединения обозначаются буквами «e» или «E» в столбце «Флаги» на вкладке «Пиры».
Некоторые провайдеры подавляют трафик только в определенное время суток, если, например, после 12 ночи у вас каждый раз очень резко возрастает скорость, то возможно это оно и есть.
В заключение хотелось бы отметить, что при низкой скорости скачивания или отдачи искать причину в подавлении трафика провайдером стоит в последнюю очередь. В большинстве случаев низкие скорости объясняются другими причинами, на первом месте из которых — просто недостаточное количество раздающих или качающих на раздаче.
См. также
Разные термины
[править]Раздача
[править]Процесс распространения файла по протоколу BitTorrent. Обращение клиента к трекеру.
Пир
[править](англ. peer — участник) — клиент, участвующий в раздаче. Иногда пирами называют только скачивающих участников.
Сид
[править](англ. seeder — сеятель) — пир, имеющий все сегменты распространяемого файла, то есть либо начальный распространитель файла, либо уже скачавший весь файл.
Личер
[править](англ. leech — пиявка) — пир, не имеющий пока всех сегментов, то есть продолжающий скачивание. Термин часто употребляется и в негативном смысле, который он имеет в других файлообменных сетях: пользователь, который отдает гораздо меньше, чем скачивает.
Рой
[править](англ. swarm) — совокупность всех пиров, участвующих в раздаче.
Доступность
[править](англ. availability, также distributed copies) — количество полных копий файла, доступных клиенту. Каждый сид добавляет 1.0 к этому числу, личеры увеличивают доступность в зависимости от количества скачанного, которого нет у других личеров. К примеру, если на раздаче есть один сид и два личера с 50 % и скачанные части равны между собой, то доступность равна 1.50.
Рейтинг (ратио)
[править](англ. share ratio) — отношение отданного к скачанному. Часто на трекерах выставленно ограничение на кол-во одновременно скачиваемых файлов при маленьком рейтинге(ратио).
Announce
[править]Обращение клиента к трекеру.
При каждом announce клиент передаёт на трекер информацию об объёмах им скачанного и отданного, a трекер передаёт клиенту список адресов других клиентов.
Обращение клиента к трекеру происходит через определённые интервалы времени, которые определяются настройками клиента и трекера.
Announce URL
[править]Адрес трекера, к которому клиент делает announce. Во многих клиентах называется Tracker URL. Может включать passkey. udp://bt.rutor.info:2710
Scrape
[править]Дополнительный протокол запроса клиента к трекеру, при котором трекер сообщает клиенту общее количество сидов и пиров на раздаче.
В отличие от announce, запрос scrape:
- не имеет прямого отношения к скачиванию раздачи;
- является необязательным;
- может запрашиваться и для остановленных в клиенте заданий;
- отнимает меньше ресурсов и клиента и трекера;
- может одним запросом получить информацию сразу по нескольким торрентам (multi-scrape).
Клиент с помощью scrape может показать пользователю точные количества сидов и пиров на каждом задании, включая остановленнные.
Некоторые клиенты, например Azureus, также могут с помощью scrape:
- раньше узнать о том, что на раздаче появились дополнительные участники, и сделать внеочередной announce для получения их адресов;
- автоматически останавливать и запускать сидирование заданий в зависимости от числа сидов и пиров, в результате сидируя там, где это нужнее.
Для уменьшения бесполезной нагрузки на клиент и на трекер scrape в клиенте лучше выключить. Включайте scrape, только если он вам действительно нужен и админы вашего трекера подтвердили, что их трекер поддерживает scrape. Существует мнение, что большинство русскоязычных трекеров scrape не поддерживают.
См. также
- wiki.theory.org: Scrape(англ.)
- Azureus Wiki: Scape(англ.)
Файл метаданных
[править]BitTorrent не имеет системы поиска: для каждого распространяемого файла создаётся файл метаданных с расширением torrent, который содержит следующую информацию:
- URL трекера (см. ниже);
- общую информацию о закачиваемом файле (имя, длину и пр.);
- контрольные суммы (точнее, хэш-суммы SHA1) сегментов закачиваемого файла.
Файлы метаданных могут распространяться через любые каналы связи — например, эти файлы (или ссылки на них) могут выкладываться на веб-серверах, размещаться на домашних страницах пользователей сети, рассылаться по электронной почте, публиковаться в блогах или новостных лентах RSS.
Клиент начинает закачку получив каким-либо образом файл с метаданными, в котором есть ссылка на трекер.
Трекер
[править](англ. tracker — проводник) — специализированный сервер, работающий по протоколу HTTP. Трекер нужен для того, чтобы клиенты могли найти друг друга. Фактически, на трекере хранятся IP-адреса, входящие порты клиентов и хэш-суммы, уникальным образом идентифицирующие объекты, участвующие в закачках. По стандарту имена файлов на трекере не хранятся и узнать их по хэш-суммам нельзя. В практических реализациях, однако, трекер часто, помимо своей основной функции, выполняет и функцию небольшого веб-сервера. Такой сервер хранит файлы метаданных и описания распространяемых файлов, предоставляет статистику закачек по разным файлам, показывает текущее количество подключенных пиров и пр.
Супер сид
[править](англ. Super seeding) — является особенностью некоторых клиентов BitTorrent, которые пытаются минимизировать объём данных до первого завершения загрузки пира. Это было задумано Джоном Хофманом и сначала было осуществлено на клиенте BitTornado в середине 2003 г. Эта особенность должна использоваться, когда есть только один сидер. Super seeding характеризуется изменением в поведении сидеров и не может быть осуществлено без нарушения протокола BitTorrent. Тем не менее это не утверждается ни разработчиком протокола, Брэмом Коэном, ни в официальном клиенте. Супер-сид заставляет пользователей делиться скачаным. Отдав одному участнику какую-либо часть файла, клиент ничего больше ему не даст, пока не увидит в сети вторую копию этой части. Естественно, общая скорость отдачи падает. Как только происходит переключение в обычный режим, клиент начинает раздавать всем и скорости возрастают. Супер-сид эффективен при раздачах с большим количеством качающих. Если качающих 2—3 человека и их клиенты в силу разных причин отказались устанавливать связь друг с другом, то передача данных останавливается. Когда качающих много (10—20 человек), из экономии достаточно раздать до коэффициента 1. Тогда в сети окажутся все части файла, и пиры смогут ими обменяться.