P2P — вы никого не сможете перевесить

Author:

Пока Napster, подвергнутый судебному запрету, пытается избежать закрытия, в Интернете продолжают функционировать и другие p2p-системы для поиска и обмена файлами. Одна из них — Gnutella. Явным плюсом Gnutella является ее децентрализованная структура, что делает её практически неуязвимой для закрытия.

12 февраля этого года Апелляционный суд Северного округа Калифорнии запретил работу многострадального сервиса Napster. В данный момент Napster делает отчаянные попытки выжить. Их успех — маловероятен, хотя не исключен. В любом случае, если Napster и сможет продолжить существование, то уже не в том формате, в котором он работал раньше.

Стоит отметить, что даже потенциальное закрытие Napster не приведет к исчезновению самого сервиса. Технология Napster, с одной стороны, основывается на наличии одного центрального сервера, что делает его легко закрываемым. С другой стороны, программное обеспечение для такого сервера — OpenNap — доступно в свободном доступе и в исходном коде. Таким образом, уже существует множество серверов, аналогичных Napster. Базы данных этих серверов, однако, значительно меньше, и универсального протокола для объединения данных в одно целое не существует. Тем не менее, это не отменяет факта их существования.

С самого начала эпохи Napster возникло новое слово из категории технологий P2P (peer-to-peer), или, как это интерпретирует Роман Лейбов, Ч2Ч (человек-to-человек). Это слово — Gnutella.

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

Gnutella была создана в довольно интересной обстановке. Компания Nullsoft, разработавшая программу WinAmp, в свое время была приобретена корпорацией AOL. Именно эта команда разработчиков выпустила Gnutella. Разработка проходила без ведома AOL. Когда программа была размещена в Интернете, в AOL начали переживать и потребовали удалить ее из открытого доступа. Программу все же убрали, но к тому времени она уже успела распространиться. Это произошло год назад, в марте 2000 года, и вызвало множество слухов и новостей о системе, способной затмить Napster.

С ростом юридических трудностей у Napster, Gnutella начали рассматривать как возможного преемника. Тем не менее, спустя четыре месяца активного развития, процесс создания системы и её протоколов стал замедляться. Еще через месяц растущее количество пользователей превысило технические возможности платформы, что привело к коллапсу. Поиск и, в особенности, скачивание файлов стали происходить крайне медленно, и, поскольку это отрицательно сказалось на числе пользователей, вероятность найти что-то нужное в системе также резко сократилась.

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

Постараемся выделить отличительные черты Gnutella, которые способствовали ее сложному пути развития:

  • Сначала была выпущена только бинарная версия программы, которая не включала исходные тексты или спецификации протоколов. Все последующие разработки независимых программистов, не имеющих связи с «нульсофтовцами», основывались на результатах обратной инженерии протокола.
  • Изначальный дизайн программы не был создан для массового использования, а скорее рассчитан на несколько сотен, максимум — тысяч пользователей.
  • Протокол, используемый Gnutella, не предназначен для передачи данных. Его основная функция заключается в поиске компьютеров и их файлов. Передача информации происходит напрямую между запрашивающей и отдающей стороной по протоколу HTTP (в то время как у Napster имеется собственный протокол для передачи файлов). Популярные приложения, которые предлагают файлы, содержат встроенные мини веб-серверы.
  • Многочисленные независимые разработчики создали приложения, использующие протокол Gnutella.

