Peer-to-Peer-Netzwerke: Algorithmen und Methoden
seinen Aufstieg and Fall diesem Spannungsfeld. Shawn „ 1Vapster" Fanning (Jahrgang 1980) brachte im Juni 1999 eine Beta-Version seines mittlerweile legendaren Peer-to-Peer-Netzwerks Napster heraus. Die ursprfingliche Aufgabe dieser Software war die Bereitstellung eines File-Sharing-Systems, mit dem man Dateien auf Rechnern, die sich an diesem System anmelden, lokalisieren and dann direkt von diesen Rechnern herunterladen kann. Erst durch das Engagement eines Freundes von Shawn Fanning wurde aus dem File-Sharing-System ein Musik-Portal, das hauptsachlich zur Verbreitung von Musikdateien diente. Dadurch erhielt Napster schon im Herbst 1999 den Titel des Download des Jahres.
Wegen der Missachtung von Urheberschutzrechten der Musikautoren klagten einige Musikverlage gegen Fanning and drohten mit der Stilllegung des Systems. Tatsachlich geschah einige Zeit nichts, and durch die durch den Rechtsfall gesteigerte Publizitat nahm die Anzahl der Teilnehmer sogar zu. In einer Uberraschenden Wendung ging Fanning Ende 2000 einen Kooperationsvertrag mit Bertelsmann eCommerce ein. Nach einigen weiteren juristischen Wirren wandelte er sein bislang kostenloses System schlieBlich in eine kommerzielle File-Sharing-Plattform um.
Bevor Napster vom Netz ging, zeigte sich schon, dass die zentrale Struktur von Napster nicht geeignet ist die eingehenden Anfragen zu bearbeiten. Aber die Tatsache, dass Millionen von Benutzern von einem Rechner abhangig waren, der dann (aus juristischen Grunden) tatsachlich ausfiel, motivierte den Gegenentwurf eines vollig dezentralen Netzwerks.
Gnutella [7] ist das erste Peer-to-Peer-Netzwerk, das diesen Namen auch ver- dient. Wahrend in Napster ein zentraler Server die Indexdateien der Daten verwaltet hat, haben die Entwickler von Gnutella these Aufgabe auf alle teilnehmenden Rechner verteilt. Jeder Rechner hat sowohl Daten als auch die Indexinformationen. Die Verbindungsstruktur, aber auch die Verteilung der Daten oder Indexinformationen sind vollkommen unorganisiert. Gnutella war seit seinem Start im Jahr 2000 praktisch unangreifbar. Denn solange nur ein Rechner aktiv teilnimmt, existiert das Netzwerk. Wird ein Rechner herausgenommen, so betrifft dies nur die Daten and Informationen, die dieser Rechner zur Verfugung stellte. Alle Operationen wie Anmelden, Suche and Bereitstellung geschehen namlich ohne zentrale Koordination. Jeder Teilnehmer ist ersetzbar. Die Schattenseite ist das vollige Chaos in der Netzwerk- and Datenstruktur. Die Suche nach einem bestimmten Datum ist langwierig, ressourcen- aufwandig and unzuverlassig. Nur Daten, die haufig vorkommen, werden schnell gefunden. Viele Nutzer stort das wenig, da zumeist die Musikhits sehr gut and schnell verfugbar sind. So wuchs die Gnutella-Gemeinde ebenso schnell wie zuvor diejenige von Napster. Dieses Massenphanomen, das zudem auch noch wahrend des InternetBooms stattfand, faszinierte viele Informatiker. Das hangt auch damit zusammen, dass ein so einfaches Protokoll (siehe Seite 57) eine so komplexe Netzwerkstruktur aufbaut (siehe Seite 174).
So starteten viele ihr eigenes verbessertes Peer-to-Peer-Netzwerk and im Jahr 2000 kam das ebenfalls populare Netzwerk eDonkey heraus. Im Jahr 2001 folgte FastTrack, das vor allem durch die Client-Software Morpheus, Kazaa and Grokster bekannt wurde. Ebenfalls 2001 wurde eine veranderte Version von Gnutella (hier Gnutella-2 genannt) veroffentlicht, sowie die Open Source Peer-to-Peer-Netzwerk- Plattform JXTA von SUN Microsystems, mit der man sehr einfach funktionstuchtige, praxistaugliche Peer-to-Peer-Netzwerke entwickeln kann. All these Netzwerke ver- besserten die ursprunglichen Probleme von Gnutella and spielen heute noch eine groBe Rolle. Oftmals verzichten sie aber auf den Einsatz elementarer algorithmischer Techniken, die Informatiker schon zu Beginn ihres Studiums kennenlernen.
Effiziente Datenstrukturen werden, seitdem es Computer gibt, zur Beschleuni- gung der Suche nach Daten verwendet. Diese Datenstrukturen konnen aber nicht ein fach auf these neuartigen Netzwerke angewendet werden. Zwar gab es schon Langer parallele Rechennetzwerke and effiziente Algorithmen fur Parallelrechner. Peer-toPeer-Netzwerke stellten aber eine gewisse Herausforderung dar, weil kein Rechner eine hervorgehobene Rolle spielen darf. AuBerdem erscheinen and verschwinden die Netzwerkteilnehmer standig, so dass sich ein Peer-to-Peer-Netzwerk in standiger Unruhe befindet.
Die erste effiziente Datenstruktur fur ein
Weitere Kostenlose Bücher