Gnutella2

Gnutella2 , G2  är ett OpenSource P2P - fildelningsprotokoll som används av Shareaza- programmet . Utvecklad av dess författare som en gaffel av Gnutella- protokollet ; togs inte emot väl av gnutella-forumets medlemmar.

Nätverksdrift

  1. En nyinstallerad klient får en lista med hubbar från en speciell server som övervakar nätverket och registrerar aktiva hubbar (detta händer bara när klientens hubbcache är tom) och skriver dem till cachen.
  2. Klienten försöker upprätta en permanent anslutning med två aktiva hubbar genom att gå till adresserna i cachen.
  3. Klienten begär en lista över aktiva hubbar som är anslutna till den och skickar en sökbegäran till dem en efter en.
  4. Klienten får svar direkt från klienter som har filen eller information om den (ghost).
  5. Klienten ansluter till andra klienter och får information från dem:
    1. om andra filkällor
    2. om filen (upplösning, bildhastighet, varaktighet, etc.)
    3. filförhandsgranskning (liten rambild från video eller miniatyrbild)
    4. andras åsikter om filen och dess betyg
  6. Klienten ansluter till källorna och börjar ladda ner filen parallellt över HTTP med flera nya headers.

Vanliga HTTP-servrar kan också fungera som filkällor, men utbytet av adresser för dessa servrar är inaktiverat i klienter.

Efter en tid utvärderar klienten systemets kapacitet och, om de är tillräckliga, byter den till navläget, ansluter till många nav och betjänar hundratals klienter.

Skillnaden mellan Gnutella2 och Gnutella

Gnutella2-protokollet är inte en nyare version av Gnutella , utan en gaffel av det . De fördelar som nämns är mestadels från den tidpunkt då Gnutella2 skapades.

I allmänhet liknar de två nätverken varandra och skiljer sig åt i paketformat och sökmetoder. Gnutella nätverkspaketformat har kritiserats länge på grund av att det från början inte var tänkt att utökas. Med tiden har olika utvecklare lagt till nya funktioner till paketformatet, och dess struktur har blivit ineffektiv och svår att använda. Gnutella2-nätverket byggdes från det dåvarande Gnutella-nätverkets misstag och designades ursprungligen för att kunna expanderas. Dessutom inkluderade nätverket initialt tillägg som lagts till av olika utvecklare till Gnutella-nätverket.

En annan stor skillnad mellan ett nätverk och ett annat var i sökalgoritmen. Gnutella 0.4-nätverket använde sökmetoden query flooding , medan Gnutella2-nätverket använde nätverksgenomsökningsmetoden. Med denna metod samlar noden från vilken sökningen utförs en lista med noder (hub) och kommunicerar med dem direkt, en i taget. Denna sökmetod har flera fördelar. Det är mer effektivt eftersom att fortsätta söka i nätverket inte ökar nätverkstrafiken exponentiellt. Den nuvarande versionen av Gnutella-protokollet, 0.6, har inte detta problem. [1] Förfrågningar skickas inte via ett stort antal mellanhänder, och detta gör att klienten kan stoppa sökningen när den nödvändiga mängden information har tagits emot. Samtidigt ökar komplexiteten i det skapade nätverket, så specialiserat nätverksunderhåll kan krävas.

Det finns också en skillnad i terminologi. Noderna som stödjer nätverket i Gnutella kallas för Ultrapeer, och i Gnutella2-nätverket kallas de för Hub. Nätverkets topologi har också förändrats. Gnutella Ultrapeer stöder ett litet antal länkar med löv (blad) och ett stort antal länkar med andra nätverksnoder (med ultrapeer och peer). I Gnutella2, tvärtom, upprätthåller Huben en förbindelse med ett stort antal löv (blad) och ett litet antal förbindelser med andra noder (hub). Denna skillnad i topologier beror på att olika sökmetoder har olika optimala nätverkstopologier.

Klienter

Lista över klienter till Gnutella2-nätverket:

Se även

Anteckningar

  1. Varför Gnutella fjäll ganska bra . Hämtad 24 november 2007. Arkiverad från originalet 20 augusti 2008.

Länkar