Docstoc

folien_cgc_vorlesung_10_WS1112

Document Sample
folien_cgc_vorlesung_10_WS1112 Powered By Docstoc
					Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud




         10.Vorlesung Cluster-, Grid- und Cloud-Computing
                      Hochschule Mannheim

                                            Dr. Christian Baun
                                           wolkenrechnen@gmail.com

                                                   30.11.2011




Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112             1/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Wiederholung vom letzten Mal

       Grid-Computing
               Definitionen
               Klassifikation
               Unterscheidungen
               Middleware-Systeme
                       UNICORE
                       Globus Toolkit
                       gLite
                       XtreemOS
                       dCache
               Grid-Projekte
                       EGEE
                       EGI
                       D-Grid
               Grid-Computing vs. Cloud-Computing

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112             2/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Heute

       Peer-to-Peer (P2P)
               Grundlagen
               Einsatzgebiete
               Zentralisiertes P2P
                       Napster
               Pures bzw. reines P2P
                       Gnutella Version 0.4
               Hybrides P2P
                       Gnutella Version 0.6
                       FastTrack
               BitTorrent
               Verteilte Hashtabelle
               Bitcoins
               P2PTV
               Wuala
               P2P und Cloud
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112             3/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Peer-to-Peer – Grundlagen

       Ein Peer-to-Peer-System ist ein Verbund gleichberechtigter Knoten
               Knoten werden als Peers bezeichnet
                                                               a
               Knoten machen sich gegenseitig Ressourcen zug¨nglich
               Jeder Knoten ist gleichzeitig Client und Server
       Geeignet, um dezentral organisierte Arbeitsumgebungen aufzubauen

Andy Oram
A Peer-to-Peer system is a self-organizing system of equal, autonomous
entities (peers) which aims for the shared usage of distributed resources in a
networked environment avoiding central services.

Schreibweise
                                                 a
Eine einheitliche Schreibweise existiert nicht. H¨ufig wird Peer-to-Peer auch
P2P oder Peer-2-Peer (mit oder ohne Bindestriche) geschrieben

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112             4/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Einsatzgebiete von Peer-to-Peer


       Austausch von Daten (File Sharing)
               ¨                                 o
               Uberwiegender Einsatz als Tauschb¨rsen
                                                    o
               Ziel: Verteilung großer Datenmengen m¨glichst schnell an viele Benutzer
               Problem von Urheberrechtsverletzungen
                   u
               Zuk¨nftige Verbesserungen sind besonders im Bereich der
               Anonymisierung zu erwarten
               Anwendungen: BitTorrent, Napster, Gnutella, Kazaa, Overnet
       Kommunikation und Zusammenarbeit
                                          u
               Instant Messaging Systeme f¨r Textnachrichten und Chat
               Sicherer und anonymer Datenaustausch (Freenet)
                       u                  u
               Kosteng¨nstige und hochverf¨gbare Groupware (Groove)
               Anwendungen: ICQ, AIM, MSN, Jabber, Freenet, Groove, usw.



Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112             5/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Napster
       Napster war der Pionier des File-Sharing
               Entwickelt von Shawn Fanning (Student in Boston)
               Aktiv von Juni 1999 bis Juli 2001
       Napster war zentralisiertes P2P
               Napster enthielt zentralisiertes Indexing
               Clients laden ihre Dateiliste auf den Napster-Server
                                                                         a
               Clients befragen den Index-Server und erhalten eine vollst¨ndige
               Anbieterliste
               Datenaustausch erfolgte unmittelbar zwischen den Peers


       Ab Dezember 1999: Massive juristische
       Probleme mit der Musikindustrie und
        u
       K¨nstlern
       2001: Napster hat 77 Millionen Benutzer
       Juli 2001: Napster wird abgeschaltet
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112             6/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle        Bitcoins       P2PTV         P2P und Cloud



          a
Napster (H¨ufiges Bild aus jenen Tagen. . . )




                                                  Bildquelle: Wikipedia
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112             7/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Client-Server im Vergleich zu zentralisiertem P2P




       Was sind die Vor-/Nachteile von zentralisiertem P2P im Vergleich zu
       Client-Server?
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112             8/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Vor- und Nachteile von zentralisiertem P2P

       Vorteile:
               Peers kommunizieren direkt miteinander
                       Server hat nur wenige Aufgaben
               Sehr gute Erweiterbarkeit
                       Jeder weitere Peer verursacht nur wenig Last auf dem Server
               Ausfall einzelner oder mehrerer Peers kann dem Netzwerk und der
                   u
               Verf¨gbarkeit der Dienste nichts anhaben
               Zentralisierte Dienste bieten eine hohe Leistung
               Zentralisierter Dienst ist ein bekannter Einstiegspunkt
                                   o
                       Neue Peers k¨nnen leicht Teil des Systems werden
       Nachteile:
                                                         a
               Server verursachen Kosten (Strom, Stell߬che, Administration,. . . )
               Ohne die zentralisierten Dienste funktioniert das System nicht
               Zentralisierte Dienste sind immer ein Angriffspunkt
                                           a
                       Juristische Angriffsfl¨che

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112             9/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Gnutella

       Entwickelt von Justin Frankel und Tom Pepper bei Nullsoft (Winamp)
       Quellcode unter der GNU General Public License (GPL)
         a
       M¨rz 2000: Erste Version
              u
       Grund f¨r die Entwicklung
               Steigende Probleme von Napster 1999/2000
                       Klagen der Musikindustrie
               Napster verwendete Server zur zentralisierten Indexierung
                       Zentrale Server machen angreifbar!
               Ziel: Entwicklung einer Alternative, die ohne Server auskommt
                   u                                       u
       AOL – Eigent¨mer von Nullsoft – zog die Software zur¨ck
               Aber wenn der Quellcode schon mal unter der GPL freigegeben ist. . .
       Bekannte Clients: LimeWire, Morpheus, Shareaza, BearShare
                                       u                             u
       Gnutella ist heute ein Synonym f¨r das Protokoll und weniger f¨r eine
       spezielle Software
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            10/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Gnutella Protokoll Version 0.4
       http://rfc-gnutella.sourceforge.net/developer/stable/index.html
       Alle Peers sind gleichberechtigte Teilnehmer im Netzwerk
       Es gibt keine zentralisierten Dienste (Server) =⇒ reines/pures P2P
       Jeder Peer muss mindestens einen weiteren Knoten kennen
       Jeder Peer verwaltet eine Liste von ihm bekannten Peers
       Jeder Peer ist mit maximal 5 weiteren Peers aktiv verbunden

                  a
       Suchauftr¨ge sendet jeder Peer an
       alle mit ihm aktiv verbunden Peers
               Weiterleitungen nennt man Hops
               Maximal 7 Hops pro Suchauftrag
       Nachteile:
               Suchanfragen dauern sehr lange
               Netzwerk wird mit Suchanfragen
               geflutet
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            11/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Reines P2P im Vergleich zu reinem P2P




       P2P ohne dedizierte Server bezeichnet man als reines oder pures P2P
       Was sind die Vor-/Nachteile von reinem P2P?
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            12/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Vor- und Nachteile von reinem/purem P2P
       Vorteile:
                        a
               Keine Abh¨ngigkeit von Servern
                       Peers kommunizieren direkt miteinander
               Keine zentralen Angriffspunkte
                                                            o
                       System (Netzwerk) ist kaum zu zerst¨ren
                       Ausfall einzelner oder mehrerer Peers kann dem Netzwerk und der
                           u
                       Verf¨gbarkeit der Dienste nichts anhaben
                o
               H¨here Selbstbestimmung der Benutzer
                       Bei Client-Server muss bei steigender Anzahl von Clients auch die
                       Serverleistung steigen
               Kein Administrationsaufwand, da keine Server
       Nachteile:
               Schwieriger Einstieg
                       Es muss mindestens ein Peer bekannt sein
                                                        u
               Suchanfragen sind eine starke Belastung f¨r das Netzwerk
                                             u
               Listen von Daten und Peers m¨ssen verteilt werden (hoher Overhead)
                  u
       Beispiele f¨r Reines P2P: Gnutella (Version 0.4) und Freenet
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            13/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Technische Dateils von Gnutella 0.4 (1)




       Das Protokoll von Gnutella 0.4 arbeitet mit TCP/IP-Verbindungen
       Verbindungsaufbau
               Als Verbindungsanfrage sendet der neue Client:
               GNUTELLA CONNECT/0.4\n\n
                           u
               Will der gew¨nschte Peer antworten, sendet er:
               GNUTELLA OK\n\n
               o
       Danach k¨nnen Gnutella-Nachrichten ausgetauscht werden




Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            14/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Technische Dateils von Gnutella 0.4 (1)
       Aufbau von Gnutella-Nachrichten:
               Identifikation (16 Byte) Descriptor ID. Identifikation des sendenden Peers
               Funktionscode (1 Byte). Payload Descriptor. Kann sein:
                       0x00     =   Ping (Existenz anderer Knoten erkunden)
                       0x01     =   Pong (Antwort auf eine Ping-Nachricht)
                       0x40     =   Push (Dateien herunterladen)
                       0x80     =   Query (Suchen im Gnutella-Netzwerk)
                       0x81     =   Query Hit (Antwort auf eine Query-Nachricht)
               TTL (1 Byte). Gibt an wie viele Hops ein Paket machen darf
                       Wird bei jedem Schritt im Netzwerk um 1 dekrementiert
                       Ist der Wert 0, wird die Nachricht verworfen.
                               a      u
               Hops (1 Byte). Z¨hler f¨r die Hops
                       Wird bei jedem Schritt im Netzwerk um 1 inkrementiert
                     a                               a
               Datenl¨nge (4 Byte). Payload Length. L¨nge der Nutzdaten in Bytes
                                                      o                    a
                       Bestimmt, wo die Nachricht aufh¨rt und eine neue anf¨ngt




Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            15/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Nachrichten von Gnutella 0.4 (1)




       Das Protokoll Gnutella 0.4 kennt 5 Nachrichten
               Ping
               Pong
               Query
               QueryHit
               Push




Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            16/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Nachrichten von Gnutella 0.4 (2)

       Die Existenz anderer Knoten wird durch die Ping-Nachricht erkundet
                        a
               Ping enth¨lt keine weiteren Informationen
       Hat ein Knoten eine Ping-Nachricht empfangen, kann er mit einer
       Pong-Nachricht antworten
                                                a
               Die Antwort (Pong-Nachricht) enth¨lt folgende Felder:
                       Port und IP-Adresse des antwortenden Peers
                                               o                                 o
                       Anzahl der Dateien, die ¨ffentlich heruntergeladen werden k¨nnen
                                                     u
                       Summe aller Kilobytes der verf¨gbaren Dateien
       Die Query-Nachricht dient zum Suchen im Gnutella-Netzwerk
                                       a
               Die Query-Nachricht enth¨lt folgende Felder:
                       Kleinste Download-Bandbreite (in KB/sec), die der anfragende Peer
                                            u
                       akzeptieren will (0 f¨r jede beliebige Bandbreite)
                                                                                      u
                       Suchzeichenkette, meist Dateinamen, die Wildcards * enthalten d¨rfen

