<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>A Framework for QoS-based Resource Brokering in Grid Computing</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Nadia Ranaldo</string-name>
          <email>ranaldo@unisannio.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Eugenio Zimeo</string-name>
          <email>zimeo@unisannio.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Engineering, Research Centre on Software Technology (RCOST) University of Sannio 82100 Benevento</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The effective and efficient exploitation of Grid computing facilities requires advanced resource management systems to automatically and transparently ensure the fulfillment not only of functional requirements but also of non-functional ones. This paper presents a framework for brokering of Grid resources, virtualized through Web Services, which can be dynamically configured with respect to multiple syntactic and semantic description languages and related matching strategies. Hence, it discovers and selects resources and automatically allocates application tasks to them on the basis of both functional and Quality of Service (QoS) requirements. In particular the paper presents the framework specialization, which aims to select a pool of resources whose overall performance allows for satisfying time and cost constraints for the execution of an application partitioned in concurrent tasks according to the data parallelism pattern.</p>
      </abstract>
      <kwd-group>
        <kwd>Resource management</kwd>
        <kwd>Brokering</kwd>
        <kwd>Grid Computing</kwd>
        <kwd>Web Services</kwd>
        <kwd>Quality of Service</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Thanks to the increasing amount of resources available across the Internet and to
improvements of wide-area network performance, in recent years grid computing is
emerging as a viable paradigm to satisfy the continuous growth of computation power
demand, which often can not be fulfilled exploiting the inner resources of a single
organization. This trend is also promoting new business models for providers that
would deliver Grid computing functionalities, eventually customized on demand, to
host applications and to meet customer needs [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        After a first generation of solutions based on dedicated technologies, the diffusion
of the Web has proposed new architectural (Service-Oriented Architecture – SOA)
and technological (Web Services) approaches to address heterogeneity, distribution,
security and interoperability in large-scale systems. So, grid applications can be
viewed as the composition (workflow) of independent services delivered by
distributed providers [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>In particular, a Grid workflow can be obtained composing domain dependent
services, which virtualize the access to specific and high-level utilities typically
delivered by providers that leverage high-performance dedicated clusters and software
libraries for complex computations. In this case, functional matching strategies have
to be adopted to discover and select the services that deliver the needed
domaindependent functionalities for the enactment of the overall application.</p>
      <p>More often, differently from other application domains tied to B2B environments,
Grid workflows orchestrate services that virtualize the access to resources delivering
low-level functionalities, such as data acquisition, computation and storage. Such
services are characterized by heterogeneous assets and performance (due to
heterogeneity and sharing of resources onto which they are deployed). As a
consequence, heterogeneity represents one of the key elements of Grid computing but
also one of the main problems for an efficient execution of Grid applications.</p>
      <p>
        For this reason, a lot of research in this area has been devoted to the definition of
infrastructure components able to hide heterogeneity from the computational point of
view: computing power transparency. In a connection model based on middle agents,
such as the model proposed by SOA, a fundamental role for achieving the desired
transparency is played by resource managers, matchmakers and brokers [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. In grid
context, these components have, typically, a slightly different behaviour with respect
to equivalent components in a pure Web Services environment: the selection of
services is performed mainly on the basis of QoS attributes that characterize the
heterogeneity of resources onto which they are deployed. In this scenario, brokers are
able to automatically discover available functionalities, choose and schedule the ones
that satisfy the specific user needs.
      </p>
      <p>
        Many compute and data-intensive functionalities in scientific and grid workflows
(such as linear algebra, image processing, database searching, etc.) are characterized
by coarse-grained parallelism that allows for increasing performance by exploiting a
pool of distributed resources using parallel computing patterns such as simple
parallelism, data parallelism and pipeline patterns [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. A full exploitation of multiple
resources to execute Grid workflows will be reached if the following main issues will
be taken into account: (1) the adoption of matching strategies able to find a pool of
resources satisfying global constraints on applications; (2) definition of formal
languages for QoS description of Grid services in order to avoid ambiguity during
matching; (3) mechanisms for dynamic and transparent composition and coordination
of services.
      </p>
      <p>
        In this paper, we answer to the first two issues by proposing a framework for QoS
brokering of resources virtualized through Web Services and its customization. The
framework is able to automatically allocate application tasks based on the data
parallelism pattern through a time and cost-based matching strategy, called time
minimization matching strategy. We proposed its basic algorithm, based on divisible
load theory, in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. We proved, moreover, through an experimental analysis, the
validity and accuracy of the system to search and select resources that ensure
execution times of real complex applications within prefixed constraints.
      </p>
      <p>
        The resource broker is based on a matchmaking framework designed in the context
of the LOCOSP project [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] to support multi-criteria matching strategies in B2B and
Grid based environments. Such framework is extensible and customizable with
respect to application scenario through dynamic configuration of syntactic-,
structural- and semantic-based discovery and matching strategies, features that make
it a suitable and easy-to-use environment to test new search and selection strategies.
      </p>
      <p>The rest of the paper is organized as follows. Section 2 presents related work and
technology. Section 3 describes the matchmaking framework. Section 4 briefly
describes the time minimization matching strategy. Section 5 illustrates the
matchmaker customization for the integration of the time minimization matching
strategy. Section 6 presents an experimental analysis of the matchmaking system.
Finally Section 7 concludes the paper and introduces future work.</p>
    </sec>
    <sec id="sec-2">
      <title>2 Related Work and Technology</title>
      <p>
        Many Grid systems adopt system-oriented or application-oriented matching heuristics
that try to optimise respectively resource utilization and time execution with respect
to available resources [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. G-QoSM [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], a framework for QoS-based service
management, focuses on discovery of grid computing services on the basis of QoS
criteria and on mechanisms to guarantee QoS levels by means of “contract-based
agreements” between service provider and service requester. However, G-QoSM is
based on a non standard extension of UDDI, which supports syntactic QoS
specifications included in non standardized WSDL-based descriptions of
computational services. In our work, instead, we aim to improve the matching process
adopting a standardizable and semantic-based description of QoS properties that
allow for well formalizing QoS knowledge and so for overcoming syntactic languages
limitations due to heterogeneity.
      </p>
      <p>
        On the other hand, while standard technologies for Web services (SOAP, WSDL
and UDDI) define precisely syntax and data structure-based descriptions, there are
currently no standards for semantic description and query. An interesting solution is
the one used in Semantic Web [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. While for the specification of functional
requirements some proposals for standardization of ontologies have been promoted,
such as OWL-S [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] and WSMO [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], only recently some results have been reached
for QoS requirements. In particular, preliminary efforts can be found in DAML-QoS
Ontology [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], QoSOnt ontology [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] and more recently in WSMO [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. However,
such approaches do not take into account QoS aspects that are specific for Grid
services and scientific workflows. In fact, beyond to classical QoS attributes defined
for a Web Service B2B environment, such as reliability, cost, time response, etc.,
other specific QoS requirements could be specified for Grid services, such as
execution time for computational tasks, real-time capability of data acquisition
services, minimum storage capability for storage services, etc.
      </p>
      <p>
        In the context of workflow management, interesting works have been proposed in
this field. For example a semantic-driven Web services discovery system for
workflows is presented in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], and a QoS-aware optimization matching approach for
workflows is described in [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. An interesting approach is, moreover, proposed in
[
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. It takes into account the static scheduling of workflows modelled as a pipeline of
parameter sweep tasks aiming to a fine-grained time optimization in a heterogeneous
environment. On the other hand, our approach differs from them because it better
focuses on the definition of a flexible brokering framework and matching strategies
for QoS-driven and optimized execution of scientific workflows characterized by data
parallel tasks that can concurrently exploit multiple computing resources.
      </p>
      <p>
        In the context of ontology definition of QoS attributes, some works have been
proposed [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. In this paper, we adopt and extend to the Grid environment the
onQoS ontology proposed in [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] for the description of QoS attributes of Web
Services. This ontology tries to overcome limitations and scarce homogeneity of
many semantic models currently available for QoS description and uses metrics to
understand, describe and control the QoS in the matching phase in a quantitative way.
      </p>
      <p>
        In the context of parallel programming pattern, linear programming approaches
and related heuristics have been led to interesting and low-complex results in divisible
load theory [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] that treats the overall task to execute as a continuous workload.
Recently such theory has been applied for the minimization of time execution starting
from performance description of computational and network resources of large-scale
platforms [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ]. On the other hand, in a future commercialisation of Grid systems, a
resource characterization based only on performance features is not sufficient to
properly guide the selection process.
      </p>
      <p>
        Economic factor in task allocation has been taken into account in [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ] for cost
minimization under time constraints in the divisible loads context. On the contrary,
we focus on time minimization under time and cost constraints and moreover deal
with realistic granularity levels of workload fraction assigned to each resource, still
keeping heuristic complexity non-dependent on the input size but only on the resource
amount.
      </p>
      <p>
        A QoS brokering system which deals with cost constraints is the Grid Service
Broker (GSB) [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], which supports access to both computational and data Grids. GSB
can transparently access resources that are exposed by various low–level, Grid
middleware solutions, such as Globus Toolkit 4 and Alchemi [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] and published on a
custom XML-based Grid Market Directory registry. It supports deadline and
budgetconstrained matching strategies for the scheduling of parameter sweet applications.
Heuristics adopted by GSB dynamically allocate a task at a time considering the
current state of resources until the budget is consumed. As a consequence they are not
useful for scheduling generic data parallel tasks because do not deal the execution of
all the required tasks within a specified deadline. On the contrary our approach aims
to grant task execution within specified deadline and budget. As a consequence, it can
be effectively adopted in a real environment in which reservation mechanisms (such
as in ICENI [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ] and GridARM [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]) grant the availability of a resource with
negotiated QoS.
      </p>
    </sec>
    <sec id="sec-3">
      <title>3 Service Matchmaker Framework</title>
      <p>
        The Service Matchmaker [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] is a key component of an ongoing project [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] that aims
at defining and implementing a flexible broker for service composition in SOA-based
environments. It supports customizable and multi-criteria discovery and matching
service strategies for different application domains. To ensure a high flexibility, the
framework is designed according to the component framework approach. Its basic
infrastructure is able to automatically manage and trigger well-defined activities for
discovery and matching of services, through the definition of the main abstractions,
components and behaviours necessary to execute them (figure 1).
      </p>
      <p>The basic functions are captured in the Matchmaker Core, which represents the
architectural skeleton of the framework, whilst the specialization is realized through
hot-spots that permit to customize framework behaviours for specific application
domains and requirements. The Matchmaker Core, at start-up, uses configuration files
to load specified components that specialize the framework behaviour.</p>
      <p>Because of the lack of a unique standard language to describe different aspects of a
service, the matchmaking framework supports multi-criteria discovery and matching
strategies that can be adopted on different service descriptions (including functional
and non functional aspects), each of which describing a specific aspect of a service
and eventually adopting a different language.</p>
      <p>The matching process starts with a request containing the description of the desired
query service (called template) submitted by the user through the Matchmaking API.
As first step, the Discovery Engine uses the search functionality offered by the
Registry to retrieve information on advertised services. The search space of candidate
services (called targets), initially reduced by the Discovery Engine, is further filtered
by the Matchmaker Manager that is based on a Pipe &amp; Filter architecture.</p>
      <p>The Matchmaker Manager, in particular, adopts two customizable Search Pipes of
Matching Filters, one for functional aspects and another one for non-functional
aspects. The Search Pipes are able to reduce more and more the service subspace,
returning finally a matching result between the template and the targets. The Search
Pipes are customized specifying the Matching Filters and their order. Each Matching
Filter can be characterized by a distinct matching strategy.</p>
      <p>Requester</p>
      <p>g
matchmaking i</p>
      <p>n
query ka I Matchmaker</p>
      <p>chm AP Core
matchmaking t
result aM Matchmaker Manager
service
invocations</p>
      <p>Search Pipes
Matching Filter
Matching Filter</p>
      <p>...</p>
      <p>Service Providers</p>
      <p>Discovery discovery query
Engine</p>
      <p>discovery results
Discovered</p>
      <p>Targets</p>
      <p>Registry</p>
      <p>A Matching Filter analyzes a specific description of the targets of the received
target subspace performing a matching strategy and is characterized by a Matching
Engine and by a Matching Function. The Matching Engine receives the subspace of
target descriptions and takes care to return the targets that satisfy a matching strategy.
Typically, but not necessary, it associates the satisfaction degree of each target with
respect to specified requirements for that description invoking the Matching Function,
that returns a matching score for a specific strategy. The matching of semantic
description requires a component with automatic reasoning capabilities. To this end, a
Semantic Matching Function is configured with respect to an inference engine,
through a Reasoner, a configurable component whose specialization permits to define
the reasoning engine more suitable to specific aims.</p>
    </sec>
    <sec id="sec-4">
      <title>4 Time Minimization Matching Strategy</title>
      <p>
        The time minimization matching strategy addresses tasks of a Grid application that
can be parallelized through the data parallelism pattern, also known as the
masterslave pattern. Similarly to the application model of divisible load theory [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ], a pool
of slaves performs the overall workload, that is decomposed by the master into a high
number (but finite) of sub-tasks, called atomic tasks, the smallest parts of the original
workload that can be independently mapped and executed onto different resources
without casual precedence relationships.
      </p>
      <p>The application is characterized by the computation size, which corresponds to the
total number N of atomic tasks, each of which is characterized by the same
complexity in terms of computation, data storage and data transfer aspects.</p>
      <p>
        A Grid system is modelled as a finite set R = {R1, R2 , .., RM } of available
resources communicating through a fully connected wide area network. Each resource
is exposed as a Grid service and is characterized by performance parameters, cost and
capacity, which depend on the application to execute. Time execution and cost are
assumed to be proportional to the amount of atomic tasks assigned to the resource in a
linear way. Following the Grid model proposed in [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ], the bandwidth on WAN links
is not shared and each resource reaches the WAN through a LAN link. In the case of
resource reservation mechanisms, only one communication flow goes through the
link, that so receives a fixed bandwidth that can be predicted in advance.
      </p>
      <p>Under these assumptions, for each resource Ri ∈ R the performance is modeled
as the total time ti required for processing an atomic task. The resource cost, called ci,
is the cost of resource usage for the processing of an atomic task. Finally the capacity,
gi, represents the maximum number of atomic tasks that can be assigned to resource
Ri. The QoS parameters specified by the user to model a Grid service request are: (1)
the maximum execution time, which represents the deadline, called D, (2) the total
available budget, called B, and (3) the capacity of requested data parallel task, N, that
is the total number of atomic tasks which have to be executed.</p>
      <p>The time minimization matching strategy regards the problem of finding the “best”
set of resources among which to distribute the workload N, so that the aggregate cost
for resource usage is lower than budget B (but not necessarily the minimum) and that
are able to complete the application execution as quickly as possible (time
minimization) and within deadline D.</p>
      <p>More formally the matching strategy goal is:</p>
      <p>Minimize:
subject to:
max(tini ) ,
i =1..M
(1)
where ni ∈ N0 is the number of atomic tasks assigned to resource Ri and
represents the used portion of capacity gi of resource Ri, (2) ensures that the deadline
is not exceeded, (3) is the constraint to require execution of all N atomic tasks, (4)
ensures that the budget is not exceeded and finally (5) that the capacity constraint on
each resource is not exceeded.</p>
      <p>
        To minimize the execution time, considering the optimality principle of the
divisible load theory [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ], the time minimization strategy can be solved through a
heuristic that starts assigning a fractional and non uniform number of atomic tasks to
the available resources such that they will finish at the same time:
tini = t jn j
      </p>
      <p>i, j = 1..M .</p>
      <p>Indicated with t the execution time of an atomic task for the resource with the
highest performance, and with n the number of atomic tasks assigned to it, the
evaluation of n through (6) permits to evaluate all the ni as:
tini ≤ D</p>
      <p>i = 1..M ,</p>
      <p>M n = N ,
∑i=1 i</p>
      <p>M
∑i=1cini ≤ B ,
ni ≤ gi i = 1..M ,
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
ni =
t
ti
n
i :1..M ,
that, applied to (3) and (4), leads to:</p>
      <p>M t
∑iM=1 ni = ∑i=1 t</p>
      <p>i</p>
      <p>M M t
∑i=1 nici = ∑i=1 t
i
n = N ,
nci ≤ B .</p>
      <p>
        Generally constraints (2), (5), (8) and (9) are not satisfied simultaneously. A
possible approach to find a near-optimal solution is the adoption of the iterative and
low-complexity algorithm described in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] that allows for finding integer values of ni.
In particular, in the case of budget exceeding, the idea is to decrease the number of
atomic tasks assigned to the most expensive resource, and to distribute them among
the remaining resources in a proportional manner to their performance. When such
redistribution of atomic tasks is not enough to not exceed budget, the most expensive
resource is removed from the list of available resources and the procedure is iterated.
The proposed QoS-based resource broker for Grid computing was implemented as a
specialization of the Service Matchmaker framework which integrates the time
minimization matching strategy.
      </p>
      <p>This grid-oriented specialization is obtained through an XML-based file that
specifies description languages and related functional and non functional discovery
and matching strategies and through the implementation of the Discovery Engine,
Machine Engines, Matching Functions and Reasoners for semantic matching
strategies of low-level Grid services which virtualise computational resources.</p>
      <p>The family of adopted description languages consists of:
1) WSDL (version 1.1), for abstract syntactic description on service interface and
concrete syntactic description on binding and endpoint;
2) OWL-S (version 1.1) for abstract descriptions of functional and data semantics.
3) An extension of the onQoS ontology for QoS description, called GonQoS,
supporting the descriptions of the parameters necessary to execute the time
minimization matching strategy.</p>
      <p>
        The Discovery Engine specialization interacts with the UDDI registry through the
UDDI proxy UDDI4J, [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ], an open-source Java implementation of specification for
business registry and UDDI API. It performs a minimum functional search exploiting
UDDI meta-data on descriptions (for example taxonomy, categoryBag, tmodel,
businessServices, etc.). In particular, we use a functional aspect-based query which
permits a category-based discovery of Grid services through the NAICS taxonomy
supported by UDDI.
      </p>
      <p>The Search Pipe for functional aspects uses three Matching Filters:
− Semantic matching on service operations based on OWL-S;
− Semantic matching on service input/output and fault based on OWL-S;
− Structural-syntactic matching on WSDL description of service operations.
The Search Pipe for non functional aspects uses two Matching Filters:
− Basic QoS-based Matching Filter (BQMF), for semantic matching on QoS metrics
based on GonQoS ontology.
− Aggregate QoS-based Matching Filter (AQMF), performing a QoS-based
matching strategy that returns the set of services which satisfy QoS requirements
in an aggregate manner.</p>
      <p>
        Functional Matching Filters based on ontology descriptions and BQMF are based
on the matching approach proposed by Paolucci et al. [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ]. The Matching Engine
used by such filters is called One-to-One Matching Engine. It invokes repetitively the
associated Matching Function for each target of the target subspace, assigns to each of
them a matching result calculated by the Matching Function, and filters the targets
which do not satisfy query criteria.
      </p>
      <p>
        The structural-syntactic Matching Function is based on the strategy proposed by
Wang e Stroulia [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ].
      </p>
      <p>
        The matching filter AQMF exploits the One-to-Many Matching Engine, which
processes all the target subspace returned from the previous filter BQMS to satisfy
QoS semantic parameters of a query expressed using GonQoS. The result returned by
the filter AQMF is based on the time minimization matching strategy, which
calculates the portion of the overall number of atomic tasks specified in the query to
assign to each target. The GonQoS ontology is accessed through a Reasoner which
exploits the Jena (version 2.4) framework [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ] specialized in order to use the
inference engine Pellet (version 1.3) [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ].
5.1 GonQoS for Grid Services
      </p>
      <p>
        The GonQoS ontology for description of QoS parameters of Grid services is based
on onQoS [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], an ontology developed using OWL for QoS description, advertising
and query of Web services, designed in order to ensure simplicity while maintaining
flexibility and extendibility features. It is tied to the OWL-S ontology, which permits
to connect a QoS description to the corresponding functional one.
      </p>
      <p>Following the classical approach for ontology definition, GonQoS is organized into
three extensible complementary levels. The upper ontology defines the ontological
language, which is the basic concepts to model Web service QoS, such as the main
properties and restrictions of QoS metrics.</p>
      <p>In this ontology, a QoS description of a Web Service is represented by a set of QoS
metrics. For the QoS description of a service it is necessary to define a new entity of
QoSMetric concept for each QoS parameter, that means to define: the measured
parameter, the measurement scale, the measurement process, one or more measured
values belonging to the measurement scale.</p>
      <p>The middle ontology is a specialization of the first one and is domain independent.
Examples are the specialization of QoS parameters for Avaialability, Performance,
Reliabiliy, Cost and Capacity categories. Perfomance is further specialized in
Throughput, ResponseTime, Latency, etc.</p>
      <p>The low ontology can contain domain-dependent specializations of the ontology in
a specific domain. At this level some grid-specific concepts for QoS definition are
introduced. Figure 2 details the set of QoS Parameters to characterize the query, the
advertised services and the returned result of the time minimization matching
strategy.
− grid-UnitExecutionTime: for query: maximum interval time within which a task
has to be executed; for advertising: interval time required to execute an atomic
−
−
−
task. It is expressed in seconds as float values.
grid-UnitCost: for query: maximum budget which can be spent to execute a task;
for advertising: cost for the execution of an atomic task. It is expressed in euros as
float values.
grid-Capacity: for query: overall number of atomic tasks to execute; for
advertising: maximum number of atomic tasks which can be executed for a single
request. It is an integer value.
grid-UnitCommunicationTime: for query: interval time within which to transfer
input data and output results of overall atomic tasks; for advertising: interval time
required to transfer input data for an atomic task and its output results. It is
expressed in seconds as float values. This parameter will be better defined in a
future work in the context of a time minimization matching strategy which will
take into account data transfer overheads for large scale distributed systems.</p>
      <p>These QoS parameters are classified as Simple Ratio Metric, a specialization of
generic QoS metric that permits to define queries adopting relation operators (such as
better or equal, tightly less of a certain value, etc.).
6</p>
    </sec>
    <sec id="sec-5">
      <title>Matching Strategy Evaluation</title>
      <p>The proposed framework for grid resource brokering was tested in order to evaluate
its validity and accuracy for the discovery and selection of resources that satisfy
deadline and budget constraints through the time minimization matching strategy.</p>
      <p>An UDDI registry was used for the advertisement of a set of Grid computing
services. For each of them the providers specified WSDL descriptions, an UDDI
categoryBag meta-data for functional aspects and QoS metrics through the GonQoS
ontology language. The query is formulated through the UDDI categoryBag for the
functional discovery of computation services and a QoS description of the required
deadline, budget and number of atomic tasks to execute. Semantic functional aspects
are not exploited in this experimentation, since we consider services virtualizing only
computing functionalities. The QoS description is adopted to perform the BQMF in
order to throw out the targets which does not satisfy the following conditions:
ci ≤ B , ti ≤ D , gi ≤ N .</p>
      <p>The AQMF performs the time minimization matching strategy assigning to the
filtered targets a part of the query capacity N.</p>
      <p>A computation service is implemented as a Web Service that takes a certain interval
time to execute an atomic task on the basis of performance capability of the resource
on which it is deployed. The overall service query is satisfied invoking in a concurrent
way the selected services and waiting for their completion.</p>
      <p>
        In this experimentation, we consider ten Grid services deployed in Axis 2.0
container based on Tomcat onto ten distributed resources equipped with a Pentium IV
2.4 GHz and 512 MB of RAM. Resources are inter-connected through a Fast Ethernet
LAN that does not cause significant effects on adopted Grid model since data
transfers of atomic tasks are kept slight with respect to computation tasks. In this
experimentation, resource heterogeneity in terms of cost and performance are
emulated taking into account experimentation results previously conducted on a
compute-intensive application for power system security analysis [
        <xref ref-type="bibr" rid="ref34">34</xref>
        ]. In particular
table 1 summarizes the QoS parameters associated to each service. The cost
parameters were chosen to be nearly inversely proportional to resource performance.
In table 1 the service instances with the same QoS parameters are grouped in the same
service template and the number of services for each template is also reported.
      </p>
      <p>Figure 3 shows the number of atomic tasks assigned to the services considering a
user request of 900.0 s for deadline, 1200.00 € for budget and a varying capacity,
from 40 to 140 atomic tasks, in order to simulate different application computation
sizes. Because of similar capabilities of services with template S3, S4 and S5, such
strategy assigns roughly the same number of tasks to each of them. In this scenario
the budget value of 1200.00 € is not sufficient to completely exploit expensive
services. For this reason, in order to assign all the atomic tasks, the time minimization
strategy decreases the number of atomic tasks assigned to the most expensive service,
that in this case is the one with template S2, and assigns them to the less expensive
ones, until the deadline is not exceeded for each of them. Finally, we note that
because the service with template S1 has better performance with respect to services
with template S3, S4 and S5, it receives a larger amount of atomic tasks, which
increases with the query capacity.</p>
      <p>Figure 4 shows the estimated execution times for the overall computation
considering a query capacity of 180 atomic tasks, deadline of 900.00 s and a varying
budget starting from 1200.00 €, which is the minimum value to satisfy deadline, to
950
900
) 850
s
(e800
m
it
ino750
t
u
xce700
E
650
600
)
(se500
m
it
ion400
t
u
c
xeE300
200
100
750</p>
      <p>Estimated Time
600 Measured Time
1200 1600 2000 2400 2800 3200 3600 4000 4400 4800</p>
      <p>Budget value (€)</p>
      <p>Finally, figure 5 shows the execution times that we actually measured running the
application on the test-bed varying the query capacity. It shows the measured
execution times and the estimated execution times by using the time minimization
matching strategy. As it is possible to observe, the measured execution times have a
nearly linear trend with respect to the atomic tasks to execute, condition that proves
the efficiency of the overall system. Such time are, moreover, very near to the
execution times estimated by the algorithm.
4800.00 €. The estimated execution time is evaluated as the maximum value among
the execution times of each service. We can note that by increasing the budget, the
algorithm ensures a decreasing execution time thanks to the possibility to allocate
more tasks to the expensive and higher performance services.</p>
      <p>40</p>
      <p>Finally these experimental results proved that the proposed QoS-based brokering
framework represents a useful and flexible system for automatically acquiring
computational resources when they are necessary, since its accuracy is high and the
overhead that users pay for using such system for performing complex tasks is
negligible if compared to the improvement of performance and usability.</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusion</title>
      <p>The paper presented the design and evaluation of a framework for QoS brokering
of Grid resources virtualized by Web Services. It is based on the Service Matchmaker,
a framework that delivers customizable syntactic and semantic discovery and
matching strategies. In this work, we presented its customization for supporting the
selection resources among which to distribute the workload of a data parallel task to
minimize execution time and to satisfy deadline and budget constraints.</p>
      <p>The integration of service invocation mechanisms through workflow technologies,
in order to make automatic and transparent to the user the distribution and deployment
of applications on multiple resources, will be taken into account in a future work.</p>
      <p>
        In particular, we are currently focusing on a dynamic composition and binding
technique of services able to transparently and hierarchically distribute applications
based on the data parallelism pattern, following the approach proposed by the authors
in [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ] for the specification of partition policy of input data and of assembling policy
of results.
      </p>
      <p>Acknowledgments. The work described in this paper is framed within the activities
of the Core Grid FP6 Network of Excellence funded by the European Commission.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Foster</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kesselman</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nick</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tuecke</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>The Physiology of the Grid: An Open Grid Services Architecture for Distributed Systems Integration</article-title>
          .
          <source>Technical Report</source>
          , Open Grid Service Infrastructure WG, Global Grid Forum (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Pautasso</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Alonso</surname>
          </string-name>
          , G.:
          <article-title>Parallel Computing Patterns for Grid Workflows</article-title>
          .
          <source>In: the HPDC2006 Workshop on Workflows in Support of Large-Scale Science</source>
          . France (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Krauter</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Buyya</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maheswaran</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A Taxonomy and Survey of Grid Resource Management Systems for Distributed Computing</article-title>
          .
          <source>International Journal of Software, Practice and Experience</source>
          , vol.
          <volume>32</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>135</fpage>
          --
          <lpage>164</lpage>
          . Wiley Press, USA (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Ranaldo</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zimeo</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          :
          <article-title>An Economy-driven Mapping Heuristic for Hierarchical MasterSlave Applications in Grid Systems</article-title>
          . In: IEEE IPDPS 06,
          <string-name>
            <surname>Greece</surname>
          </string-name>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>5. LOCOSP project, http://plone.rcost.unisannio.it/locosp</mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Job Scheduling and Processor Allocation for Grid Computing on Metacomputers</article-title>
          .
          <source>Journal of Parallel and Distributed Computing</source>
          , vol.
          <volume>65</volume>
          (
          <issue>11</issue>
          ), pp.
          <fpage>1406</fpage>
          --
          <lpage>1418</lpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Braun</surname>
          </string-name>
          , T., at All:
          <article-title>A Comparison of Eleven Static Heuristics for Mapping a Class of Independent Tasks onto Heterogeneous Distributed Computing Systems</article-title>
          .
          <source>Journal of Parallel and Distributed Computing</source>
          , vol.
          <volume>61</volume>
          (
          <issue>6</issue>
          ), pp.
          <fpage>810</fpage>
          --
          <lpage>837</lpage>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          , van Santen,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Walker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.W.</given-names>
            ,
            <surname>Rana</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.F.</given-names>
            ,
            <surname>Baker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.A.</given-names>
            :
            <surname>PortalLab: A Web Services</surname>
          </string-name>
          <article-title>Oriented Toolkit for Semantic Grid Portals</article-title>
          . In: IEEE CCGrid, pp.
          <fpage>190</fpage>
          --
          <lpage>197</lpage>
          .
          <string-name>
            <surname>Japan</surname>
          </string-name>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Tangmunarunkit</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Decker</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kesselman</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Ontology-based Resource Matching in the Grid - The Grid Meets the Semantic Web</article-title>
          . In: the
          <string-name>
            <surname>Second</surname>
            <given-names>ISWC</given-names>
          </string-name>
          , Miami, Florida (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>OWL-S</surname>
          </string-name>
          ,
          <article-title>An OWL-based Web service ontology</article-title>
          , http://www.daml.org/services/owl-s/1.0/
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>11. WSMO, http://www.wsmo.org/</mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Zhou</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chia</surname>
          </string-name>
          , L.-T.,
          <string-name>
            <surname>Lee</surname>
            ,
            <given-names>B.-S.:</given-names>
          </string-name>
          <article-title>DAML-QoS Ontology for Web Services</article-title>
          .
          <source>In: the International Conference on Web Services</source>
          <year>2004</year>
          , pp.
          <fpage>472</fpage>
          --
          <lpage>479</lpage>
          . IEEE Press San Diego, California, USA (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Dobson</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lock</surname>
          </string-name>
          , R.:
          <article-title>QoSOnt: an Ontology for QoS in Service-Centric Systems</article-title>
          .
          <source>UK eScience AHM</source>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Toma</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Foxvoug</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jaeger</surname>
            ,
            <given-names>M. C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roman</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Strang</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fensel</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Modeling QoS Characteristics in WSMO</article-title>
          .
          <source>In: the Middleware for Service Oriented Computing Workshop (MW4SOC</source>
          <year>2006</year>
          ), Melbourne, Australia (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Cardoso</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sheth</surname>
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Semantic e-Workflow Composition</article-title>
          .
          <source>Journal of Intelligent Information Systems</source>
          , vol.
          <volume>21</volume>
          (
          <issue>3</issue>
          ), pp.
          <fpage>191</fpage>
          -
          <lpage>225</lpage>
          . Springer (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Zhang</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chang</surname>
            ,
            <given-names>R.N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perng</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>So</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tang</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tao</surname>
          </string-name>
          , T.:
          <article-title>QoS-Aware Optimization of Composite-Service Fulfillment Policy</article-title>
          . In: IEEE SCC. pp.
          <fpage>11</fpage>
          --
          <lpage>19</lpage>
          . IEEE Press (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Ma</surname>
          </string-name>
          , T.,
          <string-name>
            <surname>Buyya</surname>
          </string-name>
          , R.:
          <article-title>Critical-Path and Priority based Algorithms for Scheduling Workflows with Parameter Sweep Tasks on Global Grids</article-title>
          .
          <source>In: IEEE SBAC-PAD</source>
          , (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Truong</surname>
            ,
            <given-names>H. L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fahringer</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nerieri</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dustdar</surname>
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Performance Metrics and Ontology for Describing Performance Data of Grid Workflows</article-title>
          . In: IEEE International Workshop on Grid Performability colocated at the IEEE CCGrid. Cardiff, UK (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>19. The Semantic Grid Community Portal, http://www.semanticgrid.org/</mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Giallonardo</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zimeo</surname>
          </string-name>
          , E.:
          <article-title>More Semantics in QoS Matching</article-title>
          .
          <source>In: the International Conference on Service Oriented Computing and Applications</source>
          ,
          <string-name>
            <surname>SOCA</surname>
          </string-name>
          <year>2007</year>
          . USA (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Bharadwaj</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ghose</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Robertazzi</surname>
          </string-name>
          , T. G.:
          <article-title>Divisible Load Theory: A New Paradigm for Load Scheduling in Distributed Systems</article-title>
          .
          <source>Cluster Computing</source>
          , vol.
          <volume>6</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>7</fpage>
          --
          <lpage>17</lpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Marchal</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yang</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Casanova</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Robert</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          :
          <article-title>A Realistic Network/Application Model for Scheduling Divisible Loads on Large-Scale Platforms</article-title>
          .
          <source>In: the International Parallel and Distributed Processing Symposium</source>
          . IEEE Press (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Charcranoon</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Robertazzi</surname>
            ,
            <given-names>T.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Luryi</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Load Sequencing for a Parallel Processing Utility</article-title>
          .
          <source>Journal of Parallel and Distributed Computing</source>
          , pp.
          <fpage>29</fpage>
          --
          <lpage>37</lpage>
          . Elsevier (
          <year>2004</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Venugopal</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Buyya</surname>
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Winton</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>A Grid Service Broker for Scheduling Distributed Data-Oriented Applications on Global Grids</article-title>
          .
          <source>Technical Report</source>
          , Grid Computing and Distributed Systems Laboratory, University of Melbourne, Australia, (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Luther</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Buyya</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ranjan</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Venugopal</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Alchemi: A .NET-Based Enterprise Grid Computing System</article-title>
          .
          <source>In: 6th Intern. Conference on Internet Computing. Las Vegas</source>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>McGouch</surname>
            ,
            <given-names>A. S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Afzal</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Darlington</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Furmento</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mayer</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Young</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Making the Grid Predictable through Reservation and Performance Modelling</article-title>
          .
          <source>The Computer Journal</source>
          , vol.
          <volume>48</volume>
          (
          <issue>3</issue>
          ), pp.
          <fpage>358</fpage>
          --
          <lpage>368</lpage>
          . Oxford University Press (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Siddiqui</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fahringer</surname>
          </string-name>
          , T.:
          <article-title>GridARM: Askalon's Grid Resource Management System</article-title>
          .
          <source>In: Advances in Grid Computing - EGC 2005. Lecture Notes in Computer Science</source>
          , vol.
          <volume>3470</volume>
          , pp.
          <fpage>122</fpage>
          --
          <lpage>131</lpage>
          . Springer-Verlag, Berlin Heidelberg (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Tretola</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zimeo</surname>
          </string-name>
          , E.:
          <article-title>Structure Matching for Enhancing UDDI Query Results</article-title>
          .
          <source>In: International Conference on Service Oriented Computing and Applications</source>
          , USA (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>29. UDDI4J, http://www.uddi4j.org</mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <surname>Paolucci</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kawmura</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Payne</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sycara</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Importing the Semantic Web in UDDI</article-title>
          . In: Web Services, E-Business and Semantic Web Workshop,
          <string-name>
            <surname>CAiSE</surname>
          </string-name>
          <year>2002</year>
          . Toronto (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>Wang</surname>
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Stroulia</surname>
          </string-name>
          , E.:
          <article-title>Flexible Interface Matching for Web-Service Discovery</article-title>
          . In: IEEE WISE, IEEE Press, USA (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>32. Jena 2.4, http://jena.sourceforge.net/</mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          33. Pellet Reasoner,
          <volume>1</volume>
          .3,
          <string-name>
            <surname>April</surname>
            <given-names>17</given-names>
          </string-name>
          ,
          <year>2006</year>
          , http://www.mindswap.org/2003/pellet/
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          34.
          <string-name>
            <surname>Morante</surname>
            ,
            <given-names>Q.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ranaldo</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vaccaro</surname>
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zimeo</surname>
          </string-name>
          , E.:
          <article-title>Pervasive Grid for Intensive Power System Contingency Analysis</article-title>
          .
          <source>IEEE Trans. on Industrial Informatics</source>
          , vol.
          <volume>2</volume>
          (
          <issue>3</issue>
          ), pp.
          <fpage>165</fpage>
          --
          <lpage>175</lpage>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          35.
          <string-name>
            <surname>Ranaldo</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zimeo</surname>
          </string-name>
          , E.:
          <article-title>A Transparent Framework for Hierarchical Master-Slave Grid Computing</article-title>
          . In: EuroPar06 - CoreGrid Workshop on Grid Middleware, Dresden Germany, Springer (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>