Evaluating the Survivability of SOA Systems based on HMM Leilei Chen, Qing Wang, Wei Xu, and Liang Zhang School of Computer Science, Fudan University, China {081024012, wangqing, 072021142, lzhang}@fudan.edu.cn Abstract

the resulting systems, the new paradigm brings more challenges into survivability research.The dynamic and evolving features combined with the black-box characteristic of services make it difficult to precisely model SOA systems as well as the deploying environments.Therefore, new approaches are needed to cope with new characteristics in SOA systems.In this paper, we investigate survivability for SOA systems and try to address the above issues.

Survivability is a crucial property for computer systems that support critical infrastructures of our society. A variety of survivability definitions and evaluation methods for traditional software have been proposed. However, for those in paradigm of Service Oriented Architecture (SOA) where the computing settings are intrinsically open, these methods are no longer applicable. In this paper we study survivability aspects in SOA systems. A formal survivability definition is proposed according to new characteristics of SOA. We also set up an extended framework in which survivability can be evaluated and advertised as a special multidimensional Quality of Service (QoS) property. In particular, we introduce a novel Hidden Markov Model (HMM) based method for survivability evaluation.

1

2

2.1

New Understanding Towards Survivability in SOA Focusing on adaptability

Many security or fault-tolerance strategies can be used for improving survivability.In addition to these common adopted strategies,SOA promises an open and unbounded computing setting and is in itself superior in achieving survivability.For example,run-time service discovery,service substitution and composition mechanisms are beneficial to building dynamic systems more adaptive to varying environments. In the paradigm of SOA, we believe that the researches on survivability should be more focused on the adaptability of the system that gains less concentration in the past.A survivable system should be capable of dynamically adjusting its behavior in response to the changes in the operating environments, to protect itself from malicious attacks and to provide the most valuable functionalities for the users. In this regard, survivable systems present good adaptability and share common features with self-adjustable systems in which real-time monitoring and adaptation mechanisms are adopted [4].

Introduction

As SOA systems are extensively deployed, their quality of service (QoS) becomes a practical issue, leading to increasing attention on QoS-related theories and models [1]. However, few of previous studies have investigated another crucial property for SOA systems, survivability. In an informal sense, survivability is a system’s capability of surviving when confronted with attacks, failures or other adverse accidents. Many researchers have tried to define survivability from different perspectives.Correspondingly, various survivability evaluation models and methods have been proposed [2, 3]. All these definitions and models share some common features. First, they are all security centric. Second, all evaluation methods require modeling both the system and the malicious environments so as to analyze the effects of intrusions acting on the system. Third, they assume developers can capture all phenomena in the external environments and the software architecture does not change while executing. These assumptions are reasonable for traditional software architecture, but hardly to stand any longer for SOA. While SOA advances the software development as well as

2.2

Survivability as a special multidimensional QoS property

Survivability is a special property that is more comprehensive compared with other QoS attributes. As services are usually invoked dynamically over the Internet, their QoS 1

can vary greatly. Traditional QoS attributes, such as reliability and response time, describe corresponding qualities of a service within a certain period of time, and thus can be treated as short-term properties. Survivability, on the other hand, measures the capabilities of a system in face of various complicated environments, and thus, should be treated as a long-term property. When a service is running, the QoS attributes vary under the actions of both the varying operating environments and its internal survivable strategies. Usually, the changes occurring in the operating environments possess certain statistical timing characteristics. Accordingly, the dynamic changing of QoS attributes exhibits timely and statistical characteristics that imply the survivability of the system. So, we regard survivability as a special multidimensional QoS property (a combination of multi interested QoS attributes) considering the timing characteristics.

3

Intermediary(s)

User Feedback

Monitor

Short-Term Short-Term Short-Term QoS QoS QoS Statistics Statistics Statistics

Evaluator

Survivability Survivability Survivability Report Report Report

Use

Request

QoS Repository

Response

Provider

Service Log

Evaluate

Advertiser

Use

Figure 1. An Extended Survivabilityaware Framework

4

An Extended Survivability-aware Framework

