Hauptinhalt

Modellbasierte Validierung von SLAs für verteilte Softwaresysteme

Projektstart: 2010

Dieses durch die DFG geförderte Projekt dient der Entwicklung von Methoden zur Validierung von SLAs für serviceorientierte Architekturen mit Hilfe von simulativen und analytischen Modellen.

Unsere Ziele sind:

  • Schaffung von Modellen von SOAs zur Überprüfung der Leistungsfähigkeit dieser Systeme
  • Spezifikation der Leistungsvorgaben durch Formalisierung in der Modellierungssprache
  • Erschaffung eines analytischen Modells mit Leistungsschranken für SOA auf Basis des Network Calculus
  • Verbesserung von statistischen Modellen zur Auswertung von Simulationsergebnissen von SOA-Modellen

Zusammenfassung

Große verteilte Softwaresysteme werden heute als Serviceorientierte Architekturen (SOA) ausgeführt. Ihnen liegt die Idee zu Grunde, dass einzelne Softwarekomponenten ihre Dienste über Netzwerke bereit stellen. Dienste können so aus einfacheren Diensten komponiert werden. Im Zuge der Verbreitung von Cloud-Computing verschwimmen so die Grenzen zwischen lokalen Anwendungen, grundlegenden oder komponierten Diensten aus dem Netzwerk.

Bei der Planung von SOAs ist nicht nur die korrekte Funktionalität von Bedeutung, sondern auch nichtfunktionale Eigenschaften wie Antwortzeit, Zuverlässigkeit und Durchsatz. Existieren Leistungsengpässe in einzelnen Komponenten führt dies zwangsläufig dazu, dass das Gesamtsystem nicht die erforderliche Leistung erbringen kann. Insofern ist eine detaillierte Spezifikation der zu erbringenden Leistung und Zuverlässigkeit genauso wie deren Validierung als Teil des Entwurfs und Betriebs von SOA notwendig.

Aus diesem Grund werden funktionale und nichtfunktionale Eigenschaften von Diensten in Service-Level Agreements (SLAs) festgehalten. Diese dienen als eine Art Vertrag zwischen Dienstleister und Kunden. Der Dienstleister kann Garantien für die Leistung seines Dienstes geben wen der Kunde sich an festgelegte Grenzen für die Auslastung hält.

Das Zeil dieses Projekts ist, die frühzeitige Leistungsbewertung von SOA unter Einbeziehung von SLAs mit nichtfunktionalen Eigenschaftenon zu verbessern. Dies soll mit Hilfe von Modellen geschehen. So können schon in frühen Entwurfsphasen Systeme gegenüber SLAs validiert werden.
Für eine Modellierung ist es notwendig, dass eine formale Spezifikation von nichtfunktionalen Eigenschaften in SLAs bereit steht. Im Projekt soll die Spezifikation ausgehend von vorgegebenen Basismustern erarbeitet werden.

Der weitergehende Schritt ist nun, dass im Modell existierende System auf seine Leistungsfähigkeit hin zu untersuchen. Im Projekt sollen zwei verschiedene Wege beschritten werden: Analytische Verfahren und Simulation.

Simulation

Für die simulative Auswertung von Modellen service-orientierter Architekturen wird die im SFB559 entwickelte Modellierungsumgebung ProC/B um statistische Verfahren zur SLA Validierung ergänzt. Dieser Projektteil kann auf weitreichende vorhergehende Arbeiten (Links hier hin) aufbauen.

SLA Calculus

Ein für die Analyse von Datennetzwerken genutztes Verfahren ist der Network Calculus. Er beschreibt Schranken für Last und Bedienrate für Netzwerkelemente und folgert daraus deren maximale Reaktionszeit. Die Schranken im Network Calculus ähneln den Vorgaben von SLAs an Service-Orientierte Architekturen, deshalb erachten wird diesen Ansatz, Network Calculus zur Modellierung von SOAs zu verwenden, als zielführend.
Die Herausforderung für die Systemmodellierung mit Network Calculus unter Berücksichtigung von SLAs ist, dass die echte Leistungsfähigkeit eines Dienstes hinter der SLA-Beschreibung verborgen ist. Insbesondere die Verarbeitungsgeschwindigkeit von Anfragen ist unbekannt. Für die Systemmodellierung stehen nur die vereinbarte Obergrenze an Last und die garantierte Reaktionszeit zur Verfügung, die eigentliche Bedienrate fehlt. Die Validierung von Modellen durch Network Calculus wird so erschwert.

Unsere Lösung ist, die Eingabe an den Network Calculus zu vertauschen. Statt aus Schranken der Ankunftsrate und der Bedienrate die Wartezeit zu ermitteln sind die Eingaben des SLA Calculus Schranken für Ankunftsrate und Wartezeit aus der SLA-Spezifikation. Der neue Calculus liefert nun die notwendige Bedienrate des Systemes. In weitergehenden Forschungen berücksichtigen wir auch auch die Kombination von SLAs innerhalb von komponierten Systemen.


Publikationen

vorrausgehende Arbeiten

  • Falko Bause, Peter Buchholz, Jan Kriege, Sebastian Vastag:
    Simulation Based Validation of Quantitative Requirements in Service Oriented Architectures.
    Winter Simulation Conference 2009 (WSC 2009), Dec. 13-16, Austin (Texas, USA), 2009

Forschungsergebnisse

  • Sebastian Vastag:
    Modeling quantitative requirements in SLAs with Network Calculus
    In Proceedings of the 5th International ICST Conference on Performance Evaluation Methologies and Tools (ValueTools), ENS Cachan, France, May 17th-20th 2011, ICST.
  • Sebastian Vastag:
    A Calculus for SLA Delay properties
    accepted for the 16th International GI/ITG Conference on Measurement, Modelling and Evaluation of Computing Systems and Dependability and Fault Tolerance (MMB 2012)

Kontakt

Dipl.-Inform. Sebastian Vastag


Nebeninhalt

Kontakt