<% If session("ID") <> "my_session" THEN Response.Redirect "/P2P/login.asp" End if %> Gnutella-Netzwerk

Kefk Network : P2P (Peer-to-Peer)  |  About |   P2pWikiWeb
Suchen | Index | Inhalt | Site Map | What's New?

 
Akteure | Alternativen | Analyse | Anbieter | Anwendungen | Entwicklung | Forschung | Geschichte | Gesellschaft | Grundlagen | Infrastruktur | Literatur | Markt | Motivation | Perspektiven | Problemfelder | Ressourcen | Spektrum | Thesen | Wirtschaft.

 

 

Gnutella-Netzwerk

Infrastruktur : Netzwerke : Virtuelle : Gnutella Network : Übersicht
25-Feb-2001/14-Jan-07


Übersicht

Das Gnutella Netzwerk ist ein dezentral operierendes Netzwerk von untereinander vernetzeten Rechnern, das prinzipiell ohne zentralen Server funktioniert. Z.Zt. arbeitet es jedoch noch noch mit semizentralen Elementen, um das Problem der Verteilung der Netzlast zu umgehen. Dabei werden sogenannte Reflektoren eingesetzt, um die Modemnutzer zu entlasten, die sonst aufgrund der grossen Menge der Anfragen, die an ihren Computer gestellt werden, praktisch von den Benutzung des Netzwerkes ausgeschlossen wären.

Die am Gnutella-Netzwerk teilnehmenden Rechner tauschen miteinander Suchanfragen aus und beantworten sie. Treffer werden auf demselben Weg wie die Suchanfrage zurückgesandt, der Dateiautausch wird jedoch direkt abgewickelt. Eine Suchanfrage enthält stets eine TTL (Time to live), die bei jeder Zwischenstation um "1" heruntergesetzt wird. Damit soll ein Überfluten des Netzes mit unendlichen Suchanfragen verhindert werden.

Suchanfragen nach Files werden nicht an einen Zentralen Server weitergeleitet, sondern von User zu User weitergereicht, bis es auf das gefundene File stößt. Leider bringt dies auch den Nachteil gegenüber dem Fast Track Netzwerk mit sich, bei Suchanfragen viel langsamer zu sein.

Winap Programmierer Justing Frankel schuf im März 2000 ein neues Filesharing-Tool und damit die Grundlage für viele weitere Fileshariung Tools: Das Gnutella – Netzwerk. Mittlerweile gibt es zahlreiche Gnutella Clients, die bekanntesten sind: BearShare, Limewire, Gnucleus, Gtk-Gnutella, und seit neuestem auch Morpheus. Das Original Gnutella ist leider nie über das Beta- Stadium (Version 0.5a) hinausgekommen und absolut nicht zu empfehlen.

Seit die ehemals so beliebte und weit verbreitete Filesharing-Software Morpheus in seiner neuen Version nun mit dem Gnutella – Netzwerk arbeitet, sind die Userzahlen hier enorm gestiegen. Ganze 300 000 User sind zeitweise gleichzeitig mit dem Gnutella Netzwerk verbunden, wodurch hier natürlich ein größeres Potential an Files zum download zur Verfügung steht.

 

Gnutella ist ein allgemeines Filesharing-System, in dem Nutzer Dateien zur gemeinsamen Nutzung mit anderen zur Verfügung stellen. Im Gegensatz zu bspw. Napster kommt Gnutella ohne einen zentralen Server aus. Die Vorteile eines solchen dezentralen Konzepts liegen auf der Hand:

  • Die Anonymität des Nutzers (i.S.v. Downloader) ist gewahrt, da keine Anmeldung und Identitätsprüfung durch eine Netzzentrale
    erfolgt (Ein gewichtiger Unterschied zu FreeNet ist, dass die Anonymität bei Gnutella nur gewährleistet ist, solange keine Daten ausgetauscht werden. Bei Zustandekommen eines Dateitausches wird die IP-Adresse der Benutzers übermittelt);
  • Das Netz ist nicht durch Hackerangriffe lahmlegbar, fällt ein Knoten aus, sucht man sich halt einen anderen;
  • Juristische Maßnahmen gegen das System sind nicht möglich, da Gnutella nur ein Protokoll ist, es gibt keine juristische Person, gegen die man vorgehen könnte;
  • Es gibt keine Firma, die im Hintergrund steht und die möglicherweise Protokoll führt über das Nutzungsverhalten ihrer Kunden und die so gewonnenen Anwenderprofile für kommerzielle Zwecke mißbraucht.

