Modellbasierte Validierung von SLAs für verteilte Softwaresysteme
Zusammenfassung der Projektergebnisse
Bei der Bewertung großer verteilter Softwaresysteme sind quantitative Eigenschaften wie Antwortzeiten, Verfügbarkeit oder Durchsätze von besonderer Bedeutung. Diese Eigenschaften werden im Bereich der service-orientierten Architekturen (SOA) in Service Level Agreements (SLAs) festgehalten, wobei oft SLAs für einzelne Komponenten vereinbart werden, aus denen dann SLAs für das Gesamtsystem bestimmt werden. Für die Systemplanung und die Validierung zugehöriger SLAs ist eine modellbasierte Analyse notwendig. In diesem Projekt steht die Validierung von SLAs mittels Analyse von Prozessketten-Modellen und durch Schrankenberechnungen im Fokus. Im Gegensatz zur klassischen Leistungsanalyse, bei der aus einer Spezifikation des Ankunfts- und Bedienprozesses Leistungsgrößen wie Mittelwerte der Bearbeitungszeiten, Durchsätze oder Auslastungen bestimmt werden, muss für SLAs in SOAs die Einhaltung von Schranken validiert werden oder aus einer oberen Schranke für den Ankunftsprozess und für die Bearbeitungszeit eine untere Schranke für den Bedienprozess bestimmt werden. Im Projekt wurden dazu im Wesentlichen zwei Ansätze verfolgt, nämlich eine simulative Analyse mit Hilfe von Prozesskettenmodellen und ein analytischer Ansatz auf Basis des neu entwickelten SLA Kalküls. Zur simulativen Analyse wurden der für die Modellierung logistischer Netze entwickelte ProC/B-Ansatz und die zugehörige Toolumgebung erweitert. Dazu wurden Anpassungen bei der Spezifikation der Modelle und bei der Definition von Leistungsgrößen, die nun SLA- spezifische Aspekte berücksichtigen, vorgenommen. Insbesondere wurde eine Komponente integriert, die ProC/B-Modelle auf Simulationsmodelle der Simulationsumgebung OMNeT++ abbildet. Dadurch steht ein moderner und effizienter Simulator für die Analyse zur Verfügung und durch die Nutzung der in OMNeT++ vorhandenen Kommunikationsmodelle, kann die Kommunikationsinfrastruktur in die Simulation von SOAs einbezogen werden. Zur effizienten Analyse wurde mit dem SLA Kalkül ein neuer Ansatz zur analytischen Validierung von SLAs entwickelt. Auf Basis des Netzwerk oder Realzeit Kalküls (network-/real time calculus) wurde ein Ansatz auf Basis der max/+ Algebra entworfen. Implizit wird in diesem Ansatz auch eine formale Darstellung der quantitativen Aspekte von SLAs auf Basis konkaver monoton wachsender Funktionen eingeführt. Mit Hilfe des SLA Kalküls können unter anderem die folgenden Problemstellungen mit Hilfe abstrakter Modelle bearbeitet werden: Für ein System mit bekannten Bedien- und Kommunikationskapazitäten kann die Einhaltung der SLAs validiert werden. - SLAs für Lastprozesse können aus einer Beobachtung der eintreffenden Lasten geschätzt und formal beschrieben werden. - Für vorgegebene SLAs können minimal notwendige Bedienkapazitäten zur Erfüllung der Vorgaben bestimmt werden. - Ein SLA eines komponierten Dienstes kann aus den SLAs der Dienste die kombiniert wurden ermittelt werden. - Falls ein SLA für einen Dienst, der aus mehreren Diensten komponiert wird, vorgegeben ist und die zu kombinierenden Dienste ebenfalls SLAs haben, so kann eine Komposition bestimmt werden, die das SLA des komponierten Dienstes erfüllt. - Bei unterschiedlichen Realisierungsmöglichkeiten eines Dienstes kann die kostengünstigste Alternative, die die SLAs erfüllt, bestimmt werden.
Projektbezogene Publikationen (Auswahl)
-
A Simulation Environment for Hierarchical Process Chains Based on OMNeT++. Simulation 86 (5-6): 291-309 (2010)
Bause, F., Buchholz, P., Kriege, J., and Vastag, S.
-
Product form approximations for communicating Markov processes. Perform. Eval. 67(9): 797-815 (2010)
Buchholz, P.
-
Bounding Reward Measures of Markov Models using Markov Decision Processes. Numerical Linear Algebra with Applications 18 (6), 2011, 919-930
Buchholz, P.
-
Modeling quantitative requirements in SLAs with Network Calculus. In Proc. 5th Int. Conf. on Performance Evaluation Methodologies and Tools (ValueTools), 2011
Vastag, S.
-
A Calculus for SLA Delay properties. In J. B. Schmitt (Ed.) Measurement, Modeling and Evaluation of Computing Systems and Dependability and Fault Tolerance, Springer LNCS 7201, 2012, 76-90
Vastag, S.
-
Arrival and delay curve estimation for SLA calculus. In O. Rose and A. M. Uhrmacher (Eds.) Proc. Winter Simulation Conference 2012
Vastag, S.