Systematic Approach for QoS Estimation of Web Services

3 downloads 77 Views 427KB Size Report
[email protected]sofia.bg. ABSTRACT. Quality of Service (QoS) assessment and prediction are an important issue in the development of distributed ...
Systematic Approach for QoS Estimation of Web Services Dessislava Petrova-Antonova

Olga Georgieva

Sofia University, FMI 1113 Sofia, Bulgaria 125 Tsarigradsko shosse Blvd. (+359) 2 971 04 00

Sofia University, FMI 1113 Sofia, Bulgaria 125 Tsarigradsko shosse Blvd. (+359) 2 971 04 00

[email protected]

[email protected]

ABSTRACT Quality of Service (QoS) assessment and prediction are an important issue in the development of distributed applications. The provision of web services with the same functionality gives rise to a need for implementation of more precise web service selection procedures. The paper introduces a new approach for web service selection that takes into account the web services’ varying behavior defined by their constantly changing QoS properties as well as the ambiguous clients’ QoS requirements. These uncertainties are formalized using respectively the probability theory and the theory of fuzzy sets. The feasibility of the approach is proved through a real scenario for web service selection.

Categories and Subject Descriptors H.3.5 [Online Information Services]: Web-based services.

General Terms Algorithms, Measurement, Performance, Experimentation, Human Factors

Keywords Probability theory, Theory of fuzzy sets, Quality of service, Web service selection.

1. INTRODUCTION The web services provide a widely accepted paradigm for implementation of distributed applications based on ServiceOriented Architecture (SOA). Due to their standardized, interoperable and reusable nature, they are preferred way for building integration solutions at enterprise as well as business-tobusiness level. The increasing number of web services sharing the same functionality changes the integration procedure towards accounting non-functional, Quality of Service (QoS) constraints. Therefore the QoS becomes a driving force in the web service selection process and starts to attract the attention of both industry and research communities. A lot of approaches have been proposed to solve the problem of QoS-aware web service selection such as quantitative QoS Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Conference’10, Month 1–2, 2010, City, State, Country. Copyright 2010 ACM 1-58113-000-0/00/0010 …$15.00.

prediction [6], prediction based on similarity among experience of clients [10, 12] or level of their QoS satisfaction [7, 13], credibility QoS evaluation [8], QoS ranking based on a weighted sum of the normalized values of QoS properties [9, 15] or Analytic Hierarchy Process (AHP) method [11], etc. The approach presented in [16] relies on the concept of dimension coming from the geometry. It considers four types of QoS properties as separate dimensions of common space. A web service relevancy function is designed in [3]. It measures the relevancy ranking of a particular web service by calculating the distance between a particular QoS value and the maximum normalized value in its corresponding set. A drawback of the approaches normalizing the values of QoS properties, such as [9] and [15], is the wastage of valuable information needed for accurate QoS evaluation. On the other hand, when the selection procedure relies on the clients’ feedback, such as in [7] its fairness and trustworthiness become unreliable. That is why in [5] the QoS weights are formed from the subjective human rating as well as the objective reliability evaluation of that rating. Another important discussion point considering current approaches is the types of QoS properties that are taken into account during web service selection. For example, in [7] only measurable QoS properties are addressed. In contrast, the approach proposed in [4] deals with all types of QoS properties expressing those that are not measurable in terms of integer values. Additionally, most of the approaches suppose that the selection constraints are precisely specified. However, the clients often specify their preferences using statements such as “… is around a certain value” or “… not less than a certain value”. This requires of special formalization frame in the applied web service selection. Following the current research efforts, this paper proposes a new QoS-aware approach for web service selection having some advantages compared with the ones discussed above. Firstly, it is applicable to measurable as well unmeasurable QoS properties. Since the unmeasurable QoS properties such as Supported standards, Authentication method and Data encryption cannot be quantified, much of the existing approaches disregarded them. In contrast, the proposed approach is applicable to both types of QoS properties, since it treats them as events with a given probability to happen. Further on, it appears to be more reliable since it uses values of QoS properties obtained during web service execution by a third party and stored in a history log. Finally, it allows clients to specify their QoS requirement in terms of fuzzy sets, which is a reliable mathematical frame that enables to account clients’ preferences even when they are not clearly specified. The rest of the paper is organized as follows. Section 2 gives a theoretical background of the proposed approach that is described

