Пірінгові мережі

Автор работы: Пользователь скрыл имя, 03 Января 2014 в 18:13, доклад

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

Всі ми якимось чином ділимося інформацією з оточуючими нас людьми. У випадку, коли ми ділимося файлами за допомогою програм типу eMule, eDonkey, KaZaA їм подібних, такого роду обмін пов'язаний з роботою величезної машини, принципи роботи якої, її витоки і ідеї, на яких вона побудована, ми часто уявляємо собі досить слабо. Необхідність мати доступ до величезної кількості інформації, що лежить на інших комп'ютерах, спочатку породила локальні мережі. Це допомогло на деякий час, але об'єднати таким чином велику кількість комп'ютерів виявилося неможливо. Можливість же доступу до файлів, можливо наявних у інших користувачів, виглядала досить непогано.

Содержание

ВСТУП
Історія
Перше покоління Р2Р мереж
Друге покоління Р2Р мереж
Третє покоління Р2Р мереж
Анонімні peer-to-peer мереж
Класифікація Р2Р мереж
Мережі та протоколи
Програми для роботи з піринговими мережами, торинти.
ВИСНОВОК

Прикрепленные файлы: 1 файл

доповідь.docx

— 90.64 Кб (Скачать документ)

Клепуц М.О. ДЗІм-11

ВСТУП

  1. Історія
  1. Перше покоління Р2Р мереж
  1. Друге покоління Р2Р мереж
  2. Третє покоління Р2Р мереж
  3. Анонімні peer-to-peer мереж
  1. Класифікація Р2Р мереж
  1. Мережі та протоколи
  2. Програми для роботи з піринговими мережами, торинти.

ВИСНОВОК

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вступ

Всі ми якимось чином ділимося інформацією з оточуючими нас  людьми. У випадку, коли ми ділимося файлами за допомогою програм  типу eMule, eDonkey,  KaZaA їм подібних, такого роду обмін пов'язаний з роботою величезної машини, принципи роботи якої, її витоки і ідеї, на яких вона побудована, ми часто уявляємо собі досить слабо. 
Необхідність мати доступ до величезної кількості інформації, що лежить на інших комп'ютерах, спочатку породила локальні мережі. Це допомогло на деякий час, але об'єднати таким чином велику кількість комп'ютерів виявилося неможливо. Можливість же доступу до файлів, можливо наявних у інших користувачів,  виглядала досить непогано. Тому була запропонована система, що дозволяє приймати і передавати файли з кожного комп'ютера, з яким є зв'язок і на якому є певне програмне забезпечення. Такі системи отримали назву p2p або пірингових (peer-to-peer) мереж. Це означає, що ви, маючи деякі файли, які можуть бути цікаві комусь ще, дозволяєте бажаючим їх у вас скопіювати, а натомість отримуєте можливість отримати файли.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

I. Історія

У січні 1999 року Шон на прізвисько Napster, провчившись всього один семестр, залишив Північно-східний університет, для того щоб повністю зануритися в роботу над програмним забезпеченням  для нового проекту. Ідея , над втіленням  якої працював містер Феннінг, була дуже нехитра й народилася в ході спілкування  з сусідами  по університетському  гуртожитку. Підключеним до Інтернету  меломанам,  яких було чимало серед  друзів винахідника, пропонувалося "розшарити" на своєму комп'ютері (тобто відкрити для віддаленого доступу інших  користувачів) директорії з музичними  файлами. А щоб шукати музичні  композиції було легше, загальний їх список зберігався на спеціальному центральному сервері, а сам пошук здійснювався за допомогою програми-клієнта, яку  повинен був завантажити кожен  учасник мережі.

Вже в серпні 1999-го група  людей вклали в проект серйозні гроші, яких повинно було вистачити ще на півроку, і один з інвесторів - Ейлін Річардсон - стала у вересні виконавчим директором компанії Napster.  Популярність проекту зростала шаленими темпами.

 

a Перше покоління Р2Р мереж

Перше покоління пірінгових мереж характеризується наявністю  виділених центральних серверів, які можуть виступати, наприклад, базами даних та займатися координацією пошуку. Проте архітектура таких мереж дозволяє звязок та передачу інформації безпосередньо між будь-якими її учасникам.

Популяризація і поточна  ера peer-to-peer почалась із створення мережі Napster. У травні 1999 Napster надав кінцевим користувачам можливість роздавати та обмінюватись їх улюбленою музикою безпосередньо з іншими кінцевими користувачами. Мережа використовувала центральний сервер, зокрема для пошукових цілей. Кількість користувачів Napster в лютому 2001 складала 26.4 мільйона.

Невдовзі після появи  Napster  було створено мережу EDonkey 2000. Ключова перевага eDonkey над Napster полягала у тому, що мережа дозволяла проводити зкачування різних частин одного файлу, одночасно із різних учасників мережі, які його надають. Іншою перевагою eDonkey було те, що згодом, серверне забезпечення набуло функціональності міжсерверного зв'язку, що дозволило виконувати пошук інформації на учасниках мережі що були під'єднані до різних серверів. Незважаючи на названі переваги, через використання серверів, ця мережа не була чистою peer-to-peer мережою.

 

b Друге покоління Р2Р мереж

Друге покоління пірінгових мереж характеризується відсутністю  центральних серверів та, при цьому, принциповою можливістю пошуку серед  учасників мережі. Проте алгоритми  пошуку у мережах другого покоління  мали характер «хвильового» розповсюдження запитів та були не дуже ефективними. Джастін Франкел вирішив створити мережу без центрального індексного сервера, і Gnutella була результатом. Нажаль, ідея Gnutella про рівність всіх вузлів, швидко померла від наявності вузьких місць, оскільки мережа росла від минулих користувачів Napster. Найкращими прикладами є Gnutella, Kazaa або eMule з Kademlia, серед яких лише Kazaa ще має центральний сервер для реєстрації. eDonkey2000/Overnet, Gnutella, FastTrack і Ares Galaxy мають приблизно 10.3 мільйонів користувачів

Рис.1

 

c Третє покоління Р2Р мереж

Третє покоління P2P мереж характеризується децентралізованою структурою, та принципово новими алгоритмами пошуку, які базуються на ключовому понятті розподіленої хеш-таблиці (Distributed hash table) яка підтримується учасниками мережі .

Розподілені хеш-таблиці (DHT), допомагають вирішувати проблему масштабування, обираючи різні вузли, щоб індексувати певні значення хеш-функції (які використовуються, щоб ідентифікувати файли), дозволяючи швидкий та ефективний пошук будь-якого файлу у мережі.

Починаючи з версії 4.2.0 офіційного BitTorrent клієнта, в ньому реалізована функція безтрекерної роботи, яка базується на протоколі Kademlia. У таких системах трекер доступний децентрально, на клієнтах-учасниках мережі, у формі розподіленої хеш-таблиці.

 

d Анонімні peer-to-peer мереж

Приклади анонімних мереж — Freenet, I2P, ANts P2P, RShare, GNUnet і Entropy. Також прикладом децентралізованої мережі є система анонімної цифрової грошової одиниці Bitcoin.

Певна ступінь анонімності  реалізовується шляхом направлення  даних через інших вузли. Це робить важкою ідентифікацію того, хто завантажує або хто пропонує файли. Більшість цих програм також мають вбудоване шифрування.

Поточні реалізації мереж  такого типу потребують багато ресурсів для забезпечення анонімності, що робить їх повільними або складними для використання. Проте, в країнах, де дуже швидкий домашній доступ до Інтернет, як наприклад Японія, ряд анонімних файлообмінних мереж вже досягли високої популярності.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

II. Класифікація Р2Р мереж

