Реферат Пиринговые сети
Работа добавлена на сайт bukvasha.net: 2015-10-28Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
от 25%
договор
Содержание
Введение………………………………………………………………………...…3
Глава 1. Пиринговые сети ………….….….…..……………………………...…..4
1.1. Общее понятие …………...............................................................…4
1.2. Одноранговая сеть ….........................................................................7
1.3. Пиринговая файлообменная сеть ………………………...………..9
Глава 2. Сети и протоколы(на примере eDonkey2000)………………………..10
2.1. eDonkey2000 (сеть)……….……………………………………..….10
Заключение …………………………………………………….………………...13
Список литературы…………………………………………….………………...15
Электронные ресурсы…………………………………………………………...16
Введение
Все мы каким-то образом делимся информацией с окружающими нас людьми. В случае, когда мы делимся файлами с помощью программ типа eMule(еМул), eDonkey (еДонки), и им подобных, такого рода обмен сопряжён с работой огромной машины, принципы работы которой, её истоки и идеи, на которых она построена, мы зачастую представляем себе довольно слабо.
Необходимость иметь доступ к огромному количеству информации, лежащей на других компьютерах, сначала породила локальные сети. Это помогло на некоторое время, но объединить таким образом большое количество компьютеров оказалось невозможно. Возможность же доступа к файлам, возможно имеющихся у кого-то ещё, была очень заманчива. Поэтому была предложена система, позволяющая принимать и передавать файлы с каждого компьютера, с которым есть связь и на котором имеется определенное программное обеспечение. Такие системы получили название п2п (p2p) или пиринговых (peer-to-peer) сетей. Это словосочетание можно перевести как «равноправный обмен». Это значит, что вы, имея некоторые файлы, которые могут быть интересны кому-то ещё, разрешаете желающим их у вас скопировать, а взамен получаете возможность получить файлы, необходимые вам, от тех, у кого они есть.
Так как в настоящее время Интернет получает всё большую и большую распространённость, использование пиринговых сетей является актуальнее с каждым днём. Ведь на сегодняшний день найти нужный файл (любимый фильм, новую программу для своего «электронного друга», только что вышедшею песню любимой звезды, книгу и просто какой-либо интересующий вас файл) намного проще, если вы знаете что такое пиринговые сети, и знаете как ими пользоваться.
Глава 1. Пиринговые сети
1.1. Общее понятие
Одной из основных трудностей реализации подобного обмена являлось то, что было необходимо каким-то образом найти тех, у кого есть то, что вам нужно. Для решения этой проблемы существуют два основных пути: централизованый и распределённый серверы. В случае работы с централизованным сервером каждый пользователь должен зарегистрироваться на этом сервере, который соберёт информацию о пользователе (файлы, доступные для обмена, идентификатор пользователя и т.д.), а затем внести эту информацию в свою базу данных, по которой и будет в дальнейшем идти поиск. Все запрошенные пользователем файлы, будут искаться в базе данных центрального сервера, а найденные ссылки будут передаваться пользователю для установления прямой связи именно с тем компьютером, на котором есть нужная информация. Именно на таком принципе работает популярная КаЗа (KaZaa) и другие пиринговые приложения. Описанный способ обмена файлами с помощью одного или нескольких центральных серверов основан на так называемом протоколе ФастТрак (FastTrack), который является коммерческим, что несколько негативно влияет на разработку приложений, его использующих.
Когда центрального сервера не существует, используется протокол Гнутелла (Gnutella), который передаёт запрос пользователя не центральному серверу, а непосредственно другим компьютерам сети. Пользователь является и клиентом, и сервером пиринговой сети. Такого рода системы менее требовательны к приёму и регистрации новых членов и отличаются огромной скоростью распространения запроса. Количество опрошенных источников увеличивается в геометрической прогрессии. Примером приложения, использующего этот подход, может служить Морфеус (Morpheus).
Несомненным первопроходцем пиринговых систем стал Напстер (Napster),попавший под горячую руку защитников авторских прав. Через несколько месяцев после появления Напстера свет увидел ИМеш (IMesh). В отличие от Напстера, ИМеш жив и поныне.
После закрытия Напстера пиринговые приложения стали появляться с чудовищной скоростью и к настоящему времени их существует довольно много. Периодически одни погибают, другие рождаются и перерождаются. Одним из самых известных в мире является КаЗа, а в рунете – разновидности еМул (eMule) и еДонки (eDonkey).
На самом деле, ослик и мул, как их называют те, кто ими пользуется, являются в некотором смысле промежуточными системами между распределёнными и централизоваными системами: существуют центральные сервера, которые обрабатывают запросы пользователей (осло- и муловодов соответственно), но таких серверов достаточно много, что позволяет с одной стороны их не перегружать, но с другой стороны несколько усложняет поиск, так как обновление и получение информации с других серверов занимает некоторое время.
Как и в любом сообществе, тех, кто пользуется пиринговыми сетями, существуют некоторые правила поведения и правила хорошего тона. Они просты и очевидны, но, к сожалению, не всегда и не всеми выполняются.
1. После скачивания не удаляйте файл сразу. Пока есть возможность – подержите и дайте его скачать другим.2. Не зажимайте скорость исходящего соединения без необходимости. Конечно, это нагрузка на ваш компьютер, но ведь другие тоже хотят что-то получить.3. Делитесь файлами. Если у вас есть то, что может быть интересно кому-то ещё.
Будущее пиринговых сетей в целом видится довольно радужным. Страсть людей к обмену (бесплатному) неистребима. Страсть компаний к зарабатыванию денег также неистребима. Получается классический случай: единство и борьба противоположностей. Ничего противозаконного в самих сетях нет. Они будут строиться и дальше. А уж как будет вестись борьба с пиратским распространением материалов, покажет время.
Отдельно стоит вопрос об авторских правах при использовании пиринговых сетей. Строго говоря, распространение лицензионной продукции таким образом нарушает авторские права тех, кто ими владеет, и дискуссии на эту тему уже давно превратились в постоянный фон, на котором файлы всё равно передаются и принимаются. С точки зрения защитников авторских прав, пиринговые технологии могут с успехом использоваться в проектах, не затрагивающих напрямую их интересы и не конкурирующих с платными онлайновыми сервисами (например, для созданий сообществ людей, интересующихся проблемами типа поиска лекарств от рака). Другой интересной возможностью применения данных технологий является создание эффективных поисковых машин (над этой проблемой, в частности, работал покойный Джин Кан).
Идея условно-бесплатного и одновременно легального распространения вполне коммерческого контента, также имеет право на существование. Едва ли не основным аргументом защитников пирингового обмена является то обстоятельство, что достоверной связи между количественным ростом файлообмена и снижением официальных доходов от продажи контента (музыки на компакт-дисках, видео на DVD и т.д.) не наблюдается. Данные RIAA о падении доходов индустрии с этой точки зрения объясняются неблагоприятной общеэкономической конъюнктурой и медлительностью медиагигантов в отношении вывода на рынок новых продуктов. Более того, львиная доля тех, кто слушает скачанную в Интернете MP3-музыку, впоследствии покупает понравившиеся альбомы на CD ради их лучшего качества.
1.2 Одноранговая сеть
Однора́нговые, децентрализо́ванные или пи́ринговые (от англ. peer-to-peer, P2P — один на один, с глазу на глаз) сети — это компьютерные сети, основанные на равноправии участников. В таких сетях отсутствуют выделенные серверы, а каждый узел (peer) является как клиентом, так и сервером. В отличие от архитектуры клиент-сервер, такая организация позволяет сохранять работоспособность сети при любом количестве и любом сочетании доступных узлов.
Впервые фраза «peer-to-peer» была использована в 1984 году Парбауэллом Йохнухуйтсманом (Parbawell Yohnuhuitsman) при разработке архитектуры Advanced Peer to Peer Networking фирмы IBM.
Устройство одноранговой сети
Например, в сети есть 12 машин, при этом любая может связаться с любой. В качестве клиента (потребителя ресурсов) каждая из этих машин может посылать запросы на предоставление каких-либо ресурсов другим машинам в пределах этой сети и получать их. Как сервер, каждая машина должна обрабатывать запросы от других машин в сети, отсылать то, что было запрошено, а также выполнять некоторые вспомогательные и административные функции.
Любой член данной сети не гарантирует никому своего присутствия на постоянной основе. Он может появляться и исчезать в любой момент времени. Но при достижении определённого критического размера сети наступает такой момент, что в сети одновременно существует множество серверов с одинаковыми функциями
Частично децентрализованные (гибридные) сети
Помимо чистых P2P-сетей, существуют так «гибридные сети», в которых существуют сервера, используемые для координации работы, поиска или предоставления информации о существующих машинах сети и их статусе (on-line, off-line и т. д.). Гибридные сети сочетают скорость централизованных сетей и надёжность децентрализованных благодаря гибридным схемам с независимыми индексационными серверами, синхронизирующими информацию между собой. При выходе из строя одного или нескольких серверов, сеть продолжает функционировать. К частично децентрализованным файлообменным сетям относятся например EDonkey, BitTorrent.
Частично децентрализованные (гибридные) сети
Помимо чистых P2P-сетей, существуют так называемые гибридные сети, в которых существуют сервера, используемые для координации работы, поиска или предоставления информации о существующих машинах сети и их статусе (on-line, off-line и т. д.). Гибридные сети сочетают скорость централизованных сетей и надёжность децентрализованных благодаря гибридным схемам с независимыми индексационными серверами, синхронизирующими информацию между собой. При выходе из строя одного или нескольких серверов, сеть продолжает функционировать. К частично децентрализованным файлообменным сетям относятся например EDonkey, BitTorrent.
1.3 Пиринговая файлообменная сеть
Одна из областей применения технологии пиринговых сетей — это обмен файлами: пользователи сети выкладывают какие-либо файлы в «расшаренную» (англ. share) папку, файлы из которой доступны для скачивания другим клиентам. Другой пользователь сети посылает запрос на поиск какого-либо файла. Программа ищет у клиентов сети файлы, соответствующие запросу, и показывает результат. После этого пользователь может скачать файлы у найденных источников. Современные файлообменные сети позволяют скачивать один файл сразу с нескольких источников (так быстрее и надёжнее). Чтобы убедиться, что этот файл у всех источников одинаковый, производится сравнение:по названию файла,по контрольным суммам или хэшам типа MD4, TTH, SHA-1. Во время скачивания файла пользователем (и после его окончания) этот файл у него могут скачивать и другие клиенты сети, в результате чего особенно популярные файлы могут в итоге быть доступными для скачивания с сотен источников одновременно.
Обычно в таких сетях обмениваются фильмами и музыкой, что является извечной головной болью видеоиздательских и звукозаписывающих компаний, которым такое положение дел очень не по душе. Проблем им добавляет тот факт, что пресечь распространение файла в децентрализованной пиринговой сети технически невозможно — для этого потребуется физически отключить от сети все машины, на которых лежит этот файл, а таких машин может быть очень и очень много — в зависимости от популярности файла. В последнее время видеоиздатели и звукозаписывающие компании начали подавать в суд на отдельных пользователей таких сетей, обвиняя их в незаконном распространении музыки и видео.
Глава 2. Сети и протоколы(на примере eDonkey2000)
2.1 eDonkey2000 (сеть)
eDonkey2000, eDonkey, eD2k — файлообменная сеть, построенная по принципу P2P на основе сетевого протокола прикладного уровня MFTP. Распространённые в Рунете неформальные названия: «ослик», «осёл».
Сеть состоит из нескольких миллионов клиентов и нескольких десятков серверов, взаимодействующих между собой. Клиентами являются пользователи, загружающие файлы, и пользователи, имеющие полные версии файлов «полные источники». Серверы позволяют находить опубликованные файлы и других пользователей, имеющих эти файлы (полностью или частично). Сами файлы через сервера не проходят.
-Каждый клиент связан с одним из серверов сети. Клиент сообщает серверу, какие файлы он предоставляет в общий доступ. Каждый сервер поддерживает список всех общих файлов клиентов, подключенных к нему. Когда клиент что-то ищет, он посылает поисковый запрос своему основному серверу. В ответ сервер проверяет все файлы, которые ему известны, и возвращает клиенту список файлов, удовлетворяющих его запросу.
Возможен поиск по нескольким серверам сразу. Такие запросы и их результаты передаются через протокол UDP, чтобы уменьшить загрузку канала и количество подключений к серверам. Эта функция особенно полезна, если поиск на сервере, к которому клиент подключен в настоящее время, даёт низкий результат.
Кроме того, ссылки на файлы публикуются на различных форумах в Интернете, в виде так называемых «релизов».
-Когда клиент запрашивает загрузку файла, сервер сначала собирает список всех известных ему клиентов, имеющих запрашиваемый файл. После этого он опрашивает другие известные ему серверы, имеют ли этот файл клиенты, подключенные к ним. Как только он находит других клиентов с файлом, тогда сервер запрашивает у каждого клиента различные части файла. Этот процесс продолжается до тех пор, пока файл не будет собран целиком.
Принцип работы: Client Z имеет все части Файла (символы строчных букв представляют части файла). Client W, X, и Y хотят загрузить Файл. Начиная с Client X и Client Y, оба имеют различные части Файла, они могут не только получить файл от Client Z, но и могут посылать файл друг другу. Это позволяет файлу быть распределённо распространённым намного быстрее без того, чтобы использовать большее количество ширины канала Client Z. Client W может запустить загрузку файла, даже если источник файла (Client Z) больше не имеет достаточной ширины канала для отсылки.
-Периодически серверы связываются друг с другом на короткое время. Во время этого сеанса связи сервер, объявляя о своём существовании, посылает список всех других известных ему серверов. Таким образом, серверы поддерживают список других активных серверов. Когда клиент подключается к серверу, сервер может выдать ему список известных ему серверов.
Популярные файлообменные сети:
- ED2K она-же eDonkey2000 — сеть централизованного типа, крупнейшая из ныне существующих файлообменных сетей. Поиск выполняют специализированные серверы, связанные между собой. Клиенты самостоятельно обмениваются по протоколу MFTP. Компания MetaMachine разработчики исходной концепции и первого клиента основанного на веб-интерфейсе (Edonkey 2000 v1.4.5) в 2005 году прекратили поддержку этого проекта, однако сеть продолжает функционировать за счет более совершенного и более мощного клиента eMule, который использует механизмы Kademlia для построения децентрализованного сегмента eD2k.
- BitTorrent (букв. англ. «битовый поток») — пиринговый (P2P) сетевой протокол Коэна для кооперативного обмена файлами через Интернет.
Не менее популярная файлообменная сеть. Файлы передаются частями, каждый torrent-клиент, получая (закачивая) эти части, в это же время отдаёт (подкачивает) их другим клиентам, что снижает нагрузку и зависимость от каждого клиента-источника и обеспечивает избыточность данных. Отличается высокой скоростью и централизованностью. Некоторые BitTorrent клиенты поддерживают DHT и могут работать без центрального сервера (т. н. трекера). Поддерживается клиентами BitComet, µTorrent, FreeDownloadManager и др.
- Kad Network — децентрализованная безсерверная файлообменная сеть, которая использует протокол оверлейной сети Kademlia. Поддерживается в eMule (Kad 2.0), aMule и MLDonkey. При передаче файлов, подключения клиентов происходят напрямую друг с другом (используя стандартные IP-сети). Как только происходит соединение с сетью, клиент запрашивает других клиентов, чтобы определить, может ли он свободно с ними соединиться. Этот процесс похож на определение HighID/LowID на серверах. Если вы можете свободно соединяться, вам дается ID (высокий, HighID) и получаете статус open в Кад сети. Если вы не можете соединяться свободно, вы получаете статус firewalled (соответственно LowID).
Заключение
Возникновение пиринговых сетей связано с тремя факторами.
1. Процессор обычной клиентской машины мало загружен. Особенно в офисах, где машины используются преимущественно для подготовки документов, для набора текстов и т.п. То же касается и подавляющего большинства домашних компьютеров.
2. Многие пользователи хранят на своих компьютерах коллекции файлов (тексты статей определенной тематики, художественные фотографии и др.), которые могут быть интересны и другим пользователям. Но при этом владельцы этих коллекций не готовы сделать свой компьютер полноценным сервером в сети из-за его недостаточной мощности, необходимости круглосуточной работы, финансовых и других причин.
3. Определенная часть пользователей хотела бы более активно участвовать в "общественной жизни" сети, не ограничиваясь обсуждением различных вопросов на форумах и в чатах. Они готовы участвовать в каком-либо полезном "общем деле".
Пиринговые сети разнообразны. Основной целью одних является обмен музыкальными и видео файлами. В других реализуются проекты поиска лекарства от рака, третьи тренируются во взломе известных шифров на основе распределенных вычислений, четвертые ищут внеземные цивилизации на основе данных, получаемых с радиотелескопов.
С математической точки зрения пиринговая сеть может быть представлена графом неопределенного вида: нет какой-либо стандартной архитектуры сети (например, звезды или кольца). Более того, этот граф – динамический, так как отдельные пользователи включаются в сеть и выходят из ее состава в произвольные моменты времени. Любой пользователь, играющий роль сервера, в любой момент времени может превратиться в клиента на некоторый отрезок времени. Но может и пребывать одновременно в положении и сервера и клиента.
Исследования в области пиринговых сетей начались в связи с успешным функционированием таких систем как Napster, Gnutella и Freenet.
Napster – гибридная система, поскольку использует централизованный индекс для поиска. Система Gnutella – чистая пиринговая система. Ее архитектура такова, что каждый узел с невысокими скоростями коммутации может иметь до четырех соседей, мощные же узлы могут иметь десятки соседей. Понятно, чем больше соседей, тем быстрее может быть поиск. Но здесь имеются такие же технические ограничения, как и в многопроцессорных компьютерах: слишком накладно соединять каждого с каждым. Соединения в системе не направленные (неориентированный граф). Система Gnutella использует поиск в ширину, просматривая сначала все соседние с инициатором узлы. Каждый узел, получивший запрос, распространяет его своим соседям максимум на d шагов.
Преимущество поиска в ширину состоит в том, что просматривая значительную часть сети, он увеличивает вероятность удовлетворения запроса. Недостатком является перегрузка сети лишними сообщениями.
Большинство существующих систем поддерживают только "булевы" запросы. Каждый файл характеризуется его метаданными (например, набором ключевых слов) и запрос формируется как набор ключевых слов. Вследствие этого результат поиска может быть двухвариантным: "найдено", "не найдено".
Список литературы
1.Финкова М.В. Скачиваем фильмы, музыку и программы из Интернета. Пиринговые сети Изд-во Наука и техника 2005
2. Емельянов С.В., Афанасьев А.П. (Ред.)Проблемы вычислений в распределенной среде. Прикладные задачи Рохос 2004
Электронные ресурсы
http://www.ikd.ru/node/2142/print
Приложения