Реферат по предмету "Информатика, программирование"


Пиринговые сети. Понятие и виды

Федеральноеагенство по образованию
Государственноеобразовательное учреждение высшего
профессианальногообразования
Ульяновскийгосударственный университет
Инзенскийфилиал
Курсоваяработа
по предмету:«Информационные технологии»
на тему:«Пиринговые сети. Понятия и виды»
Выполнила:студентка
группы БУА-07
Инза 2008 г.

Содержание:
Содержание:… 2
Введение… 3
Глава 1. Пиринговые сети… 4
1.1 Общие понятие… 4
1.2 Одноранговая сеть… 7
1.3 Пиринговая файлообменная сеть… 13
Глава 2. Сети и протоколы… 15
2.1 eDonkey2000 (сеть).… 15
Поиск… 15
Загрузка… 15
Межсерверные соединения… 16
2.2 Kad Network… 17
Использование… 17
2.3 BitTorrent… 18
Принцип работы протокола… 18
Общие особенности… 19
Протоколы и порты… 19
Файл метаданных… 20
Трекер… 20
Работа без трекера… 21
Super seeding (cупер-сид)… 21
Две ошибки начинающих пиров… 22
Терминология… 22
Программы-клиенты… 23
Глава 3. Программы для работы с пиринговыми сетями… 26
3.1 Perfect Dark (P2P)… 26
Безопасность… 26
Открытое тестирование… 27
Особенности работы… 27
3.2 eMule… 28
Глава 4. История пиринговых сетей… 33
Карающая рука закона… 34
Партизанская тактика обмена… 34
Король умер, да здравствует король!.. 36
Обмен под контролем… 37
Заключение… 39
Список используемых источников:… 41

Введение
Все мы каким-то образомделимся информацией с окружающими нас людьми. В случае, когда мы делимсяфайлами с помощью программ типа еМул, еДонки, КаЗа и им подобных, такого родаобмен сопряжён с работой огромной машины, принципы работы которой, её истоки иидеи, на которых она построена, мы зачастую представляем себе довольно слабо.Данный пробел и предназначена восполнить эта статья.
Необходимость иметьдоступ к огромному количеству информации, лежащей на других компьютерах,сначала породила локальные сети. Это помогло на некоторое время, но объединитьтаким образом большое количество компьютеров оказалось невозможно. Возможностьже доступа к файлам, возможно имеющихся у кого-то ещё, была очень заманчива.Поэтому была предложена система, позволяющая принимать и передавать файлы скаждого компьютера, с которым есть связь и на котором имеется определенноепрограммное обеспечение. Такие системы получили название п2п (p2p) илипиринговых (peer-to-peer) сетей. Это словосочетание можно перевести как«равноправный обмен». Это значит, что вы, имея некоторые файлы, которые могутбыть интересны кому-то ещё, разрешаете желающим их у вас скопировать, а взаменполучаете возможность получить файлы, необходимые вам, от тех, у кого они есть.
Актуальность темы: Т.к. в настоящее время Интернетполучает всё большую и большую распространённость, использование пиринговыхсетей является актуальнее с каждым днём. Ведь на сегодняшний день найти нужныйфайл (любимый фильм, новую программу для своего «электронного друга», толькочто вышедшею песню любимой звезды, книгу и просто какой-либо интересующий васфайл) намного проще если вы знаете что такое пиринговые сети, и знаете как имипользоваться.
Задачи: Изучить назначение пиринговых сетей,типы, использование пиринговых сетей. Познать с помощью какого контентавозможно пользоваться пиринговыми сетями.

