Архивы: по дате | по разделам | по авторам

Что такое пиринг? Это файлы!

Архив
автор : Александр Красоткин   06.02.2004

Как-то раз мне пришлось долго разыскивать одну узкоспециальную и потому редкую программу. Были проверены ссылки с нескольких десятков страниц различных поисковых систем. Заданы вопросы в тематических, околотематических и совсем «нетематических» форумах.

Как-то раз мне пришлось долго разыскивать одну узкоспециальную и потому редкую программу. Были проверены ссылки с нескольких десятков страниц различных поисковых систем. Заданы вопросы в тематических, околотематических и совсем «нетематических» форумах. Отчаявшись, я уж было решил закончить безуспешные поиски, как вдруг в одном из писем встретил фразу «посмотри в ослике».

Оказалось, «ослик» — это не известный своим упрямством представитель отряда непарнокопытных, а eDonkey — система обмена файлами между Интернет-пользователями. Для обозначения такого способа коммуникаций из английского языка было заимствовано слово пиринг (от peer-to-peer, или P2P, — «соединение равноправных систем»). Вспомнив, что в 2000 году с владельцами одной из первых файлообменных сетей — Napster — судилась группа Metallica, обвинив их в нарушении авторских прав, я стал разбираться дальше. Прав был Козьма Прутков: «Специалист подобен флюсу». В поисках была упущена огромная область. По косвенным оценкам, ежедневный обмен данными в пиринговых системах оценивается десятками гигабайт. Согласитесь, это весьма заметная активность, чтобы оставить ее без внимания.

Возникновение пиринговых сетей обязано старому желанию пользователей обмениваться друг с другом файлами. Чтобы воспользоваться ее услугами, не нужен ни собственный сервер в Интернете, ни постоянный сетевой адрес. Эта возможность доступна всем; и тем, кто работает на выделенном канале, и тем, кто подключен по медленной телефонной линии. Используя специализированное программное обеспечение, клиент пиринговой сети указывает (или, по пиринговой терминологии, публикует), какие файлы он предоставляет для скачивания, а какие хочет получить сам. Затем передает эти списки серверу Р2Р-системы. Тот, обрабатывая запросы, подбирает подходящих партнеров. Данные кочуют между партнерами напрямую или при посредничестве сервера, если прямое соединение не может быть установлено (например, из-за брандмауэров).

Описанная выше модель пиринговой сети с участием сервера-посредника получила название централизованной. Кроме того, есть и децентрализованные сети, когда каждый компьютер одновременно выполняет функции и клиента, и сервера. В этом случае запросы посылаются не на определенный сервер, а на компьютеры других клиентов, а те передают запрос дальше, как в эстафете.

Для ускорения обмена каждый передаваемый файл разбивается на несколько блоков. В этом случае можно одновременно получать один файл, точнее различные его блоки, из нескольких источников.
Теперь остановимся на самых известных сетях более подробно.

KaZaA

Многие клиенты этой сети уже не могут без дрожи слышать ее название. Американская Ассоциация звукозаписывающих компаний (RIAA) выиграла несколько десятков дел, возбужденных против участников KaZaA, которые были обвинены в нелегальном распространении музыкальных композиций. В суде фигурировали нотариально заверенные фотографии программы-клиента KaZaA со списками опубликованных пользователями файлов. Не спасали и псевдонимы: провайдеры добровольно предоставили сведения о владельцах сетевых адресов, с которых нелегально распространялась информация. Сумма исков составила в среднем от одного до трех тысяч долларов США. По сообщениям представителей RIAA, общее число исков пока не превысило тысячи.

