1 Dezentrale Architekturen. Tinosch Ganjineh2 Übersicht Gnutella –Was ist Gnutella –Geschichte –Clients –Protokoll –Infrastruktur –Suche / Antwort –Kultivierung.

Slides:



Advertisements
Ähnliche Präsentationen
PHP Extension und Application Repository
Advertisements

Be.as WEB Technologie
Powerpoint-Präsentation
Einer der Dienste im Internet
1 Multicast Routing in Ad Hoc Netzen.ppt Oliver Finger_ TECHNISCHE UNIVERSITÄT ZU BRAUNSCHWEIG CAROLO-WILHELMINA Institut für Betriebssysteme und.
Projekt Netzwerk Kostenvoranschlag Netzwerkstruktur
Suche in P2P-Netzen: FASD
Routing – Routing Protokolle
Sichere Anbindung kleiner Netze ans Internet
Die Mailing-Liste der Musterlösung
Peer-to-Peer Tauschbörsen
für das Schulnetz der BS Roth
Vorgehensweise Website Besprechung am 11. Februar 2008 Gründung und Partnerunternehmen der Wirtschaftsuniversität Wien.
Inhalt – Technische Grundlagen
Systemverwaltung wie es Ihnen gefällt.
Anwendungsverteilung und räumliche Ausdehnung
Fallstudie. 2 Statistik April Dokumente Jan Mio. Dokumente Performance 3 Mio. Queries pro Tag 9. Juni 2000 Most popular search engines.
Konfiguration eines VPN Netzwerkes
Peer-to-Peer (P2P) Filesharing Systeme
Internetstruktur Das Internet besteht aus vielen Computern, die weltweit untereinander vernetzt sind.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Peer-to-Peer- Netzwerke Christian Schindelhauer Sommersemester.
Paketorientierte Datenübertragung
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Internet und seine Dienste
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester Vorlesung.
Verteilte Algorithmen
1.WICHTIG: Bringen Sie Ihr Betriebssystem möglichst "offline" auf den aktuellen Stand. Insbesondere sollten Sie bei Verwendung von Windows XP nicht ohne.
ROUTINGVERFAHREN ZUR LASTVERTEILUNG IN CONTENT-DELIVERY-NETWORKS
1 Thomas Butter Content Delivery Networks Peer-to-Peer Netze Thomas Butter
Virtual Private Networks
Schulen ans Netz Oberhausener Moderatoren
Einführung in die Technik des Internets
Überlegungen zur Architektur eines Fachinformations-Netzwerkes am Beispiel des CeGIM Mehrwert ist es nicht nur, Daten von ihren Quellen zu den Nutzern.
1.WICHTIG: oBringen Sie Ihr Betriebssystem möglichst "offline" auf den aktuellen Stand. Insbesondere sollten Sie bei Verwendung von Windows XP nicht ohne.
Internet (World Wide Web)
von Julia Pfander und Katja Holzapfel E 12/2
Messtudie zu Peer2Peer- Dateiverteilungssystemen Unter Bertachtung von zwei bekannten Vertretern: Napster und Gnutella.
Multimedia-Anwendungen und Routing
Internet: Funktionsweise und Dienste
Das Internet.
Chat – Systeme Projekt: Virtueller Seminarraum (WS 02/03)
Internet Protocol v6 ein Ausblick….
Julia Grabsch Florian Hillnhütter Fabian Riebschläger
1 Peer to Peer – GNUTELLA Seminar Innovative Netztechnologien Christophe LE ROQUAIS, den 17. Juni 2002.
INSTANT MESSAGING LI Xiaohui LIU Miao ZHOU Guanpei Universität Salzburg WAP Präsentation WS 2005/06.
Von Patrik, Yannik, Marc und Luca
Meins & Vogel GmbH, Tel. (07153) , Sicher im Internet – Nur eine Illusion? Vortrag im Rahmen eines Info-Abends Meins und Vogel.
Das Internet Von Stefan Pfleger Stefan Pfleger.
Marktübersicht für Content Management Systeme
Netzwerke.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Peer-to-Peer- Netzwerke Christian Schindelhauer Sommersemester.
Kamran Awan & Mohammed Soultana
Peer-to-Peer-Netzwerke
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Peer-to-Peer- Netzwerke Christian Schindelhauer Sommersemester.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Peer-to-Peer- Netzwerke Christian Schindelhauer Sommersemester.
Proseminar: Funk- und Peer- to-Peer Netze Napster / OpenNap Albert Hahn und Stefan Schwarzbach.
Proseminar: Funk– und Peer to Peer Netze
Virtual Private Network
Provider und Dienste im Internet
Proseminar: Technologien des Internets
->Prinzip ->Systeme ->Peer – to – Peer
Agenda 1. Definition (TCP/ IP Protokollfamilie) 2.
Internet-Grundtechnologien. Client / Server Client („Kunde“): fordert Information / Datei an im Internet: fordert Internetseite an, z.B.
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
Das World Wide Web Stephan Becker TIT05BGR SS06. Das World Wide Web Übersicht Hypertext & Hypermedia HTML Dokumentenidentifikation Dokumententransport.
ICMP Internet Control Message Protocol Michael Ziegler Universität Freiburg Michael Ziegler.
Geschichte des Internets
Ich brauche eine Web-Seite vom Server im Internet
Routing … … die Suche nach dem Weg..
Tutorstunde 10.
 Präsentation transkript:

