Peer-to-peer

Поимот ‚peer to peer‘ првично се употребувал за опис на комуникација помеѓу два „јазли“ (peers), аналогно на телефонскиот разговор, во кој учесниците во point-to-point врската имаат еднаков статус. P2P претставува „точка до точка“ врска помеѓу два еднакви партици-панта.
Интернет-мрежата започнала токму како peer-to-peer систем. Целта на ARPANET била да овозможи споделување на технички ресурси во САД. Предизвикиот бил да се поврзе сет од дистрибуирани ресурси, притоа користејќи различно мрежно поврзување, во рамки на една заедничка мрежна архитектура. Првите „домаќини“ на ARPANET биле неколку американски универзитети, кои веќе биле технички независни и со еднаков статус. ARPANET ги поврза во мрежа на еднакви „јазли“, а не во master-slave или клиент-опслужувач релации.
Од доцните 60-ти до 1994 година, интернет-мрежата имала еден модел на конективност. Претпоставката била машините да бидат постојано вклучени, постојано поврзани и со доделена постојана, статична IP-адреса.
Првичниот DNS систем бил дизајниран за ваква средина, каде што промената на IP адреси се претпоставувало дека ќе биде абнормална и ретка појава. Меѓутоа, во средината на 90-тите години интернет-мрежата буквално експлодира, стекнувајќи огромен број корисници, кои се приклучуваа преку dial-up врска.
Сето ова придонесе да се смени структурата и начинот на кој се разменуваат информациите на глобалната мрежа, а интернетот ја изгуби својата првична peer-to-peer природа. Меѓутоа, со појавата на Napster во 1999 година, климата повторно почна да се менува, а P2P мрежите, условно кажано, се вратија „во живот“. Членовите на Napster заедницата можеа да преземат апликација за пребарување на локалните хард-дискови на останатите корисници, со цел да пронајде, а потоа и преземе МР3 податотеки директно од другиот „јазол“.
До крајот на годината сервисот стекна милиони членови, но и многу непријатели, пред се, од забавната индустрија, кои претрпуваа големи загуби поради активноста на Napster. По долги битки во судницата, сервисот престана со работа во 2001 година, но неговото „дело“ продолжи преку Kazaa, Gnutella, Audiogalaxy, iMesh и слични.
1 Архитектура на P2P системи
Peer-to-peer системи најчесто се имплементира како апстрактно мрежно преклопување, изградена во Апликациско ниво, на врвот на мајчинната/домашната или материјалната мрежна топологија. Таквите преклопувања се користат за означување и разоткривање врсникот(peer) сè со цел да го направат системот P2P независен од физичко мрежната топологија. Содржината типично се разменува директно преку Интернет Протокол (IP) мрежа. Анонимните peer-to-peer системи се исклучок, како и спроведување дополнителна насочување слоеви за да се прикријат идентитетот на изворот или одредиштето на пребарувања.
Во структурирани во peer-to-peer мрежи, врсници (и, понекогаш, ресурси) се организирани во следниве специфични критериуми и алгоритми, кои водат до преклопување со специфични топологии и својства. Тие обично користат дистрибуирана хеш табела заснована (DHT) индексирање, како што е во системот Chord (МИТ).
Неструктурираните peer-to-peer мрежи не даваат никаков алгоритам за организација или оптимизација на мрежните врски.Поточно, три модели на неструктурирани архитектура се дефинирани. Во едноставните peer-to-peer системи целата мрежа се состои само од еквивалентни врсници. Постои само еден ротирачки слој, како што не постојат склоп јазли со некои посебни инфраструктурни функции. Хибридните peer-to-peer системи дозволуваат да постои таква инфраструктура на јазли, најчесто нарекувајки ги суперјазли. Во централизираните peer-to-peer системи, централен опслужувач се користи за означување на функциите и за подигање на целиот систем. . Иако ова има сличности со структурирана архитектура, поврзаноста помеѓу врсниците не е утврдена со кој било алгоритам. Првиот познат и популарен peer-to-peer споделувач на системски податотеки, napster, беше пример на централизиран модел. Gnutella и Freenet, од друга страна, се примери на децентрализираниот модел. Каза е пример на хибриден модел.
P2P мрежи обично се користи за поврзување на јазли преку голема мера ад хок врски на податоци, вклучувајќи дигитални формати, како што се аудио податотекаови и податоци во реално време, како што се телефонски сообраќај, се пренесува користење на P2P технологија.
Чиста P2P мрежата нема претстава за клиенти или опслужувачи, но само за еднакви пер јазли кои истовремено функционираат и како "клиенти" и "опслужувачот " до другите јазли во мрежата. Овој модел на мрежниот аранжман се разликува од клиент-опслужувач моделот, каде комуникацијата е најчесто до и од централен опслужувач. Типичен пример за пренос на податотеки кои не ги користат P2P модел е Протокол за пренос на податотеки (FTP) услугата во која клиентот и опслужувачот се одвоени програми: клиентот го иницира преносот, а опслужувачите ги задоволаат овие барања.
Преклопувањето на P2P мрежата се состои од сите учеснички врсници, како мрежни јазли. Постојат врски помеѓу било кои два јазли кои меѓусебно се познаваат, т.е. ако учесник пер знае локацијата на друг пер во мрежата на P2P, тогаш е во режија на работ од поранешниот јазол на вториот во преклопената мрежа. Врз основа на тоа како јазлите во мрежната облога се поврзани едни со други, може да се класифицираат на P2P мрежи како неструктурирани или структуирани.
1.1 Структурирани системи
Структурните P2P мрежи ангажираат глобален ниво во согласност протокол за да се осигура дека секој јазол може ефикасно пат за пребарување на некој колега кој има саканиот податотека, дури и доколку податотеката е исклучително редок. Таква гаранција бара повеќе структуриран начин на шалче врски. Далеку од најчестиот тип на структурирани P2P мрежата е дистрибуиран хеш табела (DHT), во кој една варијанта на доследна hashing се користи да го пренесе сопственоста на секој податотека на одредено пер, на начин аналоген на доделувањето на традиционалните хеш табела на секое копче за одредена низа слот.
1.1.1 Дистрибуирани хаш табели
Дистрибуираните хаш табели (DHTs) се класа на децентрализирано дистрибуирани системи кои обезбедуваат услуга на побарување слична на хеш табелата: (клуч, вредност) паровите се чуваат во нашата Portable, и сите вклучени јазли може ефикасно да се потсетат на вредноста поврзана со дадениот клуч . Одговорноста за одржување на мапирање од клучевите на вредности е дистрибуирана меѓу јазлите, на таков начин што промена насоката? учесниците предизвикува минимално нарушување. Ова им овозможува на DHTs за намалување на екстремно голем број на јазли и да се справи со постојаните примања, напуштања и откажувања на јазлите.
DHTs формира инфраструктура што може да се користат за изградба на peer-to-peer мрежи. Значајни дистрибуирани мрежи кои користат DHTs ги вклучуваат Bittorrent дистрибуивниот тракер , Kad network, the Storm Bitnet, YaCy, и the Coral Content Distribution Network.
Некои истакнати истражувачки проекти ги вклучуваат The Chord project, the PAST storage utility, the P-Grid, и содржината Cthe CoopNet content distribution system.
DHT-заснованите мрежи биле широко користени за спроведување на поефикасно откривање извори , за мрежни компјутерски системи, како што помага во управување и распоредување на апликации. Активноста на откривање извори вклучува потрага по соодветни видови на ресурси кои се совпаѓаат со на барањата на корисникот. Најнови достигнувања во доменот на децентрализирано откривање извори се засноваат на проширување на постоечките DHTs со способноста на мулти-димензионална организација на податоци и пребарувачко ротирање. Главните напори се согледуваат во припојување на просторните податоци, како што се индексите на Space Filling Curves(SFCs), вклучувајќи ги Hilbert curves, Z-curves, k-d tree, MX-CIF Quad tree и R*-tree за управување, насочување, и индексирање и пребарување објекти над DHT мрежи. Просторните индекси се добро прилагодени за справување со комплексноста на Grid ресурсните (сомневања)?. Иако некои просторни индекси можат да имаат проблеми во поглед на насочувањето на товарната рамнотежа во случај на неверодојстојни податоци, сите просторни индекси се повеќе размерливи во зависност од бројот на hops генерирани пораки додека го пребаруваат и Grid ресурсниот мрежен прашалник.
1.2 Неструктурирани системи
Неструктурирана P2P мрежа се формира кога повеќеслојните врски се воспоставени произволно. Ваквите мрежи лесно може да се конструираат како нов врсник кој сака да се прикучи на мрежата може да ја копира постоечки линк од еден куп и потоа формира сопствена врска/линк со текот на времето. Во неструктурираната P2P мрежата, ако врсникот сака да ја најде саканата фигура на податоци во мрежата, барањето мора да биде поплавено преку мрежата да се најде што можно повеќе врсници ги споделуваат податоците. Главниот недостаток со таквите мрежи е дека пребарувања не може секогаш да бидат решени. Популарни содржина е веројатно да бидат достапни во неколку врсници и врснички секој во потрага по веројатно е да се најде истото. Но, ако е пер е во потрага по ретки податоци делат само уште неколку другари, тогаш многу е веројатно дека барањето ќе биде успешна. Бидејќи не постои корелација помеѓу врсници и содржината успеа од тоа, не постои гаранција дека поплавите ќе се најде меѓу врсници, кои го има саканиот податоци. Поплави, исто така, предизвикува голема количина на сигнализација сообраќај во мрежата а со тоа и таквите мрежи обично имаат многу слаб пребарување ефикасност. Многу од популарните P2P мрежи се неорганизирано.