Peer-to-Peer Britta Weber Doreen Rosenthal. P2P & Napster 2 Inhalt 1.Motivation 2.Was ist...

Preview:

Citation preview

Peer-to-Peer

Britta WeberDoreen Rosenthal

P2P & Napster 2

Inhalt

1. Motivation2. Was ist Peer-to-Peer?3. Vorteile4. P2P-Architekturmodelle und Probleme5. Kriterien für P2P-Netzwerke6. Mobile Peer-to-Peer Netzwerke• Zusammenfassung

P2P & Napster 3

Was ist Peer-to-Peer?

• Wikipedia: peer-to-peer :

any network that does • not have fixed clients and servers• nodes that function as both clients and

servers

P2P & Napster 4

Was ist Peer-to-Peer?

• Peer-to-Peer nach Clay Shirky : “Peer-to-Peer: Anwendungen, die Ressourcen

am Rand des Internets ohne feste IP-Adressen ausnutzen”

• Lackmus-Test von Clay Shirky :„1. Does it allow for variable connectivity and temporary network adresses? 2. Does it give the nodes at the edges of the network signifikant autonomy?“

Peer-to-Peer-Applikation!

P2P & Napster 5

Was ist Peer-to-Peer?

Was ist Peer-to-Peer nicht?

• Eine spezielle Anwendung• Ein Protokoll• eine Art ein Netzwerk aufzubauen

P2P & Napster 6

Beispiele: Was ist Peer-to-Peer und was nicht?

• Napster: P2PRessourcen am Rande werden genutzt, flexible Adressierung, Autonomie der Randknoten

• e-mail: kein P2P Adressierung immer eine Maschine

• ICQ: P2PAdresse hat nichts mit DNS zu tun, User hat Kontrolle über Verbindung

P2P & Napster 7

Vorteile von Peer-to-Peer (1)

Ausnutzung brachliegender Ressourcen

• Früher: Clients nur „Dummys“, Rechenleistung und Speicherkapazität von Mainframes (Mainframearchitektur)

• Jetzt: PCs haben größere Rechenleistung als Server noch vor 3 Jahren (siehe auch Moores‘ Gesetz!)

Ressourcen wie Rechenleistung und Speicherplatz liegen brach

P2P & Napster 8

Vorteile von Peer-to-Peer (2)

Brachliegende RessourcenAngenommen, von den 300 Millionen Internet Usern hätten 100 Millionen PCs mit

- 100 MHz- 100 MB Festplattenspeicher

10 Billionen MHz Prozessorkapazität ,10.000 Terrabyte Speicher fast ungenützt!

P2P & Napster 9

Beispiel für Zentralisierung

P2P & Napster 10

Beispiel für Dezentralisation

P2P & Napster 11

Vorteile von Peer-to-Peer (3)

Metcalfe‘s Law:

Wert eines Netzwerkes steigt quadratisch mitder Anzahl der Teilnehmer .Anzahl möglicher Verbindungen : C ~

(N2 – N)/2Netzwerkwert nach Metcalfe: V ~ N2/2Bei sehr großem N : V~ N2

Größtmögliche Anzahl von Verbindungen ist nach Metcalfe wünschenswert

P2P & Napster 12

Wie wir Metcalfe ignorieren

P2P & Napster 13

Server durch Router ersetzt

P2P & Napster 14

Ein Metcalfe-konformes Netzwerk

P2P & Napster 15

Vorteile von Peer-to-Peer (4)

• Redundanz kein Punkt, über den die gesamte Kommunikation abgewickelt werden muss Ausfall eines Peers kann nicht zum Zusammenbruch des gesamten Netzes führen

• FlexiblerNeue User sind ohne Probleme zuzufügen

• SelbstorganisierendJeder ist für sich selber verantwortlich d.h: es ist kein Admin mehr nötig, der alles gleichzeitig machen muss und damit überfordert ist

P2P & Napster 16

Vorteile von Peer-to-Peer (5)

Kostenminimierung- Speicherplatz kostet (Hardware)- Rechneleistung kostet- Service kostetBeispiel: Oracle 70% Einnahmen für Services,

Microsoft 30%IDC: (Managing Storage cost)=4*(Hardware

cost)Beispielrechnung : Napster

P2P & Napster 17

Kosten einer zentralisierten Napster-Architektur

P2P & Napster 18