in details in Section 3. Section 4 presents a case study that proves the feasibility of the approach. Finally Section 5 concludes the paper and gives directions for future work.

2. THEORETICAL BACKGROUND Estimation of the QoS properties is a significant task especially in case when two or more web services having equal functionality need to be compared. Тhe assessment depends on two different factors. The first one characterizes the web service itself. The behavior of the web service is in a complex dependence of the network structure, the hosting server capacity, implementation algorithm and so on. On the other hand, the client’s QoS requirements are often not clearly defined in the software specification. Therefore in order to be objective the web service selection procedure must take into account both factors mentioned above. The challenge here is to define an appropriate formalization mechanism that adequately grasps them. The QoS properties and client requirements present uncertainty that has different origin. That is why, the QoS selection approach needs to use respective mathematical concept appropriate to description of each uncertainty type. Due to the random character of the web service behavior with respect to QoS, it is presented by the basic concept of the probability theory. The subjectivity of the client’s requirements imposes formalization based on fuzzy sets theory. Below, both concepts are briefly described.

2.1 Probability Estimation of QoS Properties The probability theory is relied on the fact that in any experiment there are a finite number of possible outcomes, whose statistical representations determines objective knowledge about existing dependences. In terms of the QoS prediction and web service selection we can consider the measured values of some QoS property recorded in a history log as possible outcomes. Each outcome can be associated with a number x in accordance with the frequency of occurrence. These numbers are values of a variable called random variable [2] denoted with X. Furthermore, the random variable can be described by a Probability Mass Function (PMF), which captures the probabilities of the values x that the random variable X can take. If x is any possible value of a discrete random variable X, the PMF of x denoted by P(x) is the probability of the event {X=x} consisting of all outcomes that give rise to the value of X equal to x [1]: p( x)  P({X  x}) .

tool that covers such type of uncertainty is the theory of fuzzy sets (FS) founded by L. Zade [22]. Unlike the crisp set, the concept of FS allows partial set membership [14, 22]. It is formulated by a membership function, which numerically represents the degree to which a given element belongs to a fuzzy set. Formally a fuzzy set is defined as follows: a fuzzy set A in a universe U is a set of the following ordered pairs: A={(x,(x)), xU, (x)[0,1]},

(2)

where (x) is the degree of membership of x in A. The membership function A(x) is seen as a mapping of each element x to a value between 0 and 1. As (x) approaches 1, the value x will increasingly belong to the fuzzy set A. Often, the FS is identified by its membership function i.e. if we say that the fuzzy set A is given then we mean that its membership function A(x) is known. The shape of the membership function could be different. Most used functions are triangular, trapezoidal, Gaussian and bell functions. The identification of the membership functions is based on the expert knowledge or done by analysis of the existing data. We suggest that the FS describing the client preferences is defined expertly. Since the information for QoS properties is collected as a set of discrete values, discrete FSs are applicable to the web service selection problem. If we want to quantify the simultaneous performance of two fuzzy statements we should apply the intersection operation on fuzzy sets. Among numerous t-norms [14] that are operators realizing fuzzy intersection, min operator is preferable. In this case the intersection of the fuzzy sets A and B is a new fuzzy set that takes the smaller value of the membership degrees of the sets A and B for each element x:  AB ( x)  min( A ( x),  B ( x)) .

(3)

xU

Since the obtained intersection is a fuzzy set that is difficult to interpret we need an appropriate index for the set strength. One possible measure could be the set cardinality, which is defined as the sum of all membership grades of the FS: C    (x) .

(4)

xU

The maximal cardinality corresponds to the most strength set.

(1)

Thus, PMF of the random variable describing the considered QoS property is appeared to be a measure of the ability of the web service to provide the desired quality. Furthermore, PMF of each candidate web service that meets the same functional requirement can be calculated. Thereby, the client is able to select a web service that with the highest probability satisfies his QoS requirement.

