Design-Time Prediction of QoS Properties

As part of a Service Level Agreement (SLA), a service provider and its customer agree on non-functional or Quality of Service (QoS) requirements, which may be part of the pricing model. Predicting service quality attributes before service run-time helps to specify feasible SLA parameters and to consolidate efficient resource utilization with guarantees on QoS metrics.

Design-time prediction, as part of the SLA@SOI framework, aims to estimate performance and reliability indicators of a service infrastructure. This includes estimates of a service’s

  • completion time,
  • throughput,
  • resource utilization, and
  • reliability.

The approach provided as part of the prediction architecture is model-based: different models are employed to capture an entire system, i.e. structural aspects such as its service components and allocation to (virtual) machines and behavioral aspects such as usage of services.

What is modeled?

Different roles contribute information to the set of models used to predict a service’s performance. This situation is depicted in Figure 1.

QoS Model and involved roles

Figure 1: QoS Model and involved roles

  • Software providers create abstract models of their service components.  These include information about service interfaces and an abstract behavioral description of how the components use the available hardware and software resources (Service Component Model)
  • Infrastructure providers specify the execution environment on an abstract level. Important performance-related information includes processing rates etc. (Infrastructure Model)
  • Service customers indicate the intended service usage (e.g., the maximal number of requests per minute). From this information, a model capturing the system usage profile (Usage Model) can be derived.
  • Service Providers integrate the separate models and provide the prediction service with an initial allocation of components to nodes (Allocation Model)

And how does the actual prediction work?

Design time prediction is based on the modeled service / usage properties only, i.e. it can be performed before the service is actually deployed and running. The various models are transformed into a format that can be processed by the Palladio Component Model (PCM) framework [1]. This comprehensive framework allows for generation of different analysis models such as stochastic regular expressions or a queuing network, which in turn provide capabilities to derive the desired performance metrics.

What’s the use of QoS prediction in SLA@SOI?

Both the provider and the customer of a service will benefit from the integration of design-time prediction into the SLA management framework.

  • Transparency: A priori simulation based on multiple scenarios (allocation / infrastructure / usage) allows the service provider to offer clear and concise statements about the service parameters in an SLA. This helps the customer during the selection process and promotes the negotiation process.
  • Flexibility: Multi-round negotiation of an SLA can be assisted by iteratively calling the prediction service with modified inputs. This applies in particular to different usage scenarios provided by the service customer.
  • Efficiency: Based on the simulated resource demands, infrastructures can be dimensioned efficiently balancing costs and QoS levels.
  • Dependability: Careful modeling of the architecture under study leads to high-quality predictions of its performance and reliability.

Martin Küster, FZI Forschungszentrum Informatik, Karlsruhe

[1] Becker, Koziolek, Reussner: The Palladio component model for model-driven performance prediction. Journal of Systems and Software Vol. 82 (1): 3-22 (2009)

Tags: , , ,

Leave a Reply