Суббота, 19.10.2024, 17:28
Приветствую Вас Гость

Ulitko

Меню сайта
OC(системы)
Видео онлайн
Учёба
Категории раздела
Мини-чат
200
Наш опрос
Оцените мой сайт
Всего ответов: 39
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Главная » Файлы » Софт » Интернет

Torrent
[ Скачать с сервера (385.9 Kb) ] 07.12.2010, 16:53


Как это работает?

Рассмотрим два случая. В обоих случаях 1000 человек скачивают один и тот же файл:

1. файл скачивается через http или ftp.

2. файл скачивается через torrent.

Посмотрим, что происходит в первом случае. Пропускная способность канала сервера = около 1 Mb в секунду. 1 Mb поделить на 1000 — получается 1 Kb в секунду. Это в теории, на практике же кто-то будет качать и на 15-20 Kb в секунду, но человек 500 качать не будут вообще — сервер физически не сможет обработать запросы от них. Результат: все недовольны, 1000 человек в сумме будут скачивать большой файл (например, фильм) неделю с дикими тормозами. Что характерно: чем больше народу будет качать, тем каждому будет хуже.

Во втором случае те же 1000 человек качают файл через torrent. Что при этом происходит? Сначала файл есть только в каком-то одном месте — допустим, на сервере myserver.ru. И вот к серверу подключились 1000 клиентов (программ, осуществляющих загрузку файла по протоколу BitTorrent). Сервер, соответственно, начинает отдавать файл — но не просто отдавать, а по фрагментам: первому клиенту фрагмент № 1, второму — № 2, третьему — № 3 и т.д. И как только первые несколько клиентов получают свои фрагменты файла, начинается раздача (англ. seeding) — процесс распространения файла по протоколу BitTorrent. Клиент-2, уже владеющий фрагментом № 2, начинает скачивать фрагменты № 1 и № 3 — но уже не с сервера myserver.ru, а у клиента-1 и клиента-3; сам же отдает им для скачивания свой фрагмент № 2. И такой взаимообмен начинается между всеми клиентами.

Понятно, что за счет этого существенно вырастает общая скорость скачивания. Теоретически она будет равна скорости сервера + сумме скоростей всех, кто с этого сервера качает файл. А так как разным клиентам раздаются разные фрагменты файла, им всегда есть что скачать друг у друга. Результат — через несколько часов сервер раздаст достаточное количество копий файла, чтобы пользователи могли его скачивать фактически на пределе своего канала. В противоположность первому случаю, чем больше народу будет скачивать, тем всем будет лучше!

 

Проиллюстрируем наглядно работу BitTorrent. В нижеследующей анимации (смена кадров 1 раз в 5 секунд) изображена пиринговая сеть — сервер, на котором находится файл, состоящий из 6 фрагментов, которые условно отмечены разными цветами, и 7 клиентов (компьютеров), которые подключаются к серверу для загрузки этого файла. Сервер отдает клиентам разные фрагменты файла — и далее клиенты начинают обмен между собой, а сервер освобождается. Направления передачи фрагментов обозначены стрелками соответствующих цветов.

Такая раздача файла полностью контролируется трэкером (англ. tracker). Так называется специализированный сервер, работающий по протоколу http. Трекер нужен для того, чтобы клиенты могли найти друг друга. Фактически, на трекере хранятся IP-адреса, входящие порты клиентов, и хэш-суммы, уникальным образом идентифицирующие объекты, участвующие в закачках. По стандарту, имена файлов на трекере не хранятся и узнать их по хэш-суммам нельзя. (Поэтому с появлением торрентов туда первыми перекочевали варез и мультимедиа-контрафакты — владельцам авторских прав практически невозможно отследить торрент-распространителей нелегальной продукции.)

 

В новых версиях протокола были разработаны бестрекерные (англ. trackerless) системы. Отказ трекера в таких системах не приводит к автоматическому отказу всей сети. Но на данный момент еще не все клиенты используют совместимый друг с другом протокол.

Терминология

Раздача (англ. seeding) — процесс распространения файла по протоколу BitTorrent.

Пир (англ. peer — соучастник, а вся торрент-сеть называется пиринговой сетью) — клиент, участвующий в процессе загрузки и раздачи файла. Иными словами: пир скачивает файл и одновременно с этим раздает другим пирам те фрагменты файла, которые он уже скачал.

Сид, или сидер (англ. seeder — сеятель) — пир, уже имеющий все фрагменты распространяемого файла (то есть либо начальный распространитель файла, либо уже скачавший весь файл), но продолжающий раздавать фрагменты файла другим участинкам пиринговой сети.

Личер (англ. leech — пиявка) — пир, не имеющий пока всех фрагментов, то есть продолжающий скачивание. Термин чаще употребляется в негативном смысле: пользователь, который отдает гораздо меньше, чем скачивает.

Рой (англ. swarm) — совокупность всех пиров, участвующих в раздаче.

Доступность (англ. availability) — количество полных копий файла, доступных клиенту. Каждый сид добавляет 1.0 к этому числу; личеры увеличивают доступность в зависимости от количества скачанного, которого нет у других личеров. К примеру, если на раздаче есть один сид и два личера, скачавшие по 50% файла (скачанные части совпадают), то доступность равна 1.50.

Анонс (англ. announce) — обращение клиента к трекеру. При каждом анонсе клиент передаёт на трекер информацию об объёмах им скачанного и отданного, a трекер передаёт клиенту список адресов других клиентов. Обращение клиента к трекеру происходит через определённые интервалы времени, которые определяются настройками клиента и трекера.

Рейтинг (англ. share ratio) — отношение отданного к скачанному, т.е. если, например, клиент скачал 100 Mb, а отдал другим клиентам 50 Mb, то его рейтинг = 0.5. Залогом успеха любой пиринговой сети является правило, требующее от пользователей не только загрузки файлов, но и предоставление их другим. Между тем, в силу разных причин весьма часто пользователи предпочитают как можно быстрее загрузить файл и отключиться, несмотря на то, что в правила этикета записана просьба поделиться с другими пользователями. Это снижает количество доступных источников для других, из-за чего страдают стабильность и качество сети. Собственно, рейтинг представляет собой метод борьбы с такими «эгоистами»: клиенты с высоким рейтингом получают приоритет на чужих серверах, а клиенты с низким при загрузке популярного файла уходят в конец очереди, да и просто могут быть забанены в пиринговой сети. Поэтому о своем рейтинге рекомендуется заботиться с самого начала. Подробно это описано на странице Практика.

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

Спасибо за внимание !

Категория: Интернет | Добавил: Admin_LiMEn
Просмотров: 397 | Загрузок: 36 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
3d облако тегов
Новости
Видео(Фильмы)
Музыка
Софт
Игры
Погода
Друзья сайта