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

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

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

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

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

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

Заключение

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

Курсовик.doc

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

Типы файлообменных сетей

 

Централизованные сети с сервером. Файлообменники первого поколения, такие как Napster и Audiogalaxy. В настоящее время пали в бою, захвачены и порабощены копирастами.

  • Локальные файлообменные сети. BitTorrent-трекеры, DirectConnect (DC++). Тоже централизованные сети, однако предусматривают существование большого количества серверов разного масштаба (так называемых «трекеров» или «хабов»). Несмотря на «локальность», существуют достаточно крупные файлообменники мирового масштаба: The Pirate Bay, большие DC++ хабы и т. д.
  • Частично централизованные сети со многими серверами. Файлообменники второго поколения, к примеру, eDonkey, Kazaa. Постепенно отошли на второй план, также благодаря копирастам, но сохранили свою нишу в файлообмене.
  • Полностью децентрализованные сети. Файлообменники третьего поколения, такие как Overnet и Kad Network (для клиентов типа eMule), Гнутелла (и её форк), DHT (и magnet ссылки) в BitTorrent, а также расово японские WinNY, Share и Perfect Dark. По причине своей анонимности (хотя айпишник всё равно засвечивается) и полной децентрализованности люто, бешено популярны среди любителей детей (особенно Gnutella, пикрелейтед). Наибольший успех и популярность имеют в Японии из-за массовой доступности быстрого и почти бесплатного интернета при тотальном запрете на прон без цензуры и разгуле копиразма в стране.
  • Даркнеты. Пиринговые сети последнего поколения, использующие специальные приемы анонимизации, основанные на ограничении непосредственных соединений некоторым количеством определяемых пользователем так называемых «друзей» (принцип F2F: friend-to-friend), что теоретически позволяет избежать любых деанонимизирующих атак. Пока находятся в зачаточном состоянии в связи с необходимостью находить нескольких «друзей» в файлообменной сети. К тому же, принцип F2F подразумевает большое количество посредников между оконечными узлами, что отрицательно сказывается на производительности сети. Примеры: FreeNet (в опциональном режиме F2F), GNUnet (в опциональном режиме F2F), I2P.

 

 

 

 

 

 

 

 

 

 

2. Типы организации файлообменных сетей.

   * Централизованные сети.

  Файлообменники первого поколения  . Несмотря на то, что каждый  участник файлообменной сети  является и клиентом и сервером, необходима инфраструктура для  объединения разрозненных клиентов  между собой в определённое сообщество. В централизованных файлообменных сетях служебную информацию хранят индексационные серверы. Это главное отличие этого типа.

  Достоинства: Простота программирования, небольшой объём служебной информации, передаваемой на сервера. Однако  большой жирный минус – ненадёжность. Индексационные серверы могут быть отключены по разным причинам (технический сбой, разорение владеющей компании, судебное решение). В таком случае сеть перестаёт функционировать.

 

  • Локальные файлообменные сети.

На данный момент среди файлообменных сетей по количеству узлов лидируют такие сети, как Bittorrent [10.16], eDonkey2000 [10.14], Gnutella2+Gnutella.

 

  BitTorrent-трекеры, DirectConnect (DC++). Тоже являются централизованными  сетями, однако предусматривают  существование большого количества  серверов разного масштаба (так называемых «трекеров» или «хабов»). Несмотря на «локальность», существуют достаточно крупные файлообменники мирового масштаба, такие как The Pirate Bay, большие DC++ хабы и т. д.

Direct Connect

 
Direct Connect — это децентрализованная  пиринговая файлообменная сеть, построена по тому же принципу что и, например, eDonkey, Kazaa, Napster в основе работы которой лежит проприетарный протокол, разработанный фирмой NeoModus. Официальной спецификации протокола не существует.

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

  •  
    соединение с сетью Direct Connect обеспечивает специальная программа-клиент, устанавливающая связь с хабом — сервером, расположенный в сети Direct Connect, по умолчанию используется порт 411.

 