1 Dezentrale Architekturen

Tinosch Ganjineh2 Übersicht Gnutella –Was ist Gnutella –Geschichte –Clients –Protokoll –Infrastruktur –Suche / Antwort –Kultivierung –Traffic Probleme –Angreifbarkeit –Anonymität –Ausblick Freenet –Funktionsweise –Upload/Download –Routing –Hashes –Zusammenfassung

Tinosch Ganjineh3 Was ist Gnutella ? Ein Picknick, jeder bringt was mit … Simples File-Sharing Protokoll Komplett dezentral Abstrahiert von der Netzstruktur Knoten sind Servents (Client und Server) Servents bilden die Netzstruktur Funktioniert wie die reale Welt (Bsp. Folgt)

Tinosch Ganjineh4 Gnutella Philosophie Ein Netzwerk zum Suchen und Entdecken Gedacht für Mensch und nicht Maschine Total dezentral Nicht wirklich zu stoppen Freie Interpretation der Anfrage –Suchanfrage wird unverändert weitergeleiet –Antworten können verschiedenste Form haben Dateinamen Werbe Nachrichten URLs Anonymes Suchen

Tinosch Ganjineh5 Gnutella History [1] 1999 Übernahme von Nullsoft durch AOL Kleines Experiment (2 Mannwochen) März 2000 Justin Frankel und Tom Pepper von Nullsoft entwickelten Gnutella Gnutella = (GNU + Nutella) suchte einmalig Tester Erfolg (1000 User innerhalb von Stunden) AOL legte das Projekt auf Eis

Tinosch Ganjineh6 Gnutella History [2] Bryan Mayland überarbeitete das Gnutella Protokoll (total dezentral) gnutella.nerdherd.net und IRC #gnutella als Austauschplatz für Entwickler Open-Source Projekt (GPL) Justin Frankel gab Detailwissen preis GDF (Gnutella Developer Forum) entstand RFC-Gnutella (Request for Comments) Geburtsstunde etlicher Clients

Tinosch Ganjineh7 Gnutella Clients Windows Gnotella Toadnode Gnucleus BearShare* LimeWire Shareaza* PheX Gnewtella Linux/Unix Gnut LimeWire Gtk-Gnutella Mutella Phex Qtella * Closed source

Tinosch Ganjineh8 Cocktail Party Gnutella Eintritt Hallo sagen Suche die Bar Frage nach Bar Stille Post – Welle Erhalte Information Laufe zur Bar Connect zu GNet Ping Suche Martini Anfrage gestartet Anfrage weitergeleitet Antwort (Hit) Starte Download