We propose an extended framework to support survivability evaluation.Our framework extends the basic publishfind-bind model of SOA and makes it possible to publish certificated traditional QoS properties (response time, reliability, etc) and survivability information combined with functional descriptions to service users. In this survivability-aware framework, there are three basic units in the trusted third-party intermediary, monitor, evaluator and advertiser. The intermediary is delegated to perform the monitoring activities based on service logs or runtime statistics provided by the service provider.Through analyzing the monitoring log, two kinds of information can be acquired. The first one is interested commonly used short-term QoS attributes that represent the current performance of the service. The second one is our focus in this paper, survivability that reflects the long-term QoS dynamics. Two kinds of analyzing reports will be generated and then provided for both the service provider and service users. Figure 1 depicts our framework. The evaluator evaluates the survivability of an ongoing service basing on its monitoring log and then generates an evaluation report. According to the service survivability definition proposed in Section 3, the evaluation report should depicts the following attributes of the service:service:(1)All stable states and transitions;(2)Functionalities and interested non-functional properties for each state;(3)Probability distribution across all states;(4)Mean duration time for each state.We adopt a Hidden Markov Model (HMM) [5] based method to achieve this purpose.

Defining survivability in SOA

In this paper, a service that adopts survivable strategies and could well adapt to varying malicious environments, no matter its granularity, is referred to as a survivable service. Current standards assume all services stay in one of the two states: healthy (available) or fatal (unavailable). In fact, there is a wide range between the two extremities for survivable services. Survivable services possess a set of survivable states and can still be alive and functional although they are not healthy. Definition 3.1 A service survivability specification is a nine-tuple, {SS, F, Q, I, V, T R, T S, T T, P }, where: • SS = {ss1 , ss2 , · · · , ssk } is a set of acceptable service states which can also be called stable states; • F = {f1 , f2 , · · · , fm } is the total set of functionalities the service can provide; • Q = {q1 , q2 , · · · , qn } is a set of quality specifications; • I : SS → 2F × 2Q is the functionalities and qualities for each stable state; • V = {v1 , v2 , · · · , vn } is the set of changes happening in the operating environments; • T R ⊆ SS × SS × V is the set of valid transitions driven by survivable strategies between stable states; • T S : SS → {t : R|t > 0} is the duration time for each stable state; • T T : T R → {t : R|t > 0} is the transition time from a stable state to another; • P : (SS ∪ T R) → {p : R|0 < p < 1} is the probability distribution across all acceptable states and transitions, i.e., the proportion of time every stable state and transition state holds.

5

Evaluating survivability based on HMM

When a survivable service is running, the state transitions are not directly observable. What can be observed are 2

the varying QoS properties that we can acquire through analyzing the service log. So a survivable service is suitable to be modeled as a HMM.We choose the reliability and mean response time of each operation of the service as interested QoS properties. QoS properties during a certain period of time span t can be denoted by a vector:

Gaussian mixture distribution. Assuming each dimension is independent, P (X) is calculated as: ∏ P (X) = Pi (Xi ) where Pi (Xi ) is the probability distribution function of the ith dimension of X and can be calculated based on classified log data obtained in the previous step. Step 5: Analyzing characteristics of each state The following parameters will be calculated in this step through simple probability calculation: the probability distribution of each state, the mean duration time of each state and the corresponding QoS properties for the functionalities that each state provides.

QVt (rel1 , resp1 , rel2 , resp2 , · · · , relk , respk ) where reli represents the ith operation’s reliability, respi represents the ith operation’s mean response time, and K is the number of operations of the service. Each dimension of the vector contains continuous values and we assume they obey the Gaussian mixture distribution according to normal methods. Step 1: Preprocessing the service log Firstly we partition the log with equal time intervals. For every time span we compute the reliability and mean response time of each service operation and acquire a QoS vector of that time span. Thus we get a sequence of QoS vectors as observable sequence for HMM training. Step 2: Estimating HMM parameters We use Baum-Welch algorithm to estimate the HMM parameters. Before running the algorithm, first we need to decide the number of Gaussians and the number of states in the model. Bayesian information criterion (BIC) is adopted to achieve this purpose. BIC is defined as: b − log P (M |X) ≈ log P (X|M, θ)