Клиентская программа устанавливает  соединение к одному или нескольким хабам по протоколу TCP, при этом хабы не связаны друг с другом. Адрес хаб представляется в следующем виде: dchub://example.com [:411], где 411 – используемый порт.

  •  
    клиент подключаясь к серверу, посылает приветствие и свои данные, сервер аутенфицирует клиента – устанавливается соединение с сервером, который присылает список пользователей находящихся в данный момент на хабе, и их некоторые данные, например размер расшаренного контента, и т.п.
  •  
    порт 412 используется для соединения между клиентами, если данный порт 411, 412 и 413 будут заняты, то будет использоваться порт 414. Соединение устанавливается напрямую между клиентам минуя хаб. Подключение к пользователю и загрузка файлов базируется вокруг понятия "слотов" (число открытых позиций для работы). Эти слоты обозначают число людей, которым позволяют загрузить файл от пользователя в любой момент. Слотами управляет клиент. Если соединение с другим клиентом установлено, то для загрузки файла клиент передает ему сообщение, содержащее имя искомого файла, номер открытого порта и IP адрес клиента.
  •  
    поиск ведется по протоколу UDP, сравнение и идентификация файла выполняется не только по названию, но и по контрольной сумме(хэш-код TTH (Tiger Tree Hashing)). TTH используется для проверки целостность данных.

 
Используемые порты: TCP: 411 - это стандартный порт на котором работают большиство хабов.  
 
TCP: 1025-32000 DC будет использовать любой порт в этом радиусе для исходящего трафика, поиска или передачи файлов, если он не указан в настройках соединения.  
 
UDP: 1025-32000 DC будет использовать любой порт в этом радиусе для входящего трафика, поиска или передачи файлов, если он не указан в настройках соединения. 
 
Стандарт: 11469/11469 TCP/UDP 
 
Более подробная информация предоставлена в неофициальной спецификации протокола. 
^

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

 
Сеть Direct Connect – централизованная. Архитектура  сети и ее философия сходны с OpenNap. Также как и в Napster, создатели Direct Connect разрабатывают клиентское и  серверное ПО. Отличие состоит  в том, что поддержка сети возлагается  на ее участников, некоторые из которых организуют хабы. В сети Direct Connect не предусмотрены система хэширования или взаимодействие серверов между собой для создания общей файловой базы. Direct Connect является отличным решением для локальной файлообменной P2P сети. 
^

Особенности Direct Connect сетей  по сравнению с другими P2P сетями:

  •  
    развитый чат;
  •  
    возможность получить список файлов пользователя в виде древовидной структуры папок;
  •  
    возможность скачивать целые папки с файлами;
  •  
    присутствие привилегированных пользователей — операторов, обладающих расширенным набором возможностей управления хабом, в частности, следящих за соблюдением пользователями правил чата и файлообмена;
  •  
    идеальное решение для локальных сетей: файлообменная система и чат;
  •  
    скачивание файлов с автоматической докачкой после обрыва связи;
  •  
    ограничения на минимальное количество расшаренного материала;

^

Наиболее популярные клиенты:

  •  
    DC++;
  •  
    StrongDC++;
  •  
    LinuxDC++;

Провайдеры  сетевых услуг, например, провайдеры московских домашних сетей, а также  администраторы компаний, до недавнего времени старались блокировать на своих файерволлах порты, через которые общаются клиенты сетей Bittorrent, eDonkey2000, Gnutella, Fasttreck.

Поэтому пользователям  осталась только возможность использовать локальные пиринговые сети. Наиболее удобной для этого оказалась сеть Direct Connect (DC) [10.16].

Клиенты подключаются к одному или нескольким серверам для поиска файлов. Серверы не связаны между собой. Информация о файлах, доступ к которым узел хочет открыть, отсылается на сервер. Копирование файлов происходит напрямую между узлами, как и в классической P2P -сети.

В клиент встроены возможности для общения участников сети, список файлов каждого пользователя можно получать в виде древовидной структуры папок, есть простой механизм поиска информации, существует возможность копирования целых каталогов. Перечисленные возможности сделали сеть DC идеальным решением для локальной файлообменной сети P2P.

 
 
 

 