Kosten einer zentralisierten Napster-Architektur

P2P & Napster 19

Kosten einer zentralisierten Napster-Architektur

P2P & Napster 20

P2P-Architekturmodelle (1)

Reines P2P-Modell

• Hängt ausschließlich von Clients ab

• Unabhängig von jedem zentralen Server

• Besitzt eine Art Plug-And-Play Feature

• Problem: Suche nach anderen Peers im Netz

P2P & Napster 21

P2P-Architekturmodelle (2)

P2P mit einfachem Discovery-Server

• Server stellt Namen der schon verbundenen Peers für hereinkommenden Peer bereit

• Finden von mehr Peers im Netz

P2P & Napster 22

P2P-Architekturmodelle (3)

P2P mit Discovery- undLookup-Server

• Server stellt Liste der schon verbundenen Peers bereit und ihre verfügbaren Ressourcen

• Reduzierung der Last der Peers

P2P & Napster 23

P2P-Architekturmodelle (4)

Beispiele:

• Rein dezentral– siehe Gnutella (Original-Version)

• Dezentral mit Supernodes– siehe Kazaa und neu Version von Gnutella

• Kombination zentral/dezentral– siehe Napster

P2P & Napster 24

Kriterien für P2P-Netzwerke

• Handhabbarkeit• Informationskohärenz• Erweiterbarkeit• Fehlertoleranz• Sicherheit• Skalierbarkeit

P2P & Napster 25

Mobile Peer-to-Peer Netzwerke

(1) • Ad-hoc Netzwerke

- Mangel an Infrastruktur- dezentralisiertes Handeln- einfache Entstehung

• Einsatz von Manets(mobile Ad-hoc Networks)- aufgabenorientiertes Zusammenarbeiten- Applikationen auf mobilen Geräten (Services, Sharing)

P2P & Napster 26

Mobile Peer-to-Peer Netzwerke (2)

• technischen Beschränkungen mobiler Geräte - keine Standards für Eingabe/Ausgabe- Akkubetrieb- Speicherkapazität

Beachten der Struktur des mobilen Netzwerks und der Beschränkungen der mobilen Geräte

P2P & Napster 27

Zusammenfassung

• Vorteile: kostengünstig, flexibel, bessere Ressourcenausnutzung…

• Probleme:hohe Netzwerkbelastung, Finden der Peers

• P2P-Architekturmodelle:Reines P2P-Modell, P2P mit einfachem Discovery-Server, P2P mit Discovery- und Lookup-Server

P2P & Napster 28

Literaturhinweise

• Andy Oram: “Peer-to-Peer: Harnessing the Power of Disruptive Technologies”, O'Reilly

• Dreamtech, „Peer-to-Peer - Applikationen entwickeln“, mitp-Verlag

• “Peer-to-Peer Systems First International Workshop”, IPTPS 2002, Cambridge, MA, USA, March 7-8, 2002

• Kwak, Fagin. Internet Infrastructure & Services, Bear Stearns, 2001. Seite 16-54.

• www.wikipedia.org• wwwcs.upb.de

Napster

Ralf AnskeStephan Lehmann

P2P & Napster 30

Überblick

• Was ist Napster?• Geschichte von Napster• Was kann Napster?• Aufbau und Funktionsweise• Vor- und Nachteile• Napsters Erfolg

P2P & Napster 31

Was ist Napster?

• Entwickelt Anfang 1999 von Shawn Fanning, Student der Bostoner Northeastern University zum Tauschen von MP3-Dateien

• Damalige Situation:– Große Nachfrage nach MP3‘s– Geringes Angebot (häufig Seitensperrungen, zu

viel Traffic)

• Ziel war direkter Austausch von MP3-Dateien zwischen Musikfans

P2P & Napster 32

Geschichte

• Herbst 1998– Erste Konzeption

• Mai 1999– Firmengründung

• Juli 1999 – erste Betaversion– nach wenigen Tagen 10000 User

• Herbst 1999– Download of the Week bei Download.com

P2P & Napster 33

Geschichte

• Dezember 1999– Klage der RIAA– Tauschen urheberrechtlich geschützter Werke illegal

• April 2000– Klage der Band „Metallica“– 300.000 User wurden verbannt

• Juli 2000– Einstellung des Dienstes nach Niederlage vor Gericht– Nach einem Tag Wiederaufnahme durch einstweilige