6

Conclusion and future work

SOA-based systems present several natural advantages in achieving survivability and at the same time require new methods applicable to its open and unbounded computing settings. In this paper, we redefine the survivability as a multi-dimensional property that carries timing and statistical characteristics. Based on the new definition, we present an extended framework to support survivability evaluation and advertisement. Later, we present in detail a serviceoriented, HMM based survivability evaluation method that can provide quantitative and objective evaluation reports. In the future, we plan to investigate techniques to embrace survivability as an important criterion for service discovery and service composition. Acknowledgments This work is partially supported by the National key Basic Research Program (973) under grant No. 2005CB321905.

d log N 2

where X is the observed data sequence, d is the number of parameters in the model, N is the number of data objects in X, and is the marginal likelihood parameter configuration of model M . BIC has its highest value corresponding to the size of the original HMM for data and thus is used to determine the correct number of states and Gaussians. Step 3: Finding the hidden state sequence and classify the original log data Once we get the service model, we can use Viterbi algorithm to find the hidden state sequence that represents the state evolution of the service. And next, the state sequence is used to partition the original log. Log segments that belong to the same state will be assembled together for following analysis. Step 4: Identifying stable and unstable states We adopt the entropy as the measure of the stability of each state.Entropy is defined as: ∫ H(P ) = −P (X) ln P (X)dx

References [1] Shuping Ran. A model for web services discovery with qos. SIGecom Exch., 4(1):1-10, 2003. [2] J.C. Knight, E.A. Strunk, and K.J. Sullivan. Towards a rigorous definition of information system survivability. In DARPA Information Survivability Conference and Exposition, volume 1, pages 78- 89, 2003. [3] R.J. Ellison, D.A. Fisher, R.C. Linger, H.F. Lipson, T. Longstaff, and N.R. Mead. Survivable network systems: An emerging discipline. Technical Report CMU/SEI-97-TR013, Software Engineering Institute, Carnegie Mellon University, 1997. [4] Mazeiar Salehie and Ladan Tahvildari. Self-adaptive software: Landscape and research challenges. ACM Trans. Auton. Adapt. Syst., 4(2):1-42, 2009.

x∈Ω

[5] Lawrence R. Rabiner. A tutorial on hidden markov models and selected applications in speech recognition. pages 267296, 1990.

where Ω is the sample space of variable X, P (X) is the probability distribution function of X. In our work, X is a multidimensional variable and each dimension obeys a 3

Evaluating the Survivability of SOA Systems based on ...

While SOA advances the software development as well as the resulting systems, the new ... building dynamic systems more adaptive to varying envi- ronments.

76KB Sizes 6 Downloads 214 Views

Recommend Documents

Evaluating the Survivability of SOA Systems based on ...
Abstract. Survivability is a crucial property for computer systems ... Quality of Service (QoS) property. ... services make it difficult to precisely model SOA systems.

Evaluating the harmfulness of cloning: a change based ...
software maintenance because it requires consistent changes of ... change of applications containing clones. ... all fragments, of which the developer may not be.

