Файлообменые локальные сети

Автор работы: Пользователь скрыл имя, 07 Ноября 2012 в 12:24, курсовая работа

Краткое описание

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

Содержание работы

Введение
1. Типы организации файлообменных сетей.
1.1 Централизованные сети
1.2 Децентрализованные сети
1.3 Частично децентрализованные (гибридные) сети
2. Принципы работы файлообменых сетей.
3 Известные децентрализованные и гибридные файлообменные сети

Заключение

Содержимое работы - 1 файл

Курсовик.doc

— 337.00 Кб (Скачать файл)

 

 

 

   * Полностью  децентрализованные сети.

  Файлообменники  третьего поколения . Функционируют без индексационных серверов. Хотя объём передаваемой служебной информации в них больше, надёжность их гораздо выше. Пока не существует способа насильно остановить функционирование такой сети. К децентрализованным сетям относятся Gnutella, Overnet, Kad.

Gnutella и Gnutella2

 
Gnutella — это одна из первых P2P сетей, которая была создана  в 2000 г. Каждый подключенный  к сети пользователь — является  узлом, обрабатывающим и пропускающим  поисковые запросы – поэтому  возможности, предоставляемые сетью  ограничиваются скоростью канала и мощностью компьютера, именно от этих параметров зависит количество связанных хостов.  
 
Протокол, на котором работает Gnutella, не предназначен для передачи файлов - это протокол, обеспечивающий поиск компьютеров и файлов, на его базе построена поисковая система InfraSearch. В связи с серьезными недостатками сети Gnutella пользователи сейчас отдают предпочтение сети Gnutella2, однако сеть Gnutella продолжает функционировать. Протокол Gnutella2 не является более новой версией Gnutella, а является его ответвлением. 
^

Отличия сетей Gnutella и Gnutella2.

 
Протокол Gnutella2 был создан в 2003. В  соответствии с этим протоколом часть  узлов становится концентраторами, остальные же - обычные узлы(листья). Каждый обычный узел соединен одним или несколькими концентраторами. А сам концентратор соединен с десятками других концентраторов и с множеством листьев. Узлы периодически отправляют концентратору список идентификаторов ключевых слов, по данным спискам осуществляется определение публикуемых данным узлом ресурсов. Эти идентификаторы хранятся в общей таблице на концентраторе. Списки идентификаторов и запросы пересылаются на концентраторы по протоколу UDP. 
 
Одно из отличий Gnutella2 заключается в возможность размножения в сети информации о файле, при этом копирование самого файла не осуществляется. Обе сети имеют много общего и отличаются в основном только форматами пакетов и методом поиска. Формат пакета сети Gnutella2 изначально разрабатывался с возможностью расширения в отличии от формата пакета сети Gnutella, для которого возможность расширения не предусматривалась разработчиками изначально. Для пакетов, передаваемых внутри сети, создан собственный формат, реализующий возможность увеличения функциональности сети в результате добавления дополнительной служебной информации, данный формат похож на XML.  
 
Другое серьёзное отличие одной сети от другой было в алгоритме поиска. Сеть Gnutella 0.4 использовала метод поиска query flooding, а сеть Gnutella2 использует метод обхода сети или метод блужданий. Ключевая идея метода случайных блужданий (Random Walkers algorithm, RWA) заключается в том, что каждый узел случайным образом пересылает сообщение с запросом, именуемое «посылкой», одному из своих соседних узлов. Чтобы сократить время, необходимое для получения результатов, идея одной «посылки» расширена до «k посылок», где k — число независимых посылок, последовательно запущеных от исходного узла.  
Ожидается, что «k посылок» после T шагов достигнет тех же результатов, что и одна посылка за kT шагов. Этот алгоритм напоминает метод RBFS(Метод случайного широкого первичного поиска), но в RBFS предполагается экспоненциальное увеличение пересылаемых сообщений, а в методе случайных блужданий — линейное. Оба метода — и RBFS, и RWA — не используют никаких явных правил, чтобы адресовать поисковый запрос к наиболее релевантному содержанию. 
Еще одной методикой, подобной RWA, является адаптивный вероятностный поиск (Adaptive Probabilistic Search, APS). В APS каждый узел развертывает локальный индекс, содержащий значения условных вероятностей для каждого соседа, который может быть выбран для следующего перехода для будущего запроса. Главное отличие от RWA в данном случае — это то, что в APS узел использует обратную связь от предыдущих поисков вместо полностью случайных переходов. Такой способ поиска имеет несколько преимуществ. Он более эффективен, так как продолжение поиска в сети, не увеличивает сетевой трафик экспоненциально. Запросы не направляются через большое количество посредников, и это позволяет клиенту остановить поиск при получении требуемого количества информации. Одновременно повышается сложность созданной сети, поэтому может потребоваться специализированное обслуживание сети. 
 
Также появилось различие в терминологии. Узлы, поддерживающие работу сети в Gnutella, называются Ultrapeer, а в сети Gnutella2 — Hub. Также изменилась топология сети.  
 
Спецификация Gnutella2 состоит из двух основных частей: Gnutella2 Network, в которой описывается архитектура сети, и Gnutella2 Standard, где содержатся требования к приложениям, работающим на базе Gnutella2. Обмен информацией в сети может вестись с помощью двух протоколов - UDP и TCP. Сама сеть будет состоять из двух типов узлов: центральных (hub) и концевых (leaf). Главная роль в организации работы сети принадлежит центральным узлам. Они выбираются из наиболее мощных и наиболее доступных компьютеров, способных выполнять функции обслуживания большого числа запросов. 
^

Принцип работы:

  1.  
    При первом запуске клиентской программы(узел — A), пользователь передает в клиент IP-адрес одного из работающих в сети узлов (узел B). Не зная ни одного адреса работающих узлов, пользователь не имеет возможности установить соединение с сетью. Данная информация предоставляется рядом централизованных серверов.
  2.  
    Клиент посылает запрос узлу B на подтверждение подключения к сети. Если узел B не активен , то клиент посылает ещё один запрос, иначе узел А также посылает второму узлу Ping-запрос. В котором указывает кроме общей информации, содержится Time To Live(TTL) — число, показывающее, количество переходов, который может совершить данный запрос от узла к узлу. При прохождении узла TTL уменьшается на 1(если TTL больше 0 и при условии что они не получали этот запрос ранее - способ защиты от зацикливания). Далее узел рассылает запрос своим соседям. По умолчанию Time To Live = 7.
  3.  
    Все узлы, получившие Ping-запрос, отправляют Pong-ответ, в котором находятся IP-адрес отправителя ответа, номер порта и информация о файлах в фонде обмена. Pong-ответ отправляется тем же путем, что и пришел Ping-запрос. При получении клиентом(узлом А) ответов - составляется список доступных клиенту узлов.
  4.  
    При отправлении пользователем поискового запроса – данный запрос рассылается программой по всем узлам из списка, а клиент ждет входящих сообщений. Каждый из узлов - получивший этот запрос, ищет указанный файл в своем фонде. Если искомый файл был найден, то узел посылает ответ с информацией о файле и о себе (IP-адрес) источнику запроса. Иначе узел не отвечает. После получения ответов, программа выбирает один узел из всех приславших ответы и устанавливает стандартное HTTP-соединение, после чего происходит загрузка файла. Все сообщения (от Ping-запроса до скачивания файла) посылаются по HTTP, что затрудняет их отслеживание и блокировку.

 
В качестве базового сетевого протокола Gnutella применяет IP, тогда как коммуникации между узлами определяются протоколом прикладного уровня, поддерживающим четыре типа сообщений:

  •  
    Ping– запрос к определенному хосту с целью объявить о себе;
  •  
    Pong– ответ на сообщение Ping, содержащий IP-адрес, порт запрошенного хоста, а также количество и размеры разделяемых файлов;
  •  
    Query– поисковый запрос. В него входят строка поиска и минимальные скоростные требования к отвечающему хосту;
  •  
    Query Hits– ответ на запрос Query, включает IP-адрес, порт и скорость передачи отвечающего хоста, количество найденных файлов и набор их индексов.

 
Более подробная информация – в спецификация Gnutella. 
^

Архитектура сети.

 
Gnutella — полностью децентрализованная  файлообменная сеть в рамках  Интернета, потомок Napster, отличается принципиальным отсутствием центрального сервера. Сеть формируется, когда один пользователь Gnutella соединяется с другим пользователем, после чего они могут обмениваться доступной информацией. Тот пользователь, в свою очередь, соединяются со следующими, в чего результате может получиться сеть с миллиардами узлов. В основе сети Gnutella лежит понятие универсального терминала или сервента (объединение слов "сервер" и "клиент"). Фактически в системе Gnutella был осуществлен переход от централизованной архитектуры сети Р2Р к полностью распределенной системе, что в большей степени соответствует идеологии сети Р2Р.  
 
В Gnutella, Ultrapeer поддерживают небольшое количество связей с листьями и большое количество связей с другими узлами сети (c ultrapeer и peer). В Gnutella2, наоборот, Hub поддерживает связь с большим количеством листьев, и малое количество связей с другими узлами (hub). Такое различие в топологиях вызвано тем, что различные методы поиска имеют различные оптимальные топологии сети. 
^

Популярные клиенты:

  •  
    Shareaza;
  •  
    LimeWire;
  •  
    Cabos;
  •  
    mlDonkey;

 

  Сети отличаются  ввиду полной децентрализованности  отличаются относительной «анонимностью» (Но IP-адрес всё равно регистрируется). Наибольший успех и популярность имеют в Японии из-за массовой доступности быстрого и почти бесплатного интернета при тотальном запрете на порнографию без цензуры и разгуле пиратства в стране.

   * Даркнеты.

  Пиринговые  сети последнего поколения. Используют  специальные приемы анонимизации, основанные на ограничении непосредственных соединений некоторым количеством «друзей», которые определяются пользователем. (принцип F2F: friend-to-friend). Пока находятся в зачаточном состоянии в связи с необходимостью находить нескольких «друзей» в файлообменной сети. Примеры: FreeNet (в опциональном режиме F2F), GNUnet (в опциональном режиме F2F), I2P.

 

 

