Peer-to-Peer

Essentielle Eigenschaft von Peer-to-Peer-Infrastruktur ist die dezentrale Vernetzung. Dezentral bedeutet, dass auf keine zentrale Kontroll-, Daten- oder Dienstinstanz in Form eines Servers zurückgegriffen wird. Stattdessen stellen alle beteiligten Endsysteme Ressourcen und Dienste zur Verfügung, können diese untereinander teilen und gemeinsam nutzen. Die Kommunikation findet also direkt von Endsystem zu Endsystem statt, ohne den Umweg über einen Server einzuschlagen. Die Vertiefung führt in unterschiedliche Architekturen ein und schildert typische Anwendungen.

Durch das Fehlen verwaltender Server muss sich ein Peer-to-Peer-Netz selbst organisieren. Diese Selbstorganisation stellt die größte Herausforderung heutiger Peer-to-Peer-Systeme dar. Dazu gehören u. a. das Verwalten eigener Adressierungsstrukturen und Wegewahlverfahren (z. B. für die Suche beim File Sharing). Je nach allgemeiner Organisationsform werden Peer-to-Peer-Systeme in jeweils zwei Klassen unterteilt: unstrukturierte und strukturierte sowie reine und hybride Systeme.

Grad der Strukturierung

Diese Unterteilung bezieht sich auf die Art der dezentralen Selbstorganisation. Die Kernfrage dabei lautet: Wie müssen Daten und Endsysteme verwaltet werden, um eine effiziente Suche innerhalb des Peer-to-Peer-Netzes zu ermöglichen?

Beim unstrukturierten Ansatz speichern die teilnehmenden Endsysteme keinerlei Informationen über die Wegewahl zu den das gesuchte Datum besitzenden Zielsystemen. Das bedeutet, dass außer dem Zielsystem kein Endsystem Informationen darüber besitzt, wo das gesuchte Datum zu finden ist. Daher beruht die Suche in unstrukturierten Peer-to-Peer-Systemen meist auf einer so genannten Netzflutung, bei welcher die Suchanfrage an alle beteiligten Systeme (weiter-)geleitet wird. Der Suchaufwand und die dadurch anfallende Netzbelastung sind dementsprechend hoch und steigen zudem mit zunehmender Anzahl teilnehmender Endsysteme.

Beim strukturierten Ansatz dagegen besitzen die Endsysteme Informationen über die Wegewahl und können dadurch eine effiziente Weiterleitung der Suchanfrage zum Zielsystem ermöglichen. Die hierbei zum Einsatz kommende Datenstruktur ist die verteilte Hashtabelle. Hierbei ist jedes Endsystem für bestimmte Daten zuständig, stellt also Informationen bereit, wo diese Daten zu finden sind. So wird eine weitaus effizientere Suche ermöglicht, da weniger Weiterleitungen der Suchanfrage stattfinden.

Grad der Dezentralität

Reines P2P-Netz mit gleichberechtigten Teilnehmern
Reines P2P-Netz mit gleichberechtigten Teilnehmern

Die Unterteilung anhand des Grades der Dezentralisierung richtet sich danach, ob es innerhalb des Netzwerks auch zentrale Elemente gibt. Reine Peer-to-Peer-Systeme sind vollständig dezentral organisiert, verwalten folglich sowohl Inhalte als auch Wegewahl-Informationen ausschließlich mit Hilfe der Ressourcen der beteiligten Endsysteme. Hybride Peer-to-Peer-Systeme dagegen greifen auf den Einsatz von Servern zur Koordination des Netzes zurück.

Reines P2P-Netz mit gleichberechtigten Teilnehmern
Reines P2P-Netz mit gleichberechtigten Teilnehmern

Die Server verwalten dabei sowohl die Adressen als auch die Dateilisten der Endsysteme. Tritt ein neues Endsystem dem Peer-to-Peer-Netz bei, so schickt es zuallererst seine Kennung mitsamt Dateiliste an den Server. Der Server kann auf eine an ihn gesendete Suchanfrage daher sofort mit einer Liste entsprechender Zielsystem-Adressen antworten. Der eigentliche Datentransfer erfolgt dann wieder direkt von Endsystem zu Endsystem.

Hybrides P2P-Netz mit zentralem Verzeichnisserver
Hybrides P2P-Netz mit zentralem Verzeichnisserver

Andere Formen hybrider Peer-to-Peer-Systeme machen vom Prinzip so genannter Supernodes Gebrauch. Supernodes sind teilnehmende Endsysteme mit besonders hoher Bandbreite und guter Erreichbarkeit. Diese Supernodes bilden eine Art Rückgrat des Peer-to-Peer-Netzes. Sie nehmen sämtliche Suchanfragen entgegen und leiten diese untereinander weiter.