Структурно KaZaA — смешанная сеть, с элементами как централизованной, так и децентрализованной сети. Существует нескольких центральных узлов, к которым подключаются клиенты. Любой клиент может сыграть роль узла, имея достаточно мощный компьютер и широкий канал. Для работы в сети владельцы предлагают программу Kazaa Media Desktop (KMD, текущая версия 2.6). Интерфейс английский. Работает KMD под управлением любой операционной системы из семейства Windows. Клиент содержит встроенный антивирус, и по совместительству его можно использовать как полноценный Интернет-браузер. Недостаток пробной версии программы — перегруженность рекламными модулями.
Существуют два альтернативных клиента: Kazaa Lite и Kazaa K++. В них отсутствуют рекламные и шпионские блоки (adware, spyware), но фирма Sharman Networks, которой принадлежит сеть KaZaA, через различные рейтинги вводит ограничения для пользователей, работающих с альтернативными клиентами.

В последнее время владельцы KaZaA проводят кампанию по переводу обмена файлами на коммерческую основу, и клиентам предлагается разместить на своих компьютерах платную информацию. Утилита Peer Points Manager ведет учет скачанных файлов, в зависимости от объема которых начисляются очки. Клиентов, набравших наибольшее число очков, объявляют победителями, награждают призами или доступом к платной информации. Кстати, про сетевой трафик владельцы KaZaA скромно умалчивают и затрат на него не возмещают.

Если верить статистике, KaZaA — самая популярная файлообменная сеть в англоязычном Интернете.

Gnutella

В 1999 году был разработан механизм первой полностью децентрализованной файлообменной сети, названный Gnutella. Вскоре разработчик (компания NullSoft) прекратил сопровождение проекта, переложив все заботы на плечи альтруистов и энтузиастов. Их добровольным, но не всегда скоординированным усилиям Интернет-сообщество обязано возникновению двух с лишним десятков программ-клиентов для Gnutella, среди которых наиболее известен Morpheus.

Главный недостаток Gnutella — медленный и зачастую неточный поиск. Несмотря на то что механизм работы этой сети по сравнению с децентрализованными пиринговыми сетями нового поколения (Grokster, Gnutella2) морально устарел, Gnutella до сих пор пользуется популярностью у англоязычной части населения Интернета.

FreeNet — Free Network Project

Девизом этого проекта выбрана анонимность и свобода волеизъявления пользователей.

Структурно FreeNet — децентрализованная сеть, которая образована системами постоянных и временных клиентов. Объединенные ресурсы постоянных клиентов сети представляют собой гигантскую виртуальную файловую систему, хранящую зашифрованные данные. Для публикации файла клиент отсылает в сеть специальное сообщение, в котором содержится сам файл и его уникальный идентификационный номер, причем отправляющий не знает, на каких узлах будет храниться файл. Для получения файла отсылается запрос, содержащий идентификатор требующегося документа. Узел, хранящий запрошенный файл, при получении запроса связывается с отправителем и отсылает файл. Таким образом, от клиентов сети скрывается информация об источниках, опубликовавших данные. Платой за анонимность стала низкая скорость работы сети и отсутствие механизма поиска данных. Чтобы узнать, какие файлы опубликованы, приходится искать описания документов и их идентификаторы в различных индексных списках. Это похоже на работу в Интернете до появления поисковых машин.

Для работы в сети FreeNet предлагается одноименный Java-клиент (текущая версия 0.5.2.1). Поддерживаются Windows 95/98/NT/Me/XP/2000 и Unix/Linux-системы. Требуется также установить Sun Java Runtime Environment версии 1.4.1 или выше. Программа-клиент для FreeNet не содержит каких-либо рекламных модулей и распространяется свободно по лицензии GNU GPL. Управление осуществляется через веб-интерфейс. Для подключения к нему в адресной строке браузера надо набрать «http://127.0.0.1:8888/».

К потенциальным недостаткам этого проекта можно также отнести небольшое количество опубликованных файлов и англоязычное меню управления.

Хотя документы в сети и публикуются анонимно, информацию о партнерах можно получить из анализа трафика соединений FreeNet. Правда, это даст только сетевые адреса, но не ответ на вопрос, хранит ли выявленный ресурс информацию или является посредником.

В последние несколько месяцев FreeNet испытывает резкий приток клиентов. По всей видимости, это связано с судебными победами RIAA над клиентами KaZaA.