Jeder Nutzer benötigt einen Gnutella-kompatiblen Servent (Kombination aus Server und Client), um als Knotenpunkt im Netz zu fungieren. Dieser Servent ist eine Kombination aus Such-Servent, HTTP-Server und HTTP-Client, einige Servent haben zusätzlich noch ein IRC- System eingebaut. Beim Start versucht sich der Servent mit anderen, ihm bekannten Knoten zu verbinden. Von jedem Knoten, mit dem eine Verbindung zustande kommt, erhält er dann eine Liste der Hosts, die letzterem Knoten bekannt sind. Sind genügend Verbindungen zustande gekommen (bei Anbindung über Modem 2 bis 4, bei Ethernetverbindung ins Internet 8 oder mehr), kann man anfangen, nach Dateien zu suchen.

Die Suche läuft bei Gnutella nach dem klassischen Prinzip des Schneeballeffekts ab: Der Urheber der Suche fragt bei allen mit ihm direkt verbundenen Hosts nach, ob Dateien vorhanden sind, die die gewählten Stichworte enhalten. Die Empfänger der Anfrage geben eine entsprechende Rückmeldung falls die Suche erfolgreich war und leiten unabhängig davon ihrerseits die Suche zu allen weiteren Knoten, mit denen sie jeweils direkt verbunden sind, weiter. Die Knotenrechner, wissen selber nicht, ob der Host, der die Anfrage an sie geleitet hat, auch ihr Urheber ist oder selbst nur als Relay fungiert.

Da nicht alle Hosts des Gnutellanetzes zu jeder Zeit aktiv sind, ist irgendwann die Suche beendet, obwohl auf anderen Rechnern vielleicht noch passende Dateien vorhanden wären. Diese Knoten liegen dann hinter dem sogenannten Suchhorizont, der erfahrungsgemäß nie mehr als 10000 Rechner umfassen wird. War die Suche erfolgreich, so erhält man als Antwort die Namen aller passenden Dateien und die IPs ihrer Hostrechner innerhalb des Suchhorizonts. Aus diesen kann man sich einzelne Dateien aussuchen und herunterladen.

War die Suche noch indirekt und darauf ausgerichtet, möglichst viele Knoten mit einzubeziehen, so funktionert der Download auf wesentlich direktere Weise: Zwischen dem Empfänger und dem (Noch-)Besitzer der gewünschten Datei wird eine HTTP-Verbindung hergestellt und die Datei direkt zwischen den Rechnern übertragen. Sollte dabei die Verbindung unterbrochen werden (z.B. weil der Sender über Modem im Internet war und während der Übertragung aufgelegt hat), so kann bei einem späteren erneuten Versuch die Datenübertragung da fortgesetzt werden, wo sie abgebrochen wurde.

Der Original-Gnutella-Servent wurde als Preview in der Version 0.48 im März 2000 von Justin Frankel, dem Gründer der Firma Nullsoft zum Download freigegeben. Bereits kurze Zeit später sorgte Nullsofts Mutterfirma AOL dafür, dass das Programm in der Versenkung verschwand. Jedoch waren mittlerweile eine Reihe von Kopien in Umlauf und es gelang findigen Programmierern durch Reverse Engineering, die Funktionsweise und das Protokoll von Gnutella nachzubauen und auf dieser Basis kompatible Servents zu entwickeln.

Empfehlenswerte Gnutella-Clones sind BearShare und Gnucleus für Win-32-Systeme sowie die systemunabhängigen Servents LimeWire und Furi auf Java-Basis. Auch das Originalprogramm scheint laut "gut unterrichteter Kreise" von Insidern inoffiziell weiterentwickelt zu werden, so dass möglicherweise trotz AOLs Bann eines Tages eine Version 1.0 verfügbar sein wird.

Quelle: ig.cs.tu-berlin.de/w2000/ir1/referate2/k-3b, Stand: 12-Feb-2002.

Logo:

gnutella.jpg (188x50 -- 4078 bytes)

Aktuelle Queries im Gnutella-Netzwerk

Mit dem Gnutella Meter können die aktuellen und häufigsten Abfragen im Gnutella-Netzwerk angezeigt werden; um die Funktion nutzen zu können, muss JavaScript aktviert sein. Der "Adult word"-Filter ist hier deaktiviert.