Tinosch Ganjineh9 Cocktail Party Napster Eintritt ins Foyer Gastgeber + Freunde. nur ein Informant suche Bar zurück zum Foyer Info dahinten laufe zur Bar Connect to Napster Riesiger File Index Nur ein Fileindex Suche Martini Zentrale Anfrage Index liefert Verweis Starte Download

Tinosch Ganjineh10 Gnutella Protokoll [1] Gnutella Deskriptoren regeln Kommunikation Deskriptoren –Ping : Netz aktiv erforschen –Pong : Antwort auf Ping –Query : Eigentliche Suchanfrage –Query hit : Positivantwort auf Suchanfrage –Push Request : Initiiert das Senden (Firewall) Header :

Tinosch Ganjineh11 Gnutella Protokoll [2] Payload (Nutzlast) der Deskriptoren –Ping : hat kein Payload –Pong: –Query : –Query hit: –Push Req :

Tinosch Ganjineh12 Gnutella Infrastruktur Setzt per Software auf dem Internet auf Netz existiert nur durch seine Servents –Aus Benutzern werden Operatoren Dynamische Netzstruktur, was nun ? –Nutzer trennen sich laufend vom Netz –Es kommen ständig neue Nutzer hinzu –Große Disparität zwischen Bandbreite der Nutzer (T3 ist ca mal schneller als 56K)

Tinosch Ganjineh13 Selbstorganisierendes Netzwerk Platzierung im Netz hängt nicht von geographischer Lage sondern Bandbreite ab Leistungsstarke Knoten (T3) –tendieren zur Mitte des Netzwerks –verbunden mit vielen/großen Knoten Leistungsschwache Knoten (56K) –tendieren zum Rand des Netzes –verbunden mit wenigen oder kleinen Knoten –Werden zu Schwarzen Löchern Dadurch entsteht ein stabiles ad hoc Backbone

Tinosch Ganjineh14 Gnutella Netz (GNet) Knotengröße proportional zur Bandbreite

Tinosch Ganjineh15 Getting started Man muss nur erstmal reinkommen Gewusst wie : IRC, Hostcaches (GWebCaches) Einmal verbunden, werden weitere Verbindungen aufgebaut ( ca. 5) Pong Caching : Cachen von Hostlisten anderer Servents (Freundes Freunde) Lauschen und fleißig mitschreiben wer antwortet Dead Links werden gelöscht Nun kann das Suchen beginnen …

Tinosch Ganjineh16 Übersicht Gnutella –Was ist Gnutella –Geschichte –Clients –Protokoll –Infrastruktur –Suche / Antwort –Kultivierung –Traffic Probleme –Angreifbarkeit –Anonymität –Ausblick Freenet –Funktionsweise –Upload/Download –Routing –Hashes –Zusammenfassung

Christian v. Prollius17 Eigenschaften von Suchanfragen Suchanfragen –enthalten eine UID –erreichen nur den Horizont –werden vom Servent interpretiert Gnutella Entwickler demonstrierten Mächtigkeit des Gnutella-Protokolls mit InfraSearch Alternative zur Suchmaschine?

Christian v. Prollius18 Verbreitung von Suchanfragen Suchen durch: Broadcasting (Flooding) –Jeder Host schickt zu n Hosts (n~4) –Jedes Packet hat TTL t (t~7) Time To Live (TTL) ist ein Zähler der bei jedem Weiterleiten verringert wird, bei 0 wird das Paket verworfen Netz wird entlastet durch –Unique Identifiers (UID) (verhindert Echos) –Time To Live (TTL)

Christian v. Prollius19 Auslastung Gnutella 0.4 Quelle : TU Ilmenau, Hauptseminar Telematik SS 2003

Christian v. Prollius20 Gnutella Horizont Bei TTL 7 erreichen die Suchanfragen ca Hosts Wieviele User hat Gnutella eigentlich? –Millionen Menschen haben einen Gnutella Client runtergeladen bzw installiert –Man selbst sieht jedoch nur einige Tausend um sich herum

