Virtuelle Präsenz Peer to Peer Netze Bertolt Schmidt
Übersicht Einleitung Begriffserklärung; Unterschied zu Client/Server Benötigte Infrastruktur Unterscheidung Pure Hybrid P-2-P Klassifizierung Probleme bei P-2-P Netzen Einloggen ins Netz Suchen im Netz weitere Probleme Zusammenfassung Einsatzszenarien Vor- und Nachteile von P-2-P
Client/Server Modell Server bietet Dienste an Client nutzt Dienste von Server(n) Client bietet selbst keine Dienste an Client nutzt Server Ergibt eine Stern Struktur
Peer to Peer Modell Jeder Knoten im Netz ist gleichberechtigt Jeder Knoten ist quasi Client und Server zugleich Knoten bieten Dienste an und nutzen Dienste anderer Knoten Knoten Ergibt ein vermaschtes Netz
Benötigte Infrastruktur Die Knoten müssen untereinander kommunizieren können Beispiele: Ein Ethernet Segment Prinzipiell das Internet: historisch: ARPANET war als P-2-P Netz ausgelegt heute: teilweise eingeschränkt durch Firewalls, Network Adress Translation NAT, Proxy
Pure Hybrid P-2-P Hybrid: Es dürfen zentrale Knoten existieren Superknoten Pure: Es dürfen keine zentralen Knoten existieren
Klassifizierung Beispiel: e-mail Client Mail-Programm und Mail-Server (Client/Server Modell) Mail Server untereinander (P-2-P Modell) Server P-2-P Client
Einloggen ins Netz Problem: Bei einem P-2-P Netz hat man keine festen Einwahlknoten Bei Hybrid P-2-P Netzen ist evtl. der Superknoten /Server unter einer festen Adresse erreichbar Bei Pure P-2-P Netzen braucht man eine Liste von Knoten, die man beim Einloggen anpingt um zu prüfen, ob die Knoten online sind Wenn 1 Verbindung aufgebaut wurde, kann über das Netz die Adressen von anderen Knoten übermittelt werden
Partitionen Es können voneinander getrennte Partitionen entstehen des Netzes entstehen
Suchen im Netz Problem: Wie findet man Informationen (Dateien) Die eingeloggten Knoten ändern sich ständig Das Angebot ändert sich ständig Es sollen keine toten Links auftreten Das Netz muß sich selbst durchsuchen
Suchen (Beispiel Gnutella) Gnutella ist (ursprünglich) ein Pure P-2-P Netz Bei einer Suchanfrage wird ein Anfragepaket in das Netz geflutet : Anfrage wird jeweils allen Nachbarknoten geschickt Knoten merken sich die Anfrage und verwerfen Duplikate Anfragepakete enthalten eine TTL (Time to Live) die in jedem Knoten dekrementiert wird; wenn Zähler auf 0 wird Paket verworfen; damit ergibt sich ein bestimmter Horizont
Suchen (Beispiel Gnutella) Bekommt ein Knoten eine Anfrage, die er bedienen kann: Knoten schickt evtl. Anfrage weiter (TTL) Knoten schickt Antwortpaket zurück zu dem Knoten, von dem er das Paket erhalten hat (Paket wird den gleichen Weg zurückgeschickt, wie Anfragepaket gekommen ist) Im Antwortpaket steht die Adresse des Knoten Der Datenaustausch findet dann vom anfragenden Knoten direkt mit dem Zielknoten mittels HTTP statt
weitere Probleme Leistung/Performance: Kann sehr stark variieren (je nach Momentananzahl/-leistung der Knoten) Protokoll-overhead : z.b. bei einer Gnutella Suchanfrage müssen sehr viele Pakete verschickt werden
Einsatzszenarien Filesharing (Gnutella, KaZaA,...) Instant Messaging (ICQ, Jabber,...) Suchmaschinen (opencola,...) Verteiltes Rechnen (SETI@home,...) Collaboration (Groove Networks,...) Netzwerkspiele (bei lokalen Netzen)
Vor- und Nachteile von P-2-P Vorteile: Geringer Administrieraufwand Hohe Skalierbarkeit Ausnützung der Resourcen der Knoten (Rechenleistung, Speicherkapazität,...) Ausnützung der Bandbreite der Knoten Hohe Verfügbarkeit Hohe Redundanz Anonymität Hohe Ausfallsicherheit des Netzes
Vor- und Nachteile von P-2-P Nachteile: Keine konstante Leistung Teilweise großer Overhead (Suche,...) Manche Dienste (Dateien,...) sind nicht immer verfügbar In Filesharing Netzen wird viel urheberrechtlich geschütztes Material getauscht
Fragen?
Definition von P2P Networking (C. Shirkey): Peer-to-peer (P2P) is a class of applications that takes advantage of resources - storage, cycles, human presence - available at the edges of the Internet. Because accessing these decentralized resources means operating in an environment of unstable connectivity and unpredictable IP addresses, peer to peer nodes must operate outside the DNS and have significant or total autonomy from central servers