Глава 1. Пиринговые сети
1.1 Общие понятие
Одной из основныхтрудностей реализации подобного обмена являлось то, что было необходимокаким-то образом найти тех, у кого есть то, что вам нужно. Для решения этойпроблемы существуют два основных пути: централизованый и распределённый серверы.В случае работы с централизованым сервером каждый пользователь должензарегистрироваться на этом сервере, который соберёт информацию о пользователе(файлы, доступные для обмена, идентификатор пользователя и т.д.), а затемвнесёт эту информацию в свою базу данных, по которой и будет в дальнейшем идтипоиск. Все запрошеные пользователем файлы будут искаться в базе данныхцентрального сервера, а найденные ссылки будут передаваться пользователю дляустановления прямой связи именно с тем компьютером, на котором есть нужнаяинформация. Именно на таком принципе работает популярная КаЗа (KaZaa) и многиедругие пиринговые приложения. Описанный способ обмена файлами с помощью одногоили нескольких центральных серверов основан на так называемом протоколе ФастТрак(FastTrack), который является коммерческим, что несколько негативно влияет наразработку приложений, его использующих.
Во втором случае, когдацентрального сервера не существует, используется протокол Гнутелла (Gnutella),который передаёт запрос пользователя не центральному серверу, а непосредственнодругим компьютерам сети. То есть пользователь сам является и клиентом, исервером пиринговой сети. Такого рода системы менее требовательны к приёму ирегистрации новых членов и отличаются огромной скоростью распространениязапроса. По сути, количество опрошеных источников увеличивается вгеометрической прогрессии. Примером приложения, использующего этот подход,может служить Морфеус (Morpheus).
Несмотря на то, чтопротокол Гнутелла является некоммерческим, то есть бесплатным дляиспользования, сравнение этих двух протоколов заканчивается не в его пользу.Протокол ФастТрак осуществляет более эффективный поиск, чётче обрабатываетзапросы и в целом является более стабильным. Это, однако, вовсе не означает,что Гнутелла обречена на вымирание, но печальный опыт того же Морфеуса, вначалеиспользовавшего ФастТрак и бывшего одним из лидеров среди пиринговыхприложений, а затем перешедшего на Гнутеллу и сразу потерявшего лидирующиепозиции, достаточно хорошо описывает сложившуюся ситуацию.
Несомненнымпервопроходцем пиринговых систем стал Напстер (Napster), на свою беду попавшийпод горячую руку защитников авторских прав. Через несколько месяцев послепоявления Напстера свет увидел ещё одного новорожденного в той же семье: ИМеш(IMesh). В отличие от почившего Напстера, ИМеш жив и поныне, хотя в последнеевремя участились сообщения о сбоях на центральном сервере. Возраст, знаете ли,не шутка...
После закрытия Напстерапиринговые приложения стали появляться с чудовищной скоростью и к настоящемувремени их существует довольно много. Периодически одни погибают, другиерождаются и перерождаются. Одним из самых известных в мире является КаЗа, а врунете – разновидности еМул (eMule) и еДонки (eDonkey).
На самом деле, ослик имул, как их называют те, кто ими пользуется, являются в некотором смыслепромежуточными системами между распределёнными и централизоваными системами:существуют центральные сервера, которые обрабатывают запросы пользователей(осло- и муловодов соответственно), но таких серверов достаточно много, чтопозволяет с одной стороны их не перегружать, но с другой стороны несколькоусложняет поиск, так как обновление и получение информации с других серверовзанимает некоторое время.
В целом осёл и мул имеюточень много общего, но их сравнение выходит за рамки данной статьи изаслуживает дополнительного более подробного освещения. Это уже не говоря оразличных версиях ослика и наличии еМул Плюс (eMule Plus), который, к слову,тоже имеется в нескольких ипостасях.
Как и в любом другомсообществе, среди тех, кто пользуется пиринговыми сетями, существуют некоторыеправила поведения и правила хорошего тона. Они просты и очевидны, но, ксожалению, не всегда и не всеми выполняются.
1. После скачивания не удаляйте файлсразу. Пока есть возможность – подержите и дайте его скачать другим.2. Незажимайте скорость исходящего соединения без необходимости. Конечно, этонагрузка на ваш компьютер, но ведь другие тоже хотят что-то получить.3.Делитесь файлами. Если у вас есть то, что может быть интересно кому-то ещё(например, номер вашей кредитной карточки или коллекция фотографий шнурков отботинок), не держите это в тёмном и пыльном углу диска: выложите для всеобщегодоступа и пусть все удивятся, как много денег у вас было на карточке.Вот,собственно, и все правила. Правда несложные?
Будущее пиринговых сетейв целом видится довольно радужным. Страсть людей к обмену (да ещё ибесплатному, чего уж там темнить) неистребима. Страсть компаний к зарабатываниюденег также неистребима. Получается классический случай: единство и борьбапротивоположностей. Ничего противозаконного в самих сетях нет. Они будутстроиться и дальше. Сейчас, например, строится европейская пиринговая сетьДатаГРИД (DataGRID) под руководством Европейского центра ядерных исследований(ЦЕРН), которая будет распределена по всей Европе, и, как ожидается, станетглавным вычислительным ресурсом Европы. А уж как будет вестись борьба спиратским распространением материалов, покажет время.
Отдельно стоит вопрос обавторских правах при использовании пиринговых сетей. Строго говоря,распространение лицензионной продукции таким образом нарушает авторские праватех, кто ими владеет, и дискуссии на эту тему уже давно превратились впостоянный фон, на котором файлы всё равно передаются и принимаются. У каждогона эту тему есть своё собственное мнение, но на всякий случай мы напоминаем:брать без спросу нехорошо.
1.2 Одноранговая сеть
Однора́нговые,децентрализо́ванные или пи́ринговые (от англ. peer-to-peer, P2P —один на один, с глазу на глаз) сети — это компьютерные сети, основанные наравноправии участников. В таких сетях отсутствуют выделенные серверы, а каждыйузел (peer) является как клиентом, так и сервером. В отличие от архитектурыклиент-сервер, такая организация позволяет сохранять работоспособность сети прилюбом количестве и любом сочетании доступных узлов.
Впервые фраза«peer-to-peer» была использована в 1984 году Парбауэллом Йохнухуйтсманом(Parbawell Yohnuhuitsman) при разработке архитектуры Advanced Peer to PeerNetworking фирмы IBM.
Устройствоодноранговой сети
Например, в сети есть 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 (ManolitoP2P) — поддерживается клиентами 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 спецификаций и протоколов 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 .
35)     К сожалению всетри версии сети SKad развивались паралельно и хотя они имеют много общего, ноиз-за видоизменения процедуры кодирования нод-листа в сторону более жесткогошифрования, они не совместимы между собой. Таким образом все три программыобразовали три идентичные сети с разными степенями защищенности .
36)     Usenet — стараядобрая глобальная доска объявлений ;)
37)     Chord
38)     Pastry
39)     Tapestryили Chimera
40)     Groove Virtual Office — Собственническое ПО от Microsoft.
41)     P-Grid —самоорганизующаяся децентрализованная сеть.
42)     P2PTV — сетьтелевизионных каналов.
43)     KoffeePhoto —сеть для обмена фотографиями.
Пиринговыесети распределёных вычислений
Технология пиринговыхсетей (не подвергающихся квазисинхронному исчислению) применяется также дляраспределённых вычислений. Они позволяют в сравнительно очень короткие срокивыполнять поистине огромный объём вычислений, который даже на суперкомпьютерахпотребовал бы, в зависимости от сложности задачи многих лет и даже столетийработы. Такая производительность достигается благодаря тому, что некоторая глобальнаязадача разбивается на большое количество блоков, которые одновременновыполняются сотнями тысяч компьютеров, принимающими участие в проекте.
1.3 Пиринговая файлообменная сеть
Одна из областейприменения технологии пиринговых сетей — это обмен файлами. Выглядит это так:пользователи сети выкладывают какие-либо файлы в «расшаренную» (англ. share,делиться) папку, т. е. папку, файлы из которой доступны для скачивания другимклиентам. Какой-нибудь другой пользователь сети посылает запрос на поисккакого-либо файла. Программа ищет у клиентов сети файлы, соответствующиезапросу, и показывает результат. После этого пользователь может скачать файлы унайденных источников. Современные файлообменные сети позволяют скачивать один файлсразу с нескольких источников (так быстрее и надёжнее). Чтобы убедиться, чтоэтот файл у всех источников одинаковый, производится сравнение не только поназванию файла, но и по контрольным суммам или хэшам типа MD4, TTH, SHA-1. Вовремя скачивания файла пользователем (и после его окончания) этот файл у негомогут скачивать и другие клиенты сети, в результате чего особенно популярныефайлы могут в итоге быть доступными для скачивания с сотен источниководновременно.
Обычно в таких сетяхобмениваются фильмами и музыкой, что является извечной головной больювидеоиздательских и звукозаписывающих компаний, которым такое положение делочень не по душе. Проблем им добавляет тот факт, что пресечь распространениефайла в децентрализованной пиринговой сети технически невозможно — для этогопотребуется физически отключить от сети все машины, на которых лежит этот файл,а таких машин (см. выше) может быть очень и очень много — в зависимости отпопулярности файла их число может достигать сотен тысяч. В последнее времявидеоиздатели и звукозаписывающие компании начали подавать в суд на отдельныхпользователей таких сетей, обвиняя их в незаконном распространении музыки ивидео.
Такие организации, какRIAA, дискредитируют пиринговые сети, публикуя в них фальшивые файлы (содержаниекоторых не соответствует названию, часто первое носит порнографическийхарактер). Это привело к потере популярности сети KaZaA в пользу eDonkey,имеющей более совершенную архитектуру.
В феврале 2006 прекратилработу самый популярный сервер сети eDonkey — Razorback, а затем прекращенаразработка непопулярного коммерческого клиента EDonkey2000. Сама сетьEDonkey2000 продолжает функционировать, т. к. не завязана на конкретные сервераи существует большое количество свободно распространяемых клиентских программ.
Глава 2. Сети ипротоколы2.1 eDonkey2000(сеть)
eDonkey2000, eDonkey, eD2k — файлообменная сеть,построенная по принципу P2P на основе сетевого протокола прикладного уровня MFTP.Распространённые в Рунете неформальные названия: «ослик», «осёл»,[1]пользователи сети — «ословоды».
Сеть состоит из нескольких миллионов клиентов инескольких десятков серверов, взаимодействующих между собой. Клиентами являютсяпользователи, загружающие файлы, и пользователи, имеющие полные версии файлов(«полные источники»). Серверы позволяют находить опубликованные файлы и другихпользователей, имеющих эти файлы (полностью или частично). Сами файлы черезсервера не проходят.Поиск
Каждый клиент связан с одним из серверов сети. Клиентсообщает серверу, какие файлы он предоставляет в общий доступ. Каждый серверподдерживает список всех общих файлов клиентов, подключенных к нему. Когдаклиент что-то ищет, он посылает поисковый запрос своему основному серверу. Вответ сервер проверяет все файлы, которые ему известны, и возвращает клиенту списокфайлов, удовлетворяющих его запросу.
Возможен поиск по нескольким серверам сразу. Такиезапросы и их результаты передаются через протокол UDP, чтобы уменьшить загрузкуканала и количество подключений к серверам. Эта функция особенно полезна, еслипоиск на сервере, к которому клиент подключен в настоящее время, даёт низкийрезультат.
Кроме того, ссылки на файлы публикуются на различныхфорумах в Интернете, в виде так называемых «релизов».
/>/>Загрузка
Когда клиент запрашивает загрузку файла, сервер сначаласобирает список всех известных ему клиентов, имеющих запрашиваемый файл. Послеэтого он опрашивает другие известные ему серверы, имеют ли этот файл клиенты,подключенные к ним. Как только он находит других клиентов с файлом, тогда серверзапрашивает у каждого клиента различные части файла. Этот процесс продолжаетсядо тех пор, пока файл не будет собран целиком.
Принцип работы: Client Z имеет все части Файла (символыстрочных букв представляют части файла). Client W, X, и Y хотят загрузить Файл.Начиная с Client X и Client Y, оба имеют различные части Файла, они могут нетолько получить файл от Client Z, но и могут посылать файл друг другу. Этопозволяет файлу быть распределённо распространённым намного быстрее без того,чтобы использовать большее количество ширины канала Client Z. Client W можетзапустить загрузку файла, даже если источник файла (Client Z) больше не имеетдостаточной ширины канала для отсылки./>/>Межсерверныесоединения
Периодически серверы связываются друг с другом накороткое время. Во время этого сеанса связи сервер, объявляя о своёмсуществовании, посылает список всех других известных ему серверов. Такимобразом, серверы поддерживают список других активных серверов. Когда клиентподключается к серверу, сервер может выдать ему список известных ему серверов.
/>2.2 Kad Network
Kad Network — децентрализованная безсерверная файлообменнаясеть, которая использует протокол оверлейной сети Kademlia. Поддерживается в eMule(Kad 2.0), aMule и MLDonkey.Использование
Kad Network использует UDP для :
·          Поиска источниковed2k хэша
·          Поиска ed2k хэшана ключевые слова в названиях файла
·          Нахождениякомментариев и оценки для файлов (хэша)
·          Оказания услугузлам, находящимся за файерволом (Low ID)
Заметим, что Кад сеть не используется, чтобы фактическипередать файлы через Р2Р сети. Вместо этого, когда начинается передача файлов,подключения клиентов происходят напрямую друг с другом (используя стандартные IP-сети).
Как и во всех децентрализованных сетях, Kad не требуетофициальных или общих серверов. Как таковая, она не может быть отключена сзакрытием набора ключевых узлов. Однако, поскольку постоянные узлы связываютсядруг с другом, она может уделять больше нагрузки на отдельные машины посравнению с централизированной сетью.
Единственная вещь, которая нужна для соединения с этойсетью — IP и порт любого клиента, уже подключённого к сети. Это называется BootStrap (самонастройка).
Как только происходит соединение с сетью, клиентзапрашивает других клиентов, чтобы определить, может ли он свободно с нимисоединиться. Этот процесс похож на определение HighID/LowID на серверах.
Если вы можете свободно соединяться, вам дается ID(высокий, HighID) и получаете статус open в Кад сети. Если вы не можетесоединяться свободно, вы получаете статус firewalled (соответственно LowID).
2.3 BitTorrent
/>
BitTorrent (букв. англ. «битовый поток») — пиринговый(P2P) сетевой протокол Коэна для кооперативного обмена файлами через Интернет.
Файлы передаются частями, каждый torrent-клиент, получая(закачивая) эти части, в это же время отдаёт (подкачивает) их другим клиентам,что снижает нагрузку и зависимость от каждого клиента-источника и обеспечивает избыточностьданных.
Первый torrent-клиент «BitTorrent» был созданпрограммистом Брэмом Коэном на языке Python 4 апреля 2001 года, запуск первойверсии состоялся 2 июля 2001 года. Существует множество других программ-клиентовдля обмена файлами по протоколу BitTorrent./>/>Принцип работыпротокола
Перед началом скачивания клиент подсоединяется ктрекеру, сообщает ему свой адрес и хэш-сумму запрашиваемого файла, на что вответ клиент получает адреса других клиентов, скачивающих или раздающих этот жефайл. Далее клиент периодически информирует трекер о ходе процесса и получаетобновлённый список адресов.
Клиенты соединяются друг с другом и обмениваютсясегментами файлов без непосредственного участия трекера, который лишь регулярнообновляет информацию о подключившихся к обмену клиентах и другую статистическуюинформацию. Для эффективной работы сети BitTorrent необходимо, чтобы как можнобольше клиентов были способны принимать входящие соединения. Неправильнаянастройка NAT или файрвола могут этому помешать.
При соединении клиенты сразу обмениваются информацией обимеющихся у них сегментах. Клиент, желающий скачать сегмент, посылает запрос и,если второй клиент готов отдавать, получает этот сегмент. После этого клиентпроверяет контрольную сумму сегмента и оповещает всех присоединённых пиров оналичии у него этого сегмента.
Каждый клиент имеет возможность временно блокироватьотдачу другому клиенту (англ. choke). Это делается для более эффективногоиспользования канала отдачи. Кроме того, при выборе — кого разблокировать,предпочтение отдаётся пирам, которые сами передали этому клиенту многосегментов. Таким образом, пиры с хорошими скоростями отдачи поощряют друг другапо принципу «ты — мне, я — тебе»./>/>Общие особенности
·          Отсутствие очередейна скачивание.
·          Файлызакачиваются небольшими фрагментами; чем менее доступен фрагмент, тем чаще онбудет передаваться. Таким образом, присутствие в сети «сидера» с полным файломдля загрузки необязательно — система распределяет сегменты между «пирами»,чтобы в последующем они могли обмениваться недостающими сегментами.
·          Клиенты (peers)обмениваются сегментами непосредственно между собой, по принципу «ты — мне, я —тебе».
·          Скачанныефрагменты становятся немедленно доступны другим клиентам.
·          Контролируется целостностькаждого фрагмента.
·          В качествеобъекта раздачи могут выступать несколько файлов (например, содержимое каталога)./>/>Протоколы и порты
Клиенты соединяются с трекером по протоколу TCP.Входящий порт трекера: 6969.
Клиенты соединяются друг с другом, используя протокол TCP.Входящие порты клиентов: 6881—6889.
Номера портов не фиксированы в спецификации протокола имогут изменяться при необходимости. Более того, в данный момент большинствотрекеров используют обычный HTTP порт 80, а для клиентов рекомендуется выбратьслучайный входящий порт.
DHT-сеть в BitTorrent-клиентах использует протокол UDP.
Кроме того, протокол UDP используется UDP-трекерами (неподдерживается всеми клиентами и не является официальной частью протокола) идля соединения клиентов друг с другом через UDP NAT Traversal (используетсятолько в клиенте BitComet и не является официальной частью протокола)./>/>Файл метаданных
Для каждого распространяемого файла создаётся файл метаданныхс расширением .torrent, который содержит следующую информацию:
·          URL трекера;
·          общую информациюо закачиваемом файле (имя, длину и пр.);
·          контрольные суммы(точнее, хэш-суммы SHA1) сегментов закачиваемого файла.
Файлы метаданных могут распространяться через любыеканалы связи: они (или ссылки на них) могут выкладываться на веб-серверах,размещаться на домашних страницах пользователей сети, рассылаться по электроннойпочте, публиковаться в блогах или новостных лентах RSS. Клиент начинаетскачивание, получив каким-либо образом файл с метаданными, в котором естьссылка на трекер.
Первоначально BitTorrent не имел собственной поисковойсистемы (англ. searchengine), но в мае 2005года Брэм Коэн устранил этот недостаток.[1]
/>Трекер (англ. tracker; /ˈtrækə(r)/) —специализированный сервер, работающий по протоколу HTTP. Трекер нужен для того,чтобы клиенты могли найти друг друга. Фактически, на трекере хранятся IP-адреса,входящие порты клиентов и хэш-суммы, уникальным образом идентифицирующиеобъекты, участвующие в закачках. По стандарту, имена файлов на трекере нехранятся, и узнать их по хэш-суммам нельзя. Однако на практике трекер частопомимо своей основной функции выполняет и функцию небольшого веб-сервера. Такойсервер хранит файлы метаданных и описания распространяемых файлов,предоставляет статистику закачек по разным файлам, показывает текущееколичество подключенных пиров и пр./>/>Работа без трекера
В новых версиях протокола были разработаны бестрекерные(англ. trackerless) системы, которые решают некоторые изпредыдущих проблем. Отказ трекера в таких системах не приводит кавтоматическому отказу всей сети.
Начиная с версии 4.2.0 официального клиента, в нёмреализована функция бестрекерной работы, базирующаяся на протоколе Kademlia. Втаких системах трекер доступен децентрально, на клиентах, в форме распределеннойхеш-таблицы.
На данный момент ещё не все клиенты используютсовместимый друг с другом протокол. Совместимы между собой BitComet, µTorrent, Deluge,KTorrent и официальный клиент BitTorrent. Azureus также имеет режимбестрекерной работы, но его реализация отличается от официальной, вследствиечего он не может работать через DHT с вышеперечисленными клиентами.[2]Однако, для Azureus существует поддержка стандартного DHT через плагин MainlineDHT./>/>Super seeding (cупер-сид)
Супер-сид (англ. superseeding) — метод,реализованный в тех клиентах BitTorrent, авторы которых пытаются минимизироватьобъём данных до первого завершения загрузки пира. Метод был задуман ДжономХофманом и впервые был осуществлен в клиенте «BitTornado» в середине 2003 г.
Супер-сид является изменением в поведении сидеров и неможет быть осуществлен без нарушения протокола BitTorrent. Тем не менее, это неутверждается ни разработчиком протокола, Брэмом Коэном, ни в официальномклиенте.
Супер-сид действует, когда имеется только один сидер.Клиент, отдавший одному участнику какую-либо часть файла, прекращает передачуданных до тех пор, пока не обнаружит в сети вторую копию этой части. Посколькумногие участники не имеют возможности или не желают делать доступными длядругих скачанные данные, общая скорость отдачи падает. В обычном же режиме, в отличиеот супер-сид, каждый всегда получает запрошенную информацию, если она имеется,поэтому в нём средняя скорость передачи данных выше.
Супер-сид эффективен при раздачах с большим количествомкачающих. При небольшой группе людей (2—3 человека) их клиенты в силу разныхпричин могут отказаться устанавливать связь друг с другом. В этом случаевключённый супер-сид заставит клиентов ждать, пока данные станут доступны.Когда число качающих велико (10—20 человек), достаточно отдать каждую частьфайла только один раз, тогда клиенты смогут обменяться ею между собой, и каждыйиз них получит файл целиком./>/>Две ошибкиначинающих пиров
Начинающие пользователи BitTorrent часто допускают двеошибки:
·          Забывают открыть портприёма. Всегда, когдаэто возможно, порт должен быть открыт в брандмауэре или роутере.Пир с закрытым портом не может связаться с другим пиром, у которого порт приёматакже закрыт.
·          Удаляют закачку,как только она закончилась. После того, как закачка закончилась, клиент должен некоторое времяпобыть в режиме сида, раздавая закачанный файл другим. />/>Терминология
·          Анонс (англ. announce) — обращение клиента к трекеру.При каждом анонсе клиент передаёт на трекер информацию об объёмах им скачанногои отданного, a трекер передаёт клиенту список адресов других клиентов.Обращение клиента к трекеру происходит через определённые интервалы времени,которые определяются настройками клиента и трекера.
·          Доступность (англ. availability), или distributed copies —количество полных копий файла, доступных клиенту. Каждый сид добавляет 1,0 кэтому числу; личеры увеличивают доступность в зависимости от количестваскачанного, которого нет у других личеров. К примеру, если на раздаче есть одинсид и два личера, скачавшие по 50 % файла (скачанные части равны междусобой), то доступность равна 1,50.
·          Личер (англ. leech — пиявка) — пир, неимеющий пока всех сегментов, то есть продолжающий скачивание. Термин частоупотребляется и в негативном смысле, который он имеет в других файлообменныхсетях: пользователь, который отдаёт гораздо меньше, чем скачивает.
·          Отравленныйторрент —ситуация, когда часть пиров раздаёт повреждённые сегменты.
·          Пир (англ. peer — соучастник) — клиент,участвующий в раздаче. Иногда пирами называют только скачивающих участников.
·          Раздача (англ. seeding) — процесс распространенияфайла по протоколу BitTorrent.
·          Рейтинг (англ. shareratio) — отношение отданного кскачанному.
·          Рой (англ. swarm) — совокупность всех пиров,участвующих в раздаче.
·          Сид, иногда сидер (англ. seeder — сеятель) — пир, имеющийвсе сегменты распространяемого файла, то есть либо начальный распространительфайла, либо уже скачавший весь файл.
·          URL анонса (англ. announceURL) — адрес трекера, к которому клиент делаетанонс. Во многих клиентах называется «Tracker URL». Может включать«passkey» — уникальный код, назначаемый трекером для аккаунта пользователя,помогающий идентифицировать его на трекере (добавляется к URL анонса в самом*.torrent-файле). />/>Программы-клиенты
/>·          aria2 (англ.) —поддерживает HTTP, FTP, BitTorrent; файлы Metalink[убратьшаблон] 3.0
·          Azureus — написан на языке Java,поэтому является кроссплатформенным. Поддерживает Tor
·          BitTyrant —модифицированный вариант клиента Azureus 2.5
·          BitTornado —кроссплатформенный клиент, написанный на языке Python
·          Deluge —кроссплатформенный клиент, написанный на языке Python; использует GTK
·          FoxTorrent —расширение для браузера Mozilla Firefox, реализующее функции клиентаBitTorrent
·          LeechCraft —кроссплатформенный клиент, существует плагин для поддержки BitTorrent
·          mlDonkey — кроссплатформенный клиент
·          Браузер Operaполностью поддерживает закачку торрентов, начиная с версии 9.0
·          TorrentFlux (en) —написан на PHP, работает на удалённом Web-сервере как PHP-скрипт,позволяя не держать свой компьютер включённым постоянно, но при этом качать ираздавать торренты />GNU/Linux, UNIX
·          BTPD — консольныйклиент для Unix/GNU+Linux, написанный на C++; работает в режиме демона
·          CTorrent —консольный клиент для Unix/GNU+Linux, прекративший развитие в 2004 году
·          KTorrent —использует библиотеку Qt; работает в среде KDE
·          rTorrent —консольный клиент для UNIX/GNU+Linux, написанный на C++; использует библиотеки ncursesи libTorrent
·          Transmission —клиент для Mac OS X, FreeBSD, OpenBSD, NetBSD, GNU/Linux и BeOS, использующий GTK.Также может работать в консольном режиме и в режиме демона.
·          Bitflu —консольный клиент для Unix/GNU+Linux, написанный на Perl; работает врежиме демона, с поддержкой chroot окружения. Имеет веб-интерфейс,управляется через telnet />Windows
·          µTorrent
·          BitComet
·          BitSpirit
·          FlashGet
·          GetRight
·          Shareaza —поддерживает работу с несколькими файлообменными сетями, в том числе иBitTorrent
·          Free DownloadManager />Mac OS
·          XTorrent
·          Transmission
·          BitRocket.
·          Tomato Torrent
·          Acquisition
Глава 3. Программыдля работы с пиринговыми сетями3.1 Perfect Dark(P2P)
PerfectDark это японский пиринговыйфайлообменный клиент для Microsoft Windows. Авторизвестен под псевдонимом Kaichō (Президент (яп. 会長)). Perfect Dark был разработан как замена файлообменным клиентамWinny и Share. В данный момент проект находиться на стадии открытоготестирования и достаточно часто обновляется.Безопасность
В целом структура сети PerfectDark напоминает новейшие версии Freenet, но только с болееинтенсивным использованием распределённых хеш-таблиц.
Анонимность сети Perfect Darkбазируется на mixnet, в которых направление движения трафика подчиняетсяизвестной вероятности, а распределённое файловое хранилище (unity) неимеет определённой структуры, что осложнит попытки доказать нелегальностьпроизводимого файлообмена. Данные хранятся и передаются зашифрованными блоками,отдельно от ключей, использованных для шифрования этих блоков.
Perfect Dark использует алгоритмы RSA (с 1024-битнымключом) и AES (с 128-битным ключом) для шифрования данных, передаваемых междуучастниками файлообмена. Ключи, использованные для шифрования, кэшируются дляповышения эффективности работы.
Выложенные файлы и обсуждения (которые могут автоматически обновляться,если включена соответствующая опция), как правило, подписаны 160-битным ключом ECDSA.Выкладываемые обновления дополнительно защищены 2048-битным ключом RSA.
Автор полагает, что на начальном этапе разработки, недоступность исходныхкодов программы предотвратит попытки понижения уровня анонимности в сети Perfect Dark, и появленияпереработанных версий клиента PerfectDark для «любителей проехаться за чужой счёт». Однакоавтор не отрицает возможности появления в будущем версии с открытым исходнымкодом, если для этой проблемы будет найдено приемлемое решение./>/>Открытоетестирование
Поскольку на данный момент PerfectDark всё ещё активно развивается, автор не просит пользователейо полном переходе на Perfect Dark.Вместо этого автор просит пользователей принять участие в тестировании. Настадии тестирования автор надеется получить сообщения об ошибках в работепрограммы, и рекомендации о том, как сделать её более удобной./>/>Особенности работы
В сравнении со своими предшественниками Winny и Share, требования кпропускной способности интернет-соединения, и свободному месту на жёстком дискев Perfect Darkзначительно возросли.
·          Минимальнаяскорость аплоада: 100 Кбайт\с;
·          Место, занимаемоена диске под распределённое файловое хранилище сети Perfect Dark (каталог unity): какминимум 40 Гб;
·          Так же, в отличиеот предшественников, Perfect Darkосуществляет постоянную закачку частей файлов, пока его файловое хранилище недостигнет указанного значения. 3.2 eMule
eMule — свободный файлообменный клиент для Microsoft Windows.Был разработан как замена собственническому клиенту eDonkey2000. В настоящеевремя может работать как с eDonkey сетью (ed2k), так и с сетью Kademlia.
Проект хостится на SourceForge.net. В 2007 году eMuleпобедил в номинации «Best New Project»[1] (правда к томувремени проект давно уже новым не являлся).
На основе eMule разработан ряд модификаций — такназываемых «модов»; кроме того, доступно его кросс-платформенноеответвление aMule. Поскольку eMule поставляется с открытыми исходными кодами,находится немало желающих нечестно использовать p2p сеть (то есть не«делиться» файлами, а только «получать» их), в которой работает этот клиент.Для этого сегодня разработано немало «нечестных» клиентов, работающих в этой жесети. Чтобы защититься от «нахлебников», в eMule было разработано множествопроверок, которые затрудняют неравноценный обмен информацией и блокируют«нечестные» моды.
Популярностью пользуется сборка, включающая в себякомпоненты для резервного копирования служебных файлов, создания ссылок,блокирования IP-адресов, а также получения информации о медиа-файлах.
Начиная с версии 0.47b появилась возможность скрыватьиспользование сети eDonkey от провайдеров благодаря вуалированию протокола,которое, тем не менее, не гарантирует такой степени сокрытия информации, какполноценное её шифрование. Также произошло обновление протокола Kad до версии2.0, который теперь обеспечивает бо́льшую анонимность (случаев, когда IP-адресоткрывается другому клиенту стало меньше) и в перспективе снимает ограничение в300 результатов поиска на узел сети. С версии 0.48a добавлена поддержка UPnP наоснове кода Shareaza.
Кроме того, в eMule разработана функция MobileMule,которая позволяет управлять клиентом с мобильного телефона, а также вебсервер,который выполняет ту же роль, но только не с телефона, а с другого компьютера.
Некоторые провайдеры модифицируют eMule для проверкиаутентификации на сервере, а обмен в сети Kademlia попросту отключается.
Начиная сверсии 42.1 eMule поддерживает 2 разных типа сетей: классическую серверную eD2kи новую безсерверную Kademlia.Обе сети обладают примерно одинаковойфункциональностью. Они позволяют находить пользователей или файлы дляскачивания.
Идентификацияфайлов
Каждому файлусоответствует свой хэш. Хэш — это комбинация цифр и букв для однозначнойидентификации файла. Хэш не зависит от имени файла, только от его содержимого.Это позволяет находить источники файла независимо от того, какое имя тот илииной пользователь дал файлу.Кроме того, файлы разделяются на части размером9.28 Мб. Для каждой части также вычисляется хэш. Например, 600-Мб файл будетсодержать 65 частей. Общий хэш, т.е. хэш файла, вычисляется на основе хэшейчастей.
Идентификациядругих клиентов
Аналогичнофайлам каждый пользователь сети получает постоянный уникальный пользовательскийхэш. Процесс идентификации пользователей защищен от злоумышленников с помощьютехнологии открытых / закрытых ключей.
Скачиваниеданных
Важнопонимать, что скачивание данных в eMule не зависит от выбора сети, от негозависит только способ поиска файлов и нахождение пользователей-источников.Кактолько источник найден, ваш клиент связывается с ним, после чего источникставит вас в очередь. По достижении начала очереди вы начинаете скачиватьданные.
Классическаясерверная eD2k сеть
Подключениек сети
Ключевымэлементом этой сети является eD2k-сервер. Каждый клиент должен подключиться ккакому-либо серверу чтобы войти в сеть.При входе в сеть сервер проверяетвозможность другим клиентам свободно подключаться к вашему. Положительныйрезультат приводит к присваиванию вам так называемого High ID (высокийуровень), отрицательный — к Low ID (низкий уровень).После того как ID присвоен,eMule посылает серверу полный список ваших файлов обмена. Сервер добавляет этотсписок, состоящий из имён файлов и их хэшей, в свою базу данных.
Поискфайлов
Подключившиськ сети, клиент может искать файлы по ключевым словам. Поиск бывает локальнымили глобальным. Локальный поиск осуществляется только на том сервере, ккоторому вы подключены, поэтому он быстрее, но выдаёт меньший результат.Глобальный поиск задействует все сервера сети, поэтому он дольше, но ирезультат полнее. Каждый сервер ищет ключевые слова в своей базе данных ивозвращает подходящие имена файлов и их хэши.
Нахождениеисточников файлов
Файлы длязакачки могут быть добавлены с помощью поиска или специальных ссылок ed2k://,которые размещают многие web-сервера.После добавления файла в список ПриемаeMule запрашивает источники к нему сначала у локального (подключенного)сервера, потом у всех остальных серверов сети. Сервер производит в своей базеданных поиск по хэшу файла и возвращает всех известных ему клиентов, имеющихэтот файл для обмена.Источники — это другие клиенты, которые обладают хотя быодной частью (9.28 Мб) файла.
Безсервернаясеть Kademlia
Подключениек сети
Дляподключения к этой сети необходимо знать IP-адрес и порт любого ужеподключенного клиента. В этом случае происходит Самонастройка (Boot Strap).Привходе в сеть клиент с помощью других клиентов опрашивает себя на возможностьсвободного подключения. Этот процесс похож на проверку HighID/LowID сервером.Если вы свободно доступны, то получаете ID (аналогично HighID) и статус Открыт.В противном случае вы получаете статус Файрвол. Начиная с версии 44aсеть Kademlia поддерживает Приятеля для зафайрволенных пользователей.Приятели это клиенты Kademlia со статусом Открыт, работающие какпосредники для соединений, недоступных пользователям за файрволом.
Поиск всети Kademlia
В этой сетинет разницы, что вы ищете: имена файлов, источники, других пользователей — процесс выполняется примерно одинаково.Здесь нет серверов для хранения данныхпользователей и списков их открытых файлов, эта работа выполняется каждымподключенным к сети клиентом. Иначе говоря, каждый клиент является такжемини-сервером.Используя принцип уникальности пользовательского хэша, в Kademliaза каждым пользователем закрепляется определенная «ответственность».Клиент в сети Kademlia работает как сервер для определяемых его хэшем набораключевых слов или источников.Таким образом, цель любого поиска — найтиклиентов, ответственных за искомые данные. Это осуществляется с помощьюсложного алгоритма вычисления кратчайшей дистанции до нужного клиента путемопроса других клиентов.
Итоги
Обе сетииспользуют абсолютно разные концепции для достижения одинаковой цели: поискфайлов и нахождение источников. Основная идея Kademlia — независимость отсерверов и масштабируемость. Сервера могут обслуживать ограниченное числоклиентов, и в случае отказа большого сервера сеть может серьезнопострадать.Kademlia же самоорганизующаяся сеть и автоматически перестраиваетсядля достижения наилучшей производительности в зависимости от количествапользователей и качества их соединений. Следовательно, она менее критична ккрупным сбоям.