Quelle: http://krum.rz.uni-mannheim.de/inet-2004/sess-404.html

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            17/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Nachrichten von Gnutella 0.4 (3)

                                  a
       Die QueryHit-Nachricht enth¨lt die Antwort auf eine Query-Nachricht
                                          a
               Die QueryHit-Nachricht enth¨lt folgende Felder:
                                             u
                       Anzahl der Dateien, f¨r die die Anfrage zutrifft
                       Port und IP-Adresse des antwortenden Peer
                       Download-Bandbreite (in KB/sec), die der antwortenden Peer bieten kann
                       (≥ der verlangten Download-Bandbreite)
                         u                                      o
                       F¨r jede gefundene Datei: Index, Dateigr¨ße in KB und Dateiname
                       Information, ob sich der antwortende Peer hinter einer Firewall befindet
                       Identifikation des antwortenden Peers
                       Vendor Code zur Unterscheidung verschiedener
                       Gnutella-Implementierungen. z.B. BEAR = BearShare, GNUC = Gnucleus,
                       LIME = LimeWire, RAZA = Shareaza, MRPH = Morpheus
               Hat ein Peer keine passenden Dateien, erzeugt er keine
               QueryHit-Nachricht

Quelle: http://krum.rz.uni-mannheim.de/inet-2004/sess-404.html


Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            18/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Transport von Dateien bei Gnutella 0.4
       Zum Transport von Dateien verwendet Gnutella das HTTP 1.0 Protokoll
                                        a
       Die HTTP-Verbindung wird unabh¨ngig vom Gnutella-Netzwerk direkt
       zwischen Client und Server aufgebaut
               Die IP-Adresse und Portnummer steht in der QueryHit-Nachricht
       HTTP GET wird verwendet, um eine Datei, die durch eine
       QueryHit-Antwort spezifiziert ist, herunterzuladen
       GET / get / < Index in QueryHit >/ < DateiName >/ HTTP /1.0\ r \ n
       Connection : Keep - Alive \ r \ n
       Range : bytes =0 -\ r \ n
       User - Agent : Gnutella \ r \ n
       \r\n


       Der antwortende Peer (Server) sendet die Datei via HTTP
       HTTP 200 OK \ r \ n
       Server : Gnutella \ r \ n
       Content - type : application / binary \ r \ n
       Content - length : xxx \ r \ n
       \r\n
       < xxx Bytes Dateiinhalt >


       Problem: Was ist, wenn sich der Server hinter einer Firewall befindet?
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            19/68
Zentralisiertes, reines und hybrides P2P       Verteilte Hashtabelle      Bitcoins       P2PTV         P2P und Cloud



Nachrichten von Gnutella 0.4 (4)
       Die Push-Nachricht dient dem Herunterladen von Dateien, wenn der
       Server sich hinter einer Firewall befindet
                                      a
               Die Push-Nachricht enth¨lt folgende Felder:
                                                                a
                       Identifikation des anbietenden Peers (Empf¨nger der Nachricht)
                       Port und IP-Adresse des anfragenden Peers
                                     u
                       Index der gew¨nschten Datei
               Anders als bei HTTP GET, bei dem der Client die TCP/IP-Verbindung
               zum Server aufbaut, baut hier der Server die Verbindung zum Client auf
                       Der Server schickt einen GIV-Header
                        GIV < Index >: < PeerID >/ < DateiName >\ r \ n

                       Darauf stellt der Client seine HTTP GET-Anfrage
                        GET / get / < Index >/ < DateiName >/ HTTP /1.0\ r \ n
                        ...
                        HTTP 200 OK \ r \ n
                        ...




Quelle: http://krum.rz.uni-mannheim.de/inet-2004/sess-404.html

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            20/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Weiterleitung (Routing) von Gnutella-Nachrichten (1)

        u
       F¨r jede Nachricht wird das TTL-Feld dekrementiert (erniedrigt)
               Ist der Wert des TTL-Felds 0, wird die Nachricht verworfen
        u                                                        o
       F¨r jede Nachricht wird das Hops-Feld inkrementiert (erh¨ht)
       Erkennt der Peer, dass eine Nachricht innerhalb eines (kurzen)
       Zeitraums, erneut eingetroffen ist, verwirft er die Nachricht
               Dient zur Schleifenerkennung (Loop Detection)

       Eingehende Ping- und Query-Nachrichten werden
       mit einer Pong- bzw. einer QueryHit-Nachricht
       beantwortet
               Pong-Nachrichten enthalten die IP-Adresse
               QueryHit-Nachricht enthalten die IP-Adresse und
               eine Liste der Treffer
       Eingehende Ping- und Query-Nachrichten werden an alle Verbindungen
       (außer der eingehenden) weiter geleitet, falls der Wert von TTL > 0 ist
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            21/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Weiterleitung (Routing) von Gnutella-Nachrichten (2)

       Eingehende Pong- und QueryHit-Nachrichten
       werden nur auf der Verbindung weitergeleitet,
       von der die entsprechenden Ping- bzw.
       Query-Nachrichten kamen
               Andernfalls werden sie verworfen



       Push-Nachrichten werden nur in der Verbindung
       weitergeleitet, von der eine entsprechende
       QueryHit-Anfrage beantwortet wurde
               Andernfalls werden sie verworfen



