Изменения

Перейти к навигации Перейти к поиску
11 265 байт добавлено ,  16 лет назад
откат
Строка 12: Строка 12:       −
ujhgilsbsdivgbiubvuivbhudfi
+
== Терминология ==
dfvoijhio
+
:''Основная статья [[терминология BitTorrent]]''
asdfg
+
* ''[[Личер]]'' ({{lang-en|leech}} — пиявка) — пир, не имеющий пока всех сегментов, то есть продолжающий скачивание. Термин часто употребляется и в негативном смысле, который он имеет в других файлообменных сетях: пользователь, который отдает гораздо меньше, чем скачивает.
rgvsfvsdfv
+
* ''[[Пир]]'' ({{lang-en|peer}} — соучастник) — клиент, участвующий в раздаче. Иногда пирами называют только скачивающих участников.
vbdfvbfb
+
* ''[[Сид]]'', иногда ''сидер'' ({{lang-en|seeder}} — сеятель) — пир, имеющий все сегменты распространяемого файла, то есть либо начальный распространитель файла, либо уже скачавший весь файл.
dfbfbfbfg
+
* ''[[BitTorrent трекер|Трекер]]'' - сервер, помогающий клиентам находить друг друга.
dbngfgnhmsdfb
+
 
sbdfbsdf
+
=== Общие особенности ===
 +
* Отсутствие [[очередь|очередей]] на скачивание.
 +
