Peer-to-Peer Netzwerke erklärt
Startseite
Artikel
Peer-to-Peer Netzwerke erklärt

Peer-to-Peer Netzwerke erklärt

Mittel
Veröffentlicht Sep 30, 2019Aktualisiert Nov 16, 2022
7m

Was ist Peer-to-Peer (P2P)?

In der Informatik besteht ein Peer-to-Peer (P2P)-Netzwerk aus einer Gruppe von Geräten, die gemeinsam Dateien speichern und nutzen. Jeder Teilnehmer (Node) agiert als einzelner Peer. Normalerweise haben alle Nodes die gleiche Leistung und führen die gleichen Aufgaben aus.

In der Finanztechnologie bezieht sich der Begriff Peer-to-Peer in der Regel auf den Austausch von Kryptowährungen oder digitalen Assets über ein verteiltes Netzwerk. Eine P2P-Plattform ermöglicht es Käufern und Verkäufern, Geschäfte ohne Zwischenhändler durchzuführen. In einigen Fällen können Websites auch eine P2P-Umgebung bereitstellen, die Kreditgeber und Kreditnehmer miteinander verbindet.

Die P2P-Architektur kann für verschiedene Anwendungsfälle geeignet sein, aber sie wurde besonders in den 90er Jahren beliebt, als die ersten File-Sharing-Programme entwickelt wurden. Heute sind P2P-Netzwerke der Kern der meisten Kryptowährungen und machen einen großen Teil der Blockchain-Industrie aus. Sie werden jedoch auch in anderen verteilten Computeranwendungen eingesetzt, einschließlich Web-Suchmaschinen, Streaming-Plattformen, Online-Marktplätzen und dem Web-Protokoll des InterPlanetary File System (IPFS).


Wie funktioniert P2P?

Im Wesentlichen wird ein P2P-System von einem verteilten Netzwerk von Benutzern verwaltet. Normalerweise haben sie keinen zentralen Administrator oder Server, da jeder Node eine Kopie der Dateien enthält - sowohl als Client als auch als Server für andere Nodes. Somit kann jeder Node Dateien von anderen Nodes herunterladen oder Dateien zu ihnen hochladen. Dies unterscheidet P2P-Netzwerke von den traditionelleren Client-Server-Systemen, bei denen Client-Geräte Dateien von einem zentralen Server herunterladen.

In P2P-Netzwerken tauschen die angeschlossenen Geräte untereinander Dateien aus, die auf ihren Festplatten gespeichert sind. Mit Softwareanwendungen, die den Austausch von Daten vermitteln, können Benutzer auf anderen Geräten im Netzwerk nach Dateien suchen und diese herunterladen. Sobald ein Benutzer eine bestimmte Datei heruntergeladen hat, kann er ebenfalls als Quelle für diese Datei dienen.

Anders ausgedrückt, wenn ein Node als Client fungiert, lädt er Dateien von anderen Nodes im Netzwerk herunter. Aber wenn sie als Server fungieren, sind sie die Quelle, von der andere Nodes Dateien herunterladen können. In der Praxis können jedoch beide Funktionen gleichzeitig ausgeführt werden (z.B. Download von Datei A und Upload von Datei B).

Da jeder Node Dateien speichert, sendet und empfängt, sind P2P-Netzwerke in der Regel schneller und effizienter, da ihre Benutzerzahl wächst. Außerdem macht ihre verteilte Architektur P2P-Systeme sehr resistent gegen Cyberangriffe. Im Gegensatz zu herkömmlichen Modellen haben P2P-Netzwerke keinen Single Point of Failure.

Wir können Peer-to-Peer-Systeme nach ihrer Architektur kategorisieren. Die drei Haupttypen werden als unstrukturierte, strukturierte und hybride P2P-Netzwerke bezeichnet.


Unstrukturierte P2P-Netzwerke

Unstrukturierte P2P-Netzwerke stellen keine spezifische Organisation der Nodes dar. Die Teilnehmer kommunizieren zufällig miteinander. Diese Systeme gelten als robust gegen hohe Churn-Aktivität (d.h. mehrere Nodes, die häufig dem Netzwerk beitreten und es verlassen).

Obwohl sie einfacher einzurichten sind, können unstrukturierte P2P-Netzwerke eine höhere CPU- und Speicherauslastung erfordern, da Suchanfragen an die größtmögliche Anzahl von Peers gesendet werden. Dies führt dazu, dass das Netzwerk mit Anfragen überflutet wird, insbesondere wenn eine kleine Anzahl von Nodes die gewünschten Daten anbietet.