2.2 Fuzzy Description of Client Preferences In contrast to the objectivity character of the QoS information, the definition of the client requirements has subjective nature. The client's choice is a result of subjectivity of his own understanding about the quality of the offered software resource. In addition the choice is appeared to be a compromise between the desired QoS and other important factors like the web service price itself, the cost of software licenses and so on. A successful mathematical

3. DESCRITPTION OF THE APPROACH The considerations given above are a suitable base to summarize a procedure for QoS-aware web service selection accounting for the uncertain constraints described so far. Step 1: Selection of web services that fits the functional requirements of the client. Let us define a set S of all candidate web services denoted by Si, that satisfies the functional requirements of a client: S  {S1 , S2 ,..., Sn } , i=1,n,

(5)

where n is the number of services. Let us also consider that the variable X represents a particular QoS property. A set of random outcomes xj, j = 1, mi of the QoS property has been collected for a certain time interval. Note that mi is the number of the different values of a given QoS property kept in the history log of the i-th web service.

Furthermore the following steps of a web service selection procedure are summarized: Step 2: Identification of QoS property that will be used for web service comparison during selection procedure. Step 3: Calculation of the PMF for the QoS property for each candidate service Si. The information available in the history log about the incidence of the QoS values can be easily processed according to equation (1) in order to obtain their probability for the respective QoS property. The probability values of the QoS property of the i-th web service form the following vector: Pi  { pi ( x1 ), pi ( x 2 ),..., pi ( x mi )} ,

(6)

where pi(xj) is the probability that the QoS property of web service Si will take a value xj.

Figure 1. Intersection of QoS and client’s requirement

Step 4: Fuzzy set description of the client’s requirement with respect to the considered QoS property.

Step 6: Calculation of the numerical index C i for each intersection (7) obtained in the Step 5.

The client requirement for the QoS property of interest is represented as a fuzzy set A that maps each value xj to a membership degree (xj). Different shapes of membership functions represent different client’s requirements. For instance, the requirement for the Throughput of a particular web service measured in bytes per seconds (bps) could be defined by FS corresponding to the following statement: “Throughput is bigger than 600000 bps” (Fig. 1).

Since the obtained intersections are not easily understandable and interpretable we need a single representative number as a measure for satisfaction of the client’s requirement by each web service. Cardinality of the FS calculated by equation (4) is a reliable index that is calculated for each web service:

The uncertainty in the information provided by the client is kept in the membership function shape. It gives a smooth boundary of the Throughput values in the interval from 200000 to 600000 bps having a partial membership with degree between 0 (full not belonging) and 1 (full belonging).

The largest value of C i corresponds to the largest overlapping of the QoS and client’s requirement. In other words, the web service that has a maximal index value satisfies in a largest degree the client’s preferences.

Step 5: Estimation of the level of client requirement satisfaction with respect to QoS provided by each service. The intersection operation can be applied to QoS-aware selection of web services in order to assess how given QoS property meets the client’s QoS requirement. In such case the PMF that describes the QoS behavior, presented with equation (6) is interpreted as a fuzzy set, whose membership function is obtained through statistical data analysis. The intersection of the FS presenting the web service behavior regarding the considered QoS property with membership function Pi and the fuzzy set A presenting the client’s requirement is a new fuzzy set calculated by the equation (3). Thus, for all candidate web services we find the intersection A∩Pi:  i ( x j )  min (  A ( x j ), pi ( x j )), for i  1, n.

(7)

xj

The intersection of the fuzzy set presenting web service Throughput with the p(x) and the fuzzy set A presenting the client’s requirements with (x) is given in Fig. 1. It shows the degree of satisfaction of the client’s requirements by the web service when the web service is assessed by its Throughput.

Ci 

  (x j ) i

(8)

xj

Step 7: Recommendation to the client a web service that has maximal index obtained at the Step 6. The maximal cardinality value C max corresponds to the most relevant web service with respect of the client’s requirements: C max  max (Ci ) .

(9)

The pseudo code of the algorithm that implements the proposed approach is presented on Listing 1.

