Необходимость иметь доступ к огромному количеству информации, лежащей на других компьютерах, сначала породила локальные сети. Это помогло на некоторое время, но объединить таким образом большое количество компьютеров оказалось невозможно. Возможность же доступа к файлам, возможно имеющихся у кого-то ещё, была очень заманчива. Поэтому была предложена система, позволяющая принимать и передавать файлы с каждого компьютера, с которым есть связь и на котором имеется определенное программное обеспечение. Такие системы получили название п2п (p2p) или пиринговых (peer-to-peer) сетей. Это словосочетание можно перевести как "равноправный обмен". Это значит, что вы, имея некоторые файлы, которые могут быть интересны кому-то ещё, разрешаете желающим их у вас скопировать, а взамен получаете возможность получить файлы, необходимые вам, от тех, у кого они есть.
Одноранговые, децентрализованные или пиринговые (от англ. peer-to-peer, P2P - один на один, с глазу на глаз) сети - это компьютерные сети, основанные на равноправии участников. В таких сетях отсутствуют выделенные серверы, а каждый узел (peer) является как клиентом, так и сервером. В отличие от архитектуры клиент-сервер, такая организация позволяет сохранять работоспособность сети при любом количестве и любом сочетании доступных узлов.
Впервые фраза
Например, в сети есть 12 машин, при этом любая может связаться с любой. В качестве клиента (потребителя ресурсов) каждая из этих машин может посылать запросы на предоставление каких-либо ресурсов другим машинам в пределах этой сети и получать их. Как сервер, каждая машина должна обрабатывать запросы от других машин в сети, отсылать то, что было запрошено, а также выполнять некоторые вспомогательные и административные функции.
Любой член данной сети не гарантирует никому своего присутствия на постоянной основе. Он может появляться и исчезать в любой момент времени. Но при достижении определённого критического размера сети наступает такой момент, что в сети одновременно существует множество серверов с одинаковыми функциями.
Помимо чистых P2P-сетей, существуют так называемые гибридные сети, в которых существуют сервера, используемые для координации работы, поиска или предоставления информации о существующих машинах сети и их статусе (on-line, off-line и т. д.). Гибридные сети сочетают скорость централизованных сетей и надёжность децентрализованных благодаря гибридным схемам с независимыми индексационными серверами, синхронизирующими информацию между собой. При выходе из строя одного или нескольких серверов, сеть продолжает функционировать. К частично децентрализованным файлообменным сетям относятся например EDonkey, BitTorrent.
Одна из областей применения технологии пиринговых сетей - это обмен файлами. Выглядит это так: пользователи сети выкладывают какие-либо файлы в <расшаренную> (англ. share, делиться) папку, т. е. папку, файлы из которой доступны для скачивания другим клиентам. Какой-нибудь другой пользователь сети посылает запрос на поиск какого-либо файла. Программа ищет у клиентов сети файлы, соответствующие запросу, и показывает результат. После этого пользователь может скачать файлы у найденных источников. Современные файлообменные сети позволяют скачивать один файл сразу с нескольких источников (так быстрее и надёжнее). Чтобы убедиться, что этот файл у всех источников одинаковый, производится сравнение не только по названию файла, но и по контрольным суммам или хэшам типа MD4, TTH, SHA-1. Во время скачивания файла пользователем (и после его окончания) этот файл у него могут скачивать и другие клиенты сети, в результате чего особенно популярные файлы могут в итоге быть доступными для скачивания с сотен источников одновременно.
Обычно в таких сетях обмениваются фильмами и музыкой, что является извечной головной болью видеоиздательских и звукозаписывающих компаний, которым такое положение дел очень не по душе. Проблем им добавляет тот факт, что пресечь распространение файла в децентрализованной пиринговой сети технически невозможно - для этого потребуется физически отключить от сети все машины, на которых лежит этот файл, а таких машин (см. выше) может быть очень и очень много - в зависимости от популярности файла их число может достигать сотен тысяч. В последнее время видеоиздатели и звукозаписывающие компании начали подавать в суд на отдельных пользователей таких сетей, обвиняя их в незаконном распространении музыки и видео.
Такие организации, как RIAA, дискредитируют пиринговые сети, публикуя в них фальшивые файлы (содержание которых не соответствует названию, часто первое носит порнографический характер). Это привело к потере популярности сети KaZaA в пользу eDonkey, имеющей более совершенную архитектуру.
В феврале 2006 прекратил работу самый популярный сервер сети eDonkey - Razorback, а затем прекращена разработка непопулярного коммерческого клиента EDonkey2000. Сама сеть EDonkey2000 продолжает функционировать, т. к. не завязана на конкретные сервера и существует большое количество свободно распространяемых клиентских программ.
1) ED2K она-же eDonkey2000 - сеть централизованного типа, крупнейшая из ныне существующих файлообменных сетей. Поиск выполняют специализированные серверы, связанные между собой. Клиенты самостоятельно обмениваются по протоколу MFTP. Компания MetaMachine разработчики исходной концепции и первого клиента основанного на веб-интерфейсе (Edonkey 2000 v1.4.5) в 2005 году прекратили поддержку этого проекта, однако сеть продолжает функционировать за счет более совершенного и более мощного клиента eMule, который использует механизмы Kademlia для построения децентрализованного сегмента eD2k .
2) Overnet, Kad - децентрализованные технологии на базе протокола Kademlia, обслуживающие поиск по сети eDonkey2000 (eD2k).
3) BitTorrent - технология распределённого распространения файлов, как правило, большого объёма. Отличается высокой скоростью и централизованностью. Некоторые BitTorrent клиенты поддерживают DHT и могут работать без центрального сервера (т. н. трекера).
4) Direct Connect - представляет из себя слабо связанные между собой выделенные сервера для поиска (хабы). Хабы Direct Connect очень удобны для организации файлового обмена в локальных сетях.
5) FastTrack, iMesh - первоначально была реализована в KaZaA:
6) OpenFT - открытое продолжение сети FastTrack. Поддерживается клиентами giFT (KCeasy), mlDonkey.
7) Gnutella - полностью децентрализованная сеть, использующая протокол, разработанный компанией Nullsoft, основанный на HTTP-загрузках. Самоорганизация сети происходит за счет автоматического взаимообмена данными нод-листа между соединенными клиентами . Клиенты : Shareaza , BearShare , LimeWire , Gnucleus, Phex .
8) Gnutella2 - расширение протокола Gnutella. Основные изменения коснулись только организации системы поиска файлов . Так удалось снизить общую нагрузку на сеть применяя адресную рассылку запросов только тем клиентам у которых находится искомый файл. Также была исключена проблема с ложной инициацией атаки типа UDP-flood . Во всем остальном сеть полностью аналогична Gnutella1 . Основной клиент Shareaza.
9) Ares - файлообменная сеть для любых файлов.
10) Soulseek - проприетарный протокол. Весь поиск происходит через центральный сервер, на котором есть бесплатная регистрация и платная подписка (официальный сайт). Клиенты: Soulseek, mlDonkey, SolarSeek.
11) Freenet, GNUnet, Entropy - анонимные и устойчивые к цензуре файлообменные сети.
12) MP2P (Manolito P2P) - поддерживается клиентами Blubster, Piolet, RockItNet.
13) NEOnet - частично-децентрализованая коммерческая сеть на условно-платной основе . Является специфической вспомогательной модификацией протокола DHT при работе в отделенном коммерческом сегменте сети Gnutella1 , поддерживаемом с помощью клиента Morpheus . Свойства криптографической защиты и сетевой анонимности в сети NeoNet не поддерживаются.
14) easy P2P
15) Tesla - Возможно, содержит MalWare.
16) Filetopia - потенциально безопасная сеть для обмена самым разным контентом.
17) MUTE - Клиенты: MFC Mute, Napshare.
18) Nodezilla - анонимная файлообменная сеть.
19) Peer2Mail - принципиально это даже не пиринговая сеть, а разновидность ПО позволяющего передавать файлы между двумя хостами (peer-to-peer), используя почтовые сервисы в качестве роутера. Технология передачи файлов основана на инкапсуляции в SMTP-протокол.
20) Ants p2p - открытая P2P-сеть 3-го поколения повышенной безопасности. Java-клиент.
21) Anthill
22) Rodi - поддерживает поиск по содержанию файлов. Java-клиент.
23) AppleJuice - частично децентрализованная сеть (как eDonkey).
24) BeShare - сеть, ориентированная на BeOS.
25) Jabber - открытая P2P-технология обмена сообщениями.
26) Skype - P2P-телефония.
27) JXTA - стандартизация P2P спецификаций и протоколов http://www.jxta.org
28) KDrive - глобальный виртуальный диск для обмена файлами с авторизацией и шифрованием.
29) ProxyShare - новая высокоскоростная сеть с большими возможностями.
30) ZEPP
31) Acquisition - сеть и клиент для Mac.
32) RShare - анонимная открытая P2P-сеть.
33) Marabunta - альтернативная пиринговая система ориентированная исключительно на предоставление услуг обмена мгновенными сообщениями на общей доске объявлений ( P2P-chat ) . Программа в основном рассчитана на применение в локальных сетях , и потому не содержит возможностей автообновления нод-листа ( его приходится пополнять вручную ) . При наличии постоянных IP-адресов реципиентов , может работать и в интернете , однако встроенная функция bootstrap с серверов разработчиков не работоспособна из-за того , что с 2006 года проект практически перестал развиваться . Свойства криптографической защиты и сетевой анонимности в программе не реализованы.
34) SKad или OpenKAD - модификация протокола Kademlia . Полностью децентрализованые сети этого типа создавались преимущественно в Японии . Первым шагом в этом направлении стала программа Winny . Дальнейше развитие этой сети в сторону сетевой анонимности привело к появлению программы Share . И на сегодняшний день существует и третья версия под управлением программы Perfect Dark .
К сожалению все три версии сети SKad развивались паралельно и хотя они имеют много общего , но из-за видоизменения процедуры кодирования нод-листа в сторону более жесткого шифрования , они не совместимы между собой . Таким образом все три программы образовали три идентичные сети с разными степенями защищенности .
35) GNUnet, полностью децентрализованная анонимная p2p сеть
36) Usenet - старая добрая глобальная доска объявлений
37) Chord
38) Pastry
39) Tapestry или Chimera
40) Groove Virtual Office - Собственническое ПО от Microsoft.
41) P-Grid - самоорганизующаяся децентрализованная сеть.
42) P2PTV - сеть телевизионных каналов.
43) KoffeePhoto - сеть для обмена фотографиями.