Strukturierte P2P-Netzwerke

Im Gegensatz dazu stellen strukturierte P2P-Netzwerke eine organisierte Architektur dar, die es den Nodes erlaubt, effizient nach Dateien zu suchen, auch wenn der Inhalt nicht weit verbreitet ist. In den meisten Fällen wird dies durch die Verwendung von Hash-Funktionen erreicht, die das Durchsuchen von Datenbanken erleichtern.

Obwohl strukturierte Netzwerke effizienter sein können, neigen sie dazu, einen höheren Grad an Zentralisierung zu bieten, und erfordern in der Regel höhere Einrichtungs- und Wartungskosten. Darüber hinaus sind strukturierte Netzwerke weniger robust, wenn es um hohe Fluktuationsraten geht.


Hybride P2P-Netzwerke

Hybride P2P-Netzwerke kombinieren das konventionelle Client-Server-Modell mit einigen Aspekten der Peer-to-Peer-Architektur. So kann beispielsweise ein zentraler Server verwendet werden, der die Verbindung zwischen Peers erleichtert.

Im Vergleich zu den beiden anderen Typen zeigen Hybridmodelle tendenziell eine verbesserte Gesamtleistung. Sie kombinieren in der Regel einige der Hauptvorteile jedes Ansatzes und erreichen gleichzeitig erhebliche Effizienzgewinne und Dezentralisierung.


Verteilt vs. dezentralisiert

Obwohl die P2P-Architektur grundsätzlich verteilt ist, ist es wichtig zu beachten, dass es unterschiedliche Dezentralisierungsgrade gibt. Daher sind nicht alle P2P-Netzwerke dezentralisiert. 

Tatsächlich verlassen sich viele Systeme auf eine zentrale Instanz, um die Netzwerkaktivität zu steuern, wodurch sie in gewissem Maße zentralisiert sind. Einige P2P-Dateisysteme ermöglichen es beispielsweise, dass Benutzer Dateien von anderen Benutzern suchen und herunterladen können, aber sie können nicht an anderen Prozessen teilnehmen, wie z. B. der Verwaltung von Suchanfragen.

Darüber hinaus können auch kleine Netzwerke, die von einer begrenzten Nutzerbasis mit gemeinsamen Zielen gesteuert werden, trotz fehlender zentralisierter Netzwerkinfrastruktur einen höheren Grad an Zentralisierung aufweisen.


Die Rolle von P2P in Blockchains

In den frühen Phasen von Bitcoin definierte  Satoshi Nakamoto es als ein “Peer-to-Peer Electronic Cash System.” Bitcoin wurde als digitale Form des Geldes geschaffen. Es kann von einem Benutzer zum anderen über ein P2P-Netzwerk übertragen werden, das ein verteiltes Ledger namens Blockchain verwaltet.
In diesem Zusammenhang ist die der Blockchain-Technologie zugrundeliegende P2P-Architektur der Grund dafür, dass Bitcoin und andere Kryptowährungen weltweit übertragen werden können, ohne dass Zwischenhändler oder ein zentraler Server benötigt werden. Außerdem kann jeder einen Bitcoin-Node einrichten, wenn er am Prozess der Verifizierung und Validierung von Blocks teilnehmen möchte.

Es gibt also keine Banken, die Transaktionen im Bitcoin-Netzwerk durchführen oder aufzeichnen. Stattdessen fungiert die Blockchain als digitales Ledger, das alle Aktivitäten öffentlich aufzeichnet. Grundsätzlich hält jeder Node eine Kopie der Blockchain bereit und vergleicht sie mit anderen Nodes, um sicherzustellen, dass die Daten korrekt sind. Das Netzwerk lehnt jegliche böswillige Aktivität oder Ungenauigkeit sofort ab.

Im Kontext von Blockchains für Kryptowährungen können Nodes eine Vielzahl von verschiedenen Rollen übernehmen. Vollständige Nodes sind beispielsweise diejenigen, die dem Netzwerk Sicherheit bieten, indem sie Transaktionen anhand der Konsensregeln des Systems verifizieren.
Jeder vollständige Node verwaltet eine vollständige, aktualisierte Kopie der Blockchain und kann dadurch an der gemeinsamen Arbeit teilnehmen, den wahren Zustand des verteilten Ledgers zu überprüfen. Es ist jedoch anzumerken, dass nicht alle Nodes, die eine vollständige Überprüfung durchführen, Miner sind.