Top 10:

 

Top 20:

 

Top 30:

 

Quelle: www.gnutellameter.com.

Probleme und Lösungen

Abgebrochene Downloads

Die in Gnutella-Servents eingesetzten HTTP-Server sind resume-fähig, daher wird bei einem unterbrochenen Download nach der Neuverbindung an der Stelle fortgesetzt, an der der letzte Versuch scheiterte. Sollte jedoch der Zielhost nicht mehr mit dem Netz verbunden sein, so kann Gnutella natürlich nicht viel machen. In solchen Fällen bleibt nur der erneute Einwahlversuch zu einem späteren Zeitpunkt.

Anonymität der Nutzer

Kein anderer Nutzer im Gnutella-Netzwerk weiß, von wem eine bestimmte Suchanfrage ausgegangen ist. Die einzige Möglichkeit wäre, gezielt (falsche) Dateien ins Netz zu stellen und zu warten, wer versucht, diese herunterzuladen, da der Download durch das verwendete HTTP-Protokoll im Gegensatz zur Suche nicht anonym ist.

Anonymität der Anbieter

Ein Anbieter, der illegale oder urheberrechtlich geschützte Inhalte ins Gnutella-Netz stellt, kann genauso leicht erwischt werden wie jemand, der solche Dateien auf einen File- oder Web-Server ablegt. Einen (beschränkten) Schutz bieten hier lediglich dynamische IPs, sofern der genutzte Provider seine Logs nicht zu lange speichert...

Serverausfälle

Sever? Welcher Server?-) Fallen ein oder mehrere Knoten im Netz aus, so sind lediglich die dort gespeicherten Dateien für andere Nutzer nicht erreichbar, das übrige Netz funktioniert dennoch weiter.

Juristische Attacken

Gegen wen? Gnutella ist keine Firma wie Napster, die man mit Klagen überhäufen könnte. Gnutella ist nur ein Protokoll, das Netz lebt durch seine Nutzer. Gnutella auf diese Weise lahmlegen zu wollen würde bedeuten, jeden einzelnen Gnutella-Anwender, im Zweifel sämtliche Internetuser verklagen zu müssen. (Nach Aussagen der Entwickler ist Gnutella nicht nur fähig, einen Atomkrieg zu überstehen, sondern sogar Angriffe einer hungrigen Meute von Rechtsanwälten.)

Einstiegspunkt finden

Gnutella arbeitet über "Freunde", die miteinander verbunden sind. Die Schwierigkeit ist natürlich, zunächst einen "guten" Freund zu finden, der möglichst wieder viele gute Freunde kennt. Zur Lösung dieses Problems gibt es sogenannte Host-Caches, das sind Anbieter, die eine möglichst umfangreiche und aktuelle Liste von Rechnern im Gnutella-Netz halten, aber selbst keine Dateien zur gemeinsamen Nutzung bereitstellen. Nach dem Verbinden mit einem solchen Rechner überträgt dieser wie jeder Servent seine Friends-Liste, trennt sich dann aber sofort wieder. Die meisten Servents verbinden sich standardmäßig beim Start mit einem dieser Dienste, allen anderen sei gnutellahosts.com:6346, router.limewire.com:6346 und gnutella.hostcache.com:6346 empfohlen

Langsame Verbindungen

Wenn man eine gesuchte Datei nur auf einem Rechner findet, der per Modem ans Inernet angebunden ist, so kann die Verbindung nunmal bestenfalls nur 5 KByte/s schnell sein. Gegen Beschränkungen auf Hardwareseite ist selbst Gnutella machtlos...

Quelle: ig.cs.tu-berlin.de/w2000/ir1/referate2/k-3b, Stand: 12-Feb-2002.

Siehe auch

Netmarks

Jordan Ritter <jpr5@darkridge.com>, "Why Gnutella Can't Scale. No, Really", ca. Februar 2001,
www.darkridge.com/~jpr5/doc/gnutella.html.

Kunwadee Sripanidkulchai <kunwadee@cs.cmu.edu>, "The popularity of Gnutella queries and its implications on scalability", Carnegie Mellon University,
www-2.cs.cmu.edu/~kunwadee/research/p2p/gnutella.html.