Глава 4. Историяпиринговых сетей
Peer-to-peer— «равный-равному», многовековой идеал самураев исоциалистов-утопистов, был в самом конце второго тысячелетия воплощен в жизньвосемнадцатилетним бостонским студентом Шоном Фэннингом.
Вянваре 1999 года Шон по прозвищу Napster, проучившись всего один семестр,покинул Северо-восточный университет, для того чтобы полностью погрузиться вработу над программным обеспечением для нового проекта. Идея, над воплощениемкоторой трудился мистер Фэннинг, была весьма незамысловатой и родилась в ходеобщения с соседями по университетскому общежитию. Подключенным к Интернетумеломанам, коих было немало среди друзей изобретателя, предлагалось«расшарить» на своем компьютере (то есть открыть для удаленногодоступа других пользователей) директории с музыкальными файлами. А чтобы искатьмузыкальные композиции было легче, общий их список хранился на специальномцентральном сервере, а сам поиск осуществлялся с помощью программы-клиента,которую должен был скачать каждый участник сети.
Недолгомузыка играла...
Приведеннаявыше схема функционирования пиринговой сети является, конечно, сильноупрощенной, не учитывающей многих нюансов (например, временной недоступностиотдельных участников сети). Тем не менее Шон Фэннинг, который, по егособственному признанию, учился программированию по ходу дела, успешно справилсяс возникавшими сложностями, и в начале лета того же года названная в честьсвоего создателя музыкальная сеть начала работу. Возможность бесплатного ипростого (по сравнению, например, с FTP-архивами) получения интересующихкомпозиций быстро обрела популярность, и по мере роста числа пользователейNapster и предлагаемых к обмену MP3-файлов привлекательность сети тольковозрастала.
Ужев августе 1999-го группа людей (в том числе и дядя Шона) вложили в проект серьезныеденьги, которых должно было хватить еще на полгода, и один из инвесторов —Эйлин Ричардсон — стала в сентябре исполнительным директором компании Napster.
Хотясоздатель Napster и его первые инвесторы были полны радужных надежд на будущее,а популярность проекта среди пользователей росла бешеными темпами, осень1999-го, как выяснилось впоследствии, стала началом конца этой сети. В течениеоктября и ноября Napster ведет напряженные переговоры с представителямиамериканской звукозаписывающей индустрии (RIAA). То ли возможность компромиссавладельцами лейблов изначально не предполагалась, то ли всему виной быланесговорчивость Эйлин Ричардсон, но, как бы там ни было, в начале декабря RIAAпредъявила Napster ультиматум, грозя штрафами в сто тысяч долларов за каждыйскачанный без ее разрешения музыкальный файл. Карающая рука закона
Всяпоследующая история Napster состояла из отступлений и временных перемирий свладельцами авторских прав, что, впрочем, не мешало дальнейшему росту числапользователей сети. В мае 2000 года по требованию рок-группы Metallica более300 тысяч пользовательских компьютеров, содержащих ее песни, были исключены изпирингового обмена. Смена руководителя компании (обошедшаяся новому инвестору в15 миллионов долларов) не спасла ситуации: в июне того же года RIAA сделалапопытку наложить судебный запрет на все основные лейблы в коллекцияхпользователей этой сети.Napster в ответ нанимает Дэвида Бойеса (адвоката,одержавшего победу над Microsoft в ходе затеянного правительством СШАантимонопольного разбирательства), Милтона Олина (бывшего топ-менеджеразвукозаписывающей компании A&M) и объявляет о достижении договоренностей скомпанией Liquid Audio, совместно с которой планировалось защитить музыкальныйобмен от претензий поборников авторских прав. И все же 26 июля американскийокружной судья Мерилин Пател постановила прекратить пиринговый обмензащищенными авторским правом композициями в течение двух суток. На этойинтригующей ноте оставим на некоторое время многострадальный Napster наедине самериканским правосудием и обратим свое внимание на его многочисленные аналоги.Партизанская тактика обмена
Послетого, как популярность пирингового обмена стала очевидной, последователи ШонаФэннинга принялись писать свои собственные программы, стремясь превзойтипрототип в удобстве использования, разнообразии доступных для обмена данных изащищенности от внешнего воздействия. В частности, в середине марта 2000 года вИнтернете появилось программное обеспечение p2p-сети Gnutella, основанной нановой идеологии. В отличие от Napster, Gnutella не требовала наличияцентрального сервера — вернее, функции сервера, обслуживающего запросынебольшой группы пользователей, мог выполнять компьютер любого участника пиринговогообмена. Таким образом, блокировать работу сети отключением одного-единственногосервера стало невозможно. Любопытно, что авторы Gnutella Джастин Френкель и ТомПеппер являлись сотрудниками компании Nullsoft, принадлежащей крупнейшемупровайдеру America-On-Line (AOL). Сама AOL в это же время готовилась кобъединению с медиагигантом Time Warner, так что самодеятельность Френкеля иПеппера была пресечена на корню. Однако джинн уже был выпущен из бутылки, и,несмотря на закрытие сайта www.gnutella.com/, копии программногообеспечения расползлись по Интернету. Как это нередко происходило и скомпьютерными вирусами, независимые разработчики принялись усовершенствоватьисходный код, породив многочисленные клоны Gnutella (из которых самымипопулярными являлись Aimster, LimeWire, BearShare и Xolox).
Серьезнуюконкуренцию платформе Gnutella в скором времени составила технологияголландской компании FastTrack. Разработанная почти одновременно с Napster,платформа FastTrack была не столь популярна вплоть до момента его первогоофициального закрытия. Так же как и Gnutella, основанные на FastTrackпиринговые сети (например, Morpheus, Grokster и KaZaa) не имели центральногосервера. Вместе с тем в качестве локальных серверов в данном случае выступалине любые, но наиболее мощные компьютеры из числа подключенных к p2p-сети, чтозначительно ускоряло ее работу. Ко всему прочему, программное обеспечениеFastTrack позволяло объединять базы разных пиринговых сетей, увеличиваяразнообразие доступных для скачивания файлов. Например, пользователи сетиMorpheus (известной также под названием MusicCity), обогнавшей осенью 2000 годапо популярности Napster, могли использовать ресурсы Grokster и KaZaa.
Мучения«котёнка»
Вернемся,однако, к Napster, апелляция которого была удовлетворена судом за считанныечасы до предписанного срока закрытия. Вялотекущее судебное разбирательствопродлилось до середины осени того же года, и к этому времени Napster в глазахвладельцев авторских прав стал казаться меньшим злом по сравнению сконкурирующими сетями. Потенциальная уязвимость детища Фэннинга — наличиецентрального сервера — позволяла организовать достаточно эффективную фильтрациюконтента. Это обстоятельство, а так же огромная аудитория пиринговой сети (кконцу 2000 года данным сервисом пользовались почти 40 млн человек) привлекливнимание немецкой медиакомпании Bertelsmann AG, и в конце октября былообъявлено о достижении соглашения, в соответствии с которым на базе Napsterпланировалось создать платную службу музыкальной дистрибуции. Впрочем,сепаратный мир с Bertelsmann не избавил Napster от исков другихзвукозаписывающих гигантов, и агония p2p-сети продолжалась в течение всего 2001года.
МогильщикамиNapster стали не только поборники авторских прав, со многими из которых (в томчисле и с Metallica) к лету 2001 года были достигнуты полюбовные соглашения, нотакже доброхоты, создававшие программы для обмана установленных пиринговойсетью фильтров (одна из таких программ была размещена, например, на сайте«напстероподобной» сети Aimster). Использовавшийся алгоритмидентификации MP3-файлов был весьма незамысловат и основывался на анализе ихимен. Простая перестановка букв в именах файлов (типа MusicName=>usicNameM), не сильно затрудняющая визуальное опознание музыкальнойкомпозиции, оказалась не по зубам автоматическим фильтрам. И 11 июля 2001 годапо формальному поводу (в связи с тем, что эффективность фильтрации защищенногоавторским правом контента составляла не 100, а «всего» 99%) бесплатныйфайлообменный сервис Napster был закрыт окончательно. Король умер, да здравствует король!
Длябольшинства поклонников бесплатной музыки этот день, видимо, не стал траурным.К моменту клинической смерти Napster количество доступных для скачивания черезэту сеть композиций уменьшилось на 80%, тогда как конкурирующие проекты(американские Music City, Limewire, Bearshare и Audiogalaxy, голландская KaZaa,индийский Grokster, израильский iMesh и многие другие) активно расширяли базупользователей. Впрочем, чувство безнаказанности, основанное в одних случаях нанеподсудности европейских или, например, австралийских компаний американскимсудам, а в других — на неуязвимости децентрализованных сетей, подвело многихэнтузиастов пирингового обмена.
Нерадостнаятенденция упадка еще совсем недавно крупнейших файлообменных сетей рождаетзакономерный вопрос: а есть ли у технологий пирингового обмена будущее?Очевидно, что время, упущенное противниками свободного распространенияинформации в период рождения «Напстера», теперь играет им на руку.Конечно, полностью искоренить или даже значительно ограничить пиринговый обменс помощью судебных запретов нереально (в силу уже упомянутых техническихпричин). Однако отсутствие легального статуса мешает владельцам p2p-сетейполучать значительные инвестиции и не позволяет рассчитывать на крупныерекламные доходы. Одновременно с этим рекламный бизнес подрывают многочисленныенеофициальные клоны клиентов пиринговых сетей, избавляющие пользователей от «назойливыхбаннеров». В результате компании банкротятся, и в лучшем случае на ихраскрученных сайтах открываются платные музыкальные сервисы, а в худшем —домены могут достаться порнодельцам (по крайней мере, такое предложение былосделано в сентябре этого года почившему в бозе Napster). Обмен под контролем
Сточки зрения защитников авторских прав, пиринговые технологии могут с успехомиспользоваться в проектах, не затрагивающих напрямую их интересы и неконкурирующих с платными онлайновыми сервисами (например, для созданийсообществ людей, интересующихся проблемами типа поиска лекарств от рака).Другой интересной возможностью применения данных технологий является созданиеэффективных поисковых машин (над этой проблемой, в частности, работал покойныйДжин Кан).
Вместес тем, идея условно-бесплатного и одновременно легального распространениявполне коммерческого контента, как мне кажется, также имеет право насуществование. Едва ли не основным аргументом защитников пирингового обменаявляется то обстоятельство, что достоверной связи между количественным ростомфайлообмена и снижением официальных доходов от продажи контента (музыки накомпакт-дисках, видео на DVD и т.д.) не наблюдается. Данные RIAA о падениидоходов индустрии с этой точки зрения объясняются неблагоприятнойобщеэкономической конъюнктурой и медлительностью медиагигантов в отношениивывода на рынок новых продуктов. Более того, львиная доля тех, кто слушаетскачанную в Интернете MP3-музыку, впоследствии покупает понравившиеся альбомына CD ради их лучшего качества. И все же могут ли музыканты и их продюсерызаработать непосредственно на сетевом контенте, то есть согласится ликто-нибудь платить за полученные в ходе пирингового обмена композиции?