Vorteile

Die Peer-to-Peer-Architektur der Blockchains bietet viele Vorteile. Zu den wichtigsten gehört die Tatsache, dass P2P-Netzwerke mehr Sicherheit bieten als herkömmliche Client-Server-Arrangements. Die Verteilung der Blockchains über eine große Anzahl von Nodes macht sie praktisch immun gegen Denial-of-Service (DoS) Angriffe, die zahlreiche Systeme plagen.
Da die Mehrheit der Nodes einen Konsens herstellen muss, bevor Daten zu einer Blockchain hinzugefügt werden, ist es für einen Angreifer fast unmöglich, die Daten zu ändern. Dies gilt insbesondere für große Netzwerke wie das von Bitcoin. Kleinere Blockchains sind anfälliger für Angriffe, da eine Person oder Gruppe schließlich die Kontrolle über die Mehrheit der Nodes erlangen könnte (dies ist bekannt als 51 Prozent Angriff).
Infolgedessen verleiht das verteilte Peer-to-Peer-Netzwerk, gepaart mit einer Mehrheitskonsensanforderung, den Blockchains ein relativ hohes Maß an Resistenz gegen böswillige Aktivitäten. Das P2P-Modell ist einer der Gründe, warum Bitcoin (und andere Blockchains) die sogenannte Byzantinische Fehlertoleranz erreichen konnten.

Abgesehen von der Sicherheit macht die Verwendung der P2P-Architektur die Blockchains von Kryptowährungen auch resistent gegen Zensur durch Zentralbehörden. Im Gegensatz zu herkömmlichen Bankkonten können Krypto-Wallets nicht von Regierungen eingefroren oder beschlagnahmt werden. Diese Resistenz erstreckt sich auch auf die Zensuranstrengungen privater Zahlungsverarbeitungs- und Content-Plattformen. Einige Inhaltsersteller und Online-Händler haben Zahlungen mit Kryptowährungen eingeführt, um zu vermeiden, dass ihre Zahlungen von Dritten blockiert werden.


Einschränkungen

Trotz ihrer vielen Vorteile hat der Einsatz von P2P-Netzwerken auf Blockchains auch gewisse Einschränkungen.

Da verteilte Ledger auf jedem einzelnen Node statt auf einem zentralen Server aktualisiert werden müssen, erfordert das Hinzufügen von Transaktionen zu einer Blockchain ein enormes Maß an Rechenleistung. Dies bietet zwar mehr Sicherheit, reduziert aber die Effizienz erheblich und ist eines der Haupthindernisse in Bezug auf Skalierbarkeit und breite Akzeptanz. Dennoch suchen Kryptographen und Blockchain-Entwickler nach Alternativen, die als Skalierungslösungen eingesetzt werden können. Prominente Beispiele sind das Lightning Network, Ethereum Plasma, und das Mimblewimble Protokoll.
Eine weitere mögliche Einschränkung betrifft Angriffe, die während Hard Fork Events auftreten können. Da die meisten Blockchains dezentral und Open Source sind, können Gruppen von Nodes den Code kopieren und modifizieren und sich von der Main Chain trennen, um ein neues, paralleles Netzwerk zu bilden. Hard Forks sind völlig normal und keine Bedrohung für sich allein. Aber wenn bestimmte Sicherheitsmethoden nicht richtig angewendet werden, können beide Chains anfällig werden für Replay Attacks.

Darüber hinaus macht die verteilte Natur von P2P-Netzwerken die Kontrolle und Regulierung relativ schwierig, nicht nur in der Blockchain-Nische. Mehrere P2P-Anwendungen und Unternehmen wurden in illegale Aktivitäten und Urheberrechtsverletzungen verwickelt.


Schlussworte

Peer-to-Peer-Architektur kann auf vielfältige Weise entwickelt und genutzt werden, und sie ist das Herzstück der Blockchains, die Kryptowährungen ermöglichen. Durch die Verteilung von Transaktions-Ledgern auf große Netzwerke von Nodes bietet die P2P-Architektur Sicherheit, Dezentralisierung und Schutz vor Zensur.

Zusätzlich zu ihrer Nützlichkeit in der Blockchain-Technologie können P2P-Systeme auch andere verteilte Computeranwendungen unterstützen, die von File-Sharing-Netzen bis hin zu Energiehandelsplattformen reichen.