Dokument: Transaktionale replizierte Objekte für verteilte und parallele Anwendungen

Titel:Transaktionale replizierte Objekte für verteilte und parallele Anwendungen
Weiterer Titel:Transactional replicated objects for distributed and parallel applications
URL für Lesezeichen:https://docserv.uni-duesseldorf.de/servlets/DocumentServlet?id=18303
URN (NBN):urn:nbn:de:hbz:061-20110527-182752-3
Kollektion:Dissertationen
Sprache:Deutsch
Dokumententyp:Wissenschaftliche Abschlussarbeiten » Dissertation
Medientyp:Text
Autor: Müller, Marc-Florian [Autor]
Dateien:
[Dateien anzeigen]Adobe PDF
[Details]968,6 KB in einer Datei
[ZIP-Datei erzeugen]
Dateien vom 24.05.2011 / geändert 24.05.2011
Stichwörter:Transactions Distributed Systems Network
Dewey Dezimal-Klassifikation:000 Informatik, Informationswissenschaft, allgemeine Werke » 004 Datenverarbeitung; Informatik
Beschreibungen:Die Taktraten moderner Prozessoren wachsen immer langsamer, bedingt durch physikalische Grenzen. Deshalb wird die parallele und verteilte Ausführung von Anwendungen immer wichtiger. In Anlehnung an das Konzept eines transaktionalen Speichers für Mehrkern- und Multiprozessorsysteme schlägt diese Arbeit einen neuartigen verteilten transaktionalen Speicher vor, der Speicherinhalte einzelner Rechner für verteilte Anwendungen transparent mithilfe von Transaktionen synchronisiert. Der datenzentrierte Ansatz trennt Programmlogik und Netzwerkkommunikation strikt voneinander und ermöglicht die Entwicklung verteilter Anwendungen, die direkt über Speicherzugriffe kommunizieren können. Aufgrund der verwendeten optimistischen Synchronisierung können bei der Ausführung von Transaktionen keine Verklemmungen entstehen, wodurch sich die verteilte und parallele Programmierung vereinfacht.

Der gemeinsame verteilte transaktionale Speicher unterstützt unbeschränkte Transaktionen für Linux-Betriebssysteme in Verbindung mit einer transparenten Zugriffserkennung, wobei die Rücksetzung von Transaktionen im Konfliktfall ebenso transparent erfolgt. Dies vereinfacht die Entwicklung verteilter Anwendungen, da eine manuelle Registrierung von zugegriffenen Transaktionsobjekten entfallen kann und Anwendungen selbst keine Transaktionskonflikte behandeln müssen.

Der in dieser Dissertation entwickelte gemeinsame verteilte transaktionale Speicher baut auf einem strukturierten Overlay-Netzwerk auf, um auch bei vielen Rechnern skalierbar zu bleiben. Die neu entwickelten peer-to-peer- und koordinatorbasierten Commit-Protokolle kooperieren miteinander, um eine mehrstufige und effiziente Verarbeitung von Transaktionen zu gewährleisten. Eine wesentliche Neuerung ist die overlay-gestützte Steuerung der Netzwerkkommunikation, um die Netzwerkbandbreite effizient zu nutzen und Verzögerungen durch die Netzwerkkommunikation zu minimieren. Ein Monitor analysiert die Kommunikation im Hintergrund und begrenzt diese automatisch regional oder vermeidet sie vollständig. Hierfür kommen knoten- und gruppenlokale Commits zum Einsatz, die sich nahtlos in das Overlay-Netzwerk integrieren und dynamisch die Netzwerkkommunikation steuern. Über den Monitor erkennt das Overlay-Netzwerk ferner veränderte Netzwerkparameter und Zugriffsmuster und kann sich durch eine dynamische Restrukturierung adaptiv anpassen.

Ein neu entwickeltes peer-to-peer-basiertes Tokenverfahren für das Peer-to-Peer-Commit-Protokoll synchronisiert die Transaktionen im Netzwerk. Es integriert eine interne Warteschlange von Tokenanfragen für eine effiziente Weitergabe des Tokens zwischen Rechnern. Weitere Aspekte sind die intelligente Tokenvorhersage, welche die Netzwerkkommunikation für Tokenanfragen minimiert. Ein weiteres koordiniertes Tokenverfahren vermeidet die Suche des Tokens im Netzwerk, ist aber aufgrund der Kombination mit einem peer-to-peer-basierten Austausch sehr effizient.

