Das Peer-to-Peer (P2P) Paradigma bietet einen alternativen Designansatz für Verteilte Systeme, das die Forderung nach einem dedizierten Dienstanbieter, wie im Client-Server Fall notwendig, lockert. Der P2P-Ansatz ergründet das Potential Verteilte Systeme zu schaffen, die auf Ressourcen und Diensten beruhen, die durch jedes End-Gerät, das an ein herkömmliches Kommunikationsnetz wie das Internet angeschlossen ist, zur Verfügung gestellt werden. Verteilte Systeme basierend auf dem P2P-Paradigma formen, virtuelle Netzwerke, so genannte Overlay-Netzwerke, die auf physikalischen Telekommunikationsnetzwerken aufsetzen. Ein Overlay-Netzwerk ist hierbei eine notwendige Abstraktion, die sowohl die funktionalen Anforderungen, wie z. B. Verbindungsverwaltung, Indezierung und Routing, erfüllen muss, als auch nicht-funktionale Eigenschaften, wie z. B. Skalierbarkeit, Ausfallsicherheit und Lastausgleich, berücksichtigen sollte. Eine Herausforderung ist hierbei Overlay-Netzwerke so zu gestalten, dass die gestellten Anforderungen befriedigt werden und gleichzeitig potentielle Konflikte zwischen diesen Anforderungen auf geeignete Weise gelöst werden. %Aufgabenstellung Diese Dissertationsschrift erforscht eine neuartige Architektur zur Entwicklung von effizienten Overlay-Netzwerken für P2P-Systeme, welche die wichtigsten Charakteristiken von häufig eingesetzten Systemen berücksichtigt. Im speziellen wird die Anzahl von Teilnehmern berücksichtigt, die zu Skalierbarkeits- und Erweiterbarkeits-Problemen führen kann. Darüber hinaus befasst sich die Arbeit mit dem unkontrollierbaren und schwer vorherzusehenden Verhalten der Knoten von P2P-Systemen, was zu hoch dynamischen, schwankenden und veränderlichen Overlay-Netzwerk-Topologien führt. Durch dieses Verhalten wird der Entwurf ausfallsicherer und stabiler Systeme, die effizient und mit minimalen Wartungskosten betrieben werden können, zur Herausforderung. Zusätzlich muss auch die intrinsische Heterogenität der physischen Eigenschaften und das Benutzerverhalten berücksichtigt werden, die eine gerechte Verteilung der Aufgaben erschwert. Um die oben aufgeführten Anforderungen zu erfüllen, wurde eine Anzahl von Mechanismen entworfen. Für die Netzwerktopologie wir die Nutzung von de Bruijn-Graphen vorgeschlagen. Sie besitzen attraktive Eigenschaften, da ihr Graph-Durchmesser logarithmisch zur Grösse des Graphen wächst, sogar bei konstanter Kantenzahl. Dies ist besonders nützlich, um den Anforderungen an Skalierbarkeit mit minimalen Wartungskosten gerecht zu werden. Jedoch erweist sich hierbei die nur exponentielle Erweiterbarkeit von de Bruijn-Graphen als Problem. Ein Algorithmus zum Aufbau von Graphen basierend auf lokaler Information wurde vorgeschlagen, um de Bruijn-Varianten mit inkrementellen Erweiterungseigenschaften zu definieren. Darüber hinaus gibt es aber auch Bedenken bzgl. der Ausfallssicherheit wegen der konstante Anzahl von Kanten pro Knoten, die vorzugsweise so klein wie möglich sein sollte, um die Wartungskosten des Graphen gering zu halten. Dieses Problem wird durch die Einführung von Peer-Cluster, durch die Zuverlässigkeit garantiert wird, und eine so genannte Two-Tier-Topologie, bei der die de Bruijn-Strukur auf die Inter-Cluster-Verbindungen angewandt wird, adressiert. Durch diese hybride Topologie ergibt sich ein wohl strukturiertes Netzwerk. Parallel hierzu erlaubt dies die Wahl direkter Nachbar-Peers unter mehreren Peers eines Nachbar-Clusters. Dies wird duch unterschiedliche Richtlinien und Metriken gesteuert, d.h. einer effizienten Abbildung auf die unterliegende Netzwerkstruktur oder durch so genannte Trust-Level-Richtlinien. Ferner werden Mechanismen für die Intra-Cluster-Organisation vorgeschlagen, die die Heterogenität der einzelnen Peers einbeziehen. Hierfür wurde ein Rollen-basierter Ansatz entwickelt. Die allgemeinen Kernoperationen von P2P-Overlay-Netzwerken wurden identifiziert, wobei jeder Operation eine Rolle zugeordnet wurde. Vier Basis-Rollen wurden identifiziert: Routers, Cachers, Indexers und Maintainers. Peers werden Rollen aufgrund ihrer Fähigkeiten und vorhergesagtem Verhalten zugewiesen, damit jeder Peer effizient und ohne die Gesamtleistung des Systems zu behindern oder zu verringern zum System beiträgt. Zuverlässige Regeln sorgen hierbei für ausgeglichene Beiträge eines jedes Peers, was zu einer gerechten Lösung führt. Die vorgeschlagene Architektur wurde im Omicron-Ansatz umgesetzt. Das resultierende System wurde sowohl analytisch als auch durch Simulation evaluiert. Der analytische Ansatz basiert auf stochastischer Modellierung sowie der Analyse und Evaluation der Mechanismen, die Daten von empirischen Untersuchungen breit eingesetzter P2P Systemen berücksichtigt. Des weiterer werden so genannte "burn-in" Methoden, die verhältnisbezogene Zuverlässigkeitsbetrachtungsweisen nutzen, zur Optimierung der Rollenzuordnung eingesetzt. Für die Simulation wurde ein Werkzeug benötigt, das in der Lage ist, die Dynamik des Benutzerverhalten, die Eigenschaften des unterliegenden Netzwerks und das Zusammenspiel der eingebundnen P2P-Protokolle abzubilden. Für die Evaluation der Arbeit wurde ein solches Werkzeug basierend auf einer offenen Architektur entwickelt, das ebenfalls andere wichtige Ansätze einschliesst. Damit werden vergleichende quantitative Leistungsmessungen für eine Vielzahl verschiedener interessanter Einsatzszenarien ermöglicht. Sowohl die Ergebnisse der Analyse als auch der Simulation bestätigen das überlegene Design von Omicron für grosse, dynamische und heterogene Umgebungen, und seine Fähigkeit effizient die grosse Zahl von Zielkonflikten der Anforderungsbeschränkungen aufzulösen. | German |