Professional Documents
Culture Documents
Heuristics For Qos-Aware Web Service Composition
Heuristics For Qos-Aware Web Service Composition
Heuristics For Qos-Aware Web Service Composition
Rainer Berbner, Michael Spahn, Nicolas Repp, Oliver Heckmann, Ralf Steinmetz
Dept. of Computer Science, Technische Universitaet Darmstadt, Germany
{berbner,spahn,repp,heckmann,steinmetz}@kom.tu-darmstadt.de
Abstract
This paper discusses the Quality of Service (QoS)aware composition of Web Services. The work is based on
the assumption that for each task in a workflow a set of
alternative Web Services with similar functionality is
available and that these Web Services have different QoS
parameters and costs. This leads to the general
optimization problem of how to select Web Services for
each task so that the overall QoS and cost requirements
of the composition are satisfied.
Current proposals use exact algorithms or complex
heuristics (e.g. genetic algorithms) to solve this problem.
An actual implementation of a workflow engine (like our
WSQoSX architecture), however, has to be able to solve
these optimization problems in real-time and under heavy
load. Therefore, we present a heuristic that performs
extremely well while providing excellent (almost optimal)
solutions. Using simulations, we show that in most cases
our heuristic is able to calculate solutions that come as
close as 99% to the optimal solution while taking less
than 2% of the time of a standard exact algorithm.
Further, we also investigate how much and under which
circumstances the solution obtained by our heuristic can
be further improved by other heuristics.
1. Introduction
Web Services as technology based on open XML
standards like SOAP, WSDL, and UDDI are widely used
for integration purposes within enterprises. Beyond this,
Web Services have the potential to be composed to crossorganizational workflows. Due to their loosely-coupled
nature Web Services hosted by external providers can be
integrated at runtime. This vision aims at dynamic ad-hoc
collaborations between different business partners.
With the increasing number of Web Services with
similar or identical functionality, the non-functional
properties of a Web Service will become more and more
important. Besides the costs for using Web Services, the
Quality of Service (QoS) attributes (e.g. availability,
response time, and throughput) are subsumed as nonfunctional attributes. Considering those non-functional
properties is crucial for companies to meet the
requirements of customers.
As a consequence, the QoS has to be explicitly
managed at the designing phase of a Web Service
composition as well as during its execution at runtime.
Focusing on the QoS-aware Web Service execution we
have designed and implemented the proxy architecture
WSQoSX (Web Services Quality of Service Architectural
Extension) [2, 3] that supports late binding of Web
Services at runtime as well as dedicated accounting and
monitoring mechanisms (e.g. SLA violation detection).
In this paper, the focus is on QoS-aware Web service
composition. We define QoS-aware Web Service
composition as the selection of Web Services maximizing
the QoS of the overall Web Service composition, taking
into account preferences and constraints defined by the
user. For this, a utility function maximizing the overall
QoS subject to QoS constraints is introduced. This leads
to an optimization problem that is NP-hard [5, 9]. Zeng et
al. propose computing the optimal composition by linear
integer programming (IP) [20]. However, their results
reveal that this approach is hardly feasible in dynamic
real-time scenarios with a large number of potential Web
Services involved. This is exacerbated in a situation
where the QoS-aware composition has to be replanned at
runtime. In this case, the computation time of the
composition becomes crucial. Replanning at runtime
becomes necessary if Web Services selected at design
time are not available anymore or SLA violations are
detected. Obviously, customers are not willing to wait a
few minutes when e.g. performing a financial transaction
due to the replanning of the composition.
In this paper, we propose heuristics for solving the
QoS-aware Web Service composition problem
considering these timing constraints. We have designed,
implemented and evaluated three heuristics: Heuristic
H1_RELAX_IP consists of two steps: First, a MIP
(Mixed Integer Programming) formulation of the
composition problem is generated and its LP relaxation is
solved. Second, we use a backtracking algorithm to create
Application
Server
WS1
WS2
Internet
WS5
Provider A
Registry
Portal
DB
SLA-Management
Selection
Rating
QoSMonitoring
Accounting
Proxy
Provider B
Workflow A
WS3
WS4
mi
i, j
= 1 i = 1, , n.
j =1
Task 2
Task n
Workflow
Model
Multiplicative parameters:
mi
i =1
j =1
calculated as x =
pi, j xi, j . To be able to
WS1,1
WS2,1
WS1,2
WS2,2
WS1, m
WSn,1
WSn,2
p2,4,1= 98 %
p2,4,2= 14 ms
WS2,3
Candidate
Web
Services
WSn, m
n
n mi
mi
xi , j
xi , j
ln( x ) = ln pi, j = ln pi, j
i =1 j =1
i =1 j =1
WS2,4
Category 1
WS2, m
i =1 j =1
( )
WSn,6
Execution
Plan
xi , j
) = x
n
mi
i, j
( )
ln pi, j
i =1 j =1
mi
( )
mi
+
i, j
xi , j .
i =1 j =1
i =1 j =1
or
( )
mi
( )
ln c ln pi, j xi , j
i =1 j =1
ln c ln pi, j xi , j
WS2,1
calculated as x =
Category 2
WS1,2
mi
= ln pi, j
Category n
mi
n mi
n
x = pi, j xi , j 1 1 pi, j xi , j
i =1
j =1
i =1 j =1
x min pimin
, j xi , j i = 1,..., n
j =1
l =1
l =1
min
Category 2
Category 5
Category 1
Category 3
i=2
i=5
i=1
i=3
Web Services
xi,j
j
Web Services
xi,j
j
Web Services
xi,j
j
Web Services
xi,j
j
4
3
1
5
2
3
2
4
5
1
3
1
5
4
2
3
1
2
4
5
1.00
0.00
0.00
0.00
0.00
0.90
0.10
0.00
0.00
0.00
0.75
0.25
0.00
0.00
0.00
0.80
0.15
0.05
0.00
0.00
10,000
1,000
100
10
1
3
Task
items
Solver
Avg: ts [ms]
H1_RELAX_IP
Avg: th [ms]
3
6
9
12
15
18
21
4.2864
16.3458
194.9850
1,062.7156
5,976.9378
60,772.1917
264,177.5668
5.2734
8.4682
13.9468
20.3617
26.2847
35.5667
43.3683
Avg:
th
ts
136.08%
69.17%
22.63%
8.86%
3.43%
0.92%
0.19%
http://lpsolve.sourceforge.net/5.5/
&
Avg: F ( x h )
&
F ( xs )
99.96%
99.89%
99.72%
99.44%
99.38%
99.23%
98.83%
11
13
H1_RELAX_IP (avg)
15
17
19
21
Solver (avg)
4. Evaluation
100,000
11
13
15
17
19
21
Solver
H1_RELAX_IP Avg: th
Avg: ts [ms]
Avg: th [ms]
ts
Web
Service
10
20
30
40
50
60
70
617.4211
4,528.6759
5,122.3285
5,723.9903
12,302.9522
13,789.3714
25,840.1226
6.5910
12.6866
19.2043
26.3751
34.8580
43.2929
51.0882
&
Avg: F ( x )
h
&
F ( xs )
8.48%
2.04%
2.69%
2.71%
3.51%
1.84%
1.32%
98.31%
99.09%
99.19%
99.49%
99.43%
99.39%
99.27%
100,000
Computation time [ms]
10,000
1,000
100
10
1
20
25
30
35
40
45
50
55
60
65
100,000
H1_RELAX_IP (avg)
10,000
Computation time [ms]
Solver (avg)
1,000
100
10
1
10
20
30
40
50
60
70
Solver (avg)
Solver
H1_RELAX_IP Avg: th
Avg: ts [ms]
Avg: th [ms]
ts
Strength of
restrictions
20%
30%
40%
50%
60%
65%
68%
100,0%
99,8%
7,585.1553
7,674.9336
7,888.8139
9,632.8835
22,996.1480
43,145.0710
108,692.6069
28.4762
29.2273
29.9284
30.1708
30.5376
59.1515
2,128.9318
&
Avg: F ( x )
h
&
F ( xs )
1.84%
1.77%
1.74%
1.65%
0.76%
0.32%
1.05%
99.29%
99.29%
99.29%
99.16%
98.96%
98.92%
98.96%
99,6%
99,4%
99,2%
99,0%
98,8%
98,6%
98,4%
98,2%
10
20
30
40
50
60
100,0%
70
99,8%
99,6%
99,4%
99,2%
99,0%
98,8%
20
30
40
50
60
Approaching the border of insolubility, the computation time dramatically increases (Figure 9), but
nevertheless the generated solution of H1_RELAX_IP
keeps its excellence on a high level (Figure 10).
Increase of
computation
time
196.85%
197.47%
208.94%
235.69%
404.28%
500.84%
627.97%
H2
0.17%
0.10%
0.14%
0.12%
0.35%
0.24%
0.39%
H3
0.00%
0.00%
0.00%
0.06%
0.06%
0.15%
0.14%
5. Related Work
Zeng et al. [20] present comprehensive research about
QoS modeling and QoS-aware composition. They
propose a linear integer programming approach for
calculating the optimal composition. However, as already
mentioned above this approach is too time consuming in
real-time e-business scenarios.
In the context of the METEOR-S project a lot of
research related with QoS enabled Web Services has been
done: Aggarwal et al. [1] present a Constraint Driven
Web Service Composition Tool that enables the
composition of Web Services considering their QoS
attributes. Like Zeng et al. [20] a linear integer
7. Acknowledgements
The work on this paper is partly sponsored by the
E-Finance Lab (http://www.efinancelab.de). A special
thanks goes to Andreas U. Mauthe (InfoLab 21, Lancaster
University) for the constructive discussions.
8. References
[1] R. Aggarwal, K. Verma, J. Miller, and W. Milnor,
"Constraint Driven Web Service Composition in
METEOR-S", IEEE International Conference on Services
Computing (SCC 2004), Shanghai, China, 2004.
[2] R. Berbner, T. Grollius, N. Repp, O. Heckmann, E. Ortner,
and R. Steinmetz, "An approach for the Management of
Service-oriented Architecture (SoA) based Application
Systems", Enterprise Modelling and Information Systems
Architectures (EMISA 2005), Klagenfurt, Austria, 2005.
[3] R. Berbner, O. Heckmann, and R. Steinmetz, "An
Architecture for a QoS driven composition of Web Service
based Workflows", Networking and Electronic Commerce
Research Conference (NAEC 2005), Riva Del Garda, Italy,
2005.
[4] G. Canfora, M. D. Penta, R. Esposito, and M. L. Villani,
"An approach for QoS-aware service composition based on
genetic
algorithms",
Genetic
and
Evolutionary
Computation Conference (GECCO 2005), Washington DC,
USA, 2005.
[5] G. Canfora, M. D. Penta, R. Esposito, and M. L. Villani,
"QoS-Aware Replanning of Composite Web Services",
IEEE International Conference on Web Services (ICWS
2005), Orlando, FL, USA, 2005.
[6] J. Cardoso, "Quality of Service and Semantic Composition
of Workflows", Ph.D. Dissertation, Department of
Computer Science, University of Georgia, Athens, GA,
USA, 2002.
[7] J. Cardoso, A. Sheth, J. Miller, J. Arnold, and K. Kochut,
"Quality of service for workflows and web service
processes", Web Semantics: Science, Services and Agents