* [[Файл]]ы закачиваются небольшими [[сегмент]]ами; чем менее доступен сегмент, тем чаще он будет передаваться. Таким образом, присутствие в сети «[[#Терминология|сидера]]» с полным файлом для загрузки необязательно — система распределяет сегменты между «[[#Терминология|пирами]]», чтобы в последующем они могли обмениваться недостающими сегментами.
 +
* [[Клиент (программный)|Клиенты]] ([[peer]]s) обмениваются сегментами непосредственно между собой, по принципу «ты — мне, я — тебе».
 +
* Скачанные сегменты становятся немедленно доступны другим клиентам.
 +
* Контролируется [[целостность]] каждого сегмента.
 +
* В качестве объекта закачки могут выступать несколько файлов (например, содержимое [[каталог]]а).
 +
 
 +
=== Протоколы и порты ===
 +
Клиенты соединяются с трекером по протоколу [[TCP]]. Входящий порт трекера: 6969.
 +
 
 +
Клиенты соединяются друг с другом, используя протокол [[TCP]]. Входящие порты клиентов: 6881—6889.
 +
 
 +
Номера портов не фиксированы в спецификации протокола и могут изменяться при необходимости. Более того, в данный момент большинство трекеров используют обычный [[HTTP]] порт 80, а для клиентов рекомендуется выбрать случайный входящий порт.
 +
 
 +
[[DHT]]-сеть в BitTorrent-клиентах использует протокол [[UDP]].
 +
 
 +
Кроме того, протокол [[UDP]] используется [[:en:UDP tracker|UDP-трекерами]] (не поддерживается всеми клиентами и не является официальной частью протокола) и для соединения клиентов друг с другом через [[UDP]] [[NAT]] Traversal (используется только в клиенте BitComet и не является официальной частью протокола).
 +
 
 +
=== Torrent файл ===
 +
Для каждого распространяемого файла создаётся файл [[метаданные|метаданных]] с расширением .torrent, который содержит следующую информацию:
 +
* [[URL]] трекера;
 +
* общую информацию о закачиваемом файле (имя, длину и пр.);
 +
* [[Хеширование|контрольные суммы]] (точнее, [[хэш-сумма|хэш-суммы]] [[SHA1]]) сегментов закачиваемого файла.
 +
 
 +
Файлы метаданных могут распространяться через любые каналы связи: они (или ссылки на них) могут выкладываться на [[веб-сервер]]ах, размещаться на домашних страницах пользователей сети, рассылаться по [[электронная почта|электронной почте]], публиковаться в [[Блог|блогах]] или новостных лентах [[RSS]]. Клиент начинает скачивание, получив каким-либо образом файл с метаданными, в котором есть ссылка на ''трекер''.
 +
 
 +
Первоначально BitTorrent не имел собственной поисковой системы, но в мае [[2005]] года [[Коэн, Брэм|Брэм Коэн]] [http://www.betanews.com/article/BitTorrent_Creator_Opens_Online_Search/1117065427 устранил этот недостаток.]
 +
 
 +
=== Трекер ===
 +
: ''Основная статья [[BitTorrent трекер]]''
 +
'''Трекер''' ({{lang-en|tracker}};  — специализированный [[сервер]], работающий по протоколу [[HTTP]]. Трекер нужен для того, чтобы клиенты могли найти друг друга. Фактически, на трекере хранятся [[IP-адрес]]а, входящие порты клиентов и [[хэш-сумма|хэш-суммы]], уникальным образом идентифицирующие объекты, участвующие в закачках. По стандарту, имена файлов на трекере не хранятся, и узнать их по хэш-суммам нельзя. Однако на практике трекер часто помимо своей основной функции выполняет и функцию небольшого [[веб-сервер]]а. Такой сервер хранит файлы метаданных и описания распространяемых файлов, предоставляет статистику закачек по разным файлам, показывает текущее количество подключенных пиров и пр.
 +
 
 +
=== Работа без трекера ===
 +
В новых версиях протокола были разработаны бестрекерные ({{lang-en|trackerless}}) системы, которые решают некоторые из предыдущих проблем. Отказ трекера в таких системах не приводит к автоматическому отказу всей сети.
 +
 
 +
Начиная с версии 4.2.0 официального клиента, в нем реализована функция бестрекерной работы, базирующаяся на протоколе [[Kademlia]]. В таких системах трекер доступен децентрально, на клиентах, в форме [[DHT|распределенной хеш-таблицы]].
 +
 
 +
На данный момент еще не все клиенты используют совместимый друг с другом протокол. Совместимы между собой [[BitComet]], [[µTorrent]], [[KTorrent]] и [[BitTorrent (программа)|официальный клиент BitTorrent]]. [[Azureus]] также имеет режим бестрекерной работы, но его реализация отличается от официальной, вследствие чего он не может [http://www.utorrent.com/faq.php#What_is_DHT.3F работать через DHT с вышеперечисленными клиентами.]
 +
 
 +
=== Super seeding (cупер-сид) ===
 +
[[‎Super-seeding|Супер-сид]] — метод, реализованный в тех клиентах BitTorrent, авторы которых пытаются минимизировать объем данных до первого завершения загрузки пира. Метод был задуман Джоном Хофманом и впервые был осуществлен в клиенте «BitTornado» в середине 2003 г.
 +
 
 +
Супер-сид является изменением в поведении сидеров и не может быть осуществлен без нарушения протокола BitTorrent. Тем не менее, это не утверждается ни разработчиком протокола, Брэмом Коэном, ни в официальном клиенте.
 +
 
 +
Супер-сид действует, когда имеется только один сидер. Фактически, он заставляет пользователей делиться скачанными данными. Клиент, отдавший одному участнику какую-либо часть файла, прекращает передачу данных до тех пор, пока не обнаружит в сети вторую копию этой части. Поскольку многие участники не имеют возможности или не желают делать доступными для других скачанные данные, общая скорость отдачи падает. В обычном режиме же, в отличие от супер-сид, каждый всегда получает запрошенную информацию, если она имеется, поэтому в нем средняя скорость передачи данных выше.
 +
 
 +
Супер-сид эффективен при раздачах с большим количеством качающих. При небольшой группе людей (2—3 человека) их клиенты в силу разных причин могут отказаться устанавливать связь друг с другом. В этом случае включенный супер-сид заставит клиентов ждать, пока данные станут доступны. Когда число качающих велико (10—20 человек), достаточно отдать каждую часть файла только один раз, тогда клиенты смогут обменяться ею между собой, и каждый из них получит файл целиком.
    
== Принцип работы протокола ==
 
== Принцип работы протокола ==
Анонимный участник

Реклама:

Навигация