Anwendungen

  • File Sharing: Das wohl nicht zuletzt wegen der häufigen Urheberrechtskonflikte bekannteste Anwendungsfeld, das sich eine Peer-to-Peer-Infrastruktur zunutze macht, ist das File Sharing - das Austauschen (d. h. Kopieren) von Dateien zwischen involvierten Endsystemen. Um an einer solchen Dateitauschbörse teilzunehmen, wird ein entsprechender Software-Client auf dem eigenen Rechner installiert. Dateitauschbörsen, die auf einer reinen Peer-to-Peer-Infrastruktur basieren, bieten eine höhere Anonymität als solche, die sich einer hybriden Infrastruktur bedienen und dabei auf einen zentralen Verzeichnisserver zurückgreifen. Letztere sind jedoch meist einfacher zu betreiben. Je nach Art der Dateitauschbörse verschafft sich der Software-Client eine initiale Liste teilnehmender Endsysteme bzw. verbindet sich direkt mit einem zentralen Verzeichnisserver.
  • Distributed Computing: Beim Distributed Computing können einzelne Teilaufgaben einer komplexen Gesamtaufgabe auf andere Endsysteme eines Netzwerks verlagert werden, deren Kapazität nicht ausgelastet ist. Zumeist wird dabei auf bereits existierende Peer-to-Peer-Infrastrukturen aufgesetzt. Die Endsysteme müssen lediglich einen zusätzlichen Software-Client installieren, der die anstehenden Teilaufgaben verwaltet und synchronisiert. Projekte sind z. B. die Berechnung von Primzahlen oder auch die Analyse großer Datenmengen aus Simulationen (z. B. ViroLab, evolution@home). Ein Beispiel einer Anwendung aus dem Bereich Distributed Information Storage ist OceanStore, ein verteiltes Dateisystem zur Datenspeicherung und -archivierung.
  • Datenkonferenzen: Auch Anwendungen aus den Bereichen Instant Messaging und Internettelefonie (VoIP) nutzen Peer-to-Peer-Prinzipien aus. Die weit verbreitete VoIP-Software Skype (siehe Steckbrief) beispielsweise greift nicht auf einen zentralen Server zurück, um Informationen über momentan angemeldete Benutzer zu verwalten, sondern bedient sich dem Konzept der Supernodes. Ein Beispiel einer endsystembasierten Kollaborationsplattform ist Croquet. Es bietet neben synchroner Kommunikation daher auch die Möglichkeit zum Dateiaustausch und Distributed Computing. Auch das für die e-teaching.org- Webcasts verwendete System Adobe Connect basiert auf dem Peer-to-Peer-Prinzip.

Vorteile

Der wohl größte Vorteil einer Peer-to-Peer-Infrastruktur ist deren hervorragende Skalierbarkeit, denn es gilt: Je mehr Endsysteme am Peer-to-Peer-Netz teilnehmen, desto größer sind die dem Netz zur Verfügung stehenden Gesamtressourcen. Denn jedes Endsystem stellt zusätzliche Ressourcen in Form von bisher ungenutzter Rechenleistung, freiem Speicherplatz oder verfügbarer Bandbreite bereit. Durch die zumeist redundante Verfügbarkeit der Daten ist ein Peer-to-Peer-Netz relativ robust, d. h. kaum anfällig für den Ausfall einiger Endsysteme. Aus demselben Grund sind Peer-to-Peer-Netze auch sehr resistent gegen jegliche Form der Zensur, d. h. die Speicherung und Verbreitung der Daten kann nicht unterbunden werden. Auch mit den Teilnehmer-Identifizierungsproblemen, die z. B. dynamische IP-Adressen und die zunehmende Verbreitung von WLAN-Hotspots und mobilen Endgeräten mit sich bringen, haben Peer-to-Peer-Netze nicht zu kämpfen, da sie ohnehin von einer unzuverlässigen Infrastruktur ausgehen. Die bereits weiter oben erwähnten Anwendungsgebiete Distributed Computing und Information Storage machen eine dynamische Aufteilung von Aufgaben zwischen den verschiedenen Endsystemen möglich und können die Arbeit erbringen, für die ansonsten ein oder mehrere Hochleistungsrechner benötigt worden wären – ein wirtschaftlicher Vorteil.

Nachteile

Zu den Nachteilen zählt die vor allem in reinen, vollständig dezentralen Peer-to-Peer-Netzen aufwändige Selbstorganisation, d. h. die Verwaltung teilnehmender Endsysteme (Beitritt, Austritt) und die Zuordnung von Daten, Aufgaben und Ressourcen. Dass bei einer Software-Aktualisierung alle beteiligten Endsysteme reagieren müssen, ist ein weiterer Nachteil gegenüber der Client-Server-Architektur, bei der dies einmalig und an zentraler Stelle erfolgen kann. Doch vor allem auf rechtlicher Ebene sind die heutigen Hauptprobleme der Peer-to-Peer-Netze anzusiedeln. Die zunehmende Anonymisierung der Nutzer und die Verschlüsselung der Dateien machen zum einen eine Strafverfolgung beim Verteilen urheberrechtlich geschützten Materials und zum anderen die Unterbindung des Verbreitens gesetzeswidriger Inhalte beinahe unmöglich – die Zensurresistenz wird hier also zum Nachteil.

Weiterführende Informationen

Letzte Änderung: 23.07.2015