eDonkey2000

Архитектура eDonkey2000 смешанная. Сеть состоит из десятков независимо работающих серверов, обрабатывающих запросы подключенных к ним клиентов. Разработчик сети предлагает одноименную программу-клиент (текущая версия 0.52). Поддерживаются все операционные системы семейства Windows, а также Linux и Mac OS X. Графический интерфейс предоставлен только для Windows-пользователей, остальных ожидает лаконичный интерфейс командной строки. В интуитивно понятный и логичный графический интерфейс eDonkey2000 включен рекламный баннер, от которого, впрочем, легко избавиться. Программа англоязычная, но в Интернете есть русификаторы для нее.

Для идентификации файлов в сети используются не имена, а контрольные суммы — результат вычислений определенных математических функции от содержимого файла. Применяемые методы обеспечивают однозначное определение эквивалентности файлов, которые отличаются только именами.

В настройках следует обратить внимание на установку соотношения скоростей отдачи/скачивания файлов (пункт меню [Options][Network] upload/download). Чтобы быстрее получить файл, нужно установить более высокую скорость для партнеров по пиринговой сети, получающих файлы уже с вашего компьютера. При максимальной скорости отдачи до 4 Кбайт/с это соотношение установлено 1 к 3. При скорости отдачи в 2 Кбайт/с максимальная скорость скачивания составит 6 Кбайт/с. Для скорости от 5 до 9 Кбайт/с соотношение равно 1 к 4. При скорости отдачи 10 Кбайт/с скорость скачивания не ограничена. Ограничение скорости передачи рекомендуется устанавливать на уровне не более 80% от пропускной способности канала.

Программа устроена так, что на время получения файла он доступен для скачивания другим. Можно посмотреть данные о переданном/полученном трафике как за последнюю сессию, так и за весь период работы. Предоставлена возможность послать сообщение партнерам, а добавив партнера в число доверенных лиц (friend), можно просмотреть все опубликованные им файлы.

eDonkey стал родоначальником нескольких проектов, среди которых я бы отметил eMule и Overnet. При сохранении базовых технических принципов, реализованных в eDonkey, они по ряду критериев заметно эффективнее своего предшественника.

eMule — клиент для сети eDonkey2000. Развивается независимыми разработчиками как проект Open Source. Исходные коды программы доступны вместе с установочным бинарным вариантом. Рассматриваемая версия имеет номер 0.30e.

Очевидные достоинства: более удобный, чем в eDonkey, интерфейс, отсутствие рекламы и встроенная поддержка русского языка. Значительно улучшена процедура загрузки файлов: например, в первую очередь загружаются наиболее редкие блоки файла. При повреждении блока повторно скачивается не весь блок, а только поврежденная часть. Изменения коснулись и поискового механизма. Чат, унаследованный от «ослика», усилен возможностью подключения к IRC-каналу. В состав eMule включен планировщик задач, а также модуль удаленного управления программой через веб-интерфейс.

Как и с клиентом eDonkey2000, для работы требуется подключение к серверу. Таким образом, по-прежнему остается актуальной проблема поиска лучших серверов сети и подключения к ним. Но при этом в eMule можно получить список серверов не только с определенного ресурса, но и от партнеров по сети. Кроме того, партнеры могут обмениваться списками источников скачиваемых файлов, что тоже снижает потребность в серверах.
Проведена своего рода социальная адаптация программы: приоритет в скачивании отдается тому, кто уже предоставлял вам свои ресурсы. При желании можно ограничить доступ к спискам сетевых адресов или к именам конкретных клиентов пиринговой сети.

Общее впечатление от eMule — лучшая альтернатива морально устаревшему клиенту eDonkey2000.

Младший брат eDonkey2000 — проект Overnet — уже полностью децентрализованная сеть, не использующая серверы-посредники. Разработчики учли предыдущий опыт и избавили эту сеть от потенциально слабых мест. Участник Overnet имеет доступ и в родственную сеть eDonkey2000. На сем основные изменения и заканчиваются.