Verfügung• Herbst 2000

– In den Top50 der meistbesuchten Webangebote– Napster meistgesuchtes Wort bei Lycos

P2P & Napster 34

Geschichte

• Oktober 2000– Bertelsmann kauft Napster

• Februar 2001– Endgültige Gerichtsentscheidung– Copyright-geschützte Dokumente sind

auszufiltern• April 2001

– Bertelsmann plant kostenpflichtiges Angebot– Jedoch keine Einigung mit Musikindustrie

• Juli 2001– Betrieb eingestellt

P2P & Napster 35

Geschichte

• Oktober 2001– Einigung mit Musik-Industrie– 26 Mio. $ wegen Urheberrechtsverletzungen– 10 Mio. $ Lizenzgebühren im Voraus

• November 2002– Roxio kauft Napster für 4,6 Mio. $

• Oktober 2003– Napster 2.0– Downloads ab 0,99 $ pro Titel

P2P & Napster 36

Was kann Napster?

• MP3‘s nach verschieden Kriterien suchen

• Anbieten von MP3‘s• Chat Funktion• Erweiterung auf andere Dateitypen

als MP3 mittels OpenNap

P2P & Napster 37

Was kann Napster?

• Nach erfolgreicher Suche werden Dateiname, Dateigröße, Geschwindigkeit der Internetverbindung etc. des Dateianbieters gezeigt

• Doppelklick löst den Download aus

P2P & Napster 38

Was kann Napster?

P2P & Napster 39

Aufbau von Napster

• Zentral organisiertes Peer-to-Peer Netz

• Zentrales Verzeichnis– Wer bietet was an

• Datenübertragung direkt zwischen Usern

• Konsument wird automatisch zum Anbieter

P2P & Napster 40

Wie funktioniert Napster?

• Die Napster Benutzer müssen eine Software downloaden und installieren

• Diese verbindet den User mit einem Server (von Napster aufrecht erhalten)

• Aufgaben des Servers:– Verknüpft die User ID mit einer IP Adresse– Speichert die Adressen der Songs in einer

Datenbank– Suchen in der Datenbank (m.H. Indizes)– Verbindet einen User direkt mit einem

anderen, um den Download durchzuführen

P2P & Napster 41

Wie funktioniert Napster?

• Ein User setzt einmalig Zugriffsrechte, welche Dateien im Netzwerk ausgetauscht werden können

• Transaktionen sind gewöhnlich nur in eine Richtung aktiv, in die des Datei - Anfragers

• Der Sender lässt es einfach zu (laissez-faire)• Wenn ein User einmal eine Datei empfangen

hat, wird er gleichzeitig auch ihr Anbieter

P2P & Napster 42

Wie funktioniert Napster?

• Es sind mehrere Napster-Server gleichzeitig online

• Die Datenbanken der verschiedenen Server werden untereinander synchronisiert

• Die Datenbank eines Servers wird bei Logout oder Timeout eines Clients bereinigt

P2P & Napster 43

Wie funktioniert Napster?• Verbindungen benutzen das Napster-Protokoll

• Napster ist closed-source, aber das Protokoll wurde gehackt weil,– Napster Client lief nur unter Windows– Napster-Filter sollten unterlaufen werden

• Darauf aufbauend entstanden Napster-Client-Clone (Napigator, Napster Fast Search, WinMX, JNapster, gNapster, KNapster, Hackster etc.)

• Sowie offene Server-Projekte (OpenNap, JNerve)

P2P & Napster 44

OpenNap

• Open Source Napster Server• Auch für andere Systeme als

Windows• Jeder kann damit einen Napster-

Server betreiben• Weitere Mediendateien• Synchronisation mehrerer Server

P2P & Napster 45

Ablauf eines Downloads

• Anfrage an Napster-Server

• Client schickt search(200) oder browse(211) an Server

• Server schickt searchresponse(201) mit Client-Liste an Client

• Client schickt download request (203)

P2P & Napster 46

Ablauf eines Downloads

• Bestätigung durch Server

• Server schickt download ack (204) mit der Port-Nummer des Ziel-Clients

P2P & Napster 47

Initialisierung der Verbindung

• Normale Verbindung herstellen

• Client öffnet TCP-Verbindung zum Ziel-Client über Port aus 204

