Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester 2004 23.04.2004 1. Vorlesung.

Ähnliche Präsentationen


Präsentation zum Thema: "1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester 2004 23.04.2004 1. Vorlesung."—  Präsentation transkript:

1 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester Vorlesung Christian Schindelhauer

2 Algorithmen für Peer-to-Peer- Netzwerke 2 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Kapitel I

3 Algorithmen für Peer-to-Peer- Netzwerke 3 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Inhalte P2P-Netzwerke der 1. Generation: –Napster, Gnutella, Kazaa. Moderne P2P-Netzwerke –CAN, CHORD, Pastry, Tapestry, etc. Epidemische Informationsausbreitung und verteilte Datenaggregation Sicherheit von P2P-Netzwerken Routing in Overlay-Netzwerken Randomisierte Algorithmen –Grundlagen der Wahrscheinlichkeitstheorie Verteilte Algorithmen –Graphtheorie

4 Algorithmen für Peer-to-Peer- Netzwerke 4 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Termine Vorlesung: –jeden Freitag 9-11 (ct), Raum F0.530 –Ausnahme: Vorlesung vom Fr wird auf Übungstermin am von verschoben (Raum F0.530) Übung –Gruppe A: Mo (Christian Schindelhauer) –Gruppe B: Mo (Peter Mahlmann) Außer Mo Gruppe A: Fr (F0.530) Gruppe B: Fr (F0.530) Anmeldung zum Vorrechnen –spätestens am Freitag vor der Übung –Ausnahme 1. Übung und Übung am

5 Algorithmen für Peer-to-Peer- Netzwerke 5 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Unterlagen Webseite der Veranstaltung –http://wwwcs.upb.de/cs/ag-madh/WWW/Teaching/2004SS/AlgoP2P/ –enthält alle vorlesungs- und übungsrelevanten Themen, insbesondere Vorlesungsfolien, Skript, Übungen Vorlesungsfolien –online zur Veranstaltung als Powerpoint und PDF-Dokument Skript –erscheint innerhalb einer Woche als PDF-Dokument –ist Grundlage der Prüfung Übungsaufgaben –erscheint online am Mittwoch auf der Web-Seite –sind Grundlage der Prüfung Prüfungsfragen –Mögliche Prüfungsfragen werden im Skript veröffentlicht Lösungen der Übungsaufgaben –werden per Peer-to-Peer-Netzwerk verteilt

6 Algorithmen für Peer-to-Peer- Netzwerke 6 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Prüfung Zusammensetzung –Schriftlicher Teil: Bearbeitung einer Übungsaufgabe innerhalb einer Stunde –Mündlicher Teil (im Anschluss) Vorstellung der Lösung und Fragen zur Vorlesung Ausnahmeregelung –Schriftlicher Teil entfällt, wenn Teilnehmer im Rahmen der Übung eine Aufgabe erfolgreich bearbeitet hat, d.h. –Testierung einer mustergültigen schriftlichen Lösung und –Präsentation im Rahmen der Übung Fragenkatalog –zur Prüfung im Skript Lösungen der Übungsaufgaben –werden vom Veranstalter nicht veröffentlicht

7 Algorithmen für Peer-to-Peer- Netzwerke 7 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Übung Zweck –Beantwortung von Fragen zur Vorlesung –Präsentation (und Testierung) studentischer Lösungen Aufgabenstellungen –hauptsächlich aus dem Gebiet der verteilten Algorithmen und Wahrscheinlichkeitstheorie Einteilung (über StudInfo{flex}) –Gruppe A: Christian Schindelhauer –Gruppe B: Peter Mahlmann –Gruppe C: Peter Mahlmann

8 Algorithmen für Peer-to-Peer- Netzwerke 8 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Kapitel II

9 Algorithmen für Peer-to-Peer- Netzwerke 9 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Definition Ein Peer-to-Peer-Netzwerk ist ein Kommunikationsnetzwerk zwischen Rechnern, in dem jeder Teilnehmer sowohl Client als auch Server- Aufgaben durchführt. Beobachtung –Das Internet ist (eigentlich auch) ein Peer-to-Peer-Netzwerk Andere Definition –von Peer-to-Peer-Working-Group In einem Peer-to-Peer-Netzwerk werden verteilte Rechenresourcen durch direkte Kommunikation gemeinsam genutzt. Was ist ein Peer-to-Peer-Netzwerk nicht? –Ein Peer-to-Peer-Netzwerk ist kein Client-Server-Netzwerk!

10 Algorithmen für Peer-to-Peer- Netzwerke 10 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Napster-Geschichte Shawn (Napster) Fanning –brachte Juni 1999 eine Beta-Version seines mittlerweile legendären Napster- Peer-to-peer-Netzwerks heraus –Ziel: File-sharing-System –Tatsächlich: Musik-Tauschbörse –Herbst 1999 war Napster Download des Jahres Urheberrechtsklage der Musik-Industrie im Juni 2000 Gegen Ende 2000 Kooperationsvertrag –zwischen Fanning mit Bertelsmann Ecommerce Seitdem ist Napster eine kommerzielle File-Sharing-Plattform

11 Algorithmen für Peer-to-Peer- Netzwerke 11 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Wie funktioniert Napster? Client-Server-Struktur Server unterhält – Index mit Meta-Daten Dateiname, Datum, etc –Tabelle der Verbindungen der teilnehmenden Clients –Tabelle aller Dateien der teilnehmenden Clients Query –Client fragt nach Dateinamen –Server sucht nach passenden Teilnehmern –Server antwortet, wer die Datei besitzt –Anfrage-Client lädt Datei von datei- besitzenden Client herunter