4. CASE STUDY In order to prove the feasibility of the proposed approach, a sample web service selection scenario is performed. Three web services provided by EzzyLearning [16], StrikeIron [17] and FraudLabs [18] are compared with regards of Throughput of their provider. They have similar functionality, namely implement operations for e-mail validation. The Throughput is important QoS property, since it measures the amount of services that the service provider can process in a given time period [19]. In order to collect the Throughput data, the web services are tested with LoadUI tool providing reach functionality for realtime load testing [20]. During execution of the load test, the LoadUI tool is configured to send 30 requests per second to each web service. It measures the Throughput as amount of bytes per second handled by its Runner.

Listing 1. Algorithm for QoS estimation of web services 1 2 3 4 5 6 7 8 9 10 11 12 13 14 14 16 17 18 19 20 21 22 23 24

Selection of web services that fits the functional requirements of the client Identification of QoS property of interest FOR EACH web service in S DO Extract data from history log END FOR FOR EACH web service in S DO FOR EACH unique value x of QoS property DO Calculate p(x) END FOR END FOR FOR EACH web service in S DO FOR EACH unique value x of QoS property DO Calculate x) END FOR END FOR FOR EACH web service in S DO FOR EACH unique value x of QoS property DO Obtain min of p(x) and x) END FOR END FOR FOR EACH web service in S DO Calculate C END FOR Find the web service with max C and Recommend the web service with the maximum C

The PFM of each web service is calculated and presented in Fig. 2, Fig. 3 and Fig. 4. The client requirement is expressed by a statement “Throughput is bigger than 600 000 Bytes per second”. It is formalized as a fuzzy set with a left open membership function. Its degree of satisfaction under the respective universe of each candidate web service is shown in Fig. 2, Fig.3 and Fig. 4.

Figure 4. FraudLabs web service estimation results It could be easily seen that the StrikeIron web service has quite large overlapping with the client preferences then the rest two web services. The level of satisfaction of the client requirement for EzzyLearning and FraudLabs web services is similar and can be precisely determined by calculation of the cardinality Ci, i=1,3. Table 1 presents the values of cardinality C for all candidate web services. Table 1. Throughput estimation Web service

EzzyLearning web service

StrikeIron web service

Figure 2. EzzyLearning web service estimation results

FraudLabs Web service

Figure 3. StrikeIron web service estimation results

Throughput

p(x)

μ(x)

162540

0,01

0,01

168345

0,10

0,02

174150

0,77

0,03

179955

0,10

0,05

185760

0,01

0,06

301860

0,01

0,32

383902

0,14

0,51

397140

0,66

0,54

410378

0,17

0,57

489806

0,01

0,75

582472

0,01

0,96

173178

0,01

0,03

179592

0,10

0,04

186006

0,14

0,06

192420

0,42

0,07

198834

0,22

0,09

205248

0,07

0,10

211662

0,02

0,12

218076

0,01

0,13

C

0,1263

0,8763

0,3861

The cardinality values reflect the magnitude of the intersections of the fuzzy set representing the client’s requirement and those representing the web services’ behavior regarding the Throughput property. The results confirm that EzzyLearning web service at least meets the customer preferences. It could be seen that

cardinality is maximized Cmax=0,8763 for the StrikeIron web service, which is finally recommended to the client.

5. CONCLUSION This paper proposes a new approach for web service selection that takes into account the web services’ behavior defined with Quality of Service properties as well as the clients’ non-functional requirements. As two different types of uncertainty are recognized the approach uses different mathematical concepts to reveal the existing dependences. The uncertainty is formalized using the probability theory and the theory of fuzzy sets. The feasibility of the approach is proved through a real scenario for web service selection. The selection procedure considers three web services providing similar functionality for e-mail validation. The evaluation is based on Throughput statistics data collected through web service load testing. The proposed approach is on its first stage of development, since it evaluates the web services taking into account only single QoS property. In the future work, it will be extended to provide a complex evaluation of the candidate web services taking into account more than one QoS property.

6. ACKNOWLEDGMENTS The work presented in this paper is supported by Scientific Research Fund of Sofia University “St. Kl. Ohridski” under Grant No. 107/19.04.2013.