Принципы работы файлообменных сетей.

  Основные  принципы работы файлообмена  заключаются в следующем:

   * Пользователь  скачивает программу-клиент себе на компьютер;

   * Разрешает  доступ другим пользователям  к некоторой части своих ресурсов (этот процесс называется «расшариванием»  англ. sharing);

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

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

 

Современные файлообменные  сети.

  В наше  время наиболее популярными протоколами  файлообмена является BitTorrent для  трекеров и DC++ для локальных сетей провайдеров. Преимуществом (или недостатком) BitTorrent перед той же DC++ является возможность (обязанность) прямого рейтингования пользователей, что побуждает их не только качать, но и раздавать, а также более правильное «размазывание» файла по закачивающим пирам (самая «редкая» часть файла скачивается в первую очередь).

 

Файлообменные сети и авторские права.

  Защита  авторских прав, являясь естественным  врагом пиринговых технологий, вместе  с тем является стимулирующим  фактором для их развития. Каждое новое поколение файлообменных сетей становится менее уязвимым к желаниям пресечь свободный файлообмен.  

  Многие  распространяемые в таких сетях  файлы, не являющиеся общественным  достоянием, распространяются в  них без разрешения правообладателей. Видеоиздательские и звукозаписывающие компании утверждают, что это приводит к значительной недополученной ими прибыли. Проблем им добавляет тот факт, что пресечь распространение файла в децентрализованной пиринговой сети технически невозможно — для этого потребуется физически отключить от сети все машины, на которых лежит этот файл, а таких машин может быть очень и очень много — в зависимости от популярности файла их число может достигать сотен тысяч. По существующему законодательству многих стран даже к централизованным P2P сетям подкопаться достаточно трудно по причине того, что самого нелегального контента на их серверах нет. Максимум, что там есть — ссылки на пиров или хеш-файлы (в случае BitTorrent).

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

  Не обращая  внимания на судебные разбирательства,  связанные с нелегальным распространением  музыки (а это более 20 тыс исков со стороны RIAA), американцы продолжают пользоваться p2p-сетями для обмена музыкальными файлами. Причём популярность p2p-сетей растёт.

   Компания NPD Group, занимающаяся исследованием  рынка и следящая за загрузкой  цифровых записей, сообщила, что в 2006 году 15 млн американских домовладельцев нелегально скачивали музыкальные файлы с использованием файлообменных сетей, что на 8% больше, чем в 2005 году.

 

Файлообменные сети и провайдеры.

  Некоторые  провайдеры отрицательно относятся  к фалообменным сетям, так как они забивают своим трафиком каналы, отчего провайдерам приходится покупать у вышестоящих провайдеров более широкие каналы и тратиться на модернизацию сети, либо слушать постоянные претензии пользователей о несоответствии реальной скорости заявленной. Некоторые провайдеры научились резать p2p-трафик, однако, с другой стороны, опять же это обман конечного пользователя, потому что какой смысл в безлимитном канале, который не наполняет под завязку p2p-трафик.

 

Известные децентрализованные и гибридные файлообменные сети.

   * I2P —  это анонимная, самоорганизующаяся  распределенная сеть Network database, которая  использует модифицированный DHT, но  отличается тем, что хранит  в себе хешированные адреса  узлов сети, зашифрованные AES IP-адреса, а также публичные ключи шифрования, причем соединения по Network database тоже зашифрованны, сеть предоставляет приложениям простой транспортный механизм для анонимной и защищенной пересылки сообщений друг другу. Весь трафик в сети шифруется от отправителя до получателя в сумме при пересылке сообщения используется четыре уровня шифрования (сквозное, чесночное, туннельное, а также шифрование транспортного уровня), а в качестве адресов сети используются криптографические идентификаторы (главным образом состоящие из пары публичных ключей).

   * ED2K (eDonkey2000) — сеть децентрализованного типа. Поиск выполняют специализированные  серверы, связанные между собой.  Клиенты самостоятельно обмениваются  по протоколу MFTP. Компания MetaMachine, разработчик исходной концепции и первого клиента, основанного на веб-интерфейсе (Edonkey 2000 v1.4.5), в 2005 году прекратила поддержку этого проекта, однако сеть продолжает функционировать за счет более совершенного и более мощного клиента eMule, который использует механизмы Kademlia для построения децентрализованного сегмента eD2k .

   * TC (полное  название TrueChat) — малоизвестная  сеть, в основном для общения  использующая сервер (обычно с  публичным IP) для связи клиентов (peer-hub-peer) (автор TC)

Информация о работе Файлообменые локальные сети