Verbindungsgraph bei Suchtiefe 4 (GraphViz von Gnucleus) 21

Christian v. Prollius22 Dynamisches Routing für Antworten auf Suchanfragen Antwort ebenfalls nur mit UID Host A merkt sich Host B, der die Suchanfrage geschickt hat und schickt die Antworten zu ihm zurück Ob Host B die Suchanfrage gestartet hat oder nur weitergeleitet ist unbekannt anonymes Suchen Suchanfragen wurden anfangs zum anonymen Chatten benutzt

Christian v. Prollius23 Handling von zu vielen Suchanfragen Servents verwerfen Suchanfragen Es werden keine Buffer oder ähnliches verwendet (macht bei Suchanfragen keinen Sinn) Dadurch können T3 Leitungen mit 56 K Modem Nutzern nicht sinnvoll kommunizieren

Christian v. Prollius24 Gnutella Kultivierung Kleine Änderungen an der Clientsoftware können extrem große Auswirkungen auf das Netz haben Beispiel Reflector –Leiten Suchanfragen nicht weiter, sondern beantworten aus dem eigenen Gedächtnis + Reduziert Traffic – Zerstört Charakteristik von Gnutella (Hosts sollen Suchanfragen selber interpretieren)

Christian v. Prollius25 Gnutella Traffic-Probleme [1] Zelle: Menge von Hosts die sich untereinander kennen Bei Gnutella wird bei zu viel Traffic die Leistung stark reduziert, ähnlich Ethernet Lösung: Teilung einer Zelle in kleinere Zellen Dadurch kennt man zwar weniger Hosts, kann aber wieder vernünftig kommunizieren

Christian v. Prollius26 Gnutella Traffic-Probleme [2] Host Caches: Gut gemeint, schlimme Auswirkungen –Web Site mit aktuellen Host-Listen –Problem trat am auf (Untergang von Napster) –Viele Tausend User erfragten beinahe gleichzeitig die aktuellen Host-Listen ab –Folge : Ballung des gesamten Gnutella Netz um wenige Hosts, die auf Internet-Seiten zu finden waren –Dadurch war Kommunikation praktisch unmöglich

Christian v. Prollius27 Gnutella Traffic-Probleme [3] Lösung des Host-Cache Problem –Host-Caches prüfen ob die Hosts ausgelastet sind und sorgen für eine gleichmäßige Verteilung Aber es gab noch die Local Host Catcher –Jeder der Servents hatte die anderen noch im Gedächtnis. Dadurch blieb die Ballung erhalten. –Deswegen hat sich das Netz nur langsam entzerrt, da jeder Servent selber von Hand seinen Local Host Catcher löschen musste

Tinosch Ganjineh28 Übersicht Gnutella –Was ist Gnutella –Geschichte –Clients –Protokoll –Infrastruktur –Suche / Antwort –Kultivierung –Traffic Probleme –Angreifbarkeit –Anonymität –Ausblick Freenet –Funktionsweise –Upload/Download –Routing –Hashes –Zusammenfassung

Thomas Schwaier29 Rechtliche Angriffe Zentralisierte P2P Netzwerke (Napster) sind rechtlich belangbar und können so aus geschaltet werden Dezentrale P2P Netzwerke (Gnutella) nicht belangbar, da kein zentraler Betreiber des Netzwerkes existiert

Thomas Schwaier30 Technische Angriffe DoS-Attacken Clients Xoloco & Qtraxmax führten zu Netztüberlastung durch (query) flooding Gezielte DoS-Attacken gegen Supernodes

Thomas Schwaier31 Anonymität Gnutella ist nicht anonym (!) –Suchanfragen sind niemandem zuordenbar und damit anonym –ABER : bei einem Transfer kennen die beteiligten Nutzer die jeweilige IP-Adresse des Anderen, also nicht anonym Beispiel Hall of Shame Pseudoanonymität

Thomas Schwaier32 Pseudoanonymität Weitere Gründe für Pseudoanonymität –Großteil der messages enthalten keine IPs (nur die Antworten auf queries) –Dynamische Routing Tabellen –Zur Identifikation ist Überwachung des gesamten Internet Traffic nötig