On Evaluating Recommender Systems for API Usages
Thorsten Schäfer. Mira Mezini. Software Technology Group, Darmstadt University of Technology. {bruch ... republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. RSSE '08 ... we propose an automated

Exploitation on ARM-based Systems - Troopers18 - GitHub
Mar 12, 2018 - Sascha Schirra. Ralf Schaefer. • Independent Security. Consultant. • Reverse engineering. • Exploit development. • Mobile application security. • Embedded systems. • Twitter: @s4sh_s. • Security Analyst ...... Ask the Ker

Evaluating the Impact of Reactivity on the Performance ...
interactive process to design systems more suited to user ... user clicks on a link or requests a Web page during its ses- sion. ...... Tpc-w e-commerce benchmark.

design of mechatronic actuation systems based on ...
small amount of wear, direct connection with the system, easy to replace, can operate in ... (fiber structure) creating a three-dimensional grid structure (Fig. 1). ... accelerations and high force are required, like sorting, speed cutting, manipulat

Tutorial: Verification of Real-time Systems Based on ...
Electrical and Computer Engineering,. Wayne State ... I. Introduction. Discrete Event System Specification(DEVS) is a promising formalism for modelling and analysis of dis- crete event systems and especially it has been regarded as a powerful ... the

2 Evaluating the Impact of Multidimensionality on ... -
The stan- dard paradigm in IRT applications, building on Monte Carlo simulation research, is to use a combination of SEM fit indices, residual values, and eigenvalue ratios to judge whether data are unidimensional enough for IRT. Once a data set is d

Evaluating the Effects of Child Care Policies on ...
of an offer of a child care subsidy program increases cognitive achievement scores ..... the data and allows me to expand my sample and to incorporate all input ...

Evaluating the Effects of Inundation Duration and Velocity on ...
Duration and Velocity on Selection of ... and Velocity on Selection of Flood Management ... Drive, Box 5015, Cookeville, TN 38505-0001, USA ... Effects of Inundation Duration and Veloc ... t Alternatives Using Multi-Criteria Decision Making.pdf.

Evaluating the Impact of Wind Power Uncertainty on ...
of these objectives in mind: 1) To estimate the wind resource capacity value, that is, the ... conventional renewable energy (NCRE) technologies are properly ...

Evaluating the Impact of Health Programmes on ... - Semantic Scholar
The most basic parameter of interest to be estimated is the average treatment ..... be to partner with medical randomized controlled studies to study economic outcomes. ..... of the institutional environment as well as the administration of the ...

Evaluating Content Based Image Retrieval Techniques ... - CiteSeerX
(“Mountain” class); right: a transformed image (negative transformation) in the testbed ... Some images from classes of the kernel of CLIC ... computer science.

Evaluating Coverage Based Intention Selection
Agent with ten concurrent intentions in a dynamic environment. Automated test generation. •Simple binary structure allows for bulk generation of test cases.

Evaluating the Effect of Back Injury on Shoulder ...
Jun 15, 2004 - ... distance between the seat and the target shelf. Differences in shoulder loading and perception are a result of differences in movement velocities and strategies between the groups. These results suggest that workplace adaptation mu

Evaluating the Impact of Health Programmes on ... - Wiley Online Library
Evaluating the Impact of Health Programmes on Productivity. 303. The presence of the second term in the last line of Equation 1 summarizes the key identification problem that must be solved. In this section, we outline the most widely used empirical

Evaluating the Impact of Health Programmes on ... - Semantic Scholar
Malcolm Keswell, School of Economics, University of Cape Town, Rondebosch, ...... 'Evaluating Anti-poverty Programs', in R. E. Evenson and T. P. Schultz (eds.) ...

Evaluating Embeddings using Syntax-based ...
Most evaluations for vector space models are semantically motivated, e.g. by mea- suring how well they capture word similar- ity. If one is interested in syntax-related downstream applications such as depen- dency parsing, a syntactically motivated e

CITIZEN'S RECOMMENDATIONS BASED ON THE SPOT OF ...
CITIZEN'S RECOMMENDATIONS BASED ON THE SPOT OF VIOLENCE IN MATIRANGA.pdf. CITIZEN'S RECOMMENDATIONS BASED ON THE SPOT OF VIOLENCE IN MATIRANGA.pdf. Open. Extract. Open with. Sign In. Main menu. Displaying CITIZEN'S RECOMMENDATIONS BASED ON THE SPOT O

CITIZEN'S RECOMMENDATIONS BASED ON THE SPOT OF ...
CITIZEN'S RECOMMENDATIONS BASED ON THE SPOT OF VIOLENCE IN MATIRANGA.pdf. CITIZEN'S RECOMMENDATIONS BASED ON THE SPOT OF ...

A wavelet-based quality measure for evaluating the ...
In fact, without a. Further author information: (Send correspondence to Dr. Vladimir Buntilov) ... 6255, Fax: +66 (2) 889-2138 ext. 6268. ..... component PC1 of the decorrelated MS bands was replaced by its sharpened counterpart PC∗. 1 .