12 Algorithmen für Peer-to-Peer- Netzwerke 12 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Wie gut ist Napster? Vorteile –Napster ist einfach –Dateien werden schnell und effizient gefunden Nachteile –Zentrale Struktur erleichtert Zensur, feindliche Eingriffe und technisches Pannen wie z.B. Denial-of-Service-Angriff –Napster skaliert nicht d.h. mit zunehmender Teilnehmerzahl verschlechtert sich die Performanz Speicher auf dem Server endlich Resumee –Napster keine akzeptable Peer-to-Peer-Netzwerklösung –Bis auf den Download-Aspekt ist Napster im eigentlichen Sinne kein P2P- Netzwerk

13 Algorithmen für Peer-to-Peer- Netzwerke 13 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Gnutella - Geschichte Gnutella –wurde im März 2000 herausgegeben von Justin Frankel und Tom Pepper von Nullsoft –Nullsoft ist seit 1999 eine Tochter von AOL File-Sharing-System –Ziel wie Napster –Arbeitet aber völlig ohne zentrale Strukturen

14 Algorithmen für Peer-to-Peer- Netzwerke 14 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Gnutella - Originalversion - Anbindung Nachbarschaftslisten –Gnutella verbindet direkt mit anderen Clients –Beim Download wird ein Liste von Clients mitgeliefert –Diese werden ausprobiert bis ein Aktiver sich meldet –Ein aktiver Client gibt dann seine Nachbarschaftsliste weiter –Nachbarschaftslisten werden immer weiter verlängert und gespeichert –Die Anzahl aktiver Nachbarn ist beschränkt (typisch auf fünf)

15 Algorithmen für Peer-to-Peer- Netzwerke 15 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Gnutella - Originalversion - Anbindung Protokoll –Ping Teilnehmeranfrage werden weiter gereicht gemäß TTL-Feld (time to live) –Pong Reaktion auf Ping Werden auf dem Anfragepfad zurückgereicht IP und Port des angefragten Teilnehmers Anzahl und Größe zur Verfügung gestellter Dateien Graphstruktur –entsteht durch zufälligen Prozess –unterliegt Pareto-Verteilung –entsteht unkontrolliert Gnutella Schnappschuss im Jahr 2000

16 Algorithmen für Peer-to-Peer- Netzwerke 16 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Gnutella - Originalversion - Anfrage Dateianfrage –wird an alle Nachbarn geschickt –diese senden sie an ihre Nachbarn –bis zu einer vorgegebenen Anzahl von Hops TTL-Feld (time to live) Protokoll –Query Anfrage nach Datei wird bis zu TTL-hops weitergereicht –Query-hits Antwort auf umgekehrten Pfad Wenn Datei gefunden wurde, direkter Download

17 Algorithmen für Peer-to-Peer- Netzwerke 17 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Gnutella - Diskussion Vorteile –verteilte Netzwerkstruktur –Netzwerk skalierbar Nachteil –Durch TTL findet für Abfragen eine implizite Netzwerkpartitionierung statt –Dadurch Anfrageerfolg gering –Durch lange Wege, große Latenzzeiten Verbesserungsvorschläge –Random Walks statt Broadcasting –Passive Replikation von Information entlang des Pfads Häufigkeit der Replikate nimmt im Quadrat des Abstands ab

18 Algorithmen für Peer-to-Peer- Netzwerke 18 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Kazaa, Gnutella (II), Morpheus Hybride Struktur –Knoten mit großer Bandbreite werden zu P2P-Server ausgewählt –Diese unterhalten P2P-Netzwerk im Stil von Gnutella –Normale Knoten werden als Clients an diese Super-Knoten angebunden Eingesetzt in –Kazaa –Morpheus –Gnutella (neuere Ausgabe) Vorteile –Verbesserte Skalierbarkeit –Geringere Latenzzeiten Nachteile –Immer noch unzuverlässig und langsam –Clients können sich der Super-Node- Aufgabe verweigern

19 Algorithmen für Peer-to-Peer- Netzwerke 19 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Kriterien für P2P-Netzwerke Handhabbarkeit –Wie schwer ist es, dass Netzwerk zu unterhalten Informationskohärenz –Wie gut wird Information verteilt? Erweiterbarkeit –Wie leicht kann es wachsen? Fehlertoleranz –Wie gut können Fehler behoben werden? Sicherheit –Wie leicht kann es mutwillig zerstört werden? Schutz gegen politische Verfolgung –Wie schwierig ist es, das Netzwerk abzuschalten? Skalierbarkeit –Wie groß kann ein Netzwerk wachsen?

20 Algorithmen für Peer-to-Peer- Netzwerke 20 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Christian Schindelhauer Zusammenfassung Lackmus-Test für P2P-Netzwerk –Sind variable Verbindungen und temporäre Netzwerkverbindungen die Norm? –Sind die Kanten des Netzwerks autonom? Strukturen von P2P-Netzwerken Zentral –siehe Napster Rein dezentral –siehe Gnutella (Original-Version) Teilweise zentralisiert –siehe Kazaa und neue Version von Gnutella

21 21 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Heinz Nixdorf Institut & Institut für Informatik Universität Paderborn Fürstenallee Paderborn Tel.: / Fax: / Vielen Dank Ende der 1. Vorlesung Nächste Vorlesung: Fr Nächste Übung: Mo


Herunterladen ppt "1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester 2004 23.04.2004 1. Vorlesung."

Ähnliche Präsentationen


Google-Anzeigen