67 CHAPTER 5 ONTOLOGY BASED WS-POLICY MATCHMAKING SYSTEM 5.1 GENERAL In this chapter, we discuss the complexity arising from diversified nature of Grid infrastructure as every participating resource has its own usage and access policies. For example, a typical Grid resource may not want to contribute 100% of its resources such as CPU power, to Grid and also it may want to involve in Grid operation only 7 hours in a day. Such constraints of a resource shall be called its usage policy. Similarly, a resource may allow the user X to use only 50% of the storage, and does not allow user Y to use the resource. These statements refer to the access control policy of a resource. The existing resource monitoring and discovery mechanism in Grid performs capability matching of available Grid resources against the user’s requirements for job execution. It does not enforce the resource usage policies before submitting job to it. The existing web service policy language such as WS-Policy specifications (Bajaj 2006) are not suitable for Grid environment as they lack appropriate syntax for expressing Grid resource usage policies. Also, there is no standard language developed for this purpose. Hence, building a policy matching system to verify Grid resource usage policy becomes difficult. Hence, a large community of resource providers are reluctant to participate in Grid.
22
Embed
CHAPTER 5 ONTOLOGY BASED WS-POLICY MATCHMAKING …shodhganga.inflibnet.ac.in/bitstream/10603/11699/10... · the policy constructs. The matchmaking system determines the semantic similarity
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
67
CHAPTER 5
ONTOLOGY BASED WS-POLICY MATCHMAKING
SYSTEM
5.1 GENERAL
In this chapter, we discuss the complexity arising from diversified
nature of Grid infrastructure as every participating resource has its own usage
and access policies. For example, a typical Grid resource may not want to
contribute 100% of its resources such as CPU power, to Grid and also it may
want to involve in Grid operation only 7 hours in a day. Such constraints of a
resource shall be called its usage policy. Similarly, a resource may allow the
user X to use only 50% of the storage, and does not allow user Y to use the
resource. These statements refer to the access control policy of a resource.
The existing resource monitoring and discovery mechanism in Grid performs
capability matching of available Grid resources against the user’s
requirements for job execution. It does not enforce the resource usage policies
before submitting job to it. The existing web service policy language such as
WS-Policy specifications (Bajaj 2006) are not suitable for Grid environment
as they lack appropriate syntax for expressing Grid resource usage policies.
Also, there is no standard language developed for this purpose. Hence,
building a policy matching system to verify Grid resource usage policy
becomes difficult. Hence, a large community of resource providers are
reluctant to participate in Grid.
68
In this chapter, we address this issue by including necessary
attributes in WS-Policy specification to represent resource usage policies and
built a Policy Matching System (PMS) that verifies whether the resource
usage policy is met by the user, before submitting the user’s job to it.
We also exploit the concept of ontology to enhance the policy
matching mechanism. Drawing inspiration from Grid Scheduling Ontology
developed by CoreGRID team (Wieder el a. 2008), a Grid Policy Ontology is
proposed to semantically represent the policy constructs and their relationship
between them. This representation is used to compare the usage policies
against the user demands on the basis of their semantics. As a prototype
implementation, We have modified the Apache implementation of WS-Policy
to compare the Grid resource usage policy represented in extended WS-Policy
on the basis of semantics using the policy ontology. We then integrated the
policy matching system with Gridway metascheduler to implement it in real
Grid environment. In short, the important issues addressed by proposed policy
matching mechamism as follows:
Expression of Resource Usage Policy
Developing a Policy Matching Mechanism
Implementing in Grid Environment
5.2 EXPRESSION OF RESOURCE USAGE POLICY
Currently, there is no standard specification developed for
expressing resource usage policies in Grid environment. This is because, the
resources are owned by autonomous institutions who have their own
constraints and accordingly policies will be differing with each other
resources. However, policies are generally formulated using attributes
referring to various QoS factors such as bandwidth, resource configuration
information such as hard disk capacity, RAM availability, number of nodes
69
etc. Hence, by introducing proper syntax and elements in the web service
policy language such as WS-Policy, it is possible to express resource usage
policy for a Grid resource. For example, let us consider the following usage
constraint of the Grid resource A.
P1:Provide 80% of storage disk to Grid Jobs
P2:Provide 40GB of RAM to Grid experiment
P3: Available bandwidth for Grid Network is 100MBPS
P4: Provide 47 CPUs to Grid from 9AM to 9PM
To express the above usage constraints, the attributes of hard disk
capacity, RAM capacity, bandwidth and the number of nodes are required. In
this chapter, we introduce appropriate XML elements referring the attributes
to the WS-Policy language constructs, to express the usage policy of the
resource A.
5.3 POLICY MATCHING MECHANISM
The second issue of developing policy matching mechanism shall
be addressed by suitable matchmaking algorithm that verifies the usage policy
against the user demands before submitting job to it. The policy matching
algorithm consists of suitable APIs to understand the XML elements that refer
to the attributes and compares with that of user’s needs. In the proposed
matching mechanism, the policy verification is done based on semantics of
the policy constructs. The matchmaking system determines the semantic
similarity of the requested requirements against the resource usage policies
and discovers suitable resources for job submission. To determine the
semantic similarity, a Grid policy ontology is used. Ontologies are used to
capture knowledge about some domain of interest. Ontology describes the
concepts in the domain and also the relationships that hold between those
concepts.
70
The Grid policy ontology is developed using the attributes needed
to express the Grid resource usage policy. They are described hierarchically
and their relationship between those attributes is established. This ontological
representation supports semantic interpretation of attributes in question using
suitable ontology inference engine. The policy matching engine parses the
resource usage policy and extracts the attributes to be verified. They are then
compared against the user’s demand based on their semantics by referring to
Grid policy ontology. This semantic comparison of usage policy would
provide better matching rather than that of keyword verification of policies. It
determines the resources whose usage policy does not exactly matching with
the user’s demands but are closer to what has been requested. This allows
better utilization of the resources and allows both the user and resource
provider to negotiate about the execution of job in the resource.
5.4 IMPLEMENTING IN GRID
The third issue we address is the integration of proposed policy
matching mechanism in a practical Grid environment. Generally, a Grid
comprises Grid resources built using a Grid middleware such as Globus,
gLite. User jobs will be scheduled across these resources through a Grid
scheduler such as Gridway, Gridbus broker. The Grid schedulers are able to
aggregate the Grid resource information such as their configuration
information (hard disk, CPU availability, available RAM, etc) by contacting
the Grid information system of respective Grid resources.
These details are used by the scheduler to determine suitable
resources for a specific user’s job. It matches the capability needed to execute
the user’s job against that of the available resources and select suitable
resources for job submission. However, the currently existing schedulers only
determine capable resources for the job and do not verify the local resource
usage policies before submitting the job to it. In this work, the policy
71
matching system is integrated with Gridway scheduler so that it obtains the
capable resources from the scheduler and selects the resources whose resource
usage policies are exact and closely match with that of the user’s
requirements. These lists of shortlisted resources are then provided to the
scheduler for job submission. With this approach, the resource usage policies
would be very well be enforced at the meta scheduling level as shown in
Figure 5.1.
Figure 5.1 Policy Matching System in Grid
5.5 EXPRESSION OF RESOURCE USAGE POLICY
Currently, policies are expressed using various policy languages
such as XACML, WSPL, and also sometimes an XML document. No
standard has been followed to express policy information in Grid environment
to represent the resource usage policies. We suggest using WS-POLICY
72
specification to express policy information thereby making it possible to
address interoperability issues across various Grids and Grid resources. WS-
Policy provides a flexible and extensible grammar for expressing the
capabilities, requirements, and general characteristics of entities in an XML
Web services-based system. WS-Policy defines a framework and a model for
the expression of these properties and more sophisticated conditional
assertions. WS-Policy defines a policy to be a collection of one or more
policy assertions. Some assertions specify traditional requirements and
capabilities that will ultimately manifest on the wire (for example,
authentication scheme, transport protocol selection). Some assertions specify
requirements and capabilities that have no wire manifestation yet are critical
to proper service selection and usage (for example, privacy policy, QoS
characteristics). WS-Policy provides a single policy grammar to allow both
kinds of assertions to be reasoned about in a consistent manner. Considering
the widespread use of WS-Policy in web based business environment, we
believe that the use of WS-Policy in Grid would encourage the participation
of many resource providers in Grid.
Although WS-Policy language possesses needed constructs and
elements to express policies for web services, it lacks appropriate XML
elements to express usage policies for Grid resources. This is because, in Grid
environment, computational resources, and storage resources are available as
services. Also, applications hosted in a resource are available as services.
Hence, in order to express the capabilities and usage of those Grid services, it
needs some enhancement to the existing policy language constructs.
As mentioned in the earlier section, usage policy is generally
formulated using attributes such as bandwidth, CPU information. If we have
necessary XML elements to refer to those attributes in WS-Policy language
framework, it is possible to express Grid resource usage policy. With this
73
motivation, we developed an XML schema defining necessary elements with
which the resource usage policies can be expressed. Consider the following
scheme file in which information such as Memory, Architecture and other
resource configuration attributes are defined as XML elements. This schema
shall be extended by including more and more attributes when needed.
With the schema in hand, the Grid resource usage policy can be
expressed using WS-Policy specifications. For instance, the resource usage
policy of a resource, say, resource A can be described as follows: The
highlighted statements explain the resource usage policy attributes and their
values that the resource A contributed to the Grid operation.