Im Umfeld der verteilten transaktionalen Speicher wurde erstmalig das Konzept kaskadierter Transaktionen realisiert, welches auch in Netzwerken mit hohen Netzwerklatenzen einen hohen Transaktionsdurchsatz erlaubt. Das transaktionale Speichersystem schließt Transaktionen hierzu transparent nebenläufig ab. Für Anwendungen entstehen während eines Transaktionsabschlusses deshalb keine Wartezeiten durch das Commit-Protokoll, da sie nebenläufig nachfolgende Transaktionen ausführen können.

Die Experimente belegen, daß der gemeinsame verteilte transaktionale Speicher in Kombination mit dem hierarchisch strukturierten Overlay-Netzwerk und den weiteren Optimierungstechniken besser als die direkte Synchronisierung von Transaktionen ohne das strukturierte Overlay-Netzwerk skaliert. Die zusammen mit dem Overlay-Netzwerk entwickelten Optimierungen machen den gemeinsamen verteilten transaktionalen Speicher für viele Rechner skalierbar und erlauben dessen Verwendung auch in Weitverkehrsnetzen, wie beispielsweise auch in Grid-Systemen.

Because of physical constraints CPU clock rates are no longer growing as fast as in the past. As a consequence there is a paradigm shift in computer architecture moving to multi and many core CPUs. Only concurrent (multi-threaded) programs can exploit the potential of such CPUs pushing parallel programming into mainstream. This thesis adopts the basic idea for a distributed transactional memory, which transparently synchronizes in-memory data of distributed and parallel applications using transactions. The data-centric approach separates program logic and network communication and allows distributed applications to communicate through memory. By using a transparent optimistic synchronization scheme deadlocks can be avoided while at the same time simplifying development of distributed and parallel applications.

The proposed distributed transactional memory supports unbounded transactions for Linux-based operating systems combined with a transparent memory access detection and transparent transaction rollbacks in case of conflicts. This eases the development of distributed applications by relieving programmers from using specific functions to access transactional objects and doing manual rollbacks.

For scalability reasons the distributed transactional memory proposed in this thesis relies on a structured overlay network. For this purpose new peer-to-peer- and coordinator-based commit protocols have been designed. These protocols cooperate at multiple levels allowing efficient transaction processing. Another contribution is the integration of overlay-based network communication within a distributed transactional memory. This allows minimizing communication-related delays and to use network bandwidth efficiently. The overlay network monitors communication patterns and automatically limits transaction commits regionally, or completely avoids them whenever possible. Therefor, the overlay network uses peer and group local commit techniques. The overlay network monitoring also tracks changing network parameters and application-related memory-access patterns used to dynamically adapt the overlay structure.

A new commit token with a built-in request queue has been developed extending traditional peer-to-peer commit protocols. This improves token passing efficiency and is further improved by a smart token prediction scheme. Another coordinated token approach avoids searching the token among many nodes in the network. The latter also integrates the peer-to-peer-based token passing mechanism.

The concept of cascading transactions has been introduced for the first time in a distributed transactional memory system improving transaction throughput in networks with high network latencies. It allows applications to execute the next transaction concurrently while another transaction is in its commit phase. This avoids waiting for the outcome of commits taking the risk of cascading aborts. Nevertheless, we prefer a speculative execution of transactions over waiting.

The experiments presented in this thesis show that the proposed distributed transactional memory scales better if used with the hierarchical structured overlay network and optimizations, in contrast to the transaction synchronization without the overlay network. The optimized commit protocols improve the scalability of the distributed transactional memory and also allow transaction processing in wide area networks like for example grid environments.
Lizenz:In Copyright
Urheberrechtsschutz
Fachbereich / Einrichtung:Mathematisch- Naturwissenschaftliche Fakultät » WE Informatik » Betriebssysteme
Dokument erstellt am:27.05.2011
Dateien geändert am:27.05.2011
Promotionsantrag am:19.04.2011
Datum der Promotion:23.05.2011
english
Benutzer
Status: Gast
Aktionen