P2P & Napster 48

Ablauf eines Downloads

• Bestätigung durch Ziel-Client

• Ziel-Client antworte mit „1“

P2P & Napster 49

Initialisierung der Verbindung

• Datei anfordern• Client sendet

„GET“ + <nick> + <file_name> + <offset>

P2P & Napster 50

Initialisierung der Verbindung

• Anforderung bestätigen

• Ziel-Client sendet Dateigröße oder „INVALID REQUEST“ oder „FILE NOT SHARED“

P2P & Napster 51

Initialisierung der Verbindung

• Alternativ kann die Verbindung zwischen den Clients auch vom Zielclient ausgehen (firewalled connection)

• Um Clients hinter Firewalls benutzen zu können

P2P & Napster 52

Initialisierung der Verbindung

• Bestätigung durch eigenen Client

P2P & Napster 53

Initialisierung der Verbindung

• Anforderung zum Upload der Datei auf den eigenen Client

P2P & Napster 54

Initialisierung der Verbindung

• Bestätigung

P2P & Napster 55

Senden der Daten

• Datentransfer zwischen den Clients

• Ziel-Client sendet die Datei

• Clienten senden „uploading file“(220)/“downloading file“(218) an den Server

P2P & Napster 56

Abschluss der Übertragung

• Verbindung zwischen den Clients beenden

• Clients senden „upload complete“(221)/“download complete“(219) an den Server

P2P & Napster 57

Vorteile von Napster

• Benutzerfreundlich, einfach zu bedienen

• Dezentrale Speicherung der Daten• Großer Nutzerkreis• Durch den zentralen Server bei der

Suche sehr schnell (Anfrage muss nur einmal gestellt werden)

P2P & Napster 58

Nachteile

• Der zentrale Server– Bei Ausfall des zentralen Servers geht nichts mehr– Der Server ist anfällig für Angriffe (DoS)– Der Server kostet Geld– Der Serverbetreiber kann rechtlich belangt werden– Die Suchergebnisse können beeinflusst werden

• Sicherheitsrisiko durch Freigabe von Ressourcen auf den Clients

• Verbreitung von Viren, Trojanern etc. durch falsche Musik-Files

• Einbauen von Filtern, um Teilnahme am Musiktausch zu beschränken

P2P & Napster 59

Warum war Napster so erfolgreich ?

• Direkter Zugriff auf Musik anderer Nutzer

• Kostenlos• Jeder Nutzer wird gleichzeitig Anbieter• Netzwerkeffekt (großes Angebot durch

viele Nutzer)– Satz von Metcalfe: Der Nutzen eines

Netzwerks wächst im Quadrat wie die Anzahl seiner Nutzer.

P2P & Napster 60

Napsters Erfolg

• Einige der wichtigsten Nutzergruppen von Napster waren Studenten– Studenten neigen dazu Musik zu hören– Universitäten haben eine schnelle

Internetverbindung– Studenten kennen sich besser mit

neuen Techniken aus als andere– Studenten haben kein Geld

P2P & Napster 61

Napsters Erfolg• Nach 20 Monaten über 65 Mio. Nutzer, zuletzt

immer 1,5 Mio. Nutzer gleichzeitig online• Januar 2001 Deutschlands meistgenutzte

Anwendung (125min Nutzungsdauer pro Monat)

P2P & Napster 62

• Nutzer mit schneller Verbindung bieten mehr an

• Nutzer mit langsamer Verbindung laden mehr herunter

Napsters Erfolg

P2P & Napster 63

Die Zukunft: Napster 2.2

P2P & Napster 64

Zusammenfassung

• Ziel war direkter Austausch von MP3-Dateien

• Zentral organisiertes Peer-to-Peer Netz (mit extra Server)

• Datenübertragung direkt zwischen Usern• Vorteile:

– Schnell, benutzerfreundlich– Dezentrale Datenspeicherung

• Nachteile:– Zentraler Server

P2P & Napster 65

Literaturhinweise

• Andy Oram: “Peer-to-Peer: Harnessing the Power of Disruptive Technologies”, O'Reilly

• P2P-Buch04 Schoder-Fischbach P2P-Anwendungsbereiche-Herausforderungen

• Kwak, Fagin. Internet Infrastructure & Services, Bear Stearns, 2001

P2P & Napster 66

Vielen Dank!

Recommended