7. REFERENCES [1] Bertsekas D., Tsitsiklis J. 2000. Introduction to Probability. Cambridge, Massachusetts, USA. [2] Devore J. 2008. Probability and Statistics for Engineering and the Sciences. Brooks/Cole Publisher, Belmont, USA. [3] Al-Masri, E., Mahmoud, Q. 2007. Discovering the Best Web Service. In Proceedings of the 16th international conference on World Wide Web. Banff, Canada, 1257-1258. [4] D’Mello, D. et al. 2008. A QoS Broker Based Architecture for Dynamic Web Service Selection. In Proceedings of the Second Asia International Conference on Modelling & Simulation. Kuala Lumpur, Malaysia, 101-106. [5] Xiong, P. and Fan, Y. 2007. QoS-aware Web Service Selection by a Synthetic Weight. In Proceedings of the Fourth International Conference on Fuzzy Systems and Knowledge Discovery. 632-637. [6] Li, M. et al. 2009. An Adaptive Web Services Selection Method Based on the QoS Prediction Mechanism. In Proceedings of the ACM International Joint Conference on Web Intelligence and Intelligent Agent Technology – Workshops. 395-402. [7] Li, S. et al. 2010. A Mechanism for Web Service Selection and Recommendation Based on Multi-QoS Constraints. In Proceedings of the 6th World Congress on Services. Miami, USA, 221-228. [8] Qi, L. et al. 2010. A QoS-Aware Web Service Selection Method Based on Credibility Evaluation. In Proceedings of

the 12th IEEE International Conference on High Performance Computing and Communications. Melbourne, Australia, 471-476. [9] Sha, L. et al. 2009. A QoS based Web Service Selection Model. In Proceedings of the International Forum on Information Technology and Applications. Chengdu, China, 353-356. [10] Shao, L. et al 2007. Personalized QoS Prediction forWeb Services via Collaborative Filtering. In Proceedings of the IEEE International conference on Web Services. Salt Lake City, USA, 439-446. [11] Tran, V. et al. 2009. A new QoS ontology and its QoS-based ranking algorithm for Web services. J. Simulation Modelling Practice and Theory. 17, 8 (2006), pp. 1378-1398. [12] Wang, S., Chen, H. 2008. A Web Service Selecting Model Based on Measurable QoS Attributes of Client-Side. In: Proceedings of the International Conference on Computer Science and Software Engineering. Wuhan, China, 385-389. [13] Xu, Z. et al. 2007. Reputation-Enhanced QoS-based Web Services Discovery. In Proceedings of the IEEE International Conference on Web Services. Salt Lake City, USA, 249-256. [14] Klir, G., Yuan, B. 1995. Fuzzy sets and fuzzy logic. Theory and applications, Prentice Hall. [15] Raj, R.J.R. and Sasipraba, T. 2010. Web service selection based on QoS Constraints. In Proceedings of the 2nd IEEE International Conference on Trendz in Information Sciences & Computing. 156 – 162, Chennai. DOI= http://dx.doi.org/10.1109/TISC.2010.5714629. [16] Li, L., Rong M. and Zhang G. 2011. A Web Service QoS Prediction Approach based on Multi-Dimension QoS. In Proceedings of the 6th International Conference on Computer Science & Education. SuperStar Virgo, Singapore, 1319-1322. [17] EzzyLearning web service, http://www.ezzylearning.com/services/EmailValidationServi ce.asmx?WSDL [18] StrikeIron web service, http://ws.strikeiron.com/StrikeIron/EMV6Hygiene?WSDL. [19] FraudLabs web service, http://v1.fraudlabs.com/mailboxvalidatorwebservice.asmx?w sdl. [20] OASIS 2011. Web Services Quality Factors Version 1.0. Committee Specification, http://docs.oasisopen.org/wsqm/WS-Quality-Factors/v1.0/cs01/WS-QualityFactors-v1.0-cs01.html. [21] SmartBear LoadUI, http://www.loadui.org/. [22] Zadeh, L. A. (1965). Fuzzy sets. Information and Control 8 (3) 338–353.