Заключение
Возникновение пиринговыхсетей связано с тремя факторами.
1.        Процессор обычнойклиентской машины мало загружен. Особенно в офисах, где машины используютсяпреимущественно для подготовки документов, для набора текстов и т.п. То жекасается и подавляющего большинства домашних компьютеров.
2.        Многиепользователи хранят на своих компьютерах коллекции файлов (тексты статейопределенной тематики, художественные фотографии и др.), которые могут бытьинтересны и другим пользователям. Но при этом владельцы этих коллекций неготовы сделать свой компьютер полноценным сервером в сети из-за егонедостаточной мощности, необходимости круглосуточной работы, финансовых идругих причин.
3.        Определеннаячасть пользователей хотела бы более активно участвовать в «общественнойжизни» сети, не ограничиваясь обсуждением различных вопросов на форумах ив чатах. Они готовы участвовать в каком-либо полезном «общем деле».
Пиринговые сетиразнообразны. Основной целью одних является обмен музыкальными и видео файлами.В других реализуются проекты поиска лекарства от рака, третьи тренируются вовзломе известных шифров на основе распределенных вычислений, четвертые ищутвнеземные цивилизации на основе данных, получаемых с радиотелескопов.
С математической точкизрения пиринговая сеть может быть представлена графом неопределенного вида: неткакой-либо стандартной архитектуры сети (например, звезды или кольца). Болеетого, этот граф – динамический, так как отдельные пользователи включаются всеть и выходят из ее состава в произвольные моменты времени. Любойпользователь, играющий роль сервера, в любой момент времени может превратитьсяв клиента на некоторый отрезок времени. Но может и пребывать одновременно вположении и сервера и клиента.
Исследования в областипиринговых сетей начались в связи с успешным функционированием таких систем какNapster, Gnutella и Freenet.
Napster – гибриднаясистема, поскольку использует централизованный индекс для поиска. СистемаGnutella – чистая пиринговая система. Ее архитектура такова, что каждый узел сневысокими скоростями коммутации может иметь до четырех соседей, мощные же узлымогут иметь десятки соседей. Понятно, чем больше соседей, тем быстрее можетбыть поиск. Но здесь имеются такие же технические ограничения, как и вмногопроцессорных компьютерах: слишком накладно соединять каждого с каждым.Соединения в системе не направленные (неориентированный граф). Система Gnutellaиспользует поиск в ширину, просматривая сначала все соседние с инициаторомузлы. Каждый узел, получивший запрос, распространяет его своим соседям максимумна d шагов.
Преимущество поиска вширину состоит в том, что просматривая значительную часть сети, он увеличиваетвероятность удовлетворения запроса. Недостатком является перегрузка сетилишними сообщениями.
Большинство существующихсистем поддерживают только «булевы» запросы. Каждый файлхарактеризуется его метаданными (например, набором ключевых слов) и запросформируется как набор ключевых слов. Вследствие этого результат поиска можетбыть двухвариантным: «найдено», «не найдено».

