Arbeitsbericht für das Teilprojekt - QuaP2P

Transcription

Arbeitsbericht für das Teilprojekt - QuaP2P
Arbeitsbericht für das Teilprojekt
„Adaptivität“ der DFG Forschergruppe 733:
QuaP2P – Verbesserung der Qualität von
P2P-Systemen
Arbeitsbericht
Projektkennwort: QuaP2P
Themengebiet: Verbesserung der Qualität von P2P-Systemen
Berichtszeitraum: 01.06.2006 – 31.12.2008
Inhalt
1
Allgemeine Angaben zum Teilprojekt „Adaptivität“.................................................................... 1
1.1
DFG-Geschäftszeichen ........................................................................................................1
1.2
Fachgebiete und Fachrichtung ...........................................................................................1
1.3
Titel....................................................................................................................................1
1.4
Berichtszeitraum ................................................................................................................1
2
Zusammenfassung des Berichts .................................................................................................. 2
3
Bericht über die bisherige Entwicklung ...................................................................................... 4
4
3.1
Kenntnisstand bei der letzten Antragstellung .....................................................................4
3.2
Ausgangsfragestellung........................................................................................................5
3.3
Ergebnisse und Analyse......................................................................................................6
3.3.1
Arbeitspaket A1 - Simulationsumgebung.....................................................................6
3.3.2
Arbeitspaket A2 - Evaluierung der Skalierbarkeit und Stabilität existierender OverlayMechanismen ............................................................................................................12
3.3.3
Arbeitspaket A3 - Flexibilität: Kontextbewusstsein ....................................................16
3.3.4
Arbeitspaket A4 - Ausgestaltung/Entwicklung von Referenzszenario A ....................19
3.3.5
Arbeitspaket A5 - Adaptivitätsmechanismen für die Referenzszenarien ....................23
3.4
Zusammenarbeit innerhalb der Forschergruppe...............................................................24
3.5
Vergleiche mit Arbeiten außerhalb der Forschergruppe ...................................................25
3.6
Offene Fragen und Ausblick .............................................................................................27
Literatur ................................................................................................................................... 29
i
ii
1 Allgemeine Angaben zum Teilprojekt „Adaptivität“
1.1
DFG-Geschäftszeichen
STE 866/4-1
1.2
Fachgebiete und Fachrichtung
Multimedia Kommunikation
Prof. Dr.-Ing. Ralf Steinmetz
Dipl.-Ing. Aleksandra Kovacevic
Telekooperation
Prof. Dr Max Mühlhäuser
Dipl.-Wirtsch.-Inf. Dirk Bradler
1.3
Titel
Teilprojekt TP1 der Forschergruppe FOR 733:
„Untersuchung und Verbesserung der Adaptivität von Peer-to-Peer-Systemen“
1.4
Berichtszeitraum
01.06.2006 – 31.12.2008
1
2 Zusammenfassung des Berichts
Adaptivität ist im Kontext dieses Antrags definiert als Anpassungsfähigkeit eines Peer-to-PeerSystems an innere und äußere Rahmenbedingungen und deren dynamische Veränderung. Dazu
wird sowohl die qualitative als auch die quantitative Anpassungsfähigkeit des Systems betrachtet.
Die Fähigkeit des Systems, sich an die verändernde Anzahl von Entitäten (und damit ggf. Nutzern)
und an die zur Verfügung gestellten Dienste anzupassen, bezeichnen wir als Skalierbarkeit. Weiterhin muss darauf geachtet werden, dass das P2P-System bei geänderten Rahmenbedingungen,
insbesondere bei häufigen Abfolgen von Adaptionsvorgängen, seine Funktionalität aufrechterhält.
Dieses Qualitätsmerkmal bezeichnen wir als Stabilität. Die qualitative Adaptivität - also die Anpassung an Gegebenheiten, die die Anwendung zur Laufzeit charakterisieren - bezeichnen wir als Flexibilität. Sie wird durch die Verarbeitung von Kontextinformationen erreicht. Diese können eingeteilt werden in nutzerzentrierten sowie netzzentrierten Kontext. Die Relevanz der entwickelten Mechanismen im Teilprojekt Adaptivität wurde theoretisch und simulativ gezeigt, zusätzlich wurden
einzelne Mechanismen zur Integration in die Referenzszenarien A und B ausgewählt.
Für die Untersuchung der qualitativen Aspekte der Peer-to-Peer-Systeme und deren Wechselwirkungen wurde für das Gesamtprojekt als gemeinsame Evaluationsplattform der Simulator PeerfactSim.KOM [1] entwickelt. Der Simulator ist so entworfen, dass man nicht nur P2P-OverlayNetzwerke, sondern P2P-Systeme als Ganzes mit allen Diensten und Anwendungen oberhalb der
Overlay-Schicht untersuchen kann. Das ermöglichte die gezielte Evaluation von Mechanismen für
die Referenzszenarien. Es wurde herausgefunden, welchen Einfluss verschiedene Entwurfsentscheidungen auf die Qualität von P2P-Overlaynetzwerken haben. Insbesondere wurde der Einfluss auf
Skalierbarkeit und Stabilität untersucht. Bezüglich dieser Entwurfskonzepte verglichen wir acht
P2P-Overlaynetzwerke, die wir im Simulator PeerfactSim.KOM implementiert haben (strukturiert,
unstrukturiert, hybrid und hierarchisch). Dazu wurden Wechselwirkungen zwischen den Qualitätseigenschaften identifiziert.
Als ein notwendiger Bestandteil der beiden Referenzszenarien wurde Ortsbewusstsein in der Overlaystruktur und der Systemfunktionalität identifiziert, weswegen das P2P-Overlay Globase.KOM
[2-4] entworfen und implementiert wurde. Globase.KOM unterstützt vollständige ortsbezogene
Suche und zeigt sich im Vergleich mit verwandten Arbeiten bezüglich Skalierbarkeit, Stabilität und
Effizienz als leistungsfähige Alternative. Als ein Anwendungsszenario für Globase.KOM wurde eine
P2P-basierte Notrufinfrastruktur untersucht. Zu diesem Zweck wurde das Overlay um Nachrichtenpriorisierungsfähigkeiten erweitert und gezeigt, dass höher priorisierte Notrufe in einem solchen
Netzwerk zeitnah und ohne Verlust durchgestellt werden.
Im Bereich nutzerzentrierter Kontext, verstanden als flexiblere Ausführung typischer Interaktionen des Nutzers mit einer P2P-Applikation, wurde das P2P-Netzwerk PathFinder [5] entwickelt. Es
kombiniert sowohl Volltextsuche als auch Primärschlüsselabfragen (Key Lookup) in einem P2POverlay Netzwerk. Dieser Ansatz kombiniert die Vorteile einer Verteilten Hash Tabelle (Distributed
Hash Table - DHT) und die hohe Trefferwahrscheinlichkeit für Volltextsuche aus unstrukturierten
Netzwerken, wie z.B. BubbleStorm [6]. Beziehungen zwischen Nutzern werden explizit in DCC [7]
(Distributed Command and Control) modelliert, welches die verteilte Erstellung und den Betrieb
einer Stab-Linien-Organisationsstruktur ermöglicht. Handlungsbeziehungen zwischen den Organisationseinheiten werden innerhalb des strukturierten P2P-Netzwerks abgebildet. Dieser Mechanismus
2
kann auf einem beliebigen Overlay-Netzwerk, welches Primärschlüsselsuche unterstützt, ausgeführt
werden. DCC wird in Referenzszenario A eingesetzt.
Im Bereich netzzentrierter Kontext, verstanden als flexiblere Ausführung von Protokollen ohne
Nutzerinteraktion, wurde ein Application Level Multicast (ALM) System, welches auf bestehenden
strukturierten P2P-Netzen aufbaut, entwickelt [8]. Kein Peer erhält hierbei eine Nachricht doppelt,
wogegen vergleichbare Ansätze insbesondere zusätzliche Nachrichtenduplikate verursachen [9].
Dieser Mechanismus kann als Ressourcenallokationsmechanismus in strukturierten P2P-Netzwerken
mit geringer Nachrichtenanzahl verwendet werden. Neben Ressourcenallokation wird durch netzzentrierten Kontext die Robustheit der Netzwerke gegen Netzwerkpartitionierung verbessert. Diese
kann durch hohe Nutzerfluktuation (Churn) und in mobilen Netzwerken durch Bewegung der Peers
auftreten. Um einer Partitionierung frühzeitig entgegenzuwirken, identifiziert BridgeFinder [10]
Konnektivitätsengpässe. Gegenmaßnahmen können dann gezielt eingeleitet werden.
Erkenntnisse aus beiden Kontextbereichen werden im Referenzszenario A aufgegriffen.
Die Anforderungen an ein verteiltes Katastrophenmanagementsystem wurden durch freie Interviews
mit Ersthelfern, der Feuerwehr, dem THW und dem DRK erhoben [11]. Bestehende P2P-OverlayNetze wurden auf Tauglichkeit im Katastrophenfall evaluiert [12]. Es wurde die Simulationsumgebung First Response Communication Sandbox (FRCS) entwickelt [13], welche die physischen Positionen und Bewegungen aller Beteiligten einer Katastrophe simuliert. Diese Simulationsumgebung
kann an beliebige Netzwerksimulatoren angeschlossen werden, dadurch wird eine integrierte Simulation eines Katastropheneinsatzes möglich. Dieser ganzheitliche Ansatz wurde in einer Demonstration [14] ebenfalls vorgestellt. Der DCC-Mechanismus garantiert die Aufrechterhaltung der Organisationsstruktur und BridgeFinder identifiziert Knoten zur Aufrechterhaltung der Konnektivität in
mobilen Szenarien. Der FiRe (First Response) Prototyp dient als praktische Anwendung. Ziel des
Prototyps ist die Ermittlung der Latenzzeiten unter realen Bedingungen.
3
3 Bericht über die bisherige Entwicklung
3.1
Kenntnisstand bei der letzten Antragstellung
Zum Zeitpunkt der Antragstellung waren Dateitauschbörsen die dominierenden Anwendungen
der Peer-to-Peer-Technologie. Weitere Anwendungsdomänen waren nicht im Fokus der wissenschaftlichen Arbeiten. Die Qualität eines Peer-to-Peer-Systems wurde deshalb meistens anhand der
erzielten Downloadzeiten für Dateien beurteilt.
Flexibilität ist die qualitative Adaptivität - also die Anpassung an Gegebenheiten, die die Anwendung zur Laufzeit charakterisieren. Dies wird durch Verarbeitung von Kontextinformationen
erreicht. Diese können unterteilt werden in netzzentrierte sowie nutzerzentrierte Kontextinformationen.
Die Definition des Begriffes Kontext variierte zum Zeitpunkt der Antragsstellung je nach Fragestellung. Für das Forschungsvorhaben Flexibilität wurde Kontext folgendermaßen definiert: „Kontext bezeichnet hilfreiche Zusatzinformation, welche die Funktionsweise von Software zur Laufzeit
verbessert.“ Die Anpassung der Netzwerktopologie ist demzufolge nur ein Teilaspekt der Kontextinformationen. Ganzheitliche Ansätze zur Kontextverarbeitung waren zwar in verwandten Arbeiten in
einzelne funktionale Module gekoppelt (Context Toolkit [15]), jedoch ist die Zielsetzung eine andere. Die Möglichkeit der Verarbeitung des Kontexts bedingt nicht automatisch eine Verbesserung der
P2P-Funktionalität. Die Verbesserung der P2P-Mechanismen benötigt eine zielgerichtete Auswertung einzelner Eigenschaften des netzzentrierten und nutzerzentrierten Kontexts.
Die Nutzung von Kontextinformationen beschränkte sich zum Zeitpunkt der Antragstellung
hauptsächlich auf die Anpassung von P2P-Overlay-Netzwerken an die zugrundeliegende Topologie
der Netzwerkschicht [16,17].
Frühe Ansätze für die P2P-Kommunikationsinfrastruktur entwickelten verteilte Strukturen basierend auf linearem Hashing [18,19]. Im Allgemeinen stellen verteilte Hash-Tabellen (DHTs) eine
skalierbare Methode zur Verfügung, um Datenobjekte unter gegebenen Schlüsseln zu adressieren
[20]. Es gab viele DHT-basierte Konzepte wie Chord [21,22], Koorde [23], Kademlia [24], Omicron
[25], Pastry [26], CAN [27], Skipnet [28]. Neben der eben erläuterten Auswahl strukturierter Overlay-Netzwerke gab es einige unstrukturierte Ansätze [29,30]. Die Nutzung von Kontextinformationen wurde bei der Erstellung von strukturierten und unstrukturierten Netzwerken kaum berücksichtigt. Die Position einzelner Peers innerhalb des Netzwerks und die damit verbundene graphentheoretische Bedeutung kann jedoch vielseitig genutzt werden, z.B. kann eine bevorstehende Partitionierung verhindert werden (vgl. BridgeFinder in Abschnitt 3.3.3.2). Die Skalierbarkeitseigenschaften
unstrukturierter Overlays wurden bereits in einigen Arbeiten untersucht. Lv et al. diskutieren in
[31] skalierbare Suchmethoden und untersuchen, wie Peer-Heterogenität genutzt werden kann, um
Systeme wie Gnutella besser skalierbar zu gestalten als im homogenen Fall [32]. Yang und GarciaMolina [33] erforschen die Leistungsfähigkeit von gerichteten Breitensuchetechniken und lokalen
Indizes. Oceanstore [34] nutzt hybride Techniken basierend auf Tapestry und abgeschwächten
Bloom-Filtern [35], um populäre Objekte mit hoher Wahrscheinlichkeit effizient zu finden [36].
Adamic et al. [37] untersuchen skalierbare Suche in Power-Law-Netzwerken. Small-WorldNetzwerkeigenschaften [38] werden ebenfalls im Kontext von P2P untersucht [38-42]. Hierarchi-
4
sche Ansätze wie eDonkey [43,44] oder das FastTrack-Protokoll, das in KaZaA [45] genutzt wird,
nutzen das Konzept von Super-Peers (und Servern) in P2P-Architekturen, um die SuchanfrageRouting-Kosten zu reduzieren. Allerdings können Server in solchen Ansätzen potentielle Flaschenhälse werden, wenn sie nicht mit der gesamten Netzwerkgröße gut ausbalanciert werden.
Im Kontext von P2P-Systemen haben Stabilitätsuntersuchungen in der Forschung zum Beginn
des Projektes noch nicht die gleiche Aufmerksamkeit erhalten wie Skalierbarkeits-, Lastverteilungsund Fehlertoleranzuntersuchungen. Es gab allerdings einige interessante erste Ansätze wie Omicron
[46] und Coral [47].
Im Bereich des Referenzszenarios A war das kommerziell erhältliche P2P-System Groove bereits
zu Testzwecken im Einsatz in mobilen Umgebungen. Details des entwickelten Systems sind nicht
öffentlich zugänglich. Ziel von Groove ist jedoch, eine Zusammenarbeit von Kleingruppen zu ermöglichen; für größere Projekte muss man auf den Groove-Server zurückgreifen. Der P2P-Gedanke wird
hier sehr eingeschränkt. Ein vergleichbarer, auf P2P-basierter Ansatz ist die Arbeit „Integrated peerto-peer applications for advanced emergency response systems“ [48]. Hier wurde explizit eine P2PLösung für die Bedürfnisse von Ersthelfern in Katastropheneinsätzen entwickelt. Allerdings ist der
Fokus der Arbeit die Ausgestaltung der Benutzeroberfläche; die Kommunikationsprotokolle und die
Skalierbarkeit der Lösung wurden nicht evaluiert.
3.2
Ausgangsfragestellung
Die Kernaufgabe dieses Teilprojektes war es, die Adaptivität von Peer-to-Peer-OverlayNetzwerken systematisch zu evaluieren und neue Mechanismen in allen Untermerkmalen zu entwickeln. Wegen der Komplexität und Größe solcher Netzwerke haben wir die Simulation als Evaluationsmethodik gewählt. Die Betrachtung von vielen Knoten war insbesondere für die Untersuchung
der Skalierbarkeit notwendig. Existierende Simulatoren wie beispielsweise der häufig eingesetzte
NS2 [49,50] sind für große Overlay-Netzwerke nicht geeignet. Sie sind auf die Simulation der Paketebene in der Vermittlungsschicht spezialisiert und skalieren bei einer notwendigen Menge von
Knoten ungenügend. Der erste Schritt in diesem Teilprojekt war deshalb die Entwicklung eines Simulators für Peer-to-Peer-Overlay-Netzwerke. Dieser sollte aus drei Schichten bestehen: der Benutzerschicht, der Overlay- und der Netzwerksimulationsschicht. Unter Einbeziehung der gewonnenen Erfahrungen im Gesamtprojekt sollte der Simulator ständig überarbeitet und der wissenschaftlichen Gemeinschaft zur Verfügung gestellt werden.
Daraufhin sollten detaillierte Erkenntnisse über die quantitative Adaptivität (Skalierbarkeit und
Stabilität) eines breiten Spektrums existierender Overlay-Mechanismen gewonnen werden. Zu den
zu evaluierenden Mechanismen gehörten unstrukturierte, hierarchische, strukturierte, hybride und
spezialisierte Overlay-Mechanismen. Darüber hinaus sollte ein Studium der Wechselwirkungen dieser beiden Untermerkmale (Skalierbarkeit und Stabilität) untereinander und bezüglich der anderen
Qualitätsmerkmale durchgeführt werden. Die Ergebnisse dieser Untersuchungen sollten schließlich
bei der Wahl von geeigneten Adaptivitätsmechanismen für die beiden Referenzszenarien einfließen.
Frühzeitig haben wir Skalierbarkeit, Stabilität, Effizienz, Lokalisierbarkeit und Robustheit gemeinsam untersucht, was es uns ermöglichte, die umfassenden Wechselwirkungen gezielter zu erkennen und zu untersuchen. Ein weiterer Grund hierfür war, dass in der Forschungsgemeinde die
Qualitätsmerkmale Stabilität und Robustheit nicht klar abgegrenzt sind. Durch die integrierte Be-
5
trachtung quantitativer Merkmale konnten Auswirkung qualitativer Anpassungen der P2PMechanismen (Flexibilität) simulativ evaluiert werden.
Die folgenden wissenschaftlichen Kernfragen zum Zeitpunkt der Antragsstellung des Arbeitspakets Flexibilität lauteten:
•
Wie lässt sich der neueste Forschungsstand im Bereich „context aware computing“ erweitern
und anpassen auf große dynamische P2P-Systeme?
•
Wie lässt sich dabei Kontextbewusstsein uminterpretieren und erweitern, um alle Aspekte
externer Adaptivität (wie definiert) abzudecken?
•
Wie können die zugehörigen Mechanismen als wieder verwendbare, mit anderen Aspekten
kombinierbare Komponenten entworfen und realisiert werden?
Als Ergebnis des Qualitätsmerkmals Adaptivität wurde eine wissenschaftlich differenzierte Gültigkeitsbestätigung für die Annahme, dass sich P2P-Netze als Kommunikationsinfrastruktur für Katastropheneinsätze (Referenzszenario A) eignen, erwartet. Diese und andere Aspekte sollten auch
über Publikationen in die Literatur zu „incident management“ einfließen.
Zusätzlich sollten Teilaspekte in einem weiteren Schritt, aufbauend auf Szenarienbeschreibung,
Simulator und Experimenten, als Prototyp realisiert werden.
3.3
Ergebnisse und Analyse
Die adaptivitätsspezifischen Ergebnisse werden in den folgenden Abschnitten vorgestellt.
3.3.1 Arbeitspaket A1 - Simulationsumgebung
Der Simulator ist so entworfen, dass nicht nur P2P-Overlay-Netzwerke, sondern P2P-Systeme als
Ganzes, mit allen Diensten und Anwendungen oberhalb der Overlay-Schicht untersucht werden
können. Das ermöglicht die gezielte Evaluation von Mechanismen für die Referenzsenarien. Im ersten Schritt wurde dafür der Anforderungskatalog für die zu entwickelnde
Simulationsumgebung erstellt [51].
Hierbei wurden die folgenden Kerneigenschaften als besonders wichtig eingestuft:
•
6
Modularität. Um den verschiedensten Ansprüchen, die
P2P-Protokolle an einen Simulator stellen können, gerecht
zu werden, wurde der Simulator aus einzelnen, voneinander unabhängigen Komponenten erstellt. Durch die Analyse
zahlreicher
P2P-Protokolle
wurden
deren
wichtigste Abbildung 1: Funktionale Schichten des Simulators
Komponenten
identifiziert
[52]. Vorteil der Aufteilung in unabhängige Komponenten ist, dass einzelne Komponenten
ausgetauscht werden können, ohne dass sich diese Veränderung zwangsläufig auf alle anderen Teile des Simulators auswirkt. So kann beispielsweise ein sehr detailliertes Netzwerkmodell durch ein leichtgewichtiges Modell ersetzt werden, wenn das Netzwerkmodell
die Simulationsergebnisse nicht oder nur gering beeinflussen würde [51].
•
Skalierbarkeit. P2P-basierte Systeme heben sich vor allem durch ihre hohe Skalierbarkeit
von Client-Server-basierten Ansätzen ab. Der Simulator sollte also die Möglichkeit bieten,
P2P-Systeme mit einem möglichst hohen Realitätsgrad quantitativ zu untersuchen.
•
Modellierung von Diensten. Die Einsatzszenarien von P2P-Anwendungen sind vielseitig und
können sich im Laufe der Zeit ändern. Jede Anwendung besitzt hierbei ihre eigenen Anforderungen bzw. stellt für ihren Einsatzzweck unterschiedliche Dienste zur Verfügung. Eine
generische Simulationsplattform sollte deshalb eine leicht erweiterbare Modellierung von
Diensten erlauben, die über die einfache Suchfunktionalität von Overlays oder die Wegewahl von Suchnachrichten im Overlay hinausgeht.
Anhand dieses Anforderungskatalogs wurde die Architektur des Simulators PeerfactSim.KOM entworfen, die sich in zwei wesentliche Bereiche aufteilt: die funktionalen Schichten und die Simulations-Engine (siehe Abbildung 1). Darüber hinaus wurden für jede funktionale Schicht, ausgehend
von der oben bereits erwähnten Analyse, einzelne Komponenten definiert, die wiederum Dienste für
andere Komponenten aus der gleichen funktionalen Schicht zur Verfügung stellen können. Die Simulation-Engine ist ebenfalls eine Komponente, die beliebig ausgetauscht werden kann. Sie stellt
den eigentlichen Kern des Simulators da, dessen wesentlicher Bestandteil der Scheduler ist. In diesem werden die zeitlichen Abläufe innerhalb des Simulators koordiniert und die korrekte Ausführungsreihenfolge der eigentlichen Ereignisse sicherstellt.
In der Netzwerkschicht wurden im Rahmen des Arbeitspaketes A1 verschiedene InternetModelle implementiert, die je nach Evaluationsziel unterschiedlichen Anforderungen genügen. Zum
Beispiel kommt es bei der Untersuchung von latenzoptimierten Overlay-Netzwerken eher auf die
realistische Modellierungen von Nachrichtenlaufzeiten im Internet an. In diesem Kontext kann jedoch die Zeit, die für die Übertragung dieser meist sehr kleinen Overlay-Nachrichten vergeht, oftmals vernachlässigt werden, da sie im Vergleich zur eigentlichen Nachrichtenlaufzeit im Übertragungsmedium mindestens eine Größenordnung geringer ist [53]. Auf der anderen Seite bedarf es
zur Evaluation von klassischen P2P-basierten Inhaltsverteilsystemen, wie zum Beispiel Emule oder
BitTorrent, eines komplexeren Modells, das unter anderem auch die Modellierung von TCP-Flüssen
erlaubt. Im Folgenden sollen deshalb die im Rahmen dieses Arbeitspakets entwickelten Modelle
kurz erörtert werden.
3.3.1.1
Netzwerkmodelle
Zunächst wurde ein einfaches Nachrichtenlaufzeitmodell entworfen, das die Details, die die Latenz auf den unteren vier Schichten des OSI Modells beeinflusst, auf der Transportschicht zusammenfasst. Die eigentliche Nachrichtenlaufzeit wird hierbei durch die folgende Formel beschrieben:
7
Dabei wurde ein dreiteiliger
P
Ansatz verfolgt, der sowohl einen
P
P
statischen Anteil als auch einen
variablen, distanzabhängigen Anteil besitzt. Zusätzlich
P
P
P
wurde der momentane Auslastungszustand des Netzwerks
berücksichtigt. Hierbei bildet df den Anteil der
algorithmischen Verzögerung und der Verarbeitungsverzögerung der beteiligten (Zwischen-) Systeme ab. Er ist ein fester
Anteil an der Gesamtlatenz. Des Weiteren beschreibt dist die
Euklidische Ebene
Entfernung zwischen Start- und Endpunkt der Übertragung
und v die Geschwindigkeit, mit der sich das Signal in dem
Übertragungsmedium ausbreitet. Der Quotient dist/v ergibt Abbildung 2: Abbildung der Peers in
also die Ausbreitungsverzögerung des Signals. Demnach hat
die euklidische Ebene
eine Nachricht mit zunehmender Entfernung zwischen Startund Zielpunkt auch eine größere Latenz. Der Faktor f dient zur Streckung oder Stauchung der Gesamtlatenz, abhängig vom aktuellen Zustand des Netzwerks. Hierüber sollen Netzwerkeigenschaften wie Retransmission (verursacht durch Paketverlust, Paketbeschädigung oder “Out-of-order“Pakete) und Netzwerküberlastung (Begrenztheit der Ressourcen der Zwischensysteme) modelliert
werden.
dist ⎤
⎡
Latenz = f ⋅ ⎢df +
v ⎥⎦
⎣
In diesem einfachen Nachrichtenlaufzeitmodell wird der virtuelle Raum im Simulator, in dem
sich die einzelnen Peers befinden können, durch eine euklidische Ebene beschrieben. Jeder im Simulator erzeugte Peer des Netzwerks wird entsprechend seiner Position in die euklidische Ebene
abgebildet und erhält so eine eindeutige, zweidimensionale Koordinate (vgl. Abbildung 2).
Von besonderem Interesse ist jedoch, wie die einzelnen Peers in dieser Ebene verteilt sind. Da die
Verteilung der Peers die Ergebnisse der Simulation maßgeblich beeinflussen kann, beispielsweise
bei der Bestimmung der oben erläuterten Nachrichtenlaufzeit, wurden zwei Verteilungsvarianten
verwirklicht [51]:
8
•
Gleichmäßige Zufallsverteilung. Bei dieser Verteilung werden die am Netzwerk teilnehmenden Peers in der euklidischen Ebene gleichmäßig zufallsverteilt. Nachteil dieser einfachen
Verteilung der Peers ist, dass sie nicht der realen Verteilung von Peers entspricht. Betrachtet
man die weltweite Verteilung der Peers in realen Systemen, sind diese oft ungleichmäßig
verteilt und bilden Gebiete, in denen die Dichte der Peers deutlich höher ist als in anderen
Gebieten.
•
Bitmapbasierte Zufallsverteilung. Um der ungleichmäßigen Verteilung der Peers Rechnung zu
tragen, können die Peers aufgrund eines Graustufen-Bitmaps zufallsverteilt werden. Dabei
kann ein Bild beliebiger Größe, beispielsweise eine Weltkarte oder Stadtkarte, mit verschiedenen Grautönen eingefärbt werden. Je dunkler der Grauton, desto höher die Wahrscheinlichkeit, dass sich an dieser Position ein Peer befindet. Auf diese Weise kann die Verteilung
der Peers realitätsnah abgebildet werden, indem z. B. eine Karte eines Landes entsprechend
statistischen Daten zur Bevölkerungsdichte oder Internetnutzung mit Grautönen versehen
wird. Denkbar ist auch der gezielte Entwurf extremer Peer-Konfigurationen, um die Stabilität eines Protokolls unter besonderen Bedingungen zu testen. Abbildung 3 zeigt die Stadtkarte Darmstadts mit überlagerten Grautönen entsprechend der (fiktiven) Verteilungsdichte
der Peers. Abbildung rechts stellt das daraus resultierende Graustufen-Bitmap dar.
Abbildung 3: Links: Mit Grautönen eingefärbte Karte des Stadtzentrums von Darmstadt - je dunkler der
Grauton, desto höher die Dichte der Peers. Rechts: resultierendes Bitmap, das im Simulator verwendet werden kann
In einem zweiten Schritt wurde ein realistischeres Netzwerkmodell zur Bestimmung der Nachrichtenlaufzeiten im Internet entworfen [53], und in PeerfactSim implementiert. Dieses Modell
verwendet, zur Bestimmung der minimalen Nachrichtenlaufzeit zwischen zwei Kommunikationspartnern im Internet, die Messdaten des CAIDA’s-Macroscopic-Topogoly(Topology?)-Projekt [54].
Dazu werden die von den Messmonitoren erfassten und weltweit verteilten Hosts (ca. 400.000) in
einen mehrdimensionalen Euklidischen Raum eingebettet. Dieser sehr rechenintensive Prozess muss
jedoch nur einmal durchgeführt werden. Das heißt, ein eigens hierfür entwickelter Mechanismus
erlaubt es, unter Zuhilfenahme von „Global Network Positioning“, den Hosts eine mehrdimensionale Koordinate zuzuweisen, die für alle Simulationen wieder verwendet werden kann. Diese Hosts
bilden auch die Grundmenge, aus der beliebige geographische Peer-Verteilungen für bestimmte
Simulationsszenarien erzeugt werden können. Abbildung 4 zeigt alle für eine Simulation frei wählbaren Hosts.
Abbildung 4: Beispielprojektion der Hosts auf die Weltkarte
Da die minimale Nachrichtenlaufzeit jedoch nur statisch ist, wurde zusätzlich ein Mechanismus
entwickelt, um eine variable Streckung (Jitter) dieser Zeit zu ermöglichen. Dieser Ansatz bedient
9
sich ebenso zahlreicher Messdaten aus dem Internet (PingER-Projekts [55]). Bei der Variation der
minimalen Nachrichtenlaufzeit wird zudem die geographische Position der Peers mitberücksichtigt,
die hierfür ein ausschlaggebendes Kriterium ist. Die Gesamtlatenz zwischen zwei Kommunikationspartnern im Internet setzt sich daher aus einem statischen und einem variablen Part zusammen und
ist in Abbildung 5 veranschaulicht.
Die bisher vorgestellten Modelle berücksichtigen nur die Nachrichtenlaufzeit im Internet und
vernachlässigen hierbei die tatsächliche Dateigröße. Diese Annahme ist legitim, wenn man sich speziell auf die Untersuchung von Such-Overlays fokussiert. Möchte man jedoch einen Dateitransfer
simulieren, sind die Nachrichtengrößen natürlich der ausschlaggebende Faktor für die eigentliche
Übertragungszeit. Hierzu wurde für den Simulator ein weiteres Modell konzipiert, dass es erlaubt,
den „Fairshare“ von TCP-Flüssen realistisch nachzubilden. Damit bietet der Simulator auch die Möglichkeit, Inhaltsverteilsysteme in ihrer Ganzheitlichkeit zu untersuchen.
Abbildung 5: Zwei-Komponentenarchitektur zur Berechnung der Nachrichtenlaufzeiten
3.3.1.2
Overlay Modelle
Im Rahmen des Arbeitspakets A2 wurden zehn relevante P2P-Overlay-Netzwerke implementiert.
Dies ist genauer in Abschnitt 3.3.2 beschrieben.
3.3.1.3
Applikationsschicht
Auf der Applikationsschicht wurde das populäre Inhaltsverteilssystem BitTorrent [56] implementiert. Des Weiteren wurde ein Dienst implementiert, welcher es erlaubt „Network-Coding“ [57] auf
einzelne Dateiblöcke anzuwenden. Das Simulationsframework erlaubt es, diese Komponenten generisch mit einem Such-Overlay zu kombinieren. Folglich können beispielsweise Datei-Tauschbörsen,
wie z. B. eMule, in ihrer Ganzheitlichkeit untersucht werden.
3.3.1.4
Benutzerverhaltensmodelle
Das Benutzerverhalten in P2P-Systemen bestimmt sich durch diverse Einflussfaktoren und kann
sich, je nach Anwendung, sehr stark in seiner Modellierung unterscheiden. Der entwickelte Simula10
tor stellt deshalb zwei unterschiedliche Komponenten zur Modellierung des Benutzerverhaltens zur
Verfügung, die Konnektivitäts- und Arbeitslastkomponente [58]. Die Konnektivitätskomponente
steuert die Dynamik der Beteiligung von Peers am Netzwerk. Diese Komponente stellt diverse Verteilungen beruhend auf Messdaten aus dem Internet zur Verfügung, wie z. B. eine Weibull- und
Exponentialverteilung in den Online-Zeiten der Peers sowie die Modellierung des Ankunftsprozesses
der Peers im System. Die Arbeitslastkomponente beschreibt die Ressourcenverteilungen auf die
Peers, bestimmt die Popularität von angebotenen Services in einer Dateitauschbörse und definiert
die zeitliche Abfolge der Suchanfragen, die ein Peer in einem Overlay-Netzwerk initiiert.
3.3.1.5
Generierung von Simulationsszenarien
Um die Vergleichbarkeit von verschiedenen Simulationsläufen zu erhöhen, wurde die Einbindung von sogenannten Szenarien implementiert. Die Idee hinter einem Szenario ist, dass darin alle
relevanten Informationen enthalten sind und mehrmaliges Ausführen des gleichen Szenarios immer
genau dieselben Ergebnisse liefert. So kann ein und dieselbe Simulation mehrfach wiederholt werden, was besonders zur Beobachtung spezieller Verhaltensweisen eines P2P-Protokolls sowie fürs
Debugging sehr hilfreich ist. Darüber hinaus können die Rahmenbedingungen eines Szenarios leicht
auf ein anderes P2P-Protokoll übertragen werden. Somit werden direkte Vergleiche zwischen mehreren Protokollen unter identischen Umgebungsbedingungen ermöglicht. Zur Beschreibung eines
Szenarios wurde ein XML-Dokument gewählt, das folgende Einstellungen beinhaltet [51]:
•
Allgemeine Einstellungen des Simulators. Hierzu zählen grundlegende Einstellungen des Simulators wie das zu simulierende Peer-to-Peer-Protokoll und die Anzahl der teilnehmenden
Peers. Das zu verwendende Netzwerkmodell kann spezifiziert werden und auch, ob Peers
nach Vollendung ihrer Aufgaben das Netzwerk wieder verlassen sollen oder nicht. Darüber
hinaus kann die Saat des Zufallsgenerators festgelegt werden, um immer wieder exakt die
gleiche Zufallsverteilung zu erlangen.
•
Protokollspezifische Einstellungen. Hier können sämtliche veränderlichen Parameter des P2PProtokolls festgelegt werden, wie beispielsweise die Anzahl der Nachfolgerknoten im ChordProtokoll oder die Größe der Buckets im Kademlia-Protokoll.
•
Auswahl der Churn-Rate. Die Einstellmöglichkeiten umfassen die Art der Churn-Rate sowie
die mit ihr verbundenen Parameter.
•
Auswahl der zu berechnenden Metriken. In diesem Abschnitt werden die zu berechnenden
Metriken und ihre Parameter sowie das Ausgabeverzeichnis der Ergebnisse festgelegt.
Verhalten der Peers. Hierbei kann gezielt das Verhalten einzelner Peers (i), verschiedener Gruppen
von Peers (ii) sowie das Standardverhalten der Peers definiert werden (iii). Das Verhalten eines
Peers (i) setzt sich aus der Definition seiner ID, dem Beitrittszeitpunkt ins Netzwerk sowie einer
Menge von Aktionen zusammen. Eine Aktion setzt sich wiederum aus der Angabe der auszuführenden Aktion (z. B. Primärschlüsselsuche), mit der Aktion verbundenen Parametern und des Ausführungszeitpunkts zusammen. Bei der Angabe des Verhaltens einer Gruppe von Peers (ii) kommt zu
den zuvor genannten Teilen noch die Angabe der Größe der Gruppe hinzu. Ist das Verhalten eines
Peers weder durch (i) noch (ii) spezifiziert, verhält er sich nach dem Standardverhalten eines Peers
(iii). Dieses ist analog zu (i) aufgebaut.
11
3.3.1.6
Nutzung von PeerfactSim.KOM außerhalb der Forschergruppe
Der Simulator steht seit Ende letzten Jahres Interessierten im Internet zur Verfügung. Besonders
zu erwähnen ist, dass der Simulator bereits auf europaweiter Ebene sowie im industriellen Bereich
Anwendung gefunden hat. Beispielsweise verwenden ihn verschiedene europäische Universitäten
für ihre Forschungszwecke im Rahmen des EU Network of Excellence „CONTENT“ [59], um mit
dessen Hilfe neuartige P2P-basierte Inhaltsverteilstrategien zu analysieren. Ebenso wurde er auch
für die Evaluation eines P2P-basierten Streaming-Systems der Motionet AG [60] eingesetzt. Darüber
hinaus konnten die Ergebnisse dieses Arbeitspakets, nämlich die Entwicklung eines generischen
Simulationsframeworks, erfolgreich auf der CeBIT 2008 vorgestellt werden.
3.3.2 Arbeitspaket A2 - Evaluierung der Skalierbarkeit und Stabilität existierender
Overlay-Mechanismen
Ziel dieses Arbeitspakets war es herauszufinden, welchen Einfluss verschiedene Entwurfsentscheidungen auf die Qualität von P2P-Overlaynetzwerken haben. Insbesondere wurde der Einfluss
auf Skalierbarkeit und Stabilität untersucht.
Um unterschiedliche Overlaynetzwerktypen systematisch zu evaluieren, haben wir zunächst die
relevanten Metriken für Skalierbarkeit, Stabilität, Effizienz, Robustheit und Lokalisierbarkeit definiert. Die Erweiterung auf weitere Qualitätsmerkmale neben Skalierbarkeit und Stabilität wurde
von uns vorgenommen, um die bilateralen Wechselwirkungen später besser identifizieren zu können. Der erstellte Metrikenkatalog enthält z.B. Antwortzeit und Trefferquote als Metriken für die
Leisungsfähigkeit; Anzahl der Hops einer Suchnachricht, Lastverteilung über die Peers, Stretchfaktor als Metriken für den Aufwand. Die Skalierbarkeit und Stabilität wurden über die Varianz der
gemessenen Effizienz bei veränderter Systemgröße und Systemlast bewertet. Für die Systemlast
wurden verschiedene Anwendungsszenarien modelliert. Ein Ausschnitt über die Ergebnisse dieser
Arbeitsschritte ist in [61] beschrieben.
Um Einsichten in den Einfluss von Entwurfsentscheidungen auf die Qualität von P2POverlaynetzwerken zu gewinnen, wurden und werden entsprechend [62] sechs grundlegende Entwurfskonzepte systematisch untersucht: 1) Wahl des Identifikatorraums, 2) Abbildung der Ressourcen und Peers auf den Identifikatorraum, 3) Verwaltung des Identifikatorraums durch die
Peers, 4) Struktur des logischen Overlaynetzwerks, 5) Routing-Strategie, 6) Instandhaltungsstrategie.
Bezüglich dieser Entwurfskonzepte verglichen wir acht P2P-Overlaynetzwerke, die wir im Simulator PeerfactSim.KOM implementiert haben: zwei unstrukturierte (Gnutella 0.4 [29] und Gia
[30]), zwei strukturierte (Chord [63] und Kademlia [64]), zwei hybride (Gnutella 0.6 [65] und
Globase.KOM [2,3]) sowie zwei hierarchische Overlays (Chordgia und Giachord). Bisher wurden
die folgenden Overlays bezüglich der Entwurfskonzepte simulativ verglichen: Gnutella 0.4 mit Gia,
Chord mit Kademlia, Globase.KOM mit Chord und Kademlia. Weiterhin geplant sind die Vergleiche
von Gnutella 0.6 mit Globase.KOM und Chordgia mit Giachord. Weiterhin werden die jeweils besten Overlays eines Typs miteinander verglichen werden. Diese Untersuchungen erfolgen bis Ende
März 2009, was dem Projektzeitplan entspricht.
Bezüglich der zuvor genannten Entwurfskonzepte wurden folgende Feststellungen und Ergebnisse erzielt:
12
In unstrukturierten Overlay-Netzwerken ist die Zuordnung von Ressourcen und Peers auf den Identifikatorraum unabhängig voneinander. Damit sind die Entwurfsentscheidungen für die Konzepte 1)–3) und 6) bereits festgelegt. Unsere Auswahl der zu untersuchenden unstrukturierten Overlays wurde beeinflusst durch die Entwicklung von Gnutella 0.4. Dieses weist bekanntermaßen eine
schlechte Skalierbarkeit und Effizienz auf. Die Lösung dieser Probleme hat zum allgemeinen Verständnis von unstrukturierten Overlays beigetragen und führte zur Entwicklung von Gia, einem
unstrukturierten und Gnutella 0.6, einem hybriden Overlay. Gia verbessert die Skalierbarkeit, Effizienz und Stabilität von Gnutella durch den Einsatz von vier zusätzlichen Mechanismen: BiasedRandom-Walk (Routing-Strategie), Ein-Hop-Replikation (in Zusammenhang mit der RoutingStrategie), Topologieanpassung (Struktur des logischen Overlaynetzwerks) und Flusskontrolle
(Routing-Strategie). Die Ein-Hop-Replikation (One Hop Replication – OHR) dient dazu, den Suchprozess zu verbessern, indem die Anzahl der Hops - bis ein Treffer erzielt wird - und damit die Netzlast verringert werden. Das Ziel der dynamischen Topologieanpassung (Topology Adaption – TA) ist
sicherzustellen, dass Knoten mit einer höheren Kapazität eine größere Anzahl an Nachbarn mit großer Bandbreite besitzen. Die Flusskontrolle (Flow Control - FC) verhindert, das Suchanfragen an
überlastete Knoten geschickt werden. Die Kombination aus Topologieanpassung, Flusskontrolle und
Ein-Hop-Replikation stellt sicher, dass Peers mit höherer Bandbreite eine Antwort auf die Großzahl
der Suchanfragen liefern. Daher benutzt Gias Suchprotokoll den gewichteten Random-Walk (Biased-Random-Walk – BRW). Suchanfragen werden nicht, wie bei Gnutella, an alle Nachbarn gesendet, sondern jeweils nur an den Knoten mit der größten Bandbreitenkapazität.
In Simulationen wurde durch das Weglassen einzelner Mechanismen deren Anteil an der Leistungsfähigkeit aufgezeigt. Wie aus den Simulationen deutlich wurde (siehe Abbildung 6) gibt es
zwar mit dem Biased-Random-Walk und der Ein-Hop-Replikation zwei Komponenten, die auf dem
ersten Blick die größten Leistungsgewinne erbringen, aber auf den zweiten Blick den Erfolg auf der
einen Seite (z.B. wesentlich weniger Nachrichtenlast im Netz) mit einem großen Defizit auf der
anderen Seite (z.B. geringere Erfolgsrate, mehr benötigte Hops) erkaufen. Es ist das Zusammenspiel
aller vier Komponenten, das für die Leistungssteigerung von unstrukturierten Overlay-Netzwerken
sorgt. Im Rahmen des Teilprojekts Validität ist das unstruktuierte Overlaynetzwerk „Bubblestorm“
[6] entwickelt und dessen Mechanismen auch mit Gnutella 0.4 verglichen worden. Bubblestorm
wird momentan ebenfalls in PeerfactSim.KOM implementiert.
In strukturierten Overlays ist die Zuordnung von Ressourcen und Peers auf den Identifikatorraum fest vorgegeben. In den meisten Fällen erfolgt diese Zuordnung durch eine Verteilte Hashtabelle (DHT). Die Ressourcen werden anhand ihrer IDs in der Regel auf den zuständigen Peer abgebildet. Wir untersuchten und verglichen zwei strukturierte Overlaynetze, Chord als das meist zitierte und Kademlia als das am meisten verbreitete, in der Praxis. Beide Overlays sind DHT-basiert,
weisen allerdings große konzeptionelle Unterschiede auf. In verwandten Arbeiten wurde bereits
festgestellt, dass andere DHT-basierte Overlays (Pastry, Tapestry [66] und CAN [27]) im Vergleich
mit Chord eine schlechtere Leistungsfähigkeit aufweisen.
13
Abbildung 6: Faktoranalyse für Gnutella (oben) bzw. Gia (unten) mit einzeln analysierten GiaFeatures: BRW (Biased-Random-Walk), OHR (Ein-Hop-Replikation), FC(Flusskontrolle),
TA(Topologieanpassung)
Die konzeptionellen Hauptunterschiede zwischen Chord und Kademlia bestehen in der unterschiedlichen Verwaltung des Identifikatorraums sowie in der Routing- und Instandhaltungsstrategie.
Der Unterschied bezüglich der Verwaltung des Identifikatorraums ist die Verwendung unterschiedlicher Distanzfunktionen – Kademlia verwendet die XOR-Funktion und Chord die arithmetische Dezimalsubtraktion. In beiden Overlays werden die Ressourcenidentifikatoren durch Peers mit dem
nächsten Peer-Identifikator bezüglich der Distanzfunktion verwaltet. Des Weiteren verwendet Kademlia paralleles Routing und eine Struktur des logischen Overlaynetzes, die, verglichen mit Chord,
zu einer viel größerer Anzahl von Kontakten pro Peer führt. Chord verwendet eine passive Instandhaltungsstrategie, wobei ausgefallene Kontakte erst während einer Stabilisierungsphase und nicht
wie bei Kademlia sofort bei Ausfallerkennung ersetzt werden.
Skalierbarkeitsuntersuchungen von Chord und Kademlia ergaben folgende Resultate (Abbildung
7): Beide Protokolle besitzen eine Routing-Komplexität von O(log2n) bezüglich der Netzwerkgröße.
Die bessere Skalierbarkeit und Effizienz von Kademlia zeigt den großen Einfluss einer höheren Anzahl von Kontakten in den Routingtabellen und der Parallelität von Suchanfragen.
Abbildung 7: Skalierbarkeit (Anzahl der Hops, Relative Delay Penalty und Operationsdauer) von Kademlia und Chord
Für die Bewertung der Stabilität haben wir eine Extremsituation für das System im Zeitintervall
t1 – t2 erzeugt. Aussagekräftig sind hierbei keine absoluten Zahlen, sondern eher Vergleichswerte
zwischen unterschiedlichen Overlay-Netzwerken. Auffällig in den Resultaten (Abbildung 8) ist ein
14
extremer Anstieg der Antwortzeit direkt nach dem Zeitpunkt t2. Grund hierfür ist, dass die Einträge
in den Routing-Tabellen der verbleibenden Peers nicht schnell genug aktualisiert werden und für
die Ausführung der Overlay-Operationen die entsprechenden Timeout-Zeiten abgewartet werden
müssen. Die Messwerte von Kademlia zeigen keine wesentliche Veränderung zu den Zeitpunkten t1
und t2. Die Begründung hierfür liefern die aktive Instandhaltungsstrategie und die Replizierung von
Datenobjekten. In unseren Simulationen von Chord wurden zum Teil Nachrichten nach 100 Hops
verworfen. Dies passiert, wenn Verweise auf Nachfolger-Peers im Chord-Ring falsch gesetzt sind.
Dieser Fehler wird nicht aktiv, sondern erst während der Stabilisierungsphase von Chord repariert
[67]. Weiterhin reduziert sich mit höherem Churn der Instandhaltungsaufwand bei Chord. Durch
Churn gehen in Chord Finger und Successoren verloren und werden nicht aktiv repariert. Während
der Stabilisierungsphase müssen dadurch weniger Finger auf die korrekte Position überprüft werden, was den Instandhaltungsverkehr reduziert. Dies zeigt den Nachteil passiver Instandhaltungsmechanismen. Zwar erzeugen sie geringeren Aufwand, sie können aber bereits bei normalem Churn
zu einer mangelhaften Stabilität führen.
Abbildung 8: Stabilität von Chord und Kademlia (Anzahl der Hops und Operationsdauer)
Weitere Simulationsergebnisse, präsentiert in [61], zeigen, dass Kademlia grundsätzlich Chord
überlegen ist. Trotz der geringeren Kommunikationskosten in Kademlia benötigt es durchschnittlich
35 % weniger Suchschritte pro Primärschlüsseloperation und 66 % geringere Antwortzeiten als
Chord. Deswegen konzentrierte sich unsere weitere Forschung an strukturierten Overlays auf Kademlia. In [68] untersuchten wir den Nutzen der Position der Peers im Underlaynetzwerk und modifizierten den iterativen Routing-Algorithmus von Kademlia, um den Interdomain-Verkehr auf der
DHT-Ebene zu reduzieren. Evaluationen mit realen Messdaten [53] bestätigten, dass die Berücksichtigung der Ortsinformationen tendenziell auch zu einer Reduzierung der Antwortzeiten führt.
Die bisher existierenden Mechanismen zur Reduzierung der Latenzen für die Primärschlüsselsuche
dagegen reduzieren den Inter-Domain-Verkehr nicht im gleichen Umfang wie unser Ansatz. Die
Schlussfolgerung bezüglich des Designs strukturierter Overlay-Netzwerke ist, dass die Entwurfskonzepte 4, 5 und 6 den höchsten Einfluss auf die Effizienz und Stabilität haben.
In hybriden P2P-Overlays wird über die Verwaltung des Identifikatorraums die Heterogenität der
Peers berücksichtigt. Deswegen erhalten nicht alle Peers die gleichen Aufgaben. Hybride Ansätze
wurden anhand von Gnutella 0.6 und Globase.KOM evaluiert. Die Entscheidung für Gnutella 0.6
erfolgte aus folgenden Gründen: Erstens ist es ähnlich zu den Overlays, die in zwei populären P2PAnwendungen zum Einsatz kommen (KaZaA and Skype). Zweitens ist es interessant zu sehen, in-
15
wiefern die Evolution von einer unstrukturierten (Gnutella 0.4) zu einer hybriden (Gnutella 0.6)
Topologie die Leistungsfähigkeit des Overlaynetzwerks verbessert hat. Das zweite untersuchte hybride Overlay Globase.KOM wurde im Rahmen des Arbeitspakets A5 im Hinblick auf die funktionalen
und qualitativen Anforderungen der Referenzszenarien A and B entwickelt. Verglichen mit den
strukturierten und unstrukturierten Overlays zeigen hybride Ansätze die Fähigkeit, komplexe Anfragen effizient zu beantworten und dabei die Vollständigkeit der Suchantworten zu garantieren.
Eigentlich ist zu vermuten, dass aufgrund der unterschiedlichen Aufgaben der Peers in hybriden
Overlays die Stabilität and Robustheit mangelhaft sein könnte. Es zeigte sich aber, dass die Dauer
zur Wiederherstellung des normalen Systemzustands nach einem Extremlastzustand in hybriden
Overlays wesentlich kürzer ausfällt als bei unstrukturierten und strukturierten Overlays. Ein Vergleich der Leistungsfähigkeit der Primärschlüsselsuche in Globase.KOM mit strukturierten Overlays
wird in Abbildung 17 vorgestellt. Eine komparative Evaluation von Globase.KOM und Gnutella 0.6
wird aktuell durchgeführt und wird bis zum Ende des Projekts abgeschlossen sein.
Hierarchische Overlays ermöglichen es, die Vorteile von unstrukturierten und strukturierten P2POverlays zu kombinieren. Die Peers sind in Clustern organisiert, wobei das Routing und die Topologie innerhalb der Cluster unstrukturiert und zwischen den Clustern strukturiert sein können oder
umgekehrt. Solche Ansätze lösen erfolgreich das Problem des Protokoll-Overheads in strukturierten
und die unzureichende Skalierbarkeit der Anfragen in unstrukturierten Overlays. Zusätzlich erhöht
sich die Effizienz beim Beantworten von komplexen Anfragen und die Lastverteilung verbessert
sich, verglichen mit hybriden Ansätzen. Das Design von PeerfactSim.KOM erlaubt eine leichte Kombination von beliebigen Overlays. Es wurden zwei Kombinationen implementiert – Chord-Gia, wobei
Chord für das Routing außerhalb von Clustern und Gia innerhalb von Clustern verwendet wurde,
und Gia-Chord für die umgekehrte Weise. Hierbei wurde Chord anstelle von Kademlia verwendet,
da ein deterministisches Routingverhalten benötigt wird. Die Evaluation hierarchischer Overlays
und deren Vergleich mit anderen Overlays wird ebenfalls bis zum Ende des Projekts abgeschlossen
sein.
3.3.3 Arbeitspaket A3 - Flexibilität: Kontextbewusstsein
Im Arbeitspaket A3 wurde zunächst das Prinzip des Context Toolkits von Armind K. Dey [15] zur
allgemeinen Bearbeitung von Kontextinformationen auf P2P-Technologie übertragen. Dies ist technisch mittels eines P2P-Systems möglich. Allerdings entsteht durch die Verwendung eines allgemeinen Kontextverarbeitungstoolkits, in welchem jede Art von Daten eingetragen werden kann, kein
gezieltes System zur Verbesserung der Flexibilität von P2P-Systemen. Durch Simulation von bestehenden P2P-Systemen (u.a. CAN [27], Chord [21], Pastry [69], Tapestry [66] und PathFinder [5])
sowie eine Spezialistenbefragung zu dem Bereich Katastropheneinsatz [11] (Szenario A) konnten
wichtige Aspekte zur Verbesserung der Flexibilität mittels Kontextinformationen identifiziert und
effiziente Lösungen erarbeitet werden.
Die Menge der Kontextinformationen wurde geteilt in nutzerzentrierten Kontext und netzzentrierten Kontext.
Kontextinformation fällt in den Bereich nutzerzentriert, falls Interaktion mit dem Endnutzer eine
Voraussetzung zur Erhebung oder Bearbeitung des Kontextes ist. Im Bereich P2P sind die typischen
Nutzerinteraktionen alle Formen der Suchanfragen, wie z.B. Präfix-Suche, komplexe Suche oder
16
Primärschlüsselsuche, auch die Einordnung des Nutzers in seine soziale Struktur (z.B. eine Organisationsstruktur) kann durch Modellierung des sozialen Kontexts erreicht werden.
Im Gegensatz dazu benötigt der netzzentrierte Kontext keine Interaktion mit dem Endnutzer.
Kontextinformationen können autonom innerhalb des P2P-Netzes erhoben und bearbeitet werden.
Typische Informationen sind hier die Anzahl der verbundenen Peers, die Struktur und Konnektivität
des Netzwerkes und Ressourcenallokation.
3.3.3.1
Nutzerzentrierter Kontext
Im Bereich nutzerzentrierter Kontext wurde eine flexiblere Verarbeitung von Suchanfragen in
P2P-Netzen entwickelt. Es existieren zwei Formen von Suchanfragen: Primärschlüsselsuche und
„komplexe Suchanfragen“. Je nach Anwendungsgebiet wählt der Anwender ein P2P-Netzwerk, welches für die eine oder die andere Form der
Suche optimiert wurde. Diese Kontextab3
2
hängigkeit der P2P-Netze wurde bisher
2
1
entweder einfach hingenommen oder es
Target
3
wurden durch die Inverted-Index-Technik
2
2
mit hohem Aufwand komplexere Suchen in
DHT-Overlay-Netzen ermöglicht. Eine in1
Origin
tegrierte Lösung, welche beide Formen der
2
3
Suche gleichermaßen gut beherrscht, existierte bisher nicht.
Abbildung 9: Primärschlüsselsuche in PathFinder
Der Forschungsbeitrag ist die Erstellung
des Overlay-Netzwerks „PathFinder“[5],
welches sowohl komplexe Suchanfragen als auch Primärschlüsselsuche innerhalb eines Netzes effizient ausführen kann. Die Ausführung der unterschiedlichen Suchanfragen im P2P-Netz wird kontextabhängig entschieden. Durch diese Kombination können auch kombinierte Anfragetypen realisiert werden. Eine typische Anfrage nach einem Stichwort wird als Volltextsuche abgesetzt, sobald
ein Treffer gefunden wird, kann eine Primärschlüsselsuche alle verfügbaren Replikate lokalisieren.
Beide Formen der Suche nutzen den kleinen Durchmesser eines Erdös Renyi Zufallsgraphen, dadurch können Informationen schnell und effektiv gefunden werden. Durch PathFinder wird die Suche nach beliebigen Informationen effizient ermöglicht, Beziehungen zwischen Nutzern eines P2POverlay-Netzwerks werden jedoch nicht explizit durch PathFinder oder andere Overlay-Netzwerke
modelliert. Jeder Benutzer befindet sich in einem sozialen Gefüge (z.B. einer Organisationsstruktur)
mit definierten Anrufungs- und Anhörungswegen. Dies führte zu der Entwicklung einer DHTbasierten P2P-Organisationsstruktur.
In dieser Arbeit wurde die Anwendung DCC [7] (Distributed Command and Control) entwickelt,
die hierarchischen Datenzugriff in strukturierten Peer-to-Peer-Netzwerken ermöglicht.
Ziel ist es, oberhalb von strukturierten Peer-to-Peer-Netzwerken eine Hierarchie aufzubauen, so
dass verteilte hierarchische Datenspeicherung und Zugriff möglich ist. Die hierarchische Datenstruktur kann auch in der Kommunikation von verteilt verwalteten Organisationsstrukturen, wie
bei Einsatzkräften im Katastrophenschutz, angewendet werden.
17
Da als Basis strukturierte Peer-to-Peer-Netzwerke dienen, kann die entwickelte Anwendung eine
verteilte Hashtabelle als Grundlage benutzen. Mit Hilfe dieser Hashtabelle wird die Hierarchie verwaltet.
Das entwickelte System wurde simulativ mit den Overlay-Netzwerken Chord [21], Symphony
[42] und CAN [6] getestet [7]. Die benötigte Schnittstelle zu den unterhalb der Anwendung liegenden Peer-to-Peer-Netzwerken ist minimal, es wird nur eine Methode für das Senden an eine ID und
das Empfangen benötigt. Daher ist die Anwendung flexibel auf alle Peer-to-Peer-Netzwerke übertragbar, welche schlüsselbasiertes Routing ermöglichen.
Die Resultate der Simulationen haben gezeigt, dass es möglich ist, eine hierarchische Struktur
oberhalb von strukturierten Peer-to-Peer Netzwerken aufzubauen. Es wird gezeigt, dass bei N Netzwerkteilnehmern der zeitliche Aufwand mit O(log N) skaliert, um die hierarchische Struktur aufzubauen.
Abbildung 10: Nachrichtenaufwand zur Verwaltung einer Organisationsstruktur
Der linke Teil der Abbildung 10 zeigt den zeitlichen Aufwand zur Erstellung einer Stab-Linen Organisationshierachie. Ein Schritt entspricht durchschnittlich 100ms, d.h. bei einer Gesamtgröße von
1000 Teilnehmern ist innerhalb einer Minute die Organisationsstruktur etabliert. Die vertikalen
Linien geben das 95% Konfidenzintervall an.
Die Funktionsfähigkeit der Organisationsstruktur ist bei massivem Verlassen der Teilnehmer gewährleistet. Der zweite Teil der Abbildung zeigt den Wiederherstellungsaufwand der Organisationsstruktur bei Verlassen von maximal 20% der Teilnehmer. Die zeitliche Varianz ist hier höher als bei
einem sukzessiven Aufbau der Struktur, dennoch ist nach 80 Sekunden das System garantiert wieder einsatzfähig.
3.3.3.2
Netzzentrierter Kontext
Als netzzentrierter Kontext wurde für Szenario A ein System für Application Level Multicast
(ALM) auf bestehenden strukturierten P2P-Netzen entwickelt [8]. Dadurch ist es möglich zur Laufzeit erhobene Informationen über einzelne Peers, deren Bandbreite, Online-Zeit etc. in definierten
Regionen zu verbreiten und Ressourcenallokation durchzuführen. Die Reichweite des ALM kann
flexibel gewählt werden und kann nur einige Schritte, aber auch das gesamte Netzwerk umfassen.
ALM ermöglicht zusätzlich die Möglichkeit der Präfix-Suche. Bei Wahl einer geeigneten Mapping-
18
Funktion werden nur Bereiche des Netzwerkes angesprochen, welche die Präfix-Kriterien erfüllen
[70]. Die Möglichkeit ALM sowohl zum Verbreiten von Kontextinformationen innerhalb des P2PNetzes zu verwenden als auch Präfix-Suche zu ermöglichen, qualifiziert den entwickelten Mechanismus sowohl für netzzentrierten als auch für nutzerzentrierten Kontext gleichermaßen. In Error!
Reference source not found. ist ein ALM Baum des entwickelten Algorithmus dargestellt. Die Multicast Nachricht wird von dem grau eingefärbten Peer gesendet. Kein Peer erhält eine Nachricht
doppelt, vergleichbare Ansätze verursachen insbesondere im Fall des CAN Netzwerkes unnötige
Nachrichtenduplikate [9].
Abbildung 11: Application Level Multicast Baum eines CAN Overlay Netzwerks
3.3.4 Arbeitspaket A4 - Ausgestaltung/Entwicklung von Referenzszenario A
Die Arbeit am hier beschriebenen Arbeitspaket beschäftigte sich mit der Entwicklung des Szenarios “P2P-basiertes Kommunikationssystem für den Katastropheneinsatz“, welches in Zukunft FiRe
(First Response) genannt wird.
Die wichtigsten Ergebnisse lassen sich wie folgt zusammenfassen: Die Anforderungen an ein verteiltes Katastrophenmanagementsystem wurden durch freie Interviews mit Ersthelfern, der Feuerwehr, dem THW und dem DRK erhoben [11]. Bestehende P2P-Overlay-Netze wurden auf Tauglichkeit im Katastrophenfall evaluiert [12]. Es wurde die Simulationsumgebung First Response Communication Sandbox (FRCS) entwickelt [13], welche die physischen Positionen und Bewegungen
aller Beteiligten einer Katastrophe simuliert. Diese Simulationsumgebung kann an beliebige Netzwerksimulatoren angeschlossen werden, dadurch wird eine integrierte Simulation eines Katastropheneinsatzes möglich. Dieser ganzheitliche Ansatz wurde in einer Demonstration [14] ebenfalls
vorgestellt. Des Weiteren garantiert der DCC Mechanismus [7] die Aufrechterhaltung der Organisationsstruktur und BridgeFinder [10] identifiziert Knoten zur Aufrechterhaltung der Konnektivität in
mobilen Szenarien.
Folgende Use-Cases wurden für das Referenzszenario A durch freie Interviews mit Ersthelfern,
der Feuerwehr, dem THW und dem DRK erhoben [11]:
19
Name
Beschreibung
Beispiel
Broadcast/Multicast Nachrichten müssen an
bestimmte Peers gesendet
werden, optional mit
Bestätigung.
Die Einsatzleitung sendet eine
Nachricht zur Evakuierung an alle
Beteiligten.
Shift Change
Auftreten von Churn muss bei
Schichtwechsel berücksichtigt
werden.
Feuerwehr-Trupp A beendet die
Schicht. Alle Aufgaben und
Verantwortungsbereiche werden von
Trupp F übernommen.
Locality Awareness
Ein mobiler Benutzer betritt ein
Gebiet und erhält automatisch
kontextsensitive Nachrichten.
Ein Arzt läuft auf ein Gebäude zu
und erhälteine Warnmeldung, das
Gebäude nicht zu betreten.
Resource
Awareness
Zusätzliche Hardware wird zur
Verfügung gestellt, das P2P-Netz
stellt sich darauf ein und nutzt
die neuen Ressourcen.
Ein Kommunikationstrupp stellt
einen neuen Server zur Verfügung,
welcher in das P2P- Netz
eingegliedert wird.
Active Search
Suche nach einem Objekt,
optional innerhalb einer gewissen
Reichweite.
Ein Ersthelfer sucht nach dem
nächsten zu erreichenden Arzt.
Hierarchy Maintenance
Die Organisationsstruktur ist
strikt hierarchisch aufgebaut und
muss bei Eintreffen/Verlassen
von Helfern aktualisiert werden.
Ein neues Löschfahrzeug trifft am
Unfallort ein, die Insassen werden in
die Organisationstruktur
aufgenommen und können
Nachrichten senden/empfangen.
Die erarbeiteten Use Cases stellen eine Teilmenge der insgesamt gewünschten Funktionalität dar
(Basis Use Cases). Je nach Institution sind zusätzliche spezielle Use Cases erwünscht. Bei der Bearbeitung des Szenarios A wurde Wert auf eine allgemeine Einsatzfähigkeit der erarbeiteten Mechanismen gelegt. Eine spätere Erweiterung der Basis Use Cases ist jederzeit möglich. Die erhobenen
Anforderungen dienten als Leitfaden für die entwickelte Katastrophensimulation, den Prototyp als
auch für die Entwicklung spezieller Mechanismen, wie z.B. das Application Level Multicast [8] und
DCC [7], das System zur Pflege der Organisationsstruktur.
20
Environment
Creation
Peer
Configuration
Network
Simulation
Movement
Simulation
Analysis and
Visualization
Abbildung 12: Prozessschritte der FRCS
In Abbildung 12Error! Reference source not found. ist der Verlauf eines Simulationszyklus dargestellt. Nach der Erstellung einer für den kompletten Simulationslauf fixen Umgebung werden die
Aktoren mit individuellen Attributen ausgestattet. Die darauf folgende Netzwerksimulation und
Bewegungssimulation bedingt sich gegenseitig. In der simulierten Netzwerkebene können Nachrichten mit Befehlen generiert werden, welche Auswirkungen auf die Bewegung der einzelnen Peers
haben, umgekehrt haben die Bewegungen der Peers Einfluss auf die Konnektivität des Netzwerkes.
Diese integrierte Betrachtung ist mit bisherigen Simulatoren nicht möglich. Während des Designs
der FRCS wurde gezielt Wert auf eine klare Schnittstelle zwischen allen beteiligten Softwarekomponenten gelegt.
Die Ausgabe der errechneten Bewegungsdaten sowie die Steuerung der Simulation
kann durch ein beliebiges Programm geschehen, welches die Schnittstelle der FRCS
implementiert. Abbildung 13 zeigt einen
Ausschnitt einer Simulation, einzelne Peers
können u.a. mit individuellen Reichweiten
ihres Netzwerkadapters versehen werden
(hier in Form eines grünen Kreises dargestellt). Die Erstellung des FRCS in Kombination mit der P2P-Netzwerksimulation ermögAbbildung 13: Graphische Ausgabe FRCS
lichte bestehende P2P-Overlay-Netze im
Hinblick auf die Einsatzfähigkeit in Katastrophenszenarien zu evaluieren.
Bestehende P2P-Systeme wurden systematisch auf Eignung für Katastrophenszenarien evaluiert
[12], dies war durch die in Arbeitspaket A2 gesammelte Expertise erst ermöglicht worden. Durch
die Heterogenität der beteiligten Ressourcen kann durch geeignete Wahl von Superpeers die Wahrscheinlichkeit des Auseinanderfallens von Netzwerken erheblich reduziert werden. Abbildung 14
zeigt die Anzahl der Cluster bei einer gezielten Auswahl von Superpeers im Gegensatz zu einer zufälligen Auswahl in einem Szenario mit 2000 Teilnehmern. Die beteiligten Peers besitzen unterschiedliche Modellierungen der Onlinezeit. Die Spannbreite wurde maximal auf das 10fache des
Basiswertes begrenzt. Bei zufälliger Auswahl kann die Anzahl einzelner Partitionen bis über 400
erreichen, bei einer gezielten Auswahl der Superpeers beträgt die Anzahl circa 1/5.
21
Die Evaluation bestehender P2PNetzwerke, insbesondere in Katastrophenszenarien zeigt, dass eine Partitionierung des Netzwerkes in unverbundene Cluster eine realistische Bedrohung für bestehende P2P-Netzwerke
darstellt. Insbesondere in Katastrophensituationen können durch unvorhersehbare Ereignisse große Teile der
Verbindungen gestört werden oder
komplett ausfallen. Etablierte P2PSysteme haben die Gefahr der Partitionierung ignoriert und somit auch keine
Protokolle für eine erfolgreiche Vereinigung eines partitionierten P2PNetzes implementiert.
Abbildung 14: Evaluation
Overlaynetzwerke
bestehender
P2P-
Um einer bevorstehenden Partitionierung frühzeitig entgegenzuwirken identifiziert BridgeFinder
[10] Konnektivitätsengpässe. Diese entstehen durch Clusterbildung innerhalb der beteiligten Kommunikationsgeräte. Durch geographische Gebiete mit einem hohen Anteil an Kommunikationsgeräten entstehen stark verbundene Cluster, welche untereinander jedoch nur leicht vernetzt sind. Innerhalb der Forschergruppe wurden durch BridgeFinder die kritischen Peers der aufgespannten
Netzwerktopologie identifiziert. Bisher konnten diese kritischen Stellen des Netzwerkes entweder
nur durch lokale Algorithmen bestimmt werden oder durch statistische Hochrechnung aufgrund von
Stichprobentests [71]. Die Methode zur Identifizierung kritischer Nodes basiert auf dem Push-Sum
[72] Algorithmus, welcher innerhalb der Forschergruppe modifiziert [73] und dadurch auf P2POverlaynetzen nutzbar wurde.
Zusätzlich zu der Simulation von Katastrophenszenarien
wurde innerhalb FiRe ein Prototyp für Ersthelfer entwickelt. Ziel
des Prototyps ist die Ermittlung der Latenzzeiten unter realen
Bedingungen. Die Architektur des Prototyps kapselt drei Schichten, welche nach Bedarf ausgetauscht werden können. Es existiert eine Netzwerkschicht, welche Overlay-Funktionalitäten an
eine Middleware-Ebene weitergibt. Bisher implementierte Funktionalität der Middleware ist ortsbezogene Suche, Kommunikation per Chat und das Setzen von Tags an bestimmten Orten
(Geotagging). Die graphische Oberfläche basiert auf Thinlets,
der Prototyp kann dadurch sowohl auf kleineren Geräten
(PDAs) als auch auf regulären Desktop-Rechnern eingesetzt
werden. Außerdem wurde er im Hinblick auf den Folgeantrag
der Forschergruppe entwickelt, er kann dort als realer Peer in
die Benchmarking Suite integriert werden.
Abbildung 15: Prototype eines
FiRe Endgerätes
22
3.3.5 Arbeitspaket A5 – Adaptivitätsmechanismen für die Referenzszenarien
Für den Entwurf eines geeigneten Overlay-Mechanismus im Rahmen der Referenzszenarien A
und B müssen folgende Fragen beantwortet werden: “Was sind funktionale und nicht-funktionale
Anforderungen dieser Szenarien?” und “Sind diese Anforderungen erfüllt durch existierende P2POverlay-Netzwerke?”
Abbildung 16: Basisbaumstruktur von Globase.KOM – Vergleich mit RectNet.
Ein P2P-basiertes Kommunikationssystem für Katastropheneinsätze muss in der Lage sein, alle
verfügbaren Hilfskräfte in einem bestimmten Gebiet zwecks Kommunikation und Koordination
schnell und zuverlässig zu finden. In einer kollaborativen global verteilten P2PSoftwareentwicklungsumgebung kommunizieren die Teilnehmer miteinander über große Distanzen,
wofür eine effiziente Strategie für die Platzierung von Daten und Verbindungsaufbau im P2POverlay benötigt wird. Analysen haben gezeigt, dass beide Referenzszenarien ein Ortsbewusstsein
der Peers im System erfordern. Die Unterstützung für Anfragen basierend auf geographischer Position der Peers, ortsabhängige Anpassung des Speichers und Kommunikation werden nicht durch
existierende Overlays unterstützt. Globase.KOM stellt ein Overlay für vollständige ortsbezogene
Suche dar, welches zunächst eine Baumstruktur anhand von geografischen Lokalitätsbeziehungen
aufbaut, wie in Abbildung 16 dargestellt. Diese Baumstruktur wird durch Verknüpfungen zu einem
Expander Graphen erweitert, welcher Robustheit und Stabilität des Overlays gewährleistet. Globase.KOM wurde in [2,3] vorgestellt. Im Vergleich mit anderen verwandten Arbeiten weist Globase.KOM eine vollständige Peer-Lokalisierbarkeit auf, skaliert besser und ist effizienter (siehe
Abbildung 16 rechts). Als Funktionen bietet Globase.KOM die Möglichkeit, Peers oder Dienste in
einem geografisch bestimmten Ort zu suchen, z.B. vorgegeben durch einen Punkt und einen Radius.
Zusätzlich unterstützt das Overlay die Suche nach dem geographisch nächsten Peer.
Zusätzlich wurde in Arbeitspaket A2 die Performanz von Globase.KOM als Vertreter hybrider Overlays mit der Performanz der Primärschlüsselsuche von Chord und Kademlia verglichen. Resultate
zeigten, dass bzgl. Primärschlüsselsuche Globase.KOM wesentlich besser als Chord und ungefähr
gleich gut wie Kademlia ist. Allerdings ist das Underlay-Bewusstsein wesentlich höher bei Globase.KOM als bei Kademlia, was die Operationskosten signifikant reduziert und die Gesamteffizienz
(definiert als das Verhältnis einer in definierter Qualität vorgegebener Leistungsfähigkeit zu dem
Aufwand) erhöht. Somit ist Globase.KOM bezüglich Skalierbarkeit und Stabilität überlegen.
23
Abbildung 17: Performance-Vergleich der Primärschlüssel-Operationen in Globase.KOM, Chord und
Kademlia
Im Teilprojekt Effizienz wurden Mechanismen untersucht, mit denen Overlay-Nachrichten eine
individuelle Dienstgüte (Verlust- und Latenzprioritäten) zugewiesen werden kann. Der dort entwickelte Mechanismus wurde in Globase.KOM integriert und in einem P2P-basierten Notrufszenario
untersucht [74]. Kontaktpartner für Notrufe wurden mit Globase.KOM basierend auf ihrer Nähe
zum Anrufenden ermittelt. Ferner erhielten die Notrufe im System die höchste Priorität bzgl. der
Latenz, sodass diese am schnellsten durchgestellt wurden.
Des Weiteren wurde in [75,76] die Eignung von Globase.KOM für Referenzszenario B untersucht. In Abschnitt 3.6 werden die Vorteile der ortsbezogenen Funktionalität für Referenzszenario B
diskutiert.
3.4
Zusammenarbeit innerhalb der Forschergruppe
Die Forschergruppe verfasste einen Übersichtsartikel zum Thema Peer-to-Peer und beschrieb die
Herausforderungen der verschiedenen Qualitätsmerkmale in P2P-Netzen.
Darüber hinaus wurde PeerfactSim.KOM im Rahmen des Arbeitspaketes A1 entwickelt und in der
gesamten Forschergruppe genutzt. Regelmäßige Treffen innerhalb der Forschergruppe garantierten
die Berücksichtigung aller Anforderungen der einzelnen Qualitätsmerkmale schon während der
Designphase. Die Zusammenarbeit mit Teilprojekt Validität ergab ein neuartiges realistisches Netzwerk Modell [53](vgl. Abschnitt 3.3.1). Des Weiteren beeinflusste das Teilprojekt Effizienz maßgeblich die Entwicklung des Simulators, dadurch wurden Fortschritte in unterschiedlichsten P2PMechanismen ermöglicht ([77-79]). Regelmäßige Treffen zur expliziten Identifizierung allgemeiner
Metriken in unterschiedlichen Szenarien zur Messung der Qualität in P2P-Systemen führten bereits
zur Veröffentlichung ([51,61,80]) relevanter Ergebnisse.
Konkrete Zusammenarbeit ergab sich bei der Untersuchung des Gossiping Protokolls Push-Sum.
Push-Sum wird innerhalb des Bubble Storm Netzwerks zur Zählung der momentan verbundenen
Peers verwendet. Für Szenario A wird eine Push-Sum Variante gewählt, um kritische Knoten innerhalb eines Netzwerkes zu identifizieren. Des Weiteren wird die Performance des Push-Sum Protokolls für verschiedene P2P-Overlay-Netze untersucht und verbessert.
Außerdem wurden gemeinsame Beiträge zur Evaluation und Implementierung von Mechanismen
sowohl für Referenzszenario A [11-14] als auch Referenzszenario B [75,76,81] erarbeitet. Studentische Arbeiten für beide Referenzszenarien wurden während der gesamten Laufzeit des ersten Förderzeitraumes von einer Vielzahl von Mitarbeitern gemeinsam betreut.
24
Die regelmäßige wöchentliche Vortragsreihe mit den anderen wissenschaftlichen Mitarbeitern
der Forschergruppe ermöglichte die Entwicklung des Application Level Multicast Systems und des
BridgeFinder Mechanismus.
Sehr hilfreich ist auch das P2P-Kolloquium an der TU Darmstadt. Durch die P2P-Forschergruppe
gelang es, internationale Forscher einzuladen, welche durch ihre Gastvorträge verwandte Arbeiten
vorstellten und die Ausrichtung und Zusammenarbeit innerhalb der Forschergruppe positiv beeinflussten. Durch das gemeinsame Auftreten als Forschergruppe gelang es, gute studentische Abschlussarbeiten in Form von Master-, Bachelor- und Diplomarbeiten zu betreuen. Die Marke
„quap2p“ konnte erfolgreich an der TU Darmstadt sowohl unter den Professoren als auch unter den
Studenten platziert werden. Dies lag unter anderem an der Webpräsenz www.quap2p.de, einheitlichen quap2p-T-Shirts sowie studentischen Informationsveranstaltungen und Flyern.
3.5
Vergleiche mit Arbeiten außerhalb der Forschergruppe
In Bezug auf P2P-Netzwerksimulation zeigt sowohl der Kenntnisstand bei Beginn des Arbeitspakets als auch der heutige Stand, dass bisherige Simulatoren, wie z.B. P2PSim [82], PeerSim [83],
Overlay Weaver [84], OverSim [85], in ihrer Architektur nur auf die Modellierung von P2PSuchoverlaynetzwerken ausgelegt sind. Jedoch stellen heutige wie auch zukünftige P2PAnwendungen wesentlich mehr Dienste zur Verfügung, deren Komplexität und Vielfältigkeit sich
fortlaufend erhöht. Diese Erkenntnis bestätigt die dringende Notwendigkeit der Entwicklung einer
generischen Simulationsplattform, die es erstmalig erlaubt, P2P-Systeme in ihrer Ganzheitlichkeit zu
untersuchen [51]. In diesem Kontext ist die Einführung einer Applikationsschicht als besonders
wichtig anzusehen, die damit PeerfactSim.KOM ein Alleinstellungsmerkmal, im Vergleich zu anderen Simulatoren, verleiht.
Betreffend die Evaluationsmethodik werden existierende Overlay-Mechanismen außerhalb der
Forschergruppe in der Regel mittels individuell für die betrachtete Lösung definierter Kriterien und
Metriken untersucht. Diese Individualität macht einen Vergleich verschiedener Ergebnisse problematisch, wenn nicht nahezu unmöglich. Eine komparative Evaluation von Overlays ist jedoch nur
aussagekräftig, wenn die Alternativen in der gleichen Umgebung (z.B. Peer-Ressourcen, Nutzerverhalten, Churn usw.) und anhand gleicher Metriken evaluiert werden. Es existieren nur einige wenige Arbeiten in dieser Richtung (z.B. [86]), die sich allerdings nicht mit dem Einfluss der Entwurfskonzepte und Qualitätsmerkmalen beschäftigen.
Einige aktuelle Studien beschäftigten sich mit Skalierbarkeit und Stabilität in P2P Systemen. Dai
et. al [87] untersuchte die Auswirkungen von ortsbewussten P2P-Netzwerken auf die Skalierbarkeit.
Ebenfalls wurde die effiziente und skalierbare Nachrichtenzustellung in unstrukturierten Netzwerken betrachtet [88]. Die Verbesserung der Stabilität von P2P-Multicast-Overlays kann außerdem
durch Schätzung der Lebenszeit eines Peers erreicht werden [89].
Ortsabhängige Suche in P2P-Netzen wurde bisher hauptsächlich mittels Wiederverwendung existierender strukturierter Overlays realisiert, welche allerdings in der Regel für eindimensionale Primärschlüsselanfragen optimiert sind [90,91]. Diese Lösungen können nicht die Vollständigkeit der
Suchergebnisse gewährleisten. Des Weiteren führt eine „Linearisierung“ von Projektionen zweidimensionaler Räume in einen eindimensionalen Raum, welche in der Regel mittels raumfüllender
Kurven erreicht wird, zu zusätzlichen Kommunikationsverzögerungen. Andere Ansätze, welche auf
25
verteilten, raumaufteilenden Bäumen [92] oder Modifikationen des CAN-Overlays [93] aufbauen,
erzeugen Leistungsfähigkeitsengpässe auf Peers höherer Ebenen, da die Suchnachrichten zu den
Peers in der Nähe des Baumwurzel propagiert werden. Eine ausführliche Übersicht und Analyse der
verwandten Arbeiten zum Ortsbewusstsein in P2P-Overlay-Netzwerken wurde in [3] vorgestellt.
Im Bereich Katastrophenmanagement existieren mehrere Forschungsvorhaben, welche größtenteils orthogonal zu der Arbeit innerhalb der QuaP2P-Forschergruppe zu sehen sind. Ein auf P2Pbasierter Ansatz ist die Arbeit „Integrated peer-to-peer applications for advanced emergency response systems“ [48]. Hier wurde explizit eine P2P-Lösung für die Bedürfnisse von Ersthelfern in
Katastropheneinsätzen entwickelt. Allerdings ist der Fokus der Arbeit die Ausgestaltung der Benutzeroberfläche, die Kommunikationsprotokolle und die Skalierbarkeit der Lösung wurden nicht evaluiert. Während der ersten Förderperiode wurde die Arbeit Service Oriented Pervasive Computing
for Emergency Response Systems [94] veröffentlicht; Ziel war es hier ebenfalls einen Prototyp zu
erstellen, basierend auf der P2P-Kommunikationsplattform JXTA [95]. Die gewählte Architektur des
Beitrages beeinflusste maßgeblich den erarbeiten Prototyp FiRe. Auf das P2P-System JXTA wurde
jedoch bewusst verzichtet, da XML basierte Nachrichtentypen zum einen negativen Einfluss auf die
Performanz haben [96] und zum anderen gewünschte eigene Mechanismen nicht in die API von
JXTA integrierbar sind. Die Arbeit von Ying Huang „Requirements and System Architecture Design
Consideration for First Responder Systems“ [97] greift die vorgeschlagene Teilung eines Kommunikationssystems für Ersthelfer in mobile und stationäre Komponenten der Homeland Security auf
und identifiziert Schlüsselkriterien zur Erstellung einer Kommunikationslösung. Die hier identifizierten Anforderungen bestätigen den gewählten Ansatz eines DHT-Overlay-Netzwerks für stationäre Peers in Kombination mit mobilen Ad-hoc-vernetzten Einheiten. Die Resultate aus BridgeFinder
[10], ALM [70] sowie die Simulationsergebnisse aus FRCS [13] und die eigene Anforderungsanalyse [11] genügen den identifizierten Anforderung von Ying Huang und sind bereits zu großen Teilen
implementiert und evaluiert.
Im Bereich der Flexibilität von P2P-Netzen durch Kontextdaten wurden im ersten Förderzeitraum
mehrere Arbeiten zu ortsbewussten P2P-OverlayNetzwerken veröffentlicht [98-100], innerhalb der
Forschergruppe wurde der Bereich Lokation im Teilbereich Adaptivität behandelt und Globase.KOM
[101] als ortsbewusstes P2P–Overlay-Netzwerk etabliert.
Im weiteren Bereich des nutzerzentrierten Kontexts wurden Mechanismen zur semantischen Suche in P2P-Overlay-Netzen vorgestellt [102,103], welche zwar ebenfalls Beziehungen (Kontext) der
Benutzer modellieren, sich aber technologisch grundsätzlich von dem Ansatz des DCC unterscheiden. Das Forschungsvorhaben PlaceLab [90] wählt eine ähnliche und einfach zu implementierende
Methode, allerdings auf Kosten der Performanz, da PlaceLab strikt auf einem binären Baum basiert.
Technologisch ähnlich und mit gleicher Skalierbarkeit ist SOMO [104], allerdings ist das Ziel von
SOMO nicht die kontextuelle Modellierung von Benutzerbeziehungen sondern Aggregation und
Verteilung von Daten.
Im Bereich des netzzentrierten Kontexts entstanden während der ersten Förderperiode mehrere
Arbeiten zur Identifizierung kritischer Knoten innerhalb eines komplexen Netzwerks [105-107];
diese Arbeiten verfolgen die gleichen Ziele wie der BridgeFinder Ansatz. Die Beurteilung eines bestimmten Knotens im Hinblick auf seine Wichtigkeit für den Zusammenhalt des Netzwerkes kann
durch oben erwähnte Methoden erreicht werden. Eine komplette Betrachtung aller Knoten innerhalb eines Netzwerkes ist durch bestehende Ansätze nur durch sehr hohen Nachrichtenaufwand
26
oder überhaupt nicht möglich. BridgeFinder kann hier durch die Nutzung des PushSum [108] Gossiping Protokolls einen klaren Vorteil erzielen.
3.6
Offene Fragen und Ausblick
Ein zukünftiges Ziel für die Erweiterung des Simulators ist es, eine Kommunikationsschnittstelle
für bereits existierende Prototypen und die eigentliche Simulationsplattform zu schaffen. Dieser
Ansatz schafft einen sehr hohen Detailgrad für die qualitative Analyse von P2P-Systemen, den man
aufgrund der inhärenten Abstraktion einer rein simulativen Modellierung nicht erreicht. Es ist jedoch fraglich, inwieweit man die Problematik der Synchronisation zwischen der simulierten Zeit
und der in Echtzeit ablaufen Anwendung unter Kontrolle bekommt. Hierbei werden in Zukunft noch
viele interessante Forschungsfragen zu beantworten sein.
Zum Zeitpunkt der Erstellung dieses Arbeitsberichts wurde eine komparative Evaluation aller im
PeerfactSim.KOM implementierten Overlay-Netzwerke mit Hunderten verschiedener Versuchskonfigurationen begonnen. Das Hauptziel dieser Experimente ist ein Vergleich der Skalierbarkeit, Stabilität, Effizienz und Robustheit verschiedener Overlaytypen (unstrukturiert, strukturiert, hybrid and
hierarchisch) sowie eine quantitative Auswertung ihrer bilateralen Wechselwirkungen. Damit wird
ein erster Schritt zur Beantwortung der Frage geliefert, welches Overlay am besten für welches Anwendungsszenario geeignet ist. Zur endgültigen Beantwortung dieser Frage fehlen allerdings noch
weitere Untersuchungen, die in der zweiten Phase der Forschergruppe beantwortet werden sollen.
Zudem wurde bislang ein wesentlicher Aspekt beim Einsatz von P2P-Systemen vernachlässigt: das
Vorhandensein von Network-Address-Translation-Routern vor den meisten Peers. Dadurch sind diese nicht direkt erreichbar. Die sich dadurch ergebenden Effekte werden bisher von den verwandten
Arbeiten weitestgehend nicht berücksichtigt. Zum zweiten wurden bisher keine multilateralen
Wechselwirkungen zwischen den Qualitätsmerkmalen untersucht. Hierfür fehlt bislang in der Forschergruppe auch ein geeignetes, einheitliches Vorgehenskonzept.
Die Verwendung des ortsbewussten P2P-Overlays Globase.KOM im Referenzszenario B eröffnet
eine Vielzahl neuer Anwendungsmöglichkeiten. Die Unterstützung multidimensionaler Suchanfragen wie “liefere alle Dokumente verwandt mit dem Vorgegebenem, welche im Zeitraum zwischen t1
und t2 verändert wurden” kann viele zusätzliche Vorteile für kollaborative Softwareentwicklungsumgebung bedeuten. Das Speichern der für die Arbeit eines Entwicklers relevanten Daten (verschiedene Code-Versionen oder verlinkte Dokumente, wie Design- oder Anforderungsdokumentation) in seiner Nähe kann dabei die Effizienz des Systems steigern. Diese Sachverhalte sollen in der
nächsten Projektphase untersucht werden.
Zum Zeitpunkt der Erstellung des Arbeitsberichtes wurden für das Referenzszenario A neben der
Erhebung relevanter Use Cases und Evaluation bisheriger P2P-Lösungen sowohl eine Testumgebung
entwickelt als auch ein kombiniertes hybrides P2P-Overlay. Dieses berücksichtigt mobile Peers
durch einen angepassten Ad hoc On Demand Distance Vector (AODV) Routing Algorithmus [109]
und bietet statischen Peers die Möglichkeit, eine verteilte Hashtabelle (PathFinder und CAN mit
ALM) zum schnelleren Zugriff auf Informationen zu erstellen.
Die abschließende Evaluation der Kombination beider Strategien unter Berücksichtigung der
Mobilität einzelner Peers wird voraussichtlich bis Ende des ersten Antragszeitraumes erfolgt sein.
Im ersten Antragszeitraum wird eine Betrachtung multilateraler Abhängigkeiten der angebotenen
27
Funktionen, welche bei P2P-Netzwerken - insbesondere auch im Katastrophenbereich – auftreten,
nicht stattfinden. Multilaterale Wechselwirkungen entstehen bei gleichzeitiger Nutzung mehrerer
Funktionen innerhalb eines P2P-Netzwerkes.
Gerade im Katastrophenbereich ist es wichtig, Funktionen wie Bildübertragung, Sprachübertragung, Dokumentenverwaltung wie auch Lokalisierung von Gegenständen und Ersthelfern entweder
zeitgleich oder zumindest teilweise parallel auszuführen. Die Betrachtung/Untersuchung der Auswirkung und Steuerung mehrerer parallel angebotener Dienste auf die Stabilität und Performanz
des gesamten Netzwerkes ist Teil der zweiten Förderphase.
28
4 Literatur
[1] PeerfactSim.KOM - Peer-to-Peer Simulator, “http://peerfact.kom.e-technik.tu-darmstadt.de/.”
[2] A. Kovacevic, N. Liebau, und R. Steinmetz: Globase.KOM - A P2P Overlay for Fully Retrievable Location-Based Search. In: Proceedings of the Seventh IEEE International Conference on
Peer-to-Peer Computing, 2007.
[3] A. Kovacevic, O. Heckmann, N. Liebau, und R. Steinmetz: Location Awareness - Improving
Distributed Multimedia Communication. In: Special Issue of the Proceedings of IEEE on Advances in Distributed Multimedia Communications , Bd. 96, Nr. 1, 2008.
[4] O. Heckmann, M.G. Sanchis, A. Kovacevic, N. Liebau, und R. Steinmetz: A Peer-to-Peer System
for Location-Based Services. In: Proceedings of Peer-to-Peer Paradigm (PTPP) Track at AMCIS
2006, 2006.
[5] D. Bradler, L. Krumov, J. Kangasharju, und M. Mühlhäuser: PathFinder: Efficient Lookups and
Efficient Search in Peer-to-Peer Networks. In: The 28th IEEE International Conference on Computer Communications.
[6] W.W. Terpstra, J. Kangasharju, C. Leng, und A.P. Buchmann: Bubblestorm: Resilient, Probabilistic, and Exhaustive Peer-to-Peer Search. In: Proceedings of the 2007 SIGCOMM Conference , 49 60, 2007.
[7] D. Bradler, L. Krumov, und J. Kangasharju: Hierarchical Data Access in Structured P2PNetworks. In: (in Submission) 12th Communications and Networking Simulation Symposium ,
2009.
[8] D. Bradler, J. Kangasharju, und M. Mühlhäuser: Optimally Efficient Multicast in Structured
Peer-to-Peer Networks. In: Special Session on Scalable Adaptive Multicast in P2P Overlays, 2009.
[9] S. Ratnasamy, M. Handley, R. Karp, und S. Shenker: Application-Level Multicast Using Content-Addressable Networks. In: Lecture Notes in Computer Science , 14-29, 2001.
[10] D. Bradler, L. Krumov, J. Kangasharju, und M. Mühlhäuser: BridgeFinder, How to Find Data
Bottlenecks in Distributed Environments. 2009.
[11] D. Bradler, J. Kangasharju, und M. Mühlhäuser: Systematic First Response Use Case Evaluation. In: Workshop on Mobile and Distributed Approaches in Emergency Scenarios , 2008.
[12] D. Bradler, J. Kangasharju, und M. Mühlhäuser: Evaluation of Peer-to-Peer Overlays for
First Response. In: Proceedings of the 2008 Sixth Annual IEEE International Conference on Pervasive Computing and Communications, 2008, S. 463-467.
[13] D. Bradler, K. Panitzek, I. Schweizer, und M. Mühlhäuser: First Response Communication
Sandbox. In: 11th Communications and Networking Simulation Symposium , 115 122, 2008.
[14] D. Bradler, J. Kangasharju, und M. Mühlhäuser: Demonstration of First Response Communication Sandbox. In: CCNC'2009 Demonstration Proposals, 2009.
[15] D. Salber, A.K. Dey, und G.D. Abowd: The Context Toolkit: Aiding the Development of Context-Enabled Applications. In: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems: The CHI Is the Limit, 1999, S. 434-441.
[16] M. Castro, P. Druschel, Y.C. Hu, und A. Rowstron: Topology-Aware Routing in Structured Peerto-Peer Overlay Networks. MSR-TR-2002-82, Microsoft Research, 2002.
[17] M. Kwon und S. Fahmy: Topology-Aware Overlay Networks for Group Communication. In:
12th Workshop on Network and Operating Systems Support for Digital Audio and Video, 2002, S.
127 136.
29
[18] W. Litwin und M. Neimat: LH*S: A High-Availability and High-Security Scalable Distributed Data Structure. In: Proceedings of Research Issues in Data Engineering (RIDE), 1997, S.
141 150.
[19] W. Litwin, M. Neimat, und D.A. Schneider: LH*: A Scalable, Distributed Data Structure. In:
ACM Transactions on Database Systems (TODS) , Bd. 21, Nr. 4, 480 525, 1996.
[20] K. Hildrum, J.D. Kubiatowicz, S. Rao, und B.Y. Zhao: Distributed Object Location in a Dynamic Network. In: Proceedings of the Fourteenth Annual ACM Symposium on Parallel Algorithms
and Architectures, 2002, S. 41 52.
[21] I. Stoica, R. Morris, D. Karger, F. Kaashoek, und H. Balakrishnan: Chord: A Scalable Peer-toPeer Lookup Service for Internet Aplications. In: ACM Applications, Technologies, Architectures, and Protocols for Computer Communication, 2001, S. 149 160.
[22] I. Stoica, R. Morris, D. Liben-Nowell, D. Karger, M.F. Kaashoek, F. Dabek, und H. Balakrishnan: Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications. In: IEEE
Transactions on Networking , Bd. 11, Nr. 1, 17 32, 2003.
[23] F. Kaashoek und D.R. Karger: Koorde: A Simple Degree-Optimal Hash Table. In: Proceedings
of the 2nd International Workshop on Peer-to-Peer Systems (IPTPS03), 2003, S. 98 107.
[24] P. Maymounkov und D. Maziéres: Kademlia: A Peer-to-Peer Information System Based on
the XOR Metric. In: Proceedings of the 1st International Workshop on Peer-to-Peer Systems
(IPTPS02), 2002, S. 53 65.
[25] V. Darlagiannis: Overlay Network Mechanisms for Peer-to-Peer Systems. TU Darmstadt,
2005.
[26] A. Rowstron und P. Druschel: Pastry: Scalable, Distributed Object Location and Routing for
Large-Scale Peer-to-Peer Systems. In: IFIP/ACM International Conference on Distributed Systems Platforms (Middleware), 2001, S. 329-350.
[27] S. Ratnasamy, P. Francis, M. Handley, R. Karp, und S. Schenker: A Scalable ContentAddressable Network. In: Proceedings of the 2001 SIGCOMM Conference , Bd. 31, Nr. 4,
161 172, 2001.
[28] N.J. Harvey, M.B. Jones, S. Saroiu, M. Theimer, und A. Wolman: SkipNet: A Scalable Overlay
Network with Practical Locality Properties. In: Proceedings of the 4th USENIX Symposium on
Internet Technologies and Systems (USITS '03), 2003, S. 113 126.
[29] The
Gnutella
Protocol
Specification
V0.4,
http://www9.limewire.com/developer/gnutella_protocol_0.4.pdf, 2002.
[30] Y. Chawathe, S. Ratnasamy, L. Breslau, N. Lanham, und S. Shenker: Making Gnutella-Like
P2P Systems Scalable. In: SIGCOMM, Proceedings of Conference on Applications, Technologies,
Architectures, and Protocols for Computer Communications, 2003.
[31] Q. Lv, P. Cao, E. Cohen, K. Li, und S. Shenker: Search and Replication in Unstructured Peerto-Peer Networks. In: Proceedings of the 16th International Conference on Supercomputing, 2002,
S. 84 95.
[32] Q. Lv, S. Ratnasamy, und S. Shenker: Can Heterogeneity Make Gnutella Scalable? In: Proceedings of the 1st International Workshop on Peer-to-Peer Systems (IPTPS02), 2002, S. 94-103.
[33] B. Yang und H. Garcia-Molina: Improving Search in Peer-to-Peer Networks. In: IEEE 22th
International Conference on Distributed Computing Systems (ICDCS '02), 2002, S. 5-14.
[34] J. Kubiatowicz, D. Bindel, Y. Chen, S. Czerwinski, P. Eaton, D. Geels, R. Gummadi, S. Rhea, H.
Weatherspoon, C. Wells, und B. Zhao: OceanStore: An Architecture for Global-Scale Persistent Storage. In: Proceedings of the 9th International Conference on Architectural Support for Programming Languages and Operating Systems, 2000, S. 190 201.
30
[35] B.H. Bloom: Space/Time Trade-Offs in Hash Coding with Allowable Errors. In: Communications of the ACM , Bd. 13, Nr. 7, S.422-426, 1970.
[36] S. Rhea und J. Kubiatowicz: Probabilistic Location and Routing. In: Proceedings of the 21st
Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM 2002),
2002.
[37] L.A. Adamic, R.M. Lukose, A.R. Puniyani, und B.A. Huberman: Search in Power-Law Networks. In: Physical Review E , Bd. 64, Nr. 046135, 2001.
[38] L.A. Adamic: The Small World Web. In: Proceedings of the 3rd European Conference on Research and Advanced Technology for Digital Libraries (ECDL), 1999, S. 443-452.
[39] H. Zhang, A. Goel, und R. Govindan: Using the Small-World Model to Improve Freenet's
Performance. In: Proceedings of IEEE Infocom, 2002, S. 79-79.
[40] I. Clarke, O. Sandberg, B. Wiley, und T.W. Hong: Freenet: A Distributed Anonymous Information Storage and Retrieval System. In: ICSI Workshop on Design Issues in Anonymity and
Unobservability, 2000, S. 46-66.
[41] E. Bonsma: Fully Decentralized, Scalable Look-up in a Network of Peers Using Small
World Networks. In: Proceedings of Systemics, Cybernetics and Informatics (SCI), 2002.
[42] G.S. Manku, M. Bawa, und P. Raghavan: Symphony: Distributed Hashing in a Small World.
In: Proceedings of the 4th USENIX Symposium on Internet Technologies and System (USITS '03),
2003, S. 127-140.
[43] K. Tutschku: A Measurement-Based Traffic Profile of the eDonkey Filesharing Service. In:
Proceedings of the 5th Anual Passive & Active Measurement Workshop, 2004, S. 12-21.
[44] O. Heckmann, N. Liebau, V. Darlagiannis, A. Bock, A. Mauthe, und R. Steinmetz: From Integrated Publication and Information Systems to Information and Knowledge Environments:
Essays Dedicated to Erich J. Neuhold on the Occasion of His 65th Birthday. M. Hemmje, C.
Niederee, und T. Risse(Hrsg), 2005, S. 69-78.
[45] J. Liang, R. Kumar, und K. Ross: The KaZaA Overlay: A Measurement Study. Polytechnic University, New York, 2004.
[46] V. Darlagiannis, A. Mauthe, und R. Steinmetz: Overlay Design Mechanisms for Heterogeneous, Large Scale, Dynamic P2P Systems. In: Journal of Networks and System Management , Bd.
12, 371-395, 2004.
[47] M.J. Freedman, E. Freudenthal, und D. Mazires: Democratizing Content Publication with
Coral. In: Proceedings of the 1st Symposium on Networked Systems Design and Implementation,
2004, S. 239-252.
[48] A.S. Bahora, T.C. Collins, S.C. Davis, S.C. Goknur, J.C. Kearns, T.N. Lieu , T.P. Nguyen, J.S.
Zeng, B.M. Horowitz, und S.D. Patek: Integrated Peer-to-Peer Applications for Advanced
Emergency Response Systems. Part I. Concept of Operations. In: Proceedings of the IEEE Systems and Information Engineering Design Symposium, 2003, S. 255-260.
[49] NS2: Network Simulator 2, Homepage. 2004.
[50] K. Fall und K. Varadhan: The Ns Manual. 2000.
[51] A. Kovacevic, S. Kaune, P. Mukherjee, N. Liebau, und R. Steinmetz: Benchmarking Platform
for Peer-to-Peer Systems. In: It - Information Technology (Methods and Applications of Informatics and Information Technology) , Bd. 49, Nr. 5, 312-319, 2007.
[52] V. Darlagiannis, A. Mauthe, N. Liebau, und R. Steinmetz: An Adaptable, Role-Based Simulator for P2P Networks. In: Proceedings of the International Conference on Modeling, Simulation
& Visualization Methods, MSV '04 , 2004, S. 52-59.
31
[53] S. Kaune, K. Pussep, C. Leng, A. Kovacevic, G. Tyson, und R. Steinmetz: Modelling the Internet Delay Space Based on Geographical Locations. In: 17th Euromicro International Conference on Parallel, Distributed, and Network-Based Processing (PDP 2009), 2009.
[54] CAIDA : Home. “http://www.caida.org/home/.”
[55] W. Matthews und L. Cottrell: The PingER Project: Active Internet Performance Monitoring
for the HENP Community. In: IEEE Commununication Magazine , Bd. 38, 130-136, 2000.
[56] B. Cohen: BitTorrent Homepage. http://www.bittorrent.com/
[57] C. Gkantsidis und P.R. Rodriguez: Network Coding for Large Scale Content Distribution. In:
INFOCOM 2005. 24th Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings IEEE, 2005, S. 2235-2245.
[58] K. Pussep, S. Kaune, C. Leng, A. Kovacevic, und R. Steinmetz: Modeling User Behavior in Peerto-Peer Systems. KOM-TR-2008-07, 2008.
[59] Exellence in Content Distribution Network Research. “http://www.ist-content.org/.”
[60] Motionet AG: Motionet AG. “http://www.motionet.de/typo3/.”
[61] A. Kovacevic, K. Graffi, S. Kaune, C. Leng, und R. Steinmetz: Assessing Structured Peer-toPeer Overlays for Network Virtual Environments. In: Proceedings of The Second International
Workshop on Peer-to-Peer Networked Virtual Environments in Conjunction with The 14th International Conference on Parallel and Distributed Systems (ICPADS 2008), 2008.
[62] K. Aberer, L.O. Alima, A. Ghodsi, S. Girdzijauskas, S. Haridi, und M. Hauswirth: The Essence
of P2P: A Reference Architecture for Overlay Networks. In: P2P '05: Proceedings of the Fifth
IEEE International Conference on Peer-to-Peer Computing, 2005, S. 11 20.
[63] I. Stoica, R. Morris, D. Karger, M.F. Kaashoek, und H. Balakrishnan: Chord: A Scalable Peerto-Peer Lookup Service for Internet Applications. In: Proceedings of ACM SIGCOMM, 2001, S.
149 160.
[64] P. Maymounkov und D. Maziéres: Kademlia: A Peer-to-Peer Information System Based on
the XOR Metric. In: Proceedings of the 1st International Workshop on Peer-to-Peer Systems
(IPTPS02), 2002, S. 53 65.
[65] RFC-Gnutella 0.6, http://rfc-gnutella.sourceforge.net/.
[66] B.Y. Zhao, L. Huang, J. Stribling, S.C. Rhea, A.D. Joseph, und J. Kubiatowicz: Tapestry: A
Resilient Global-Scale Overlay for Service Deployment. In: IEEE Journal on Selected Areas in
Communications , Bd. 22, Nr. 1, 41 53, 2004.
[67] N.C. Liebau: Trusted Accounting in Peer-to-Peer Environments - A Novel Token-Based
Accounting Scheme for Autonomous Distributed Systems. Technische Universität Darmstadt,
Germany, 2008.
[68] S. Kaune, T. Lauinger, A. Kovacevic, und K. Pussep: Embracing the Peer Next Door: Proximity in Kademlia. In: 8th International Conference on Peer-to-Peer Computing (P2P '08), 2008,
S. 343-350.
[69] A. Rowstron und P. Druschel: Pastry: Scalable, Decentralized Object Location, and Routing
for Large-Scale Peer-to-Peer Systems. In: IFIP/ACM International Conference on Distributed
Systems Platforms (Middleware), 2001, S. 329 350.
[70] D. Bradler, J. Kangasharju, und M. Mühlhäuser: Optimally Efficient Prefix Search and Multicast
in Structured Peer-to-Peer Networks. TUD-CS-2008-103, Department of Computer Science, Darmstadt University of Technology, 2008.
[71] M. Sheng, J. Li, und Y. Shi: Critical Nodes Detection in Mobile Ad Hoc Network. In: Proceedings of the 20th International Conference on Advanced Information Networking and Applications-Volume 2 (AINA'06)-Volume 02, 2006, S. 336-340.
32
[72] D. Kempe, A. Dobra, und J. Gehrke: Gossip-Based Computation of Aggregate Information.
In: Foundations of Computer Science, 2003. Proceedings. 44th Annual IEEE Symposium On, 2003,
S. 482-491.
[73] W.W. Terpstra, C. Leng, und A.P. Buchmann: Brief Announcement: Practical Summation
Via Gossip. 2007.
[74] K. Graffi, A. Kovacevic, K. Wulffert, und R. Steinmetz: ECHoP2P: Emergency Call Handling
Over Peer-to-Peer Overlays . In: International Workshop on Peer-to-Peer Network Virtual Environments (P2P-NVE), 2007.
[75] P. Mukherjee, A. Kovacevic, M. Benz, und A. Schürr: Towards a Peer-to-Peer Based Global
Software Development Environment. In: Proceedings of the Software Engineering Conference
SE2008, 2008, S. 204-216.
[76] P. Mukherjee, A. Kovacevic, und A. Schürr: Analysis of the Benefits the Peer-to-Peer Paradigm Brings to Distributed Agile Software Development. In: Lecture Notes in Informatics
(LNI) - Proceedings, Series of the Gesellschaft Für Informatik (GI), 2008, S. 72-77.
[77] K. Graffi, S. Kaune, K. Pussep, A. Kovacevic, und R. Steinmetz: Load Balancing for Multimedia Streaming in Heterogeneous Peer-to-Peer Systems. In: 18th International Workshop on
Network and Operating Systems Support for Digital Audio and Video (NOSSDAV '08), A.C.M.
Press(Hrsg), 2008, S. 6.
[78] K. Graffi, K. Pussep, S. Kaune, A. Kovacevic, N. Liebau, und R. Steinmetz: Overlay Bandwidth
Management: Scheduling and Active Queue Management of Overlay Flows. In: IEEE Local
Computer Networks '07, U.S.A. IEEE Computer Society(Hrsg), 2007, S. 334-342.
[79] K. Graffi, A. Kovacevic, S. Xiao, und R. Steinmetz: SkyEye.KOM: An Information Management Over-Overlay for Getting the Oracle View on Structured P2P Systems. In: The 14th
IEEE International Conference on Parallel and Distributed Systems (ICPADS'08), 2008, S. 8.
[80] K. Graffi, A. Kovacevic, P. Mukherjee, M. Benz, C. Leng, D. Bradler, J. Schroeder-Bernhardi,
und N. Liebau: Peer-to-Peer Forschung - Überblick Und Herausforderungen. In: It - Information Technology (Methods and Applications of Informatics and Information Technology) , Bd. 49,
Nr. 5, 272-279, 2007.
[81] P. Mukherjee, C. Leng, W. Terpstra, und A. Schürr: Peer-to-Peer Based Version Control. In:
Proceedings of The Second International Workshop on Peer-to-Peer Networked Virtual Environments
in Conjunction with The 14th International Conference on Parallel and Distributed Systems
(ICPADS 2008), 2008.
[82] P2psim: A Simulator for Peer-to-Peer (p2p) Protocols. “http://pdos.csail.mit.edu/p2psim/.”
[83] PeerSim P2P Simulator. “http://peersim.sourceforge.net/.”
[84] Overlay Weaver: An Overlay Construction Toolkit. “http://overlayweaver.sourceforge.net/.”
[85] The OverSim P2P Simulator - Trac. “http://www.oversim.org/.”
[86] J. Li, J. Stribling, T.M. Gil, R. Morris, und F.F. Kaashoek: Comparing the Performance of Distributed Hash Tables Under Churn. In: Proc. of the 3rd International Workshop on Peer-to-Peer
Systems, 2004.
[87] L. Dai, Y. Cui, und Y. Xue: On Scalability of Proximity-Aware P2P Streaming. In: IEEE INFOCOM Mini-Symposium, 2007.
[88] A. Kumar, J. Xu, und E.W. Zegura: Efficient and Scalable Query Routing for Unstructured
Peer-to-Peer Networks. In: Infocom, 2005, S. 1162-1173.
[89] Y. Tian, D. Wu, G. Sun, und K. Ng: Improving Stability for Peer-to-Peer Multicast Overlays
by Active Measurements. In: Journal of Systems Architecture: The EUROMICRO Journal , Bd.
54, Nr. 1-2, 305 323, 2008.
33
[90] Y. Chawathe, S. Ramabhadran, S. Ratnasamy, A. LaMarca, S. Shenker, und J. Hellerstein: A
Case Study in Building Layered DHT Applications. In: SIGCOMM '05: Proceedings of the 2005
Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, 2005, S. 97 108.
[91] S. Zhou, G. Ganger, und P. Steenkiste: Location-Based Node IDs: Enabling Explicit Locality in
DHTs. CMU-CS-03-171, Carnegie Mellon University, 2003.
[92] D. Heutelbeck: Distributed Space Partitioning Trees and Their Application in Mobile Computing. Fernuniversität Hagen, 2005.
[93] H. Wang, R. Zimmermann, und W. Ku: ASPEN: An Adaptive Spatial Peer-to-Peer Network.
In: GIS '05: Proceedings of the 13th Annual ACM International Workshop on Geographic Information Systems, 2005, S. 230 239.
[94] S. Kalasapur, K. Senthivel, und M. Kumar: Service Oriented Pervasive Computing for Emergency Response Systems. In: Proceedings of the Fourth Annual IEEE International Conference on
Pervasive Computing and Communications Workshops, 2006.
[95] B. Traversat, A. Arora, M. Abdelaziz, M. Duigou, C. Haywood, J. Hugly, E. Pouyoul, und B.
Yeager: Project JXTA 2.0 Super-Peer Virtual Network. 2003.
[96] E. Halepovic und R. Deters: JXTA Performance Study. In: Communications, Computers and
Signal Processing, PACRIM. IEEE Pacific Rim Conference On, 2003.
[97] Ying Huang, Wenbo He, K. Nahrstedt, und W. Lee: Requirements and System Architecture
Design Consideration for First Responder Systems. 2007, S. 39-44.
[98] L. Galluccio, G. Morabito, S. Palazzo, M. Pellegrini, M.E. Renda, und P. Santi: Georoy: A
Location-Aware Enhancement to Viceroy Peer-to-Peer Algorithm. In: Computer Networks ,
Bd. 51, Nr. 8, 1998-2014, 2007.
[99] Y. Liu, L. Xiao, X. Liu, L.M. Ni, und X. Zhang: Location Awareness in Unstructured Peer-toPeer Systems. In: IEEE Transactions on Parallel and Distributed Systems , 163-174, 2005.
[100] Y. Yu, S. Lee, und Z. Zhang: Leopard: A Locality Aware Peer-to-Peer System with No Hot
Spot. In: R. Boutaba Et Al. (Eds.): NETWORKING 2005, LNCS 3462, Pp. 27-39 , 2005.
[101] N. Liebau und R. Steinmetz: Globase. KOM-A P2P Overlay for Fully Retrievable LocationBased Search. In: Proceedings of the Seventh IEEE International Conference on Peer-to-Peer Computing (P2P 2007)-Volume 00 , 87 96, 2007.
[102] A. Crespo und H. Garcia-Molina: Semantic Overlay Networks for P2P Systems. Stanford University, 2003.
[103] J.X. Parreira, S. Michel, und G. Weikum: p2pDating: Real Life Inspired Semantic Overlay
Networks for Web Search. In: Information Processing and Management , Bd. 43, Nr. 3, 643-664,
2007.
[104] Z. Zhang, S.M. Shi, und J. Zhu: SOMO: Self-Organized Metadata Overlay for Resource
Management in P2P DHT. In: Lecture Notes in Computer Science , 170-182, 2003.
[105] M. Sheng, J. Li, und Y. Shi: Critical Nodes Detection in Mobile Ad Hoc Network. In: Aina ,
Bd. 2, 336-340, 2006.
[106] X. Liu, L. Xiao, A. Kreling, und Y. Liu: Optimizing Overlay Topology by Reducing Cut Vertices. In: Proceedings of the 2006 International Workshop on Network and Operating Systems Support for Digital Audio and Video, 2006, S. 1 6.
[107] T. Qiu, E. Chan, und G. Chen: Overlay Partition: Iterative Detection and Proactive Recovery. In: Communications, ICC. IEEE International Conference On, 2007, S. 1854 1859.
[108] D. Kempe, A. Dobra, und J. Gehrke: Gossip-Based Computation of Aggregate Information.
In: Foundations of Computer Science, 2003. Proceedings. 44th Annual IEEE Symposium On, 2003,
S. 482-491.
34
[109] C. Perkins, E.M. Royer, und S.R. Das: Ad Hoc On-Demand Distance Vector (AODV) Routing.
RFC 3561, July 2003, 2003.
35