Abstract: »The surging increase in the popularity of peer-to-peer applications had led to a dramatic need for a scalable and high performance content location protocol. Gnutella, a peer-to-peer file-sharing protocol, broadcasts queries to locate content and, thus, suffers from an overwhelming amount of query and reply traffic. In this paper, we analyze the characteristics of queries on Gnutella and its implications on scaling. We find that the popularity of search strings follows a Zipf-like distribution. Taking advantage of such a popularity distribution by caching a small number of query results significantly decreases the amount of traffic seen on the network. We evaluate the effectiveness of caching and find that caching at one Gnutella node can result in up to a 3.7-time reduction in traffic while using only a few megabytes of memory. As more nodes implement caching, more traffic is reduced. Caching is a short-term solution to increasing the scalability of Gnutella«.

First Monday: "Free Riding on Gnutella", by Eytan Adar and Bernardo A. Huberman, First Monday, volume 5, number 10 (October 2000),
firstmonday.org/issues/issue5_10/adar,
www.firstmonday.dk/issues/issue5_10/adar.

»An extensive analysis of user traffic on Gnutella shows a significant amount of free riding in the system. By sampling messages on the Gnutella network over a 24-hour period, we established that almost 70% of Gnutella users share no files, and nearly 50% of all responses are returned by the top 1% of sharing hosts. Furthermore, we found out that free riding is distributed evenly between domains, so that no one group contributes significantly more than others, and that peers that volunteer to share files are not necessarily those who have desirable ones. We argue that free riding leads to degradation of the system performance and adds vulnerability to the system. If this trend continues copyright issues might become moot compared to the possible collapse of such systems«.

Darren Cubitt: "Proposed Extension to the Gnutella Protocol: Client Callback"
Draft Version 0.1,
gnutscape.tripod.com/techdoc/callback.html.

Client Callback ist eine vorgeschlagene Erweiterungen für das Gnutella-Protokoll.

www.filesharing.net/gnutella.htm.

Anmerkungen

<% iMyForumID = 40 ShowForum iMyForumID %>

Gnutella-Netzwerk
Nach oben
FAQ
Gnutelliums
Wer ist online?:
<% VisitorName = request.cookies("name") If VisitorName ="" then %>Name: Besucher
Online: <%= Application("ActiveUsers") %> aktive User. <% End if If VisitorName <> "" then %> <% user = Request.Cookies("name") %>Name: <%=user%>!
Online: <%= Application("ActiveUsers") %> aktive User. <% End if %>
Login | Logout
Literatur zu P2P (mehr)
Von Detlef Schoder, Kai Fischbach und René Teichmann:
»Peer-to- Peer. Ökonomische, technologische und juristische Perspektiven«
Von Andy Oram:
»Peer-to-Peer. Harnessing the Power of Disruptive Technologies«
Von Dana Moore und Joseph Hebeler:
»Peer-to-Peer«
Von Michael Miller:
»Discovering P2P«
Von David Barkai:
»Peer to Peer Computing. Technologies for Sharing and Collaborating on the Net«
Von Hassan Fattah:
»P2P. How Peer-to-Peer Technology Is Revolutionizing the Way We Do Business«
Von Bo Leuf & 
Ward Cunningham
:
»The Wiki Way. Quick Collaboration on the Web«
Von Bo Leuf:
»Peer to Peer. Collaboration and Sharing on the Internet«
Von Rebecca Blood:
»We've Got Blog. How Weblogs are Changing Our Culture«
»The Weblog Handbook. Practical Advice on Creating and Maintaining Your Blog«

 

Zurück ] P2P ] Nach oben ] Weiter ]

URL: http://www.kefk.net/P2P/Infrastruktur/Netzwerke/Virtuell/Gnutella/index.asp.
Translate this page into: 
Switch language: de | en | fr | it | es | pt | no | ru | ar | ja | zh | ko | ms | ts | id.
WebsiteAbout | Index | Inhalt | Site Map | Suchen | What's new?.
Foren | Statistik | Umfragen | Wer ist online? | Wiki.
Thematisch verwandte Sites: Internet | Kabelnetze | Networking | Open Source | Politik | Recht | Wissen | xDSL.
Ergänzungen, Fragen und Kommentare: Bitte nutzen Sie die Foren.
E-Mail: echo "asb at keNOSPAMfk.net"| sed -e "s/ at /@/" -e "s/NOSPAM//".
Copyright | Haftungsausschluss | Impressum | Kontakt | Rechtliche Hinweise.