Список используемых источников:
1)        Карп Д.,О’Рейлли Т., Мотт Т. WindowsXP. Справочник. / Д. Карп, Т. О’Рейлли,Т. Мотт. -2-е изд. – СПб.: Питер, 2006. – 784 с.
2)        Тихонов В.А.,Райх В.В. Информационная безопасность: концептуальные, правовые,организационные и технические аспекты: учеб. пособие / В.А. Тихонов, В.В. Райх.– М.: Гелиос АРВ, 2006. – 528 с
3)        Касьянов В.Н.,Евстигнеев В.А. Графы в программировании: обработка, визуализация и применение.СПб.: БХВ-Петербург, 2003, 1104 С.
4)        Касьянова Е.В.Язык программирования Zonnon для платформы .NET // Программные средства иматематические основы информатики. — Новосибирск: ИСИ СО РАН, 2004, С.189-205.
5)        Кормен Т.,Лейзерсон Ч., Ривест Р. Алгоритмы: построение и анализ, М.: МЦНМО, 1999.
6)        Лавров С.С.Программирование. Математические основы, средства, теория. — СПб:БХВ-Петербург, 2001.
7)        Просиз Дж.Программирование для .NET. – М.: Русская Редакция, 2003.
8)        Уоткинз Д.,Хаммонд М., Эйбрамз Б. Программирование на платформе .NET. – М.: Вильямс, 2003.
9)        GutknechtJ., Zueff E. Zonnon Language Report. Zurich, Institute of Computer Systems ETHZentrum, 2004.
10)     Торокин, А.А.Инженерно-техническая защита информации: учеб пособие для студентов, обучающихсяпо специальностям в обл. информ. безопасности / А.А. Торокин. – М.: Гелиос АРВ,2005. – 960 с
11)     Акулов, О.А.Информатика: базовый курс: учеб. для студентов вузов, бакалавров, магистров,обучающихся по направлениям 552800, 654000 «Информатика и вычислительнаятехника» / О.А. Акулов, Н.В. Медведев. – 4-е изд., стер. – М.: Омега-Л, 2007. –560 с.
12)     Советов Б.Я.Моделирование систем. Практикум: учеб. пособие для вузов / Б.Я. Советов, С.А.Яковлев. – 3-е изд., стер. – М.: Высш. шк., 2005. – 295 с.:
13)     Галицкий А.В.,Рябко С.Д., Шаньгин В.Ф. Защита информации в сети –анализ технологий и синтезрешений / А.В. Галицкий, С.Д. Рябко, В.Ф. Шаньгин. – М.: ДМК Пресс, 2004. –616 с.
14)     Прохода А.Н.Обеспечение интернет-безопасности. Практикум: учеб. пособие для вузов/ А.Н.Прохода. – М.: Горячая линия-Телеком, 2007. – 180 с.
15)     ru.wikipedia.org
16)     www.allp2p.net.ru
17)     www.compulenta.ru
18)     p2pinfo.ru
19)     www.computery.ru
20)     www.compress.ru
21)     www.overclockers.ru
22)     www.krs-ix.ru
23)     experiment.ru


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

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.