Folien

Werbung
Peer-to-Peer
Britta Weber
Doreen Rosenthal
Inhalt
1.
2.
3.
4.
5.
6.
•
Motivation
Was ist Peer-to-Peer?
Vorteile
P2P-Architekturmodelle und Probleme
Kriterien für P2P-Netzwerke
Mobile Peer-to-Peer Netzwerke
Zusammenfassung
P2P & Napster
2
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
3
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
4
Was ist Peer-to-Peer?
Was ist Peer-to-Peer nicht?
• Eine spezielle Anwendung
• Ein Protokoll
• eine Art ein Netzwerk aufzubauen
P2P & Napster
5
Beispiele: Was ist Peer-to-Peer und
was nicht?
• Napster: P2P
Ressourcen am Rande werden genutzt,
flexible Adressierung, Autonomie der
Randknoten
• e-mail: kein P2P
Adressierung immer eine Maschine
• ICQ: P2P
Adresse hat nichts mit DNS zu tun, User hat
Kontrolle über Verbindung
P2P & Napster
6
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
7
Vorteile von Peer-to-Peer (2)
Brachliegende Ressourcen
Angenommen, 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
8
Beispiel für Zentralisierung
P2P & Napster
9
Beispiel für Dezentralisation
P2P & Napster
10
Vorteile von Peer-to-Peer (3)
Metcalfe‘s Law:
Wert eines Netzwerkes steigt quadratisch mit
der Anzahl der Teilnehmer .
Anzahl möglicher Verbindungen : C ~ (N2 – N)/2
Netzwerkwert nach Metcalfe:
V ~ N2/2
Bei sehr großem N :
V~ N2
Größtmögliche Anzahl von Verbindungen ist
nach Metcalfe wünschenswert
P2P & Napster
11
Wie wir Metcalfe ignorieren
P2P & Napster
12
Server durch Router ersetzt
P2P & Napster
13
Ein Metcalfe-konformes Netzwerk
P2P & Napster
14
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
• Flexibler
Neue User sind ohne Probleme zuzufügen
• Selbstorganisierend
Jeder 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
15
Vorteile von Peer-to-Peer (5)
Kostenminimierung
- Speicherplatz kostet (Hardware)
- Rechneleistung kostet
- Service kostet
Beispiel: Oracle 70% Einnahmen für Services,
Microsoft 30%
IDC: (Managing Storage cost)=4*(Hardware cost)
Beispielrechnung : Napster
P2P & Napster
16
Kosten einer zentralisierten NapsterArchitektur
P2P & Napster
17
Kosten einer zentralisierten NapsterArchitektur
P2P & Napster
18
Kosten einer zentralisierten NapsterArchitektur
P2P & Napster
19
P2P-Architekturmodelle (1)
Reines P2P-Modell
• Hängt ausschließlich
von Clients ab
• Unabhängig von jedem
zentralen Server
• Besitzt eine Art PlugAnd-Play Feature
• Problem: Suche nach
anderen Peers im Netz
P2P & Napster
20
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
21
P2P-Architekturmodelle (3)
P2P mit Discovery- und
Lookup-Server
• Server stellt Liste der
schon verbundenen Peers
bereit und ihre
verfügbaren Ressourcen
• Reduzierung der Last der
Peers
P2P & Napster
22
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
23
Kriterien für P2P-Netzwerke
•
•
•
•
•
•
Handhabbarkeit
Informationskohärenz
Erweiterbarkeit
Fehlertoleranz
Sicherheit
Skalierbarkeit
P2P & Napster
24
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
25
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
26
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
27
Literaturhinweise
• Andy Oram: “Peer-to-Peer: Harnessing the Power of Disruptive
Technologies”, O'Reilly
• Dreamtech, „Peer-to-Peer - Applikationen entwickeln“, mitpVerlag
• “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
P2P & Napster
28
Napster
Ralf Anske
Stephan Lehmann
Überblick
•
•
•
•
•
•
Was ist Napster?
Geschichte von Napster
Was kann Napster?
Aufbau und Funktionsweise
Vor- und Nachteile
Napsters Erfolg
P2P & Napster
30
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
31
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
32
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
33
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
34
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
35
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
36
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
37
Was kann Napster?
P2P & Napster
38
Aufbau von Napster
• Zentral organisiertes
Peer-to-Peer Netz
• Zentrales
Verzeichnis
– Wer bietet was an
P2P & Napster
• Datenübertragung
direkt zwischen
Usern
• Konsument wird
automatisch zum
Anbieter
39
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
40
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
41
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
42
Wie funktioniert Napster?
• Verbindungen benutzen das NapsterProtokoll
• 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-ClientClone (Napigator, Napster Fast Search,
WinMX, JNapster, gNapster, KNapster,
Hackster etc.)
• Sowie offene Server-Projekte (OpenNap,
JNerve)
P2P & Napster
43
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
44
Ablauf eines Downloads
• Anfrage an NapsterServer
• 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
45
Ablauf eines Downloads
• Bestätigung durch
Server
• Server schickt
download ack (204)
mit der PortNummer des ZielClients
P2P & Napster
46
Initialisierung der
Verbindung
• Normale Verbindung
herstellen
• Client öffnet TCPVerbindung zum
Ziel-Client über Port
aus 204
P2P & Napster
47
Ablauf eines Downloads
• Bestätigung durch
Ziel-Client
• Ziel-Client antworte
mit „1“
P2P & Napster
48
Initialisierung der
Verbindung
• Datei anfordern
• Client sendet „GET“
+ <nick> +
<file_name> +
<offset>
P2P & Napster
49
Initialisierung der
Verbindung
• Anforderung
bestätigen
• Ziel-Client sendet
Dateigröße oder
„INVALID
REQUEST“ oder
„FILE NOT
SHARED“
P2P & Napster
50
Initialisierung der
Verbindung
P2P & Napster
• Alternativ kann die
Verbindung
zwischen den
Clients auch vom
Zielclient ausgehen
(firewalled
connection)
• Um Clients hinter
Firewalls benutzen
zu können
51
Initialisierung der
Verbindung
• Bestätigung durch
eigenen Client
P2P & Napster
52
Initialisierung der
Verbindung
• Anforderung zum
Upload der Datei auf
den eigenen Client
P2P & Napster
53
Initialisierung der
Verbindung
• Bestätigung
P2P & Napster
54
Senden der Daten
P2P & Napster
• Datentransfer
zwischen den
Clients
• Ziel-Client sendet
die Datei
• Clienten senden
„uploading
file“(220)/“downloadi
ng file“(218) an den
Server
55
Abschluss der
Übertragung
• Verbindung
zwischen den
Clients beenden
• Clients senden
„upload
complete“(221)/“dow
nload
complete“(219) an
den Server
P2P & Napster
56
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
57
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
58
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
59
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
60
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
61
Napsters Erfolg
• Nutzer mit schneller
Verbindung bieten
mehr an
• Nutzer mit
langsamer
Verbindung laden
mehr herunter
P2P & Napster
62
Die Zukunft: Napster 2.2
P2P & Napster
63
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
64
Literaturhinweise
• Andy Oram: “Peer-to-Peer: Harnessing
the Power of Disruptive Technologies”,
O'Reilly
• P2P-Buch04 Schoder-Fischbach P2PAnwendungsbereicheHerausforderungen
• Kwak, Fagin. Internet Infrastructure &
Services, Bear Stearns, 2001
P2P & Napster
65
Vielen Dank!
P2P & Napster
66
Herunterladen