|
Beim Thema „P2P“ ist grundsätzlich anzumerken, daß bei „serverlosen“ Systemen in der Regel das Nutzerprogramm (client) die Aufgaben eines Servers übernimmt. Der Server ist quasi das Endgerät selbst wo auch die entsprechenden Einstellungen gemacht werden müssen - es gibt lediglich keine dritte Stelle, die diese Aufgabe als Dienstleister („Server“) übernimmt.
Eigentlich ist P2P sogar eine falsche Bezeichnung, denn auch ohne den Server/Relay, der Teil der Kommunikationsplattform ist, gibt es immer noch eine große Anzahl von Servern in der P2P-Kommunikation:
… die für die Verbindung verwendet werden. Und alle diese zwischengeschalteten Knoten sind in der Lage, den gesamten Datenverkehr aufzuzeichnen und für eine spätere Entschlüsselung auf unbestimmte Zeit zu speichern. Relais, die Teil der Kommunikationsplattform sind, fügen nur ein paar zusätzliche Knoten zu einer bereits recht großen Anzahl von Vermittlungsknoten hinzu und verbessern im Gegenzug sowohl die Privatsphäre als auch den Komfort.
„P2P“ ist quasi ein Marketingtrick, der den Menschen vorgaukelt, dass ihre Geräte auf magische Weise direkt miteinander verbunden sind. Für die meisten Nutzer ist Technologie Magie, die sie nicht verstehen können, also vertrauen sie auf Expertenmeinungen, und viele Experten ziehen es vor, falsche Ideen zu verkaufen, einfach weil sie leichter zu verkaufen sind oder weil es ihren Arbeitgebern nützt: “P2P gut, Server schlecht” oder “Non-Profit gut, Unternehmen schlecht” oder andere Ideen dieser Art, auch wenn sie schädlich und falsch sind, sind für die Öffentlichkeit attraktiv.
Selbst einige Experten glauben leider wirklich an die Richtigkeit von “P2P”.
Quelle (etwas umformuliert): reddit.com (extern)
In einem reinen Peer-to-Peer-Netz sind alle Computer gleichberechtigt und können sowohl Dienste in Anspruch nehmen, als auch zur Verfügung stellen.
Jami (extern) formuliert das beispielsweise so:
Jami works as a server and gets new ports for each connections (randomly binded). These are the ranges that can be used for each component …
This documentation states that Jami works as a server. So, it is a distributed system where peers are both clients and servers. Servers exist.
What is pure P2P? The very name suggests that nothing issues accept() nor listen(). However, that is unlikely. Most implementations I’ve seen of P2P have nodes which behave as clients (they connect to things) and servers (they accept() and listen() for connections). The definitions are intentionally ambiguous. A peer is defined as something that cannot be connected to while a server is something that things connect to. In P2P networks, this is most likely the behavior regardless of the model (coordinated or distributed or whatever (perhaps magic cosmic dust)). P2P: clients accept() / listen() and / or connect(). Those are hybrid peers. Some are pure peers because they only connect(). As this is not my investigation, I would inquire about the specifics of the projects you list.
Above is an implementation which will be released soon demonstrating a model where two clients connect to each other without issuing accept() and listen(). They both bind to local addresses and repeatedly issue connect() every millisecond.
P2P ist nicht mit Anonymität gleichzusetzen!