Клиентская программа Overnet (текущая версия 0.52) работает под теми же операционными системами, что и eDonkey2000, от него же унаследован механизм настроек. Интерфейс сохранил функциональность и прозрачность, а вот поддержка русского языка так и не появилась.

Несмотря на заявленную в Overnet возможность одновременной работы в двух сетях, поиск не всегда обнаруживал опубликованные в сети eDonkey2000 документы. Но трудно не признать, что количество доступных через Overnet файлов значительно больше. Кроме того, именно в сетях eDonkey2000/Overnet было найдено больше всего документов и программ на русском языке.

Наконец отметим бесплатную утилиту Shareaza (текущая версия 1.9), позволяющую одновременно работать в нескольких сетях: Gnutella2, Gnutella, eDonkey2000. Также включена поддержка стандарта файлообмена BitTorrent. Программа аккумулирует лучшие черты рассмотренных клиентов. Отсутствие рекламы и бесплатное распространение делают Shareaza отличным выбором для тех, кого не пугает англоязычный интерфейс: программа хоть и поддерживает несколько языков, но, к сожалению, русский не входит в их число.

Рассмотренными примерами файлообменные сети, конечно, не исчерпываются. В рубрике «File Sharing» поисковой системы Google приводится список из более чем восьмидесяти проектов.

Вместо эпилога

Популярность файлообменных сетей растет с каждым годом. У них есть очевидные достоинства — альтернатива традиционным способам распространения данных в Интернете. И закамуфлированные недостатки — добросовестность (вернее, недобросовестность) клиентов. Оппоненты пиринговых сетей, оценивая ежемесячные убытки от нелегального распространения программного обеспечения и музыкальных композиций, называют суммы в миллиарды долларов. Помимо этого, пиринговые сети стали каналом распространения компьютерных вирусов. Но несмотря на проблемы, эволюция технологий продолжается, принося пользователям Сети больше радости, чем неприятностей.  

FAQ

Так какая же пиринговая сеть самая лучшая?

Та, в которой удалось найти разыскиваемые документы. Наполнение сетей обеспечивают клиенты. Создатели же сетей предоставляют лишь механизмы поиска и передачи файлов. Маловероятно, что в какой-либо сети вы всегда найдете то, что нужно. Часто приходится обращаться к разным сетям. Например, в eDonkey традиционно работает много русскоязычных клиентов. Отсюда — большой объем содержимого на русском языке: от текстовых документов до фильмов. А искать последние музыкальные американские хиты удобнее в KaZaA или Gnutella.

Так что выбор пиринговой сети — дело личных предпочтений. Если в качестве основного критерия ставится русский язык, то я рекомендую eDonkey2000 и клиент eMule. А изучавшие английский язык в школе вполне справятся с Shareaza/Overnet. Если же важна анонимность, выбирайте FreeNet.

Что означает ссылка ”ed2k://|file|VoiD — Unix Utils …”?

Ссылки подобного вида все чаще встречаются в Интернете. Они указывают на файл, выложенный в сети eDonkey2000/Overnet. Чтобы получить его, надо в командной строке клиента eDonkey2000/Overnet набрать команду «dllink ed2k://|file|<filename>|<size_in_bytes>|<hash>|» или щелкнуть по ссылке при запущенной программе eDonkey/eMule.

Программа сообщает, что некий порт на моем компьютере закрыт (firewalled). Чем это грозит?

Желаемым условием работы в пиринговой сети является требование доступности со стороны Интернета определенного сетевого порта клиентского компьютера (4662 для eDonkey/eMule). Если по каким-то причинам порт недоступен, то при закачке/передаче данных возникают сложности. Например, в eDonkey, если порт недоступен одновременно у двух клиентов-партнеров, то связь между ними возможна только при посредничестве сервера. Это приводит к существенному замедлению скорости соединения.

