Все больше внимания интернет-аналитики уделяют в последнее время технологии P2P (peer to peer, или равный-равному). Одни связывают с нею светлое будущее интернет-сообщества, другие не видят за этим модным термином ничего принципиально нового. Скептики напоминают, что построенные по законам P2P горизонтальные сети были еще совсем недавно признаны анахронизмом и сданы в архив. На смену им пришла революционная по тем временам концепция "клиент-сервер". Как ни смешно, но доказывали необходимость потратиться на новую технологию и не остаться за бортом научно-технической революции те же самые корпорации, которые сегодня дня не могут прожить без умиления в адрес P2P.
Основное различие между двумя подходами заключается в статусе каждого отдельно взятого пользователя. В одноранговых, или горизонтальных сетях нет четкого разделения на потребителей и поставщиков услуг - как, например, при обращении к хранилищу файлов или к web-серверу. Все компьютеры обладают равными правами, каждый может как запрашивать, так и предоставлять информацию. С одной стороны, это выглядит очень заманчиво - становятся ненужными разнообразные службы, выполняющие, по сути, только роль посредников между пользователями. С другой - специализированная служба заведомо справится с задачей надежнее, чем неизвестное множество компьютеров, не имеющее конкретного звена, ответственного за функционирование сети.
Системы, построенные по технологии "клиент-сервер", стабильнее за счет наличия сервера, обслуживающего всю сеть или ее участок, в сетях же P2P нагрузка распределяется на все компьютеры, подключенные к сети, то есть скорость работы сети, объем и качество данных зависит от того, сколько пользователей в данный момент к ней подключено. Конечно, приятно иметь возможность в случае "удачного попадания" получить необходимый документ не из-за океана, а с винчестера соседа по дому. Но всегда существует вероятность, что обстоятельства сложатся самым неприятным образом.
Что же изменилось?
Во-первых, количество пользователей. Чем дальше, тем больше интернет становится привычным атрибутом, занимая место между телефоном и телевизором. Во-вторых, вычислительная мощность обычных рабочих станций сегодня зачастую больше, чем у специализированных серверов двух-трехлетней давности. В-третьих, качественно иными стали каналы, через которые происходит соединение, - все больше процент подключений по xDSL, ISDN, через домашние сети, и соответственно скорость больше не падает на "последней миле". И, конечно, изменились сами технологии P2P. Новые механизмы позволяют в реальном времени отслеживать изменение IP-адресов, загруженность каналов и поддерживать оптимизированные схемы доступа для обмена информацией между миллионами компьютеров, независимо от их местонахождения. Это вполне эффективные решения, позволяющие справляться с такими проблемами, как "затор" магистралей связи или недоступность отдельного сервера или участка сети.
Обмен файлами - традиционная область применения P2P, в немалой степени в этом заслуга Napster'а - легендарной системы, специализировавшейся на музыкальных файлах формата MP3. Последователи учли ошибки первопроходцев и усовершенствовали технологию - так, программы, работающие по протоколу Gnutella, не нуждаются в наличии центрального сервера и могут искать любые файлы на всех компьютерах, подключенных в данный момент к сети.
Еще дальше пошли создатели сервиса edonkey2000 (http://www.edonkey2000.com), который пользуется популярностью среди любителей скачивать файлы большого объема - в частности, видеофильмы. В случае привычных web- или ftp-серверов приходится искусственно ограничивать пропускную способность канала или количество одновременно установленных соединений - ведь если файл пользуется спросом, то желающих скачать его часто находится больше, чем может выдержать даже самый быстрый канал. В случае же выкачивания через edonkey все наоборот. Чем больше клиентов запрашивают один и тот же файл - тем лучше, edonkey разбивает его на много маленьких секций и скачивает разные части одновременно из разных мест.
Естественно, каждая программа-клиент немедленно делает доступными выкачанные фрагменты. Так достигается равномерное распределение нагрузки по всем участникам, даже в том случае, если все захотят скачать один и тот же файл из одного места: система определит, кому какие секции скачивать и у кого скачать недостающие. При этом в первую очередь скачиваются наименее распространенные фрагменты - так срабатывает защита против попыток уничтожить исходный файл раньше, чем он распространится по всей сети.
Еще одна область применения систем P2P, все больше приобретающая популярность, - распределенные вычисления. Идея проста: большие вычислительные задачи, которые раньше могли быть решены только с применением дорогостоящих суперкомпьютеров, вполне можно (и даже гораздо эффективнее) считать, разбивая на небольшие части, которые "прогоняются" на обычных пользовательских компьютерах в моменты, когда процессор ничем не занят (например, во время работы скринсэйвера). Наиболее известные проекты - distributed.net, организация энтузиастов, которая не первый год занимается показательными взломами широко распространенных шифров с целью прилюдно показать степень их надежности (точнее говоря, ненадежности), и SETI@home (http://setiathome.ssl.berkeley.edu/index.html) - в этом проекте миллионы подключенных к интернету компьютеров анализируют принятые радиотелескопом сигналы, чтобы выделить из них посланные разумными существами. Как заявляют ученые, система, созданная по доброй воле (или за минимальное вознаграждение) миллионами пользователей, уже обставила по производительности суперкомпьютер IBM's ASCI White стоимостью 110 млн. долл. SETI@home обошлись своим создателям не более чем в 500 тыс. долл. на весь проект. Экономические перспективы налицо.
Не так давно стало возможно использовать интернет-соединение для бесплатных междугородных и международных переговоров при помощи технологий P2P - проект FreeWorldDialup компании Pulver.com (http://www.pulver.com) объединяет энтузиастов, предоставляющих свой телефонный номер для исходящих звонков. Естественно, благодаря тому, что звонок делается с ближайшего к точке назначения телефона, cтоимость его минимальна, - участники проекта как бы делятся друг с другом возможностью сделать местный звонок.
Довольно успешно развивается еще одно направление P2P-приложений - так называемый "виртуальный офис", обеспечивающий сотрудникам корпорации доступ к информационным базам и локальной сети компании из любой точки мира. Популярная платформа Groove (http://www.groove.net) - детище создателя Lotus Notes - представляет собой вполне профессиональный и удобно сделанный продукт, который на самом деле позволяет по-новому взглянуть на проблемы организации удаленной работы в команде.
Область применения P2P уже достаточно широка, и скорее всего она будет расширяться, но не всегда широкий выбор означает свободу доступа и достоверность информации. Вызывает сомнение обоснованность использования P2P в тех случаях, когда нужно просто найти прогноз погоды на завтра или расписание поездов - очевидно, что проще и надежней использовать для поиска традиционную поисковую машину, такую, как Infoseek или Rambler, чем полагаться на достоверность информации, полученной из первого оказавшегося доступным ресурса.
Тем не менее применение технологии P2P делает интернет еще более универсальным инструментом, еще более гибкой и независимой средой для развития новых форм бизнеса - возможно, таких, о которых мы сейчас даже и не догадываемся.