Quelle: http://krum.rz.uni-mannheim.de/inet-2004/sess-404.html


Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            22/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Reines P2P hat Grenzen



                                         a
       Netzwerkbelastung von reinem P2P l¨sst das System bei einer hohen
       Anzahl von Peers unbenutzbar werden
               Langsam
               Netzwerkoverhead hoch
       Alternative: Zentralisierte Dienste mit dedizierten Servern
                        u
               Nicht erw¨nscht
       Alternative: Hybrides Peer-to-Peer




Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            23/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Hybrides P2P: Gnutella Protokoll Version 0.6

       Unterscheidung der Knoten in Blattknoten (Leaf Nodes) und Ultrapeers
       Jeder Blattknoten ist mit maximal 3 Ultrapeers verbunden
       Jeder Ultrapeer ist mit maximal 16 weiteren Ultrapeers und 16
       Blattknoten verbunden
               Jeder Suchauftrag macht nur maximal 4 Hops
       Neues Protokoll: Query Routing Protocol (QRP) – Suchanfragen
       Leitungsprotokoll
       Kurzfassung des QRP
               Jeder Blattknoten schickt seinem Ultrapeer eine Liste der Namen
               innerhalb der Dateinamen der angebotenen Dateien
               Suchanfragen werden nur an Peers weitergeleitet, bei denen die Liste der
               Namen erfolgversprechend ist
               Die Ultrapeers tauschen die Namenslisten untereinander aus
       Hybrides P2P realisiert eine Art dynamischen, zentralisierten Dienst
               Vorteile von reinem P2P bleiben erhalten
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            24/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Gnutella: Ultrapeers und Blattknoten




         o         a          u
Quelle: J¨rg Ebersp¨cher und R¨diger Schollmeier. First and Second Generation of Peer-to-Peer
Systems (2005). LNCS 3485
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            25/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



FastTrack (Protokoll von KaZaA)

       Das FastTrack-Protokoll basiert auf dem Gnutella Protokoll 0.6
                                         u                        u
               Supernodes agieren als vor¨bergehende Indexserver f¨r langsamere Peers
                                                            o
               Skalierbarkeit des Netzwerks wird dadurch erh¨ht
       Ablauf:
               In der Client-Software ist eine Liste von IPs einiger Supernodes enthalten
               Client versucht eine Verbindung mit diesen bekannten Supernodes
               herzustellen
               Wurde ein Supernode erreicht, ruft der Client die Liste von derzeit
               aktiven Supernodes ab
               Client sucht sich einen Supernode aus, dem er eine Liste der angebotenen
                             a                      a
               Dateien hochl¨dt und uber den er s¨mtliche Suchanfragen stellt
                                       ¨
               Der Supernode kommuniziert mit weiteren Supernodes, um Suchanfragen
                                 u
               der Clients zu erf¨llen
               Wurde eine gesuchte Datei gefunden, baut der Client eine direkte
               Verbindung zur Quelle auf, und die Datei wird uber HTTP ubertragen
                                                                ¨           ¨

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            26/68
Zentralisiertes, reines und hybrides P2P       Verteilte Hashtabelle     Bitcoins        P2PTV         P2P und Cloud



Peer-to-Peer (File-Sharing) Netzwerke – kleine Auswahl

       Peer-to-Peer Netzwerk               Clients
       Ares                                Ares
       Blubster                            Blubster
       FileSpree                           FileSpree
       Filetopia                           Filetopia
       Gnutella                            AquaLime, BearShare, FileNavigator, FreeeWire, Gnucleus,
                                           LimeWire, Phex, Shareaza, Xolox Ultra
       Direct Connect                      Direct Connect, DC++. Koala DC
       eDonkey2000                         eDonkey2000, eMule
       FastTrack                           Morpheus, KaZaA, KaZaA Lite, Grokster, iMesh
       OpenNap                             Napster, Shuban, File Navigator, Rapigator, Spotlight,
                                           StaticNap, SunshineUN, Swaptor, WinMX OpenNap
       Overnet                             Overnet, eDonkey2000, MLDonkey
       Piolet                              Piolet
       MinMX                               MinMX
       Freenet                             Freenet, Entropy, Frost
       Entropy                             Entropy, Frost, Freenet
       WASTE                               WASTE

Quelle: http://www.umkc.edu/is/security/p2p_explanation.asp

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            27/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



BitTorrent

       System zur schnellen Verteilung großer Datenmengen
       Entwickelt von Bram Cohen
       Juli 2001: Erste Version
       Im System selbst kann man nicht nach Daten suchen
                                               a
       Will ein Peer eine oder mehr zusammenh¨nge Dateien herunterladen,
           o
       ben¨tigt er die passende Torrent-Datei
                    a                                      o
               Enth¨lt die IP-Adressen der Tracker, Dateigr¨ße und eine Liste von
                 u
               Pr¨fsummen von Segmenten
               Torrent-Dateien sind nur wenige KB groß und werden uberwiegend auf
                                                                   ¨
               speziellen Webseiten gesammelt und angeboten (z.B. The Pirate Bay)
                              u
       Ein Tracker verwaltet f¨r jeden Torrent eine Liste von Peers, die Teile
       der Datei besitzen
                                        a
               Ein BitTorrent-Client erh¨lt vom Tracker diese Liste
               Mit der Liste kann der Client (Peer) nun direkt bei den anderen Peers mit
               Teilen der gesuchten Datei anfragen
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            28/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



BitTorrent (2)

       Chunks: Segmente einer Datei
       Schwarm: Menge der Peers, die
       am gleichen Torrent interessiert
       sind
       Seeds: Peers, die den kompletten
       Torrent besitzen
               Diese Peers laden nichts mehr
               herunter, sondern verteilen
               lediglich
       Leechs: Peers, die noch nicht den
       kompletten Torrent besitzen
               Diese Peers laden von anderen
               Peers herunter


Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            29/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



BitTorrent (3)




                                      u
       Ist der Tracker nicht mehr verf¨gbar, ist die Torrent-Datei nutzlos
       Ohne funktionierenden Tracker kann keine aktuelle Liste mit Seeds und
       Leechs bezogen werden
                                       o
               Mit Hilfe dieser Liste k¨nnen die Leechs bei anderen Seeds und Leechs
               nach fehlenden Chunks anfragen
       Will man selbst etwas anbieten, muss man einen Tracker betreiben und
       die passende Torrent-Datei anbieten/verteilen




Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            30/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



BitTorrent in Cloud-Infrastrukturen


                                         o
       BitTorrent ist eine hocheffiziente L¨sung zur Verteilung großer
       Datenmengen
                                              o
       Ein Beispiel, wo große Datenmengen m¨glichst rasch ubermittelt
                                                            ¨
                 u
       werden m¨ssen, ist das Verteilen von Images auf die physischen Knoten
       in Cloud-Infrastrukturen
       Das CERN betreibt einen virtuellen Cluster auf Basis von OpenNebula
               Cluster wird mit bis zu 16.000 virtuellen Maschinen dynamisch erweitert
                                              o
               Maximal 400.000 Rechenjobs k¨nnen in annehmbarer Zeit vom
               LSF-Scheduler verarbeitet werden
               Verteilung der Images und Daten im Cluster am besten via BitTorrent




Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            31/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



P2P Zusammenfassung




         o         a          u
Quelle: J¨rg Ebersp¨cher und R¨diger Schollmeier. First and Second Generation of Peer-to-Peer
Systems (2005). LNCS 3485
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            32/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



BitTorrent nun auch ohne Tracker
BitTorrent nun auch ohne Tracker
19.5.2005

Bram Cohen, bzw. mittlerweile die Firma BitTorrent Inc., hat eine neue Version der
                                      o
Peer-to-Peer-Software BitTorrent ver¨ffentlicht, die ohne Tracker auskommt. Die Verteilung von
Dateien uber BitTorrent soll damit deutlich einfacher werden, schließlich kommt die Version 4.1.0,
         ¨
die als Beta vorliegt, ohne die entsprechende Server-Software aus.

So ganz kommt BitTorrent dabei zwar nicht ohne Tracker aus, die neue Version macht aber jeden
Client zu einem leichtgewichtigen Tracker. Ein Protokoll auf Basis des Kademlia-Algorithmus, das
somit verteilte Hash-Tabellen (Distributed Hash Table, DHT) nutzt, erlaubt den Clients einen
effizienten Austausch von Kontaktinformationen anderer Peers.

                                                       u
Wer Dateien uber BitTorrent verteilen will, hat dabei k¨nftig die Wahl zwischen dem
             ¨
    o
herk¨mmlichen System mit Tracker und einer Trackerless“-Variante. Festgelegt wird dies beim
                                              ”
                                                                   a
Generieren der Torrent-Datei, die die Download-Informationen enth¨lt und beispielsweise uber eine
                                                                                        ¨
Webseite verteilt wird.

(Jens Ihlenfeld)