Насколько безопасно работать в пиринговой сети?

Отключение персонального брандмауэра при любой работе в Интернете может стать серьезной ошибкой. Также документы, полученные из файлообменной сети, вряд ли стоит классифицировать как «полученные из достоверных источников». Лучше потратить время на настройку брандмауэра и антивируса, чем на восстановление системы.

Есть ли дополнительные требования к программному обеспечению?

Одновременная работа пирингового программного клиента и некоторых сетевых программ может вызывать сбои в компьютере. Например, для eDonkey известно несколько несовместимых программ: Symantec Ad Blocking Software, ZoneAlarm Pro/ZoneAlarm и Pasakche.

Есть ли специализированный русский сервер?

На момент написания статьи Google выдавал только одну ссылку по запросу «eDonkey russian server». Это NNov Russian Donkey Server, сетевой адрес 217.106.18.150, порт 4661. Если он отсутствует в списке серверов, его нужно добавить вручную. Для подключения к этому серверу в имени пользователя пиринговой сети должна быть подстрока «rus», например stalker(rus). А имена истинных космополитов выглядят примерно так: stalker(rus)(de)(eng)(jp).

Как относятся правительственные и коммерческие структуры к пиринговым сетям?

Как правило, неодобрительно. Первая пиринговая сеть Napster была закрыта решением суда. Обвинение строилось на фактах многочисленного нарушения авторских и коммерческих прав участниками сети. Времени с тех пор прошло немного. Люди остались теми же, изменились лишь технологии, поэтому акцент сместился с владельцев сетей на их участников. Недавние судебные успехи RIAA в США тому подтверждение. Также в арсенале борцов с пиринговыми сетями есть DoS-атаки и публикация фальшивок. Широко известен инцидент с новым альбомом Мадонны, когда в сети были опубликованы «записи» из него, содержащие только одну фразу певицы: «What the fuck do you think you’re doing!» Поклонники тут же сделали ответный ход. На взломанном веб-сайте Мадонны был размещен их ответ, а также список сетевых адресов, откуда можно было скачать настоящие записи.
Отметим, что ни одна из современных технологий не обеспечивает полной анонимности. И несмотря на очевидные юридические трудности в преследовании участников файлообменных сетей, не стоит пренебрегать здравым смыслом.

Как узнать, что выложено в пиринговой сети?


Пользуясь поиском. Другой вариант — посмотреть анонсы фильмов, программ, музыки и прочих русскоязычных документов, доступных через eDonkey/eMule, на веб-ресурсах portal.rusweb.net и ShareReactor.ru. Для англоязычных документов есть аналогичный проект ShareReactor.

Где еще применяются пиринговые технологии обмена данными?


- В службе доменных имен Интернета — DNS.
- В службах онлайновых сообщений (наиболее известна ICQ).
- В распределенных вычислительных сетях. В качестве примера можно привести SETI@home —научный эксперимент, один из проектов SETI (Search for Extraterrestrial Intelligence), занимающийся поиском активности внеземного разума в радиочастотном диапазоне. Пользователь устанавливает у себя программу-скринсейвер, получающую и обрабатывающую блоки данных во время включения заставки. Результаты отсылаются на центральный сервер. В проекте принимают участие около пяти миллионов добровольцев. Общее число «процессоро-лет» перевалило за один миллион семьсот тысяч. Участники проекта получают массу бесплатного удовольствия от красочных картинок и духа командного соревнования.
- В качестве других примеров распределенных вычислений можно привести проект distributed.net — легальный взлом криптографических шифров (на данный момент RC5-72 от компании RSA), а также русский проект MD@home — вычисление свойств олигопептидов.

Этот список далеко не полон, но объем журнальной статьи не позволяет рассмотреть все. Ответ на вопрос лучше поискать в FAQ-листах и форумах пиринговых систем или обратившись к сообществу на ресурсах portal.rusweb.net и RuVideo.

© ООО "Компьютерра-Онлайн", 1997-2021
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.