På Internet idag är dator- och kommunikationsmiljöer betydligt mer komplexa och kaotiska än klassiska distribuerade system, utan någon centraliserad organisation eller hierarkisk kontroll. Det har funnits stort intresse för framväxande Peer-to-Peer (P2P) nätverk overlays eftersom de utgör ett bra underlag för att skapa storskalig datadelning, innehållsdistribution och programnivå multi-cast applikationer. Dessa P2P overlay nätverk försöker att ge en lång lista av funktioner, såsom: urval av närliggande kamrater, redundant lagring, effektiv sökning/lokalisering av dataobjekt, datapermanens eller garantier, hierarkisk namngivning, förtroende och autentisering, och anonymitet. P2P-nätverk erbjuder potentiellt en effektiv routingarkitektur som är självorganiserande, massivt skalbar och robust inom det breda området, som kombinerar feltolerans, lastbalansering och uttrycklig uppfattning om lokalitet. I denna artikel presenterar vi en undersökning och jämförelse av olika Strukturerade och Ostrukturerade P2P overlay nätverk. Vi kategoriserar de olika systemen i dessa två grupper i designspektrumet och diskuterar varje grupps nätverksprestanda på applikationsnivå. EN ÖVERVAKNING OCH JÄMFÖRELSE AV MÄNNISKORS ÖVERGRIPANDE NÄTSYSTEM ANDRA KVARTER 2005, VOLYM 7, NO. 2 www.comsoc.org/pubs/barometern eer-to-peer (P2P) overlay nätverk distribueras i naturen, utan någon hierarkisk organisation eller centraliserad kontroll. Peers bildar självorganiserande overlay nätverk som är överlagrade på Internet Protocol (IP) nätverk, erbjuder en blandning av olika funktioner såsom robust bred område routing arkitektur, effektiv sökning av data objekt, urval av närliggande kamrater, redundant lagring, permanens, hierarkisk namngivning, förtroende och autentisering, anonymitet, massiv skalbarhet, och feltolerans. Peer-to-peer overlay-system går längre än tjänster som erbjuds av klient-server-system genom att ha symmetri i roller där en klient också kan vara en server. Det ger tillgång till sina resurser genom andra system och stöder resursdelning, vilket kräver feltolerans, självorganisering och massiva skalbarhetsegenskaper. Till skillnad från Grid-system, P2P overlay nätverk inte uppstår från samarbetet mellan etablerade och anslutna grupper av system och utan en mer tillförlitlig uppsättning resurser att dela. Vi kan se P2P overlay nätverksmodeller spänner över ett brett spektrum av kommunikationsramar, som specificerar en fullt distribuerad, samarbetsvillig nätverksdesign med kamrater bygga ett självorganiserande system. Figur 1 visar en abstrakt P2P overlay-arkitektur som illustrerar komponenterna i överlägget Nätverkskommunikationsskiktet beskriver nätverksegenskaperna hos stationära maskiner som är anslutna över Internet eller små trådlösa eller sensorbaserade enheter som är anslutna på ett ad hoc-sätt. Den dynamiska karaktären hos kamrater innebär utmaningar i kommunikationsparadigmet. Den Overlay Nodes Management lager täcker hanteringen av kamrater, som inkluderar upptäckt av kamrater och routing algoritmer för optimering. Materialhanteringsskiktet handlar om säkerhet, tillförlitlighet, feltålighet och aggregerade resurstillgänglighetsaspekter för att upprätthålla robustheten hos P2P-system. Det tjänstespecifika skiktet stöder den underliggande P2P-infrastrukturen och de tillämpningsspecifika komponenterna genom schemaläggning av parallella och beräkningsintensiva uppgifter, innehåll och filhantering. Meta-data beskriver det innehåll som lagras mellan P2P-kollegorna och lokaliseringsinformationen. Nivån på tillämpning är inriktad på verktyg, tillämpningar och tjänster som genomförs med specifika funktioner ovanpå den underliggande P2P-overlay-infrastrukturen. Således finns det två klasser av P2P overlay-nätverk: Strukturerade och Ostrukturerade. Den tekniska innebörden av strukturerad är att P2P-nätverkstopologin är strikt kontrollerad och innehållet placeras inte på slumpmässiga poster utan på bestämda platser som gör Tabellen (DHT) som ett substrat, där dataobjektets (eller värdets) platsinformation placeras deterministiskt, på peers med identifierare som motsvarar dataobjektets unika nyckel. DHT-baserade system har en egenskap som konsekvent tilldelar enhetliga slumpmässiga NodeIDs till uppsättningen av kamrater i ett stort utrymme av identifierare. Dataobjekt tilldelas unika identifierare som kallas nycklar och som väljs från samma identifierare. Nycklarna kartläggs av overlay-nätverksprotokollet till en unik live-kollega i overlay-nätverket. P2P-nätverken stöder skalbar lagring och hämtning av {key, value} par på overlay-nätverket, vilket illustreras i bild. 2............................................................... Med en nyckel kan en lagringsåtgärd (input(key, value)) uppslagningsoperation (value=get(key)) åberopas för att lagra och hämta det dataobjekt som motsvarar nyckeln, vilket innebär att styra förfrågningar till motparten som motsvarar nyckeln. Varje kamrat har en liten routingtabell bestående av sina grannars NodeIDs och IP-adresser. Slå upp frågor eller meddelande routing vidarebefordras över overlay vägar till kamrater på ett progressivt sätt, med NodeIDs som är närmare nyckeln i identifieringsutrymmet. Olika DHT-baserade system kommer att ha olika organisationssystem för dataobjekt och dess nyckelutrymme och routing strategier. I teorin, DHT-baserade system kan garantera att alla dataobjekt kan placeras i små O (logN) overlay humle i genomsnitt, där N är antalet jämlikar i systemet. Den underliggande nätverksvägen mellan två jämlikar kan skilja sig avsevärt från sökvägen på det DHT-baserade överlagringsnätet. Lookup latency i DHT-baserade P2P overlay nätverk kan därför vara ganska hög och kan negativt påverka prestandan hos de program som kör över den. Plaxton m.fl. [1] ger en elegant algoritm som uppnår nästan optimal latens på grafer som uppvisar power-law expansion [2], samtidigt som de skalbara routingegenskaperna hos det DHT-baserade systemet bevaras. Men denna algoritm kräver parvis undersökning mellan kamrater för att bestämma latenser, och det är osannolikt att skala till ett stort antal kamrater i överlägget. DHT-baserade system [3] [4] [5] [6] [7] är en viktig klass av P2P-routningsinfrastrukturer. De stöder en snabb utveckling av ett brett spektrum av Internetscale-tillämpningar som sträcker sig från distribuerade fil- och namnsystem till multicast i applikationslager. De möjliggör också skalbar och omfattande insamling av delad information. År 1999 banade Napster [8] väg för idén om ett fildelningssystem för peer-to-peer som stöder en centraliserad filsökningsanläggning. Det var det första systemet att erkänna att förfrågningar om populärt innehåll inte behöver skickas till en central server utan istället kunde hanteras av många kamrater som har det begärda innehållet. Sådana P2P-fildelningssystem är självskalande i och med att fler deltagare ansluter sig till systemet, lägger de till den aggregerade nedladdningskapaciteten. Napster uppnådde denna självskalning beteende genom att använda en centraliserad sökanläggning baserat på fillistor som tillhandahålls av varje kamrat; således, det kräver inte mycket bandbredd för den centraliserade sökningen. Ett sådant system har frågan om en enda felpunkt på grund av den centraliserade sökmekanismen. Men en stämning inlämnad av Recording Industry Association of America (RIAA) försökte tvinga Napster att stänga gratis-för-alla fildelning tjänst för upphovsrättsskyddad digital musik -bokstavligen, dess mördare ansökan. Men detta paradigm fångade fantasin hos både plattformsleverantörer och användare. Gnutella [9-11] är ett decentraliserat system som distribuerar både sök- och nedladdningsmöjligheter och skapar ett nätverk av jämlikar. Det är det första systemet som använder sig av ett ostrukturerat P2P-nät. Ett ostrukturerat P2P-system består av kamrater som ansluter sig till nätverket med några lösa regler, utan förkunskaper om topologin. Nätverket använder översvämningar som mekanism för att skicka frågor över hela lagret med ett begränsat tillämpningsområde. När en kamrat får översvämningsfrågan, skickar den en lista över allt innehåll som matchar frågan till den ursprungliga deltagaren. Medan översvämningsbaserade tekniker är effektiva för att lokalisera mycket replikerade objekt och är motståndskraftiga mot kamrater som går med och lämnar systemet, de är dåligt lämpade för att lokalisera sällsynta objekt. Uppenbarligen är detta tillvägagångssätt inte skalbart eftersom belastningen på varje kamrat växer linjärt med det totala antalet frågor och systemets storlek. Därför står ostrukturerade P2P-nät inför ett grundläggande problem: peers lätt blir överbelastade, och därmed systemet inte skala när man hanterar en hög grad av aggregerade frågor och plötsliga ökningar i systemstorlek. Även om strukturerade P2P-nätverk effektivt kan lokalisera sällsynta objekt eftersom den nyckelbaserade routingen är skalbar, har de betydligt högre omkostnader än ostrukturerade P2P-nätverk för populärt innehåll. Därför används idag de decentraliserade ostrukturerade P2P-näten oftare på Internet. Det finns dock nyligen insatser för nyckelbaserad routing (KBR) API-abstractioner [12] som gör det möjligt att bygga fler tillämpningsspecifika funktioner över dessa gemensamma grundläggande KBR API-abstractioner, och OpenDHT 1 (Open publicly available DHT-tjänst) [13] som gör det möjligt för enhetsplattformen att förse utvecklare med en grundläggande DHT-tjänstmodell som körs på en uppsättning infrastrukturvärdar, att distribuera DHT-baserade overlay-applikationer utan bördan av att upprätthålla en DHT, och med enkel användning för att stimulera spridningen av DHT-baserade applikationer. Däremot är ostrukturerade P2P-system ad hoc-system till sin natur och ger inte möjlighet att förenas under en gemensam plattform för applikationsutveckling. I senare avsnitt av denna artikel kommer vi att beskriva de viktigaste egenskaperna hos strukturerade P2P- och ostrukturerade P2P-nät och deras funktionsfunktioner. Efter att ha gett en grundläggande förståelse av de olika nätverkssystemen i dessa två klasser, fortsätter vi att utvärdera dessa olika overlaysystem i båda klasserna och diskutera dess utveckling. Sedan försöker vi använda följande taxonomier för att göra jämförelser mellan de olika diskuterade strukturerade och ostrukturerade P2P overlay-system: • Decentralisering -undersöka om överlagringssystemet är fördelat. • Arkitektur -beskriv överlagringssystemets arkitektur med avseende på dess drift. • Slå upp protokoll - uppslagningsfråga protokoll som antagits av overlay systemet. • Systemparametrar - de nödvändiga systemparametrarna för överlagringssystemets drift. • Routing prestanda - uppslagning routing protokoll prestanda i overlay routing. • Routing tillstånd - routing tillstånd och skalbarhet av overlay systemet. • Peers gå med och lämna -beskriv beteendet hos overlay systemet när churn och själv-organisering inträffade. • Säkerhet - titta på säkerhetssårbarheter i overlay-system. • Tillförlitlighet och feltålighet - undersöka hur robust överläggningssystemet är när det utsätts för fel. Slutligen avslutar vi med några tankar om den relativa tillämpligheten av varje klass på några av de forskningsproblem som uppstår i ad-hoc, plats-baserade, och innehållsleveransnätverk, som exempel.
Overlay-nätverk har använts i stor utsträckning inom ramen för peer-to-peer-system REF [8], där forskningsinsatserna har inriktats på att utveckla skalbara system genom optimerade logiska topologier och protokoll för overlay routing.
A survey and comparison of peer-to-peer overlay network schemes
{'venue': 'IEEE Communications Surveys & Tutorials', 'journal': 'IEEE Communications Surveys & Tutorials', 'mag_field_of_study': ['Computer Science']}