Gnutella - повністю децентралізована файлообмінна мережа в рамках Інтернету, нащадок Napster, відрізняється принциповою відсутністю центрального сервера. Мережа формується, коли один користувач Gnutella з'єднується з іншим користувачем, після чого вони можуть обмінюватися доступною інформацією. Обмінюватися можна файлами будь-яких форматів, є безліч зручних функцій. У результаті повної децентралізації мережу практично неможливо знищити, тому що для цього буде потрібно вивести з ладу кожен .
Історія появи мережі Gnutella
Створення мережі ініціювала компанія America Online, використавши для цієї мети програмістів з підрозділу Nullsoft. 14 березня 2000 р. з'явилася перша версія програми, яка давала можливість користувачу шукати і обмінюватися всіма видами файлів з іншими власниками Gnutella без участі будь-яких серверів. Після того, як AOL купила медіа-конгломерат Time Warner, мережу намагалися закрити, але ці спроби провалилися. Це також спонукало творців (Джастін Френкель і Том Пеппер) мережі звільнитися з AOL, після чого вони стали самостійно розвивати цю мережу.
Механізм роботи
- Користувач завантажує програму.
- При першому запуску програми (назвемо наш вузол - A), користувач повідомляє клієнту IP-адресу одного з функціонуючих вузлів (умовно вузол B). Дана процедура може і не повторюватися в майбутньому, але при першому запуску вона обов'язкова. Це один з найбільш «слизьких" моментів в реалізації даної мережі: без адреси хоча б одного з працюючих в цей час вузла користувач не зможе підключитися. У принципі, існує цілий ряд централізованих серверів, які надають таку інформацію (connect1.gnutellanet.com: 6346, gnutella.hostscache.com та ін), але така схема вже призводить до певної централізованості.
- Програма надсилає запит вузлу B на предмет підтвердження активності.
- Вузол B підтверджує свою активність, якщо немає - див крок 2.
- Вузол А посилає вузлу B так званий Ping-запит. У цьому запиті вказується, крім іншої інформації, TTL (Time To Live) - число, що означає, скільки переходів від вузла до вузла даний запит може зробити. Зазвичай TTL дорівнює 7.
- Інші вузли, отримавши Ping-запит, посилають Pong-відповідь, в якій міститься IP-адреса відправника, номер порту і мінімальна інформація про файли у фонді обміну.
- Крім того, вузли, які отримали Ping-запит, зменшують TTL даного запиту на одиницю, і якщо TTL більше 0, а також якщо даний запит вони не отримували раніше (захист від зациклення), розсилають його своїм сусідам.
- Кожен вузол, який отримав Ping-запит, відсилає Pong-відповідь, тим же шляхом, яким цей запит отримав.
- Коли Pong-відповіді доходять до свого джерела (тобто нашого вузла А), програма складає список доступних вузлів. Як правило, цей список налічує від 2 до 10 тисяч вузлів і від 500 тисяч до мільйона файлів в обмінному фонді.
- Користувач вводить запит (наприклад, назву mp3-файлу). Програма розсилає запит на пошук файлу усіх вузлів у списку, а далі просто чекає вхідних повідомлень.
- Кожен вузол, який отримав запит на пошук, шукає в своєму фонді вказаний файл. Якщо файл не знайдений, то вузол просто не відповідає.
- Якщо файл знайдений, вузол відсилає ініціатору запиту відповідь з інформацією про файл і про себе (IP-адресу).
- Отримавши ряд відповідей, програма вибирає один з вузлів, встановлює з ним стандартне HTTP-з'єднання і завантажує файл. При цьому всі повідомлення (від Ping-запиту до скачування файлу) посилаються по HTTP, що ускладнює їх відстеження і блокування.
Деякі клієнти Gnutella працюють згідно з наведеним алгоритмом, а деякі ні. Пов'язано це з тим, що Gnutella - це, перш за все, протокол взаємодії вузлів (такий же, як HTTP), і в ньому не визначено деякі з аспектів цієї взаємодії.
Пошук в Gnutella побудований на децентралізованій технології gPulp [].
Клієнти
У цей час Gnutella є однією з найпопулярніших файлообмінних мереж . Робота мережі Gnutella безперервно удосконалюється завдяки зусиллям розробників безлічі клієнтів мережі:
- Спеціалізовані
- (тільки до версії 5!)
- для крипто-мережі I2P
- Мультимережеві
Реакція з боку FSF
Назва Gnutella спочатку було грою слів GNU, так як розробники планували випустити вихідний код під ліцензією GNU GPL, і Nutella - марки улюбленої горіхової пасти цих розробників. Однак, ні найперша програма, ні відповідні сучасні проекти не є вільним ПЗ, включаючи використовують протокол Gnutella , і . Крім того, Фонд вільного програмного забезпечення зосереджений на волі копіювання і зміни програмного забезпечення, у той час як Gnutella - це, перш за все, мережа обміну музичними файлами. І хоча існує деякий подібність у питаннях етики копіювання програмного забезпечення і музичних записів, FSF попросила розробників Gnutella змінити назву програми для уникнення плутанини.
Див. також
Примітки
- За даними на вересень 2007 рік а, мережа Gnutella є найпопулярнішою - вона використовується на 40,5% комп'ютерів, підключених до p2p -мереж, і її популярність продовжує збільшуватися. [1] [ 16 грудня 2008 у Wayback Machine.]
- http://echelon.i2p/i2phex/[недоступне посилання з червня 2019]
- html Щодо Gnutella[недоступне посилання]
Посилання
- - опис специфікацій протоколу Gnutella.
- Gnutelliums [ 30 жовтня 2008 у Wayback Machine.] - Список клієнтів Gnutella для Windows, Linux / Unix, і Macintosh
Цю статтю потрібно повністю переписати відповідно до Вікіпедії. (квітень 2011) |
Це незавершена стаття про комп'ютерні мережі. Ви можете проєкту, виправивши або дописавши її. |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Gnutella povnistyu decentralizovana fajloobminna merezha v ramkah Internetu nashadok Napster vidriznyayetsya principovoyu vidsutnistyu centralnogo servera Merezha formuyetsya koli odin koristuvach Gnutella z yednuyetsya z inshim koristuvachem pislya chogo voni mozhut obminyuvatisya dostupnoyu informaciyeyu Obminyuvatisya mozhna fajlami bud yakih formativ ye bezlich zruchnih funkcij U rezultati povnoyi decentralizaciyi merezhu praktichno nemozhlivo znishiti tomu sho dlya cogo bude potribno vivesti z ladu kozhen Istoriya poyavi merezhi GnutellaStvorennya merezhi iniciyuvala kompaniya America Online vikoristavshi dlya ciyeyi meti programistiv z pidrozdilu Nullsoft 14 bereznya 2000 r z yavilasya persha versiya programi yaka davala mozhlivist koristuvachu shukati i obminyuvatisya vsima vidami fajliv z inshimi vlasnikami Gnutella bez uchasti bud yakih serveriv Pislya togo yak AOL kupila media konglomerat Time Warner merezhu namagalisya zakriti ale ci sprobi provalilisya Ce takozh sponukalo tvorciv Dzhastin Frenkel i Tom Pepper merezhi zvilnitisya z AOL pislya chogo voni stali samostijno rozvivati cyu merezhu Mehanizm robotiKoristuvach zavantazhuye programu Pri pershomu zapusku programi nazvemo nash vuzol A koristuvach povidomlyaye kliyentu IP adresu odnogo z funkcionuyuchih vuzliv umovno vuzol B Dana procedura mozhe i ne povtoryuvatisya v majbutnomu ale pri pershomu zapusku vona obov yazkova Ce odin z najbilsh slizkih momentiv v realizaciyi danoyi merezhi bez adresi hocha b odnogo z pracyuyuchih v cej chas vuzla koristuvach ne zmozhe pidklyuchitisya U principi isnuye cilij ryad centralizovanih serveriv yaki nadayut taku informaciyu connect1 gnutellanet com 6346 gnutella hostscache com ta in ale taka shema vzhe prizvodit do pevnoyi centralizovanosti Programa nadsilaye zapit vuzlu B na predmet pidtverdzhennya aktivnosti Vuzol B pidtverdzhuye svoyu aktivnist yaksho nemaye div krok 2 Vuzol A posilaye vuzlu B tak zvanij Ping zapit U comu zapiti vkazuyetsya krim inshoyi informaciyi TTL Time To Live chislo sho oznachaye skilki perehodiv vid vuzla do vuzla danij zapit mozhe zrobiti Zazvichaj TTL dorivnyuye 7 Inshi vuzli otrimavshi Ping zapit posilayut Pong vidpovid v yakij mistitsya IP adresa vidpravnika nomer portu i minimalna informaciya pro fajli u fondi obminu Krim togo vuzli yaki otrimali Ping zapit zmenshuyut TTL danogo zapitu na odinicyu i yaksho TTL bilshe 0 a takozh yaksho danij zapit voni ne otrimuvali ranishe zahist vid zaciklennya rozsilayut jogo svoyim susidam Kozhen vuzol yakij otrimav Ping zapit vidsilaye Pong vidpovid tim zhe shlyahom yakim cej zapit otrimav Koli Pong vidpovidi dohodyat do svogo dzherela tobto nashogo vuzla A programa skladaye spisok dostupnih vuzliv Yak pravilo cej spisok nalichuye vid 2 do 10 tisyach vuzliv i vid 500 tisyach do miljona fajliv v obminnomu fondi Koristuvach vvodit zapit napriklad nazvu mp3 fajlu Programa rozsilaye zapit na poshuk fajlu usih vuzliv u spisku a dali prosto chekaye vhidnih povidomlen Kozhen vuzol yakij otrimav zapit na poshuk shukaye v svoyemu fondi vkazanij fajl Yaksho fajl ne znajdenij to vuzol prosto ne vidpovidaye Yaksho fajl znajdenij vuzol vidsilaye iniciatoru zapitu vidpovid z informaciyeyu pro fajl i pro sebe IP adresu Otrimavshi ryad vidpovidej programa vibiraye odin z vuzliv vstanovlyuye z nim standartne HTTP z yednannya i zavantazhuye fajl Pri comu vsi povidomlennya vid Ping zapitu do skachuvannya fajlu posilayutsya po HTTP sho uskladnyuye yih vidstezhennya i blokuvannya Deyaki kliyenti Gnutella pracyuyut zgidno z navedenim algoritmom a deyaki ni Pov yazano ce z tim sho Gnutella ce persh za vse protokol vzayemodiyi vuzliv takij zhe yak HTTP i v nomu ne viznacheno deyaki z aspektiv ciyeyi vzayemodiyi Poshuk v Gnutella pobudovanij na decentralizovanij tehnologiyi gPulp dzherelo KliyentiU cej chas Gnutella ye odniyeyu z najpopulyarnishih fajloobminnih merezh Robota merezhi Gnutella bezperervno udoskonalyuyetsya zavdyaki zusillyam rozrobnikiv bezlichi kliyentiv merezhi Specializovani tilki do versiyi 5 dlya kripto merezhi I2P MultimerezheviReakciya z boku FSFNazva Gnutella spochatku bulo groyu sliv GNU tak yak rozrobniki planuvali vipustiti vihidnij kod pid licenziyeyu GNU GPL i Nutella marki ulyublenoyi gorihovoyi pasti cih rozrobnikiv Odnak ni najpersha programa ni vidpovidni suchasni proekti ne ye vilnim PZ vklyuchayuchi vikoristovuyut protokol Gnutella i Krim togo Fond vilnogo programnogo zabezpechennya zoseredzhenij na voli kopiyuvannya i zmini programnogo zabezpechennya u toj chas yak Gnutella ce persh za vse merezha obminu muzichnimi fajlami I hocha isnuye deyakij podibnist u pitannyah etiki kopiyuvannya programnogo zabezpechennya i muzichnih zapisiv FSF poprosila rozrobnikiv Gnutella zminiti nazvu programi dlya uniknennya plutanini Div takozhAnonimni merezhiPrimitkiZa danimi na veresen 2007 rik a merezha Gnutella ye najpopulyarnishoyu vona vikoristovuyetsya na 40 5 komp yuteriv pidklyuchenih do p2p merezh i yiyi populyarnist prodovzhuye zbilshuvatisya 1 16 grudnya 2008 u Wayback Machine http echelon i2p i2phex nedostupne posilannya z chervnya 2019 html Shodo Gnutella nedostupne posilannya Posilannya opis specifikacij protokolu Gnutella Gnutelliums 30 zhovtnya 2008 u Wayback Machine Spisok kliyentiv Gnutella dlya Windows Linux Unix i Macintosh Cyu stattyu potribno povnistyu perepisati vidpovidno do standartiv yakosti Vikipediyi Vi mozhete dopomogti pererobivshi yiyi Mozhlivo storinka obgovorennya mistit zauvazhennya shodo potribnih zmin kviten 2011 Ce nezavershena stattya pro komp yuterni merezhi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi