Was ist Gnutella?

Status
Für weitere Antworten geschlossen.

Maestro2k5

Projektleiter
Teammitglied
Beiträge
13.708
Ort
Erfurt
Smartphone
OnePlus 8T
Gnutella

aus Wikipedia, der freien Enzyklopädie

Gnutella bezeichnet eine Internet-Tauschbörse (Peer-to-Peer-Netzwerk) und dessen spezifisches Übertragungsprotokoll.

Inhaltsverzeichnis // [AnzeigenVerbergen] 1 Geschichte

2 Hintergrund

3 Technik

4 Client-Software

5 Entwicklung

6 Nachfolger

7 Aktuelle Daten

8 Weblinks

[Bearbeiten]


Geschichte

Das Gnutella-Protokoll wurde durch Justin Frankel definiert, der am 14. März 2000 als erste Client-Software für das Gnutella-Netzwerk die Beta-Version des ebenfalls Gnutella bezeichneten Programmes zum kostenlosen Herunterladen im Internet freigab. Frankels Arbeitgeber AOL zwang ihn jedoch nach kurzer Zeit das Projekt aufzugeben und das Programm nicht weiter zu veröffentlichen. Das Programm war jedoch zu diesem Zeitpunkt bereits weit verbreitet und durch fremde Webseiten oder Peer-to-Peer-Netzwerke weiterhin verfügbar. Auch wenn der Name darauf hindeutet, so gehört Gnutella nicht zum GNU-Projekt, sondern ist vielmehr ein offener Standard.

Einige Zeit später gelang es einer Gruppe von unabhängigen Entwicklern das Gnutella-Protokoll zu entschlüsseln und ihre Ergebnisse zu veröffentlichen. Daraufhin wurden zahlreiche weitere Client-Programme für das Gnutella-Netzwerk entwickelt, die auch den Leistungsumfang des Netzwerkes deutlich erweiterten.

[Bearbeiten]


Hintergrund

Vorbild und Anreiz für das Gnutella-Netzwerk war in weiten Teilen das Peer-to-Peer-Netzwerk Napster, welches bereits seit Juni 1999 einen direkten Austausch von Musikdateien ermöglichte. Durch die überwiegend illegal getauschten Inhalte geriet die Betreiberfirma Napster jedoch immer häufiger in rechtliche Konflikte. Frankels Motivation war es, ein Netzwerk zu errichten, das im Gegensatz zu Napster ohne zentrale Server und somit auch ohne zentralen Betreiber, gegen den rechtliche Vorwürfe hätten erhoben werden können, auskommen sollte.

[Bearbeiten]


Technik

Das Gnutella-Netzwerk ist ein vollständig dezentrales Netzwerk. Das bedeutet, dass jeder Benutzer eine gleichwertige Client-Software verwendet und es keine zentralen Server gibt, welche die Suchanfragen bearbeiten. Startet ein Benutzer des Netzwerkes eine Suchanfrage, so wird diese zunächst nur an benachbarte Systeme weitergeleitet. Diese leiten dann ihrerseits die Anfrage an ihre benachbarten Systeme weiter, bis die angeforderte Datei gefunden wurde. Anschließend kann eine direkte Verbindung zwischen suchendem und anbietendem Benutzer für die Datenübertragung hergestellt werden.

Der besondere Vorteil dieser Netzwerkstruktur ist die Ausfallsicherheit, da Suchanfragen selbst dann weitergeleitet werden können, wenn einzelne Teile des Netzwerkes zeitweise unerreichbar sind. Nachteilig dagegen ist die lange Dauer der Suchanfrage, da es keine zentralen Index-Server gibt, und die hohe Netzwerkbelastung durch die teils ziellosen Weiterleitungen der Suchanfragen.

[Bearbeiten]


Client-Software

  1. LimeWire - Gnutella (Java: Linux/Mac/Win/Others) - (kostenfreie Version enthält Adware und Spyware)
  2. Shareaza - Gnutella (Win) - (ist Open Source)
  3. BearShare - Gnutella (Win) - (kostenfreie Version enthält Adware und Spyware)
  4. mldonkey - Gnutella
  5. gtk-gnutella - Gnutella (Linux/Unix/BSD/Mac - GTK+)
  6. Apollon - giFT (Linux - KDE)
  7. GIFTBoX - giFT (Mac)
  8. Poisoned - giFT (Mac)
  9. Xfactor - giFT (Mac)
  10. Yaggui - giFT (Java: Linux/Mac/Win/Others)
  11. Acquisition - Gnutella (Mac)
  12. Morpheus
  13. Gnucleus
  14. Gnotella - Gnutella (Gnotella wurde im Dezember 2001 eingestellt)
  15. XoloX
  16. Mutella - textbasierter Client - http://mutella.sourceforge.net/
[Bearbeiten]


Entwicklung

Das Gnutella-Protokoll wird ständig durch neue Erweiterungen verbessert. Zum einen wird hiermit die Funktionalität erweitert, zum anderen wird mit ausgeklügelten Algorithmen versucht, die benötigte Bandbreite zu reduzieren und die Robustheit zu verbessern.

Hierzu gehören:

  1. Klassifizierung in Ultrapeer- und Blattknoten
  2. Horizontstatistik (HSEP (http://www.menden.org/gnutella/hsep.html))
  3. Aktives/passives Queuing
  4. Meta-Daten
Viele Gnutella-Clients sind [DLMURL="http://de.wikipedia.org/wiki/Open_Source_Software"]Open Source Software[/DLMURL]. Dementsprechend ist es möglich, an den Clients selbst mitzuwirken.

[Bearbeiten]


Nachfolger

Das Gnutella-Protokoll hat einige konzeptionelle Schwächen, die sich ohne Bruch der Kompatibilität nicht beheben lassen. Als Nachfolger von Gnutella, die diese Schwächen beheben sollen, werden vielfach Netzwerke nach dem Kademlia-Algorithmus aufgefasst. Bei Kademlia gibt es ebenfalls keine zentralen Server, jedoch wird für jede einzelne denkbare Suchabfrage jeweils ein bestimmter "Ansprechpartner" rechnerisch ermittelt, der für diese Abfrage "zuständig" ist. Damit wird das bei Gnutella bestehende Problem vermieden, dass praktisch jede Suchabfrage zu jedem Rechner gelangen muss, wenn auch seltene Dateien erfolgreich gefunden werden sollen.

[Bearbeiten]


Aktuelle Daten

Derzeit besitzt das Gnutella-Netzwerk durchschnittlich etwa 1.200.000 (Stand: 03/2005) aktive Benutzer (der plötzliche Anstieg dieser Zahlen über die 400.000 vom 8/2004 rührt von der Verbesserung der Netzwerkevalutation her). Es zählt daher zu den großen Netzwerken. Eine aktuelle Statistik findet sich hier: [DLMURL]http://www.limewire.com/english/content/netsize.shtml[/DLMURL]

[Bearbeiten]


Weblinks


  • Gnutella Tutorial als Wikibook
  • [DLMURL="http://groups.yahoo.com/group/the_gdf"]Gnutella Developer Forum[/DLMURL] (Gnutella Tutorial als Wikibook)
  • Dokumentation des Gnutella-Protokolls
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Oben