Изучив этот список, можно выделить ключевые проблемы, часть из которых уже решена в той или иной мере, а над частью все еще работают разработчики.

  • Появление несовместимых версий. Несовместимые или частично совместимые приложения способны исказить передаваемое сообщение или нарушить маршрутизацию. Полностью исключить это невозможно, однако внедрение строгой фильтрации сообщений на предмет соответствия опубликованным стандартам протокола значительно минимизирует риск. Наиболее распространенные Gnutella-приложения проводят такую фильтрацию.
  • Проблемы с соединением к серверам. Ранние версии программ не имели предустановленного списка серверов для подключения при запуске. Часто встречаемые во время поиска адреса указывали на неработающие серверы. Решением этой проблемы стало создание нескольких сервисов, предоставляющих адреса стабильно работающих серверов, а также введение авто-соединения с использованием этих сервисов непосредственно в приложениях.
  • Недостаточное число результатов поиска. С увеличением нагрузки на систему пользователи с обычными модемами стали узким местом, что часто приводило к прерыванию передачи запросов. Это вызвало фрагментацию системы на несколько меньшечисленных подсистем, что, в свою очередь, снижало количество результатов поиска. Данная проблема была частично решена путем внедрения специализированных серверов-«отражателей», установленных на машинах с быстрым интернет-соединением, действующих как прокси для пользователей с медленными соединениями.
  • Невозможность скачать найденный файл. Это, вероятно, является самым серьезным недостатком. Поиск может вернуть множество интересных результатов, но вы не можете получить ни один из найденных файлов. Это вызывает большое раздражение. Главной причиной считается асимметрия между группами «скачивающих» и «делящихся». Поскольку число пользователей, предлагающих файлы для скачивания, значительно меньше, чем количество тех, кто их хочет скачать, пропускная способность каналов доставки используется неравномерно. Это приводит к недоступности файлов или к прерыванию загрузки. Разработчики пытаются принять технологические меры для уменьшения этой асимметрии.
    Существуют несколько сайтов, предлагающих поиск и скачивание файлов через Gnutella, но не позволяющих загружать свои файлы в систему. В последних версиях популярных Gnutella-приложений, таких как LimeWire и BearShare, запросы с этих сайтов блокируются — вместо файла пользователи получают предложение скачать версию стандартного двустороннего (клиент-серверного) Gnutella-приложения. Более того, наблюдается тенденция внедрения коэффициента соответствия числа скачиваемых и отданных для скачивания файлов, что, вероятно, будет стимулировать пользователей активнее «делиться». Это напоминает старые BBS с их соотношением download/upload, или более современные системы, такие как MojoNation.

Таким образом, несмотря на отсутствие упоминаний в новостях (в основном из-за мировой паники вокруг Napster), Gnutella продолжает существовать и развиваться, число пользователей растет, и перспективы выглядят обнадеживающими. Вероятно, будущее этой системы будет зависеть от того, насколько эффективно смогут объединиться разработчики, чтобы избежать хаоса в дальнейшем развитии, следуя либо пути «полной» стандартизации протоколов, либо хотя бы децентрализованной схеме, движущейся в одном четко заданном направлении (подобно разработке ядра Linux).

В настоящее время количество пользователей Gnutella составляет от 80 до 200 тысяч человек в течении суток.

Конечно, вот переписанный текст, сохранив смысл и ключевые слова:

«

СВЯЗАННЫЕ СТАТЬИ


Gnutella

Gnotella

P2P технологии

Gnutella: саморазрушение — Новости ZDNet, 29.01.01
Конечно! Пожалуйста, предоставьте текст, который вы хотите, чтобы я переписал.

МАТЕРИАЛЫ ПО ТЕМЕ


Суд предоставил Napster 72 часа отсрочки07.03.01


В системе Gnutella распространяется демонстрационный червь27.02.01


Bertelsmann тайно клонирует Napster27.02.01


Napster предлагает 1 миллиард долларов за 5 лет покоя21.02.01


Napster готов бороться с пиратством при условии его сохранения19.02.01


Napster объявлен вне закона и прекращает свою деятельность13.02.01


Gnutella способствует краже печенья09.02.01


Сервис обмена Aimster — это Napster для всех интернет-пейджеров19.12.00


В Сети запущен порно-Napster01.12.00


Bertelsmann заплатил 50 миллионов, чтобы Napster стал платным01.11.00


Американцы не считают использование Napster воровством02.10.00


Разработана почтовая программа на основе технологии Napster22.09.00


Появилась новая поисковая система gPulp (бывшая Gnutella Next Generation), которая изменит интернет19.09.00


Правительство США выступило против Napster11.09.00


Халявщики, не суды, разрушат системы обмена файлами25.08.00


Intel считает, что будущее принадлежит Napster25.08.00


Союз Журналистов