Direct Connect — это частично централизованная файлообменная (P2P) сеть. DC-сеть состоит из хабов, DC-клиентов и хаблистов. Хаб предоставляет подключившемуся к нему клиенту список подключённых пользователей, возможность использовать поиск и встроенный развитый чат. DC-клиенты соединяются с одним или несколькими хабами и могут скачивать файлы напрямую у других пользователей, подключённых к тому же хабу. Для работы используется протокол DC (NMDC), основанный на разработках фирмы NeoModus, или протокол ADC.

 

NeoModus была основана Джонатаном  Хессом (Jonathan Hess) в ноябре 1990 года как компания, зарабатывавшая на adware-программе «Direct Connect». Первым сторонним клиентом стал «DClite», который никогда полностью не поддерживал протокол. Новая версия Direct Connect уже требовала простой ключ шифрования для инициализации подключения, этим автор надеялся блокировать сторонние клиенты. Ключ был взломан и автор DClite выпустил новую версию своей программы, совместимой с новым программным обеспечением от NeoModus. Вскоре код DClite был переписан, и программа была переименована в Open Direct Connect. Кроме всего прочего, её пользовательский интерфейс стал многодокументным (MDI) и появилась возможность использовать плагины для файлообменных протоколов (как в MLDonkey). У Open Direct Connect также не было полной поддержки протокола, но появился под Java. Немногим позже начали появляться и другие клиенты: DCTC (Direct Connect Text Client), DC++ и др.

Протокол Direct Connect - текстовый, в котором команды и данные передаются простым текстом, без шифрования. Протокол не регламентирует кодировку или шрифт для клиентов или хабов.

Файлообменная часть протокола  основана на концепции "слотов". Эти  слоты соответствуют числу людей, которые могут качать с пользователя одновременно. Число слотов устанавливается клиентом.

Для подключения к  хабу и скачивания файлов используется протокол TCP. Поиск в активном режиме работает по UDP. Порт подключения к хабу по умолчанию 411.

Оригинальный клиент назывался NeoModus Direct Connect (сокращённо NMDC). В настоящее время подавляющее  большинство пользователей сети пользуется многочисленными клиентами  на базе клиента DC++.

Клиенты подключаются к  одному или нескольким серверам, так  называемым хабам, которые служат для  поиска файлов и источников для их скачивания. Некоторые хабы поддерживают линкование — несколько хабов соединяются между собой для удобства пользователей и подключившийся пользователь видит один «общий» хаб. На крупных хабах в пиковые часы одновременно находятся более 10 000 пользователей.

Сравнительная таблица  наиболее часто [3][4] используемого для создания хабов программного обеспечения:

Название

Windows

Linux

Другие ОС

Язык программирования

Лицензия

IPv6

Интерфейс пользователя

Сайт проекта

Verlihub

Нет

Да

Да: FreeBSD

C++

GPL v2

Нет

консоль

www.verlihub-project.org

PtokaX

Да

Да

Да: FreeBSD

C++

GPL v3

Нет

графический (Win32), консоль

www.ptokax.org

RusHub

Да

Да

Да: FreeBSD

C++

GPL v3

Да

консоль

rushub.org

YnHub

Да

Нет

Нет

Неизвестно

проприетарная

Нет

графический

ynhub.org

DB Hub

Нет

Да

Да: FreeBSD

C

GPL

Нет

консоль

sourceforge.net

HeXHub

Да

Нет

Нет

Ассемблер

OSL 3.0

Нет

графический

nemesis.te-home.net

Aquila

Да

Да

Нет

C

GPL

Нет

консоль

sites.google.com

Eximius

Да

Нет

Нет

C#

проприетарная

Нет

графический

en.rs2soft.nl

Viper Hive

Да

Да

Да

Python

GPL v2

Нет

консоль

code.google.com

Название

Windows

Linux

Другие ОС

Язык программирования

Лицензия

IPv6

Интерфейс пользователя

Сайт проекта

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