Quelle: http://www.golem.de/0505/38130.html
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            33/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Verteilte Hashtabelle – Distributed Hash Table (DHT)

       Datenstruktur, mit der die Speicherorte von Dateien in einem
                                       o
       P2P-System gespeichert werde k¨nnen
               Ziel: Dezentralisierte und effiziente Datenspeicherung und -lokalisierung
       Jeder Speicherknoten entspricht einem Eintrag in der Hashtabelle
       Positive Eigenschaften der DHT
                                                                o
               Selbstorganisation: Keine manuelle Konfiguration n¨tig
                       Ausfall, Beitritt und Austritt einzelner Knoten wird verkraftet
               Skalierbarkeit: Das System funktioniert auch mit vielen Knoten
                        o               a
                       M¨glichst gleichm¨ßige Datenspeicherung uber die vorhandenen Knoten
                                                               ¨
                                        a                        u
               Lastenverteilung: Gleichm¨ßige Verteilung der Schl¨ssel auf den Knoten
               Fehlertoleranz: Auch wenn Knoten ausfallen oder das System verlassen
               Robustheit: Auch wenn Knoten versuchen das System zu st¨reno

                                               o
DHTs werden auch in großen verteilten Speicherl¨sungen wie Amazon Dynamo und in verteilten
Suchmaschinen wie YaCy (http://yacy.net) verwendet

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            34/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Verteilte Hashtabelle – Distributed Hash Table (DHT)
       Man unterscheidet DHTs nach dem Speicherschema
               Direct Storage
                       Die Daten werden direkt innerhalb der DHT abgelegt
                            u
                       Nur f¨r Daten <1 kB geeignet, da das System sonst unflexibel wird
               Indirect Storage
                       In der DHT werden nur Verweise auf die Daten vorgehalten
       Bekannte DHT-Implementierungen sind Chord und Kademlia
       Bekannte Software die DHT verwendet:
               Aktuelle BitTorrent-Clients (u.a. Azureus, BitComet, KTorrent, rTorrent,
               µTorrent), eDonkey2000 Overnet, Freenet (anonymer Datenspeicher),
               LimeWire, MLDonkey (Overnet und Kademlia),. . .

    u
Schl¨ssel?
                          a            u
       Im Folgenden wird h¨ufig von Schl¨sseln gesprochen
               u
       Ein Schl¨ssel kann so ziemlich allen Arten von Ressourcen zugewiesen sein
        a             u
       H¨ufig sind Schl¨ssel Dateien oder Prozessen zugewiesen

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            35/68
Zentralisiertes, reines und hybrides P2P                Verteilte Hashtabelle         Bitcoins   P2PTV   P2P und Cloud



Streuwertfunktionen – Hashfunktionen
                                  o
       Abbildung, die von einer gr¨ßeren Eingabe eine kleinere Zielmenge (den
                                         u
       Hashcode, Hashwert oder die Pr¨fsumme) erzeugt
       Der Name stammt vom englischen to hash = zerhacken“
                                                     ”
                                        u
       Eine gute“ Hashfunktion liefert f¨r unterschiedliche Eingaben auch
            ”
       unterschiedlichen Ausgabewerten
                Der Hashwert einer Datei ist mit einem Fingerabdruck vergleichbar
                                         ¨
       Hashcodes verwendet man u.a. um Ubertragungsfehler zu erkennen
       In der Kryptologie werden Hashfunktionen zum Signieren verwendet
       Bekannte (und gute“) Hashverfahren sind MD5 und SHA-1
                      ”
                Diese Verfahren sind praktisch kollisionsfrei
                                                              a
                =⇒ Die Wahrscheinlichkeit von doppelten Eintr¨gen ist minimal
                                        u
                MD5 erzeugt 128-Bit-Pr¨fsummen
                                          u
                SHA-1 erzeugt 160-Bit-Pr¨fsummen
       $ md5sum f o l i e n _ c g c _ v o r l e s u n g _ 0 9 _ W S 1 1 1 2 . pdf
       6 d56fd409d2a19108b465852847023c5
       $ sha1pass f o l i e n _ c g c _ v o r l e s u n g _ 0 9 _ W S 1 1 1 2 . pdf
       $4$ZBzAMGff$inCNpYGkPnh3o9ES6mn106qnnbY$


Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112              36/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Verteilte Hashtabelle – Kurzfassung
                                                           u
       Mit einer Hashfunktion werden den Ressourcen Schl¨ssel in einem
                                   u
       linearen Wertebereich (Schl¨sselraum) zugewiesen
                u
       Den Schl¨sselraum kann man sich als Ring vorstellen
                                          u
       Die Ressourcen werden in den Schl¨sselraum gehasht
                     u               o               a
       Ziel: Der Schl¨sselraum soll m¨glichst gleichm¨ßig uber die Knoten der
                                                          ¨
       Knotenmenge verteilt werden

                                           Vorgehen: Die Knoten werden in den
                                               u
                                           Schl¨sselraum des gleichen Rings gehasht
                                                      u
                                                   Daf¨r ist ein eindeutiges Merkmal (z.B. die
                                                                 o
                                                   IP-Adresse) n¨tig
                                                u                     a
                                           Der f¨r eine Ressource zust¨ndige Knoten ist nun
                                           der Knoten, der ausgehend von der Ressource im
                                                              a
                                           Uhrzeigersinn am n¨chsten dran ist
                                                    a
                                                   F¨llt dieser Knoten aus, ist der im Uhrzeigersinn
                                                    a
                                                   n¨chste erreichbare Knoten verantwortlich
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            37/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Verteilte Hashtabelle – Arbeitsweise von Chord
       Protokoll zur Implementierung eines verteilten Lookup-Service
               Ein Lookup-Service ist ein Dienst um Daten zu suchen
        u                              u
       F¨r jeden Knoten und jeden Schl¨ssel wird mit einer Hashfunktion
                                 a
       (z.B. SHA-1) eine m-Bit (h¨ufig 160 Bit) lange ID berechnet
                   o
               Es k¨nnen sich maximal 2m Knoten im System befinden
       Die Knoten sind in einem Ring angeordnet =⇒ Chord Ring
                                                    u
                                            Ein Schl¨ssel k wird dem Knoten n zugewiesen,
                                            dessen ID ≥ der ID des Schl¨ssels k ist
                                                                       u
                                                   Dieser Knoten wird Nachfolger (Successor)
                                                   von k genannt
                                                                                   u
                                            Chord bietet folgende Funktion: Finde f¨r
                                                u               a
                                            Schl¨ssel k den zust¨ndigen Knoten n
                                                              o
                                                   Das soll m¨glichst effizient geschehen
                                                   n ist der Nachfolger (Successor)
 Schl¨sselverteilung im Chord Ring
     u                                 Quelle: http://sarwiki.informatik.hu-berlin.de/Chord
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            38/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Arbeitsweise von Chord – Lineare Suche

       Einfachste Form der Suche nach einem Knoten: Lineare Suche
       Jeder Knoten n kennt dabei nur seinen Nachfolgeknoten n (Successor)
                                                           u
       Wird eine Suchanfrage an einen Knoten gerichtet, pr¨ft dieser, ob sein
                        u                      u         a
       Nachfolgeknoten f¨r den angefragten Schl¨ssel zust¨ndig ist
               Die Anfrage wird so lange an den jeweils nachfolgenden Knoten
               weitergereicht, bis das Ziel erreicht ist

                                            Voraussetzung: Jeder Knoten kennt seinen
                                            Nachfolgeknoten
                                                   Das ist in einem Ring gegeben
                                            Aber: Die lineare Suche ist nicht effizient
                                                    a                    a
                                                   L¨nge des Suchpfades w¨chst linear zur Anzahl
                                                   der Knoten

                                       Quelle: http://sarwiki.informatik.hu-berlin.de/Chord
   Lineare Suche im Chord Ring
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            39/68
Zentralisiertes, reines und hybrides P2P           Verteilte Hashtabelle        Bitcoins    P2PTV      P2P und Cloud



                            a
Arbeitsweise von Chord – Bin¨re Suche

                                                        a
       Skalierbare Form der Suche nach einem Knoten: Bin¨re Suche
                                                                     o
               Dabei sind weitere Informationen uber den Chord-Ring n¨tig
                                                ¨
       Jeder Knoten verwaltet eine Tabelle mit Verweisen auf m Knoten
               m ist die Anzahl der Bits der verwendeten IDs
               Die Verweise nennt man Chord Finger und die Tabelle Fingertable

                                                                                      Der Start-Wert des i-ten
                                           Fingertable von Knoten n = 8
                                                                                      Eintrags der Tabelle auf
                                            Eintrag      Start     Knoten
                                               1             9             11
                                                                                      Knoten n ist n + 2i−1
                                               2            10             11
                                               3            12             14         Der Knoten-Wert des
                                               4            16             17
                                               5            24              1
                                                                                      Eintrags zeigt auf den
                                                                                      ersten Knoten, der auf n
                                                                  a
                                           Die Tabelle hat 5 Eintr¨ge, weil
                                            m die L¨nge der ID in Bit ist
                                                   a                                  in einem Abstand von
                                                     und m = 5
Finger im Chord Ring                                                                  mindestens 2i−1 folgt
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            40/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Arbeitsweise von Chord – Fingertablle und Suchanfragen
       Aufbau der Fingertablle:
               Der letzte Eintrag der Tabelle zeigt auf einen Knoten, der mindestens
               eine halbe Umrundung des Chord-Rings entfernt liegt
               Der vorletzte Eintrag der Tabelle zeigt auf einen Knoten, der mindestens
               eine viertel Umrundung entfernt ist
               usw.
       Mit jedem Hop kann die Distanz zum Ziel halbiert werden
                                           a
               Darum ist die maximale Pfadl¨nge einer Suchanfrage O(log N) Hops
                                                   u              a
       Bei einer Suchanfrage an Knoten n nach Schl¨ssel k wird zun¨chst der
        a                  a            u
       n¨chstgelegene Vorg¨nger des Schl¨ssels gesucht, den Knoten n kennt
               Dabei wird die Fingertablle von unten nach oben durchsucht, bis der erste
               Eintrag i gefunden wird, dessen Knoten nicht zwischen n und k liegt
                                          a                 a
               Der Eintrag i + 1 ist der n¨chstgelegene Vorg¨nger von k, den n kennt
                       Die Suche wird mit Hilfe dieses Knotens fortgesetzt
                                                                                           u
                       Das wiederholt sich, bis der Knoten gefunden ist, dessen Successor f¨r k
                           a
                       zust¨ndig ist

Quelle: http://sarwiki.informatik.hu-berlin.de/Chord
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            41/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV            P2P und Cloud



Arbeitsweise von Chord – Beispiel

                                                                                          Fingertablle von Knoten n = 8

                                                                                           Eintrag      Start    Knoten
        Beispiel: Es wird eine                                                                1            9           11
                                                                                              2           10           11
        Suchanfrage nach einem                                                                3           12           14
            u
        Schl¨ssel mit der ID 3 an                                                             4
                                                                                              5
                                                                                                          16
                                                                                                          24
                                                                                                                       17
                                                                                                                        1
        Knoten 8 gerichtet
                                                                                                                 a
                                                                                          Die Tabelle hat 5 Eintr¨ge, weil
                                                                                                  a
                                                                                           m die L¨nge der ID in Bit ist
                                                                                                    und m = 5

                                a                               a
       Knoten 8 sucht den ihm n¨chstgelegenen, bekannten Vorg¨ngerknoten
               u
       von Schl¨ssel 3 (Knoten 1) und richtet die Anfrage an diesen
                                                  u   a
               Anmerkung: Man kann im Ring nicht r¨ckw¨rts suchen!
                                                                   u      u
       Knoten 1 stellt fest, dass sein Nachfolgeknoten (Knoten 4) f¨r Schl¨ssel
             a
       3 zust¨ndig ist

Quelle: http://sarwiki.informatik.hu-berlin.de/Chord

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112                 42/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Arbeitsweise von Chord – Beispiel von Tanenbaum (1)

                     u
       Beispiel: Schl¨ssel 26 aus
                     o
       Knoten 1 au߬sen
       Knoten 1 schaut in
       seiner Fingertabelle nach
           u
       Schl¨ssel 26
                o
       26 ist gr¨ßer als der
       Wert des letzten Eintrags
       (18) in der Fingertabelle
       Die Anfrage wird an
       Knoten 18 weitergeleitet

       Knoten 18 w¨hlt Knoten 20, da Knoten 20 < Schl¨ssel 26 ≤ Knoten 28
                  a                                  u
       Knoten 20 w¨hlt Knoten 21, da Knoten 21 < Schl¨ssel 26 ≤ Knoten 28
                  a                                  u
                  a                          u      u            a
       Knoten 21 w¨hlt Knoten 28, da dieser f¨r Schl¨ssel 26 zust¨ndig ist
       Die Adresse von Knoten 28 wird an Knoten 1 gesendet
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            43/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Arbeitsweise von Chord – Beispiel von Tanenbaum (2)



                     u
       Beispiel: Schl¨ssel 12 aus
                       o
       Knoten 28 au߬sen
       Knoten 28 schaut in
       seiner Fingertabelle nach
           u
       Schl¨ssel 12




       Knoten 28 w¨hlt Knoten 4, da Knoten 4 < Schl¨ssel 12 ≤ Knoten 14
                    a                                 u
       Knoten 4 w¨hlt Knoten 9, da Knoten 9 < Schl¨ssel 12 ≤ Knoten 14
                  a                                 u
       Knoten 9 w¨hlt Knoten 11, da Knoten 11 < Schl¨ssel 12 ≤ Knoten 14
                  a                                    u
                    a                        u      u            a
       Knoten 11 w¨hlt Knoten 14, da dieser f¨r Schl¨ssel 12 zust¨ndig ist
       Die Adresse von Knoten 14 wird an Knoten 28 gesendet
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            44/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Arbeitsweise von Chord – Eintritt neuer Knoten (1)

       Will ein Knoten in den Ring eintreten, braucht er einen Einstiegspunkt
               In der Regel verwendet man bekannte Knoten (Well-Known-Knoten)

       Die ID des neuen Knotens wird berechnet
                  u
               Daf¨r wird die Hashfunktion ublicherweise auf die
                                           ¨
               IP-Adresse oder MAC-Adresse angewendet
       Danach setzt der neue Knoten eine Suchanfrage am
       Einstiegsknoten ab
               Der neue Knoten sucht seinen Nachfolger
       Der neue Knoten setzt seinen Nachfolger-Zeiger
               Danach informiert er seinen Nachfolger uber seine
                                                      ¨
               Existenz
                               u
       Der Nachfolger uberpr¨ft, ob die ID des neuen Knotens
                        ¨
         o                                 a
       gr¨ßer ist als die ID des alten Vorg¨ngers und passt
                          a
       dann seinen Vorg¨nger-Zeiger an
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            45/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Arbeitsweise von Chord – Eintritt neuer Knoten (2)

                                  u
       Bei der periodischen Ausf¨hrung des
                                                      a
       Stabilisierungsprotokolls erkennt der alte Vorg¨nger, das
       der neue Knoten sein Nachfolger ist und passt seinen
       Nachfolger-Zeiger an
               Danach informiert er den neuen Knoten, das er sein
               neuer Nachfolger ist
                                                   a
       Der neue Knoten passt darauf hin seinen Vorg¨nger-Zeiger an
               Der Ring ist nun wieder in einem stabilen Zustand
       Der neue Knoten muss noch seine Fingertabelle erstellen
                   u                          u
               Daf¨r setzt der neue Knoten f¨r jeden Eintrag eine Suche ab
               Einfacher ist es die Fingertabelle des direkten Nachfolgers zu kopieren
                       Dessen Tabelle unterscheidet sich nur wenig von der des neuen Knotens
                       Das Stabilisierungsprotokoll wird die Tabelle aktualisieren
                                                                  u
                       Die Korrektheit der Fingertabelle ist nur f¨r die Dauer der Suche, nicht
                             u
                       aber f¨r die Korrektheit des Suchergebnisses ausschlaggebend

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            46/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Arbeitsweise von Chord – Stabilisierung (1)

       Das Stabilisierungsprotokoll hat 3 Aufgaben:
           1   Neue Knoten im System bekannt machen
           2   Struktur des Rings erhalten
           3   Fingertabellen der Knoten aktualisieren
       Das Stabilisierungsprotokoll besteht aus drei Schritten und verwendet
       drei Funktionen
           1                               u
               stabilize() =⇒ Nachfolger pr¨fen
           2                    a       u
               notifiy() =⇒ Vorg¨nger pr¨fen
           3   fix_fingers() =⇒ Fingertabelle aktualisieren
                  a          a
       In regelm¨ßigen Abst¨nden (z.B. 30 Sekunden) wird das
                                          u
       Stabilisierungsprotokoll durchgef¨hrt
                a                                        a
       Auch w¨hrend der Stabilisierung und wenn Eintr¨ge in Fingertabellen
       falsch sind, funktioniert die lineare Suche im Ring
               Das Suchen geht dann nur langsamer

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            47/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Arbeitsweise von Chord – Stabilisierung (2)

  1                                u
       stabilize() =⇒ Nachfolger pr¨fen
                               u                          a
               Jeder Knoten pr¨ft, ob er noch der Vorg¨nger seines Nachfolgers ist
               Ist das Ergebnis negativ, existiert ein neuer Knoten zwischen beiden
                       Der neue Knoten wird zum Nachfolger
                       Danach wird dem neuen Knoten via notifiy() mitgeteilt, das der
                                                  a
                       aufrufende Knoten sein Vorg¨nger ist
  2                     a       u
       notifiy() =⇒ Vorg¨nger pr¨fen
                                  u
               Jeder Knoten uberpr¨ft, ob. . .
                            ¨
                                         a                    u
                       der bisherige Vorg¨nger nicht mehr verf¨gbar ist
                       oder die ID des aufrufenden Knotens zwischen der ID des bisherigen
                            a
                       Vorg¨ngers und der eigenen ID liegt
                          a                                              a
               In beiden F¨llen, wird der aufrufende Knoten der neue Vorg¨nger
  3    fix_fingers() =⇒ Fingertabelle aktualisieren
                      u
               Setzt f¨r jeden Eintrag der Fingertabelle eine Suche nach dessen
               Start-Wert ab

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            48/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Bitcoins – Geld auf P2P-Basis

       Bitcoin ist elektronisches Geld, das dezentral erzeugt wird
       Die Menge an Bitcoins hat in der Software eine feste Obergrenze
               Der letzte Block (Nr. 6.929.999) aus dem Bitcoins generiert werden
                o
               k¨nnen, sollte um das Jahr 2140 generiert werden
                       Dann bleibt die Gesamtzahl der Bitcoins bei ca. 21 Millionen stehen
               Aktuell (Stand Juli 2011) existieren ca. 6,7 Millionen Bitcoins
                       Quelle: http://blockexplorer.com/q/totalbc
               Das Wachstum wird alle 4 Jahre halbiert
       Ein Bitcoin kann auf acht Dezimalstellen unterteilt werden
               Damit ist 0,00000001 BTC der kleinste Wert
                                                                         o
       Die Anzahl existierender Bitcoins ergibt sich aus der Anzahl an Bl¨cken
                               u
       multipliziert mit dem M¨nzwert eines Blocks
                    u        u                             o        a
               Der M¨nzwert f¨r jeden der ersten 210.000 Bl¨cke betr¨gt 50 BTC
                    u        u             a                 o
               Der M¨nzwert f¨r jeden der n¨chsten 210.000 Bl¨cke ist 25 BTC
                    u        u             a                 o
               Der M¨nzwert f¨r jeden der n¨chsten 210.000 Bl¨cke ist 12,5 BTC, usw.
       Dadurch steigt die Anzahl der existierenden Bitcoins immer langsamer
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            49/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Bitcoins – Geldbeutel (Wallet-Datei)

                                              a
       Jeder Benutzer der Bitcoin-Software erh¨lt eine Wallet-Datei
       /home/Benutzername/.bitcoin/wallet.dat
                                                o                                u
               In dieser Datei befindet sich ein ¨ffentlicher und ein privater Schl¨ssel
                           o              u
                       Der ¨ffentliche Schl¨ssel dient als Bitcoin-Adresse zum Senden und
                       Empfangen von Bitcoins
                                       u
                       Der private Schl¨ssel autorisiert die Transaktionen
               Die Adressen enthalten keinerlei Informationen uber seinen Besitzer
                                                              ¨
               Zum besseren Austausch gibt es eine lesbare Form von 33 Zeichen
                                                 u
               Jede neue Generierung eines Schl¨sselpaares gleicht einem neuen Konto
                       Somit kann jeder Benutzer theoretisch unendlich viele Konten besitzen
                                           a                         u
       Ein großer Vorteil von Bitcoin: Es f¨llt keine Transaktionsgeb¨hr an
                            a        ¨
               Theoretisch w¨re eine Uberweisung von 0,00000001 BTC m¨glicho
               Der Einfachheit halber hat man sich auf die zweite Stelle hinter dem
                                        a
               Komma als kleinste, vertr¨gliche Einheit geeinigt

                                 o                             o
Guter Artikel: Florian Hofmann, J¨rn Loviscach. Virtuelles Verm¨gen. c’t 17/2011. S.74-79

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            50/68
 Zentralisiertes, reines und hybrides P2P    Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



                    a                     ¨
 Bitcoins – Anonymit¨t von Transaktionen (Uberweisungen)
        Zahlungen sind bedingt anonym
                                                     a
                Eine Zahlungsadresse kann den Empf¨nger nicht identifizieren
                             a                          o
                Die Anonymit¨t ist vergleichbar mit herk¨mmlichem Bargeld
                   ¨                   u
        Wurde eine Uberweisung ausgef¨hrt, erzeugt der Bitcoin-Client
        automatisch eine neue Bitcoin-Adresse
                            u
                Man sollte f¨r jede Transaktion eine andere Adresse verwenden, damit es
                   o
                unm¨glich wird, Geldbewegungen nachzuvollziehen

                                                                               Die Statusanzeige gibt
                                                                               Auskunft, mit wie vielen Peers
                                                                               man verbunden ist, wie viele
                                                                                 o
                                                                               Bl¨cke bereits abgearbeitet
                                                                               wurden und wie viele
                                                                               ¨                       a
                                                                               Uberweisungen bisher get¨tigt
                                                                               bzw. entgegengenommen
                                                                               wurden
Bildquelle: http://kalingeling.wordpress.com/2010/12/19/bitcoin-tutorial/
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            51/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud


                          ¨
Bitcoins – Transaktionen (Uberweisungen)
                           ¨
       Die Validierung der Uberweisungen findet durch die Knoten statt
                                      o
       Alle Transaktionen werden in Bl¨cken gespeichert und von allen
                                            a            u           a
       angeschlossenen Clients blockweise st¨ndig uberpr¨ft und best¨tigt
                                                  ¨
                                                                      o
       Jeder Client hat Zugriff auf den aktuellen und alle erzeugten Bl¨cke
                                                                             o
               Der Client holt beim Start alle zwischenzeitlich erstellten Bl¨cke
                  o             u
       Zahlungen k¨nnen durchgef¨hrt werden, obwohl ein Client offline ist
               Abgesendete Transaktionen werden in den aktuell vom Netzwerk
                                                                          u
               bearbeiteten Block geschrieben und von allen Clients uberpr¨ft
                                                                    ¨
                       Das verhindert doppelte Ausgaben
                            a              a                  o
               Geht der Empf¨nger online, l¨dt er sich alle Bl¨cke aus dem Netz
                                               o
                       Taucht in einem der Bl¨cke eine ihm zugeordnete Adresse auf, und ist die
                       damit verbundene Transaktion bereits von mehreren anderen Clients
                           a
                       best¨tigt worden, so schreibt er den Betrag dem eigenen Konto gut
                                                 o
                       Der Kontostand wird erh¨ht, und die Transaktion in der Liste der
                       ¨
                       Uberweisungen (http://blockexplorer.com) aufgef¨hrt  u
                                                              a
                       Wurde die Transaktion noch nicht best¨tigt, wird der Betrag unter
                                                                                          o
                       Vorbehalt aufgelistet und erst dann gutgeschrieben, wenn mehrere Bl¨cke
                                                   u
                       lang die Transaktion uberpr¨ft werden konnte
                                             ¨
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            52/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Bitcoins erstellen/errechnen
       Ein Problem von Geld allgemein ist die initiale Verteilung von Guthaben
               Als neues Zahlungsmittel genießt Bitcoin anfangs kein Vertrauen
               Man kann Bitcoins u.a. via Paypal kaufen, aber wer will das schon
                            u
                       Der R¨cktausch wird von keiner Stelle garantiert
                  o
       Man kann Bl¨cke mit Bitcoins selbst erstellen/errechnen
               Bestandteile eines Blockes sind:
                              u
                       Die Pr¨fsumme des vorherigen Blockes
                                                                 u
                       Alle in einem bestimmten Zeitraum durchgef¨hrten Transaktionen
                       Eine einmalig verwendete Sicherheitsnummer
                                                 o
               Um einen Block abzuschließen (zu l¨sen!), muss ein Bitcoin-Client eine
                                        u
               vom System festgelegte Pr¨fsumme erraten (Brute Force!)
                                              o
                       Der Block wird als gel¨st gekennzeichnet und ein neuer Block gestartet
                                     a
                       Der Client erh¨lt als Belohnung den Wert des Blocks gutgeschrieben
       Man braucht fast 1 Jahr um mit einer CPU einen Block zu berechnen
               Mit Hilfe einer aktuellen GPU geht es mehr als 100 mal schneller
             o
       Eine M¨glichkeit ist Pool-Mining
                                                                        o
               Mehrere Clients arbeiten zusammen und teilen sich den Erl¨s
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            53/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Was kann man mit Bitcoins machen
       Es existieren Dienstleister Bitcoins in e, $, oder Lindendollars tauschen
               Der Tauschkurs wird vom jeweiligen Dienstleister festgelegt
               Hier regelt sich der Markt selbst
       Eine Liste von Unternehmen und Dienstleistern, die Bitcoins akzeptieren
       findet sich hier: https://en.bitcoin.it/wiki/Trade
       Eine Auswahl:
         Dienstleister           Angebot                         Webseite
         Mt. Gox                                o
                                 Bitcoin-Tauschb¨rse             http://mtgox.com
         Silk Road               anonymer Marktplatz             http://silkroadmarket.org
         Wuala                   Onlinespeicher                  http://wuala.com/bitcoin

       Gavin Andresen verschenkt 0,0001 BTC an an jeden Besucher:
       https://freebitcoins.appspot.com

Satoshi Nakamoto. Bitcoin: A Peer-to-Peer Electronic Cash System. 2008
http://www.bitcoin.org/bitcoin.pdf
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            54/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Gefahren/Probleme mit Bitcoins
       Auch ein Hacker-Geld bzw. Anarcho-Geld ist nicht frei von Angriffen
       Juni 2011: Symantec entdeckt einen auf Bitcoins spezialisierten
       Trojaner
               Infostealer.Coinbit sucht die Wallet-Dateien auf einem Rechner um
               sie zu stehlen
               Der Trojaner schickt die Dateien per E-Mail auf einen polnischen Server
                          o
               Von dort k¨nnen sich die Cracker die Datei herunterladen und dann
               selbst nutzen
                 o                             u
               L¨sung: Die Wallet-Datei verschl¨sseln
       Juni 2011 Einem Benutzer werden 25.000 BTC (Wert ca. e500.000)
       gestohlen
                                       o
       19.Juni 2011 Der Bitcoin-Tauschb¨rse Mt. Gox werden ca. 60.000
                                                        o
       Zugangsdaten und Email-Adressen gestohlen und ver¨ffentlicht
               Ergebnis: Es kam zu hohen Kursverlusten
                       Zeitweise fiel der Wert eines BTC von $17.5 bis auf wenige Cent
               Verschiedene Tauschstellen setzten den Bitcoin-Handel kurz nach den
               Ereignissen bei Mt. Gox zeitweise aus
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            55/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Fernsehen uber das Internet ubertragen
          ¨                 ¨

       Das Verteilen von TV-Signalen uber das Internet erzeugt hohe Kosten
                                      ¨
       Ideal: Verteilung nach dem Gießkannenprinzip (Broadcasting) an alle
       Teilnehmer,
               Dabei ist die Bandbreite, die ein Kanal blockiert, von der Zuschauerzahl
                    a
               unabh¨ngig
                                                  a
               Voraussetzung ist eine Multicast-f¨hige Netzwerkinfrastruktur auf dem
               kompletten Weg vom Anbieter bis zum Empf¨nger a
                                                     o
                       Das ist im Internet nahezu unm¨glich
               Multicasting existiert bislang nur in geschlossenen IPTV-Systemen (z.B.
               T-Home)
             a                         u
       Realit¨t im Internet: Anbieter m¨ssen jedem Benutzer einen eigenen
       Datenstrom bereitstellen (Unicasting) bereitstellen
                               ¨
       Interessantes Konzept: Ubertragung von Fernsehsignalen via P2P


Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            56/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Fernsehen uber P2P
          ¨

                                                    a
       Beim P2P-Streaming leitet jeder Benutzer, w¨hrend er seinen
                           a
       Datenstrom herunterl¨dt, gleichzeitig diesen Strom an einen oder
       mehrere andere Benutzer weiter
                                a           u
               Jeder Benutzer tr¨gt zur verf¨gbaren Downstream-Bandbreite bei
       Das Verfahren skaliert sehr gut
               Je mehr Peers sich an der Verteilung beteiligen, desto besser ist die
                   u                   a
               Verf¨gbarkeit und Zuverl¨ssigkeit
       P2P-TV-Systeme sind quasi Echtzeit-Versionen von BitTorrent
               Will ein Benutzer einen bestimmten Kanal sehen, erfragt der Client beim
               Index-Server (Tracker) die Adressen der Peers, die den Kanal verbreiten
               Der Client stellt dann Verbindungen zu diesen Peers her, um das
               kontinuierliche Downstreaming einzuleiten
               Der Tracker speichert die Adresse des neu hinzugekommenen Peers als
                                   u                                             o
               potenzielle Quelle f¨r weitere Benutzer, die den Kanal anschauen m¨chten

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            57/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



                                a
Fernsehen uber P2P in der Realit¨t – Zattoo
          ¨
                          u      a        u
       Zattoo (japanisch f¨r Gedr¨nge, Gew¨hl, Gewimmel)
               http://zattoo.com
               Legales P2P-Streaming
                                u
               Client-Software f¨r Linux, MacOS X und Windows
                                u
       Beim Verbindungsaufbau pr¨ft der Dienst, in welchem Land sich der
       Benutzer befindet
               Wegen der Senderechte muss garantiert werden, dass Fernsehprogramme
                                 a
               nur im jeweils zul¨ssigen Territorium empfangbar sind
       Finanzierung uber Werbung, die in Umschaltpausen eingeblendet wird
                    ¨

       Umschalten dauert ca. 5 Sekunden
                                        o
       Bild ist ca. 20 Sekunden zeitverz¨gert
       Sommer 2009: Umstieg auf Web-Client
               Zattoo basiert nicht mehr auf P2P,
               sondern verwendet Flash-Streams
               =⇒ Bessere Qualit¨ta                                     Bildquelle: http://freie-software.blogspot.com
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112             58/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



                                a
Fernsehen uber P2P in der Realit¨t – Joost
          ¨
           u                            o
       Gegr¨ndet 2006 von Niklas Zennstr¨m und Janus Friis
                                u
               Beide sind die Gr¨nder von Skype und Kazaa
       2007: $45 Millionen Risikokapital
               Legales P2P-Streaming
                       Angebot: Streaming von Sendern und einzelnen Filmen/Serien
                                                     u      u        a           a
                       Problem: Ausstrahlungsrechte m¨ssen f¨r alle L¨nder regelm¨ßig neu
                       verhandelt werden

       http://www.joost.com
                        u
       Client-Software f¨r MacOS X
       und Windows
       Finanzierung uber Werbung
                    ¨
       Dezember 2008: Wechsel zu
       einem ausschließlich
       Web-Seiten-basierten Dienst mit
                                                             Bildquelle: http://www.gizmodo.com.au
       Flash
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            59/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Weitere ehemals bekannte Projekte, die gescheitert sind

       Babelgum
               http://www.babelgum.com
                                         a
               P2P-Client von 2007 bis M¨rz
               2009
                       a
               Konzept ¨hnlich wie Joost
               Problem: Zu wenige
               hochwertige Inhalte
                                                              Bildquelle: http://www.nettv.cc

       BBC iPlayer
               http://www.bbc.co.uk/iplayer/
               Die BBC wollte ab 2003/4 mit einem auf P2P basierenden Client ihre
                               a
               Archive frei zug¨nglich machen
               Lange Entwicklungszeit
                                                               u
                       Erst ab Oktober 2005 war der Dienst verf¨gbar
               Dezember 2008: Wechsel vom P2P-Modell zu HTTP-Downloads
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            60/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Existierende Projekte
       Miro Media Player
               http://www.getmiro.com
                 u
               Fr¨her Democracy Player
               Freier P2P-Client (freie Software)
                          o                                          a
               Benutzer k¨nnen automatisch Videos von abonnierten Kan¨len
               herunterladen
       PPLive, QQlive und UUSee
               http://www.pplive.com
               http://live.qq.com
               http://www.uusee.com
                       a
               Propriet¨re P2P-Systeme aus China
                               a
               Zielen alle prim¨r auf den asiatischen Markt
               Von PPLive existieren deutsche und englische Versionen
                       http://www.chip.de/downloads/PPLive_17375588.html
       Octoshape
               http://www.octoshape.com
                       a
               Propriet¨rer P2P-Client
               u.a. DW-TV (Deutsche Welle) verwendet Octoshape
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            61/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



  u     u
Gr¨nde f¨r das Scheitern von P2P-Streaming-Projekten (1)

                  o
       Benutzer k¨nnen im Gegensatz zu Plattformen wie YouTube keine
       eigenen Videos hochladen
       Anbieter bieten ausschließlich professionelles Material an
                                  u
               Das Material muss f¨r jedes Land, in dem es empfangbar ist, lizenziert
               werden
               Ohne eine große Zahl von Benutzern haben die Anbieter keine starke
                                          u
               Verhandlungsposition gegen¨ber den Rechteinhabern
               Ohne eine große Zahl von Benutzern haben die Anbieter keine Chance
               sich uber Werbung zu refinanzieren
                    ¨
       Die Installation einer Client-Software nur zum Betrachten von
               o
       Videostr¨men ist in Zeiten von YouTube schwer vermittelbar
                                     u
       Ein dedizierter Client muss f¨r viele Betriebssysteme und
       Hardwareplattformen entwickelt und gepflegt werden
               Der Entwicklungsaufwand ist hoch

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            62/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



  u     u
Gr¨nde f¨r das Scheitern von P2P-Streaming-Projekten (1)

                                                        a
       Die Entwicklungen waren bislang meistens propriet¨r
               Ein offenes Protokoll kann besser optimiert werden, ist aber wegen der
               Rechte schwer vermittelbar
               o
       Zeitverz¨gerungen beim Einschalten und Umschalten werden von den
                       o
       Benutzern als st¨rend empfunden
                             o
               Diese Zeitverz¨gerungen sind aber prinzipiell nicht vermeidbar
       Uploadgeschwindigkeit der meisten Benutzer ist deutlich geringer als die
       Downloadgeschwindigkeit
                                                                 a
               Besonders bei DSL ist die Uploadgeschwindigkeit h¨ufig um den Faktor
               1:10 oder sogar 1:20 niedriger
                   a          o
               Schr¨nkt die M¨glichkeiten der Weiterverteilung durch die Peers ein
                o        o                                          u
               L¨sungsm¨glichkeit: Leistungsstarkes CDN zur Unterst¨tzung der
               Verteilung
                       CDN = Content Distribution Network
                       Die Knoten des CDN agieren als Supernodes

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            63/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Wuala – Kombination aus P2P und Cloud (1)
       Wuala ist ein Dienst, der Onlinespeicher anbietet
       Entwicklung der ETH Z¨richu
               a            o
       Seit M¨rz 2009 geh¨rt Wuala zum Unternehmen LaCie
       Wuala nutzt eigene Server und ein P2P-Netzwerk aus Rechnern
       freiwilliger Benutzer, die lokalen Speicherplatz gegen Onlinespeicher
                    o
       tauschen m¨chten
       ¨
       Uber diese Ressourcen legt Wuala eine Art Speicher-Cloud
                           a
       Jeder Benutzer erh¨lt kostenlos 1 GB Speicherplatz
          o                                                        a
       M¨chte ein Benutzer mehr Speicherplatz, kann er diesen k¨uflich
                                                                u
       erwerben oder lokalen Speicherplatz im Tausch zur Verf¨gung stellen
                          u                                           a
               Bedingung f¨r den Tausch: Der Computer, auf dem Wuala l¨uft, muss
               mindestens 4 Stunden pro Tag online sein
       Formel: lokaler Speicher ∗ Onlinezeit-Faktor = Onlinespeicher
       Beispiel: Ein Benutzer bietet 10 GB lokalen Speicher und sein Rechner
                                             o        a
       ist 6 Stunden online, also 25% der m¨glichen t¨glichen Zeit
       =⇒ 10 GB ∗ 0, 25 = 2, 5 GB Onlinespeicher
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            64/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Wuala – Kombination aus P2P und Cloud (2)

                  o
       Benutzer k¨nnen lokalen Speicherplatz von mehreren Rechnern
       freigeben, um selbst mehr Onlinespeicher zu erhalten
       Alle Daten werden vor dem Upload in die Wuala-Cloud fragmentiert
                                                    u
       und mit einem 128-Bit AES-Algorithmus verschl¨sselt
       Fragmente werden redundant in der Wuala-Cloud verteilt
       Wuala sichert alle Fragmente mindestens einmal auf eigenen Servern in
       Europa
               Daten bleiben immer erreichbar, auch wenn alle P2P-Knoten offline sind
       Wer keinen lokalen Speicherplatz tauschen kann oder will, kann
       Onlinespeicher kaufen.
               Ab 10 GB f¨r e19 pro Jahr
                         u
                                                                u      u
       Client-Software ist Freeware (nicht Open Source) und verf¨gbar f¨r
       Linux, Mac OS X und Windows
               Neben der Java-Client-Software gibt es eine REST API
Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            65/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



Aktuellste Entwicklung bei Wuala


Wuala bietet nur noch Online-Speicher in der Cloud an
Mit dem Update auf sein neues Speichersystem Hirslanden“ streicht der Online-Speicher-Anbieter
                                                ”
             o
Wuala die M¨glichkeit, eigenen, lokalen Speicherplatz gegen Online-Speicher einzutauschen.
                                                      u                         o
Bereits eingetauschter Speicherplatz kann laut der Ank¨ndigung noch weitere zw¨lf Monate
kostenlos genutzt werden, anschließend will Wuala den betroffenen Anwendern Rabatte beim Kauf
     a                                              u    a
einr¨umen. Zudem akzeptiert Wuala als Bezahlung f¨r zus¨tzlichen Speicherplatz auch die virtuelle
   a
W¨hrung Bitcoins. Das Unternehmen empfiehlt daher den bisherigen Speicherplatz-Tauschern, sich
an der Generierung von Bitcoins zu beteiligen.

                              a
Zu den weiteren Neuerungen z¨hlen die Erweiterung des kostenlosen Speicherplatzes von bisher 1
                        u
auf 2 GByte, die Verschl¨sselung mit AES-256, inkrementelles Hochladen, mehrere parallele
                         o
Downloads sowie Dateigr¨ßen von bis zu 100 GByte

(Reiko Kaps)

Quelle: c’t 2011, Heft 23, S.48



Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            66/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



P2P-Weg der verteilten Datenhaltung in Clouds

       Der P2P-Gedanke kann helfen, virtuelle Cluster mit gemeinsamem
       Datenbestand in EC2-kompatiblen Infrastrukturen aufzubauen
                     o
       Verschiedene M¨glichkeiten der Cloud-basierten Datenspeicherung
               Instanzspeicher (blockbasiert, nicht persistent)
               EBS-Volumen (blockbasiert, persistent)
               S3-Buckets (objektbasiert, persistent)
               Es existieren auch Datenbankdienste
                                                                           a u
                       Diese Dienste spiele hier keine Rolle. Sie sind prim¨r f¨r
                       Spezialanwendungen geeignet, da sie tabellenorientiert arbeiten
                       Block- und objektbasierte Speicherdienste sind universeller einsetzbar
                                                                a
       Ein EBS-Volumen kann immer nur an eine EC2-Instanz angeh¨ngt sein
       EBS-Volumen kann man mit verteilten Dateisystemen wie Ceph,
       GlusterFS, PVFS2 oder HDFS verbinden
                                                 a
               Diese Dateisysteme arbeiten vollst¨ndig verteilt (=⇒ P2P)
               Ceph, GlusterFS und HDFS bieten sogar interne Redundanz

Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            67/68
Zentralisiertes, reines und hybrides P2P     Verteilte Hashtabelle       Bitcoins        P2PTV         P2P und Cloud



 a
N¨chste Vorlesung




                                            a
                                           N¨chste Vorlesung:

                                            7.12.2011



Dr. Christian Baun – 10.Vorlesung Cluster-, Grid- und Cloud-Computing – Hochschule Mannheim – WS1112            68/68

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:2
posted:2/17/2012
language:
pages:68