За функціями:

  • Розподілені обчислення. Обчислювальна проблема розподіляються на невеликі незалежні частини. 
  • Файлообмін. Зберігання та обмін даними ¬- це одна з областей, де технологія P2P була найуспішнішою.
  • Співпраця. Природа технології P2P робить її добре придатною для забезпечення співпраці між користувачами. Це може бути обмін повідомленнями, онлайн ігри, сумісна робота над документами в бізнесі, освіті та дома.

За ступенем централізації:

  • Чисті peer-to-peer системи. Вузли є рівними, поєднуючи ролі серверу та клієнту. Не існує центрального сервера, що керує мережею. Прикладами таких систем є Gnutella та Freenet.
  • Гібридні peer-to-peer системи. Мають центральний сервер, що зберігає інформацію про вузли та відповідає на запити відносно цієї інформації.

 

В залежності від того, як вузли з'єднуються один з одним  можна поділити мережі на структуровані  та неструктуровані:

 

Неструктурована мережа P2P формується, коли з'єднання встановлюються довільно

Такі мережі можуть бути легко сконструйовані, оскільки новий вузол, який хоче приєднатися до мережі, може скопіювати існуючі з'єднання іншого вузла, а вже потім почати формувати свої власні. У неструктурованій мережі P2P, якщо вузол бажає знайти певні дані в мережі, запит доведеться передати майже через всю мережу, щоб охопити так багато вузлів, як можливо. Головним недоліком таких мереж є те, що запити, можливо, не завжди вирішуються. Скоріш за все популярні дані будуть доступні в багатьох вузлів та пошук швидко знайде потрібне, але якщо вузол шукає рідкісні дані, наявні лише в декількох інших вузлів, то надзвичайно малоймовірно, що пошук буде успішним.

Структурована мережа P2P використовує єдиний алгоритм, щоб гарантувати, що будь-який вузол може ефективно передати запит іншому вузлу, який має бажаний файл, навіть якщо файл надзвичайно рідкісний. Така гарантія потребує структуровану систему з'єднань. На даний момент найбільш популярним типом структурованої мережі P2P є розподілені хеш-таблиці, в яких хешування використовується для встановлення зв'язку між даними та конкретним вузлом, який за них відповідає.

 

 

III. Мережі та протоколи

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) більше не має достатньої  ширини каналу для відсилання.

 

 

Міжсервісні зєднання

Періодично сервери зв'язуються один з одним на короткий час. Під  час цього сеансу зв'язку сервер, оголошуючи про своє існування, посилає  список всіх інших відомих йому серверів. Таким чином, сервери підтримують  список інших активних серверів. Коли клієнт підключається до сервера, сервер може видати йому список відомих йому серверів.

Kad Network

Це файлообмінна p2p мережа нового покоління на основі протоколу Kademlia, що не має центральних серверів. На сьогодні Kad є найбільш перспективним напрямком для розвитку пірингових мереж, взявши найкраще від її попередників і позбувшись від недоліків.

Kademlia — це протокол віртуальної мережі, створений для функціонування повністю децентралізованих файлообмінних мереж. Його основна відмінність від інших протоколів у тім, що він не залежить від центральних серверів. У безсерверній мережі кожний користувач є вузлом, через нього проходять пошукові запити й службова інформація. Kad по суті є заміною серверної мережі eDonkey 2000 (ed2k), але, на відміну від ed2k, Каду не потрібен центральний сервер для зв'язку. Всі користувачі мережі є серверами й рівні між собою за.

Після входу в мережу вам генерується мережна адреса ідентифікатор (ID). Мережа Kad, у відмінності від ed2k, працює тільки через мережний протокол UDP.

Kad Network використовує UDP для:

  • Пошуку джерел ed2k хеша
  • Пошуку ed2k хеша на ключові слова в назвах файлу
  • Знаходження коментарів і оцінки для файлів (хеша)
  • Надання послуг вузлів,які перебувають за файерволом (Low ID)

Информация о работе Пірінгові мережі