Thomas Schwaier33 Next Generation / Ausblick Nächster GDF Release ? (aktuell Gnutella Protokoll 0.6) zukünftige Features –Community-Feature –Encryption – (bereits implemtiert in BearShare) –Privacy –Caching of popular content –Magma-Links - Multiple-file-magnets –What's New?

Thomas Schwaier34 Ausblick [2] Ungelöste Probleme Traffic-Reduktion insbes. bei Suchanfragen Verbesserte Netztopologie

Thomas Schwaier35 Weitere Entwicklungen[1] Gnutella2 (G2) Alleinentwicklung von Mike Stokes (Shareaza) Komplette Überarbeitung von Gnutella –Viele Schwächen bzw. Probleme beseitigt Ablehnung von GDF da Alleinentwicklung –Gnutella2 daher auch bekannt als Mikes Protocol (MP) –G2 inkompatibel zu G1 G2 Clients u.a. Morpheus, Shareaza, MLdonkey

Thomas Schwaier36 Weitere Entwicklungen[2] Mittelfristige Entwicklungen Integration der verschiedenen Protokolle G1 und G2 zeichnet sich nicht ab Entwicklung von Clients die mehrere Protokolle beherrschen (z.B. Shareaza, Morpheus) Nächster Durchbruch –Gleichzeitiger, Multipler Download einer Datei aus verschiedenen P2P-Netzwerken

Thomas Schwaier37 Weitere Entwicklungen[3] FUtella –P2P Netzwerk für den Austausch Wissenschaftlichen Arbeiten und Ergebnisse aller Art (Publikation, Essays, Papers, Übungsaufgaben, etc..) –Basiert auf Prinzipien bzw. Elementen von Gnutella, JXTA,JXTA Search, Freenet und erweitert diese –Wird ein Stockwerk über uns in der Technischen Informatik entwickelt !

Florian Greb38 Gnutella - Quellen [1] Adam Langley, Gnutella, Peer-to-Peer: Harnessing the Power of Disruptive Technologies, A. Oram(ed.), OReilly and Assoc., Sebastopol, Californien, 2001, Chapter 8 [2] Farhad Manjoo Gnutella Bandwidth Bandits, Salon.com [3] Gnutella² Developers Network [4] Gnutella Protocol Development [5] Gnutella bei Wikipedia Stand:

Florian Greb39 Freenet Noch ein Protokoll! Warum? -Sicherheit vor Zensur -Gewährleistung von Anonymität -Robustheit -Effizienz -Schutz vor juristischem Zwang

Florian Greb40 Freenet - Funktionsweise Verteilter, vielfach redundanter Speicher Message Passing Network Verbindungen: Knoten kennt –Direkten Vorgänger –Direkten Nachfolger –Request-Key Außerdem: Knoten hat Tabelle mit –Schlüsseln –(Daten) –Adressen Abb. 1, Sichtweite einzelner Knoten

Florian Greb41 Speichertabellen Abb. 2, Speicher einzelner Knoten [2]

Florian Greb42 Freenet - Download Ablauf einer Suche / eines Downloads: –Anfrage beim nächsten Knoten X nach Hashwert –X hat Dokument: X liefert Dokument –X hat Dokument nicht: X leitet Anfrage an Y weiter –Ende wenn Dokument gefunden oder Timeout (TTL=0) Timeouts und Daten werden wie auf dem Hinweg zurückgeschickt Zwischenstationen cachen Daten Abb. 1, Sichtweite einzelner Knoten

Florian Greb43 Freenet - Datentransfer Abb. 3, Routing zwischen Knoten, [3]

Florian Greb44 Einfügen [1] Ablauf eines Uploads / eines Einfügens: –Zuerst wie Suche –Dokument gefunden: Daten werden geliefert –Dokument nicht gefunden: InsertRequest –Alle Knoten bis zum InsertRequest-Sender cachen Daten

Florian Greb45 Einfügen [2] Vorteile: –Beliebte Daten werden oft gecached –Keine Chance für gefälschte Daten (Kontrolle: Hash ->Daten)

Florian Greb46 Freenet - Routing Routing ist Zielgerichtet –Weiterleitung von Anfragen an Besitzer des Dokuments mit ähnlichstem Schlüssel –Prinzip wie Suche eines Dorfs im Mittelalter Man geht von Dorf zu Dorf In jedem Dorf wird nach der Richtung gefragt Recht effizient –Andere P2P-Netze: oft wahlloses Fluten Das entspräche dem Schicken von Boten in alle Dörfer Das ist sehr ineffizient

Florian Greb47 Freenet - Routing Wieso funktioniert es? Pos. Feedback-Schleife: Knoten spezialisieren sich auf einen bestimmten Schlüsselbereich Dadurch werden sie häufiger referenziert Knoten spezialisieren sich weiter auf diesen Bereich. Knoten cachen mehr Daten aus diesem Bereich Außerdem: Small-World-Effect

Florian Greb48 Freenet - Hashes Wie kommt man an den Hash einer Datei? –Durch separate Mitteilung via Web, , News,... (CHK, SSK) –Durch raten und rechnen (KSK) Grund: Unterschiedliche Schlüsselarten –Content Hash Key (CHK) –Keyword Signed Key (KSK) –Signed Subspace Key (SSK)

Florian Greb49 Freenet – CHK Hashes Form: Schlüssel ist eindeutiger Hash der Datei Feste Länge Fälschungssicher Problem: schlecht zu merken

Florian Greb50 Freenet – KSK Hashes Form: Erzeugung eines Schlüsselpaares aus text/books/1984.html Hash des öffentlichen Schlüssels ist Key Feste Länge Datei wird mit privatem Schlüssel signiert (Integritätscheck) Begrenzt Fälschungssicher: Wer zuerst kommt, mahlt zuerst

Florian Greb51 Freenet – SSK Hashes Schafft einen persönlichen Namensraum Schafft pseudonymes Filesharing Vorgehen: Erzeugen eines pers. Schlüsselpaares Auswählen einer Beschreibung (wie KSK) Key = Hash(Hash(Pub. Key), Hash(Beschreibung)) Datei wird mit priv. Schlüssel signiert

Florian Greb52 Freenet - Filterzwang? Wenn Knotenbetreiber den Cacheinhalt kennen würden, müßten sie Filtermaßnahmen ergreifen Also: Daten werden verschlüsselt gespeichert Schlüssel nur Suchendem bekannt Brute Force dauert ewig Knotenbetreiber kennen den Cache-Inhalt nicht Ergebnis: Filtern unmöglich

Florian Greb53 Zusammenfassung [1] Eigenschaften von Freenet - Vorteile: Weitgehende Anonymität der Benutzer Zensur nahezu unmöglich Recht effizientes Routing und Caching Dezentrale Architektur Kein Single Point of Failure Guter Tradeoff zwischen Paranoia und Effizienz

Florian Greb54 Zusammenfassung [2] Eigenschaften von Freenet – Nachteile Keine ordentliche Suchfunktion, fehlende Wilcards Ineffizienterer Datenverkehr als bisherige P2P- Applikationen Verbesserung des Routings möglich

Florian Greb55 Freenet - Quellen [1] Ian Clarke et al., Freenet: A Distributed Anonymous Information Storage and Retrieval System, Designing Privacy Enhancing Technologies, Lecture Notes in Computer Science 2009, H. Federrath (ed.), Springer- Verlag, Berlin, 2001, S [2] Adam Langley, Freenet, Peer-to-Peer: Harnessing the Power of Disruptive Technologies, A. Oram(ed.), OReilly and Assoc., Sebastopol, Californien, 2001, S [3] Ian Clarke et al., Protecting Free Expression Online with Freenet, IEEE Internet Computing Article, Jan./Feb. 2002, S.40-49, URL geprüft :

Florian Greb56 Freenet - Ende Danke für die Aufmerksamkeit!