The Grid concept is originated from the domain of nested electricity network. The utility model of Grid provides users a manageable way to use whatever resources they want when needed. This Grid concept was applied to the computing industry around 1995. Grid computing provides an infrastructure to allow people or applications to collaborate with other resources over the Internet. Originally, all the Grid computing ideas refer to the computing resources sharing at information technology infrastructure level. The related research topics are resource allocation and management, performance modeling, security and policy management.
The Grid software vendors were providing their own means to define the computing resources and there were no standard ways to describe the computing resources in Grid computing environments. As a result, it was a huge challenge to access and integrate those computing resources in different Grid computing environments powered by different Grid software solutions.
As we described earlier, Web services provide a standard way to describe solution components that can be published in centralized UDDI registries or distributed WSIL documents. Can Web services be introduced into Grid computing areas without any extensions to describe the Grid computing solution components (a.k.a., Grid service)? The short answer is no. The major reason is that the Grid service needs more semantic information than regular Web service. For example, there is no state information for life-cycle management and no versioning information in the current description languages for Web services. In order to bridge the gap between the Web services architecture and Grid computing infrastructure, Global Grid Forum (GGF) forms a team named Open Grid Service Architecture (OGSA) Working Group to define the Grid service architecture by leveraging the emerging Web services standards (Talia, 2002; Zhang, 2003b).
The core concept of OGSA is Grid service, which is a natural extension and customization of the Web services used in Grid computing environment. In other words, we can treat Grid service as a special type of Web services with state information and other semantic information for life-cycle management and version control as well as upgradeability. Grid service interface is described in WSDL by using additional tag "gsdl." "gsdl" stands for Grid Service Definition Language. We can create multiple running instances for the same Grid service interface. It is noted that Grid services discovery and dynamic Grid service instance creation are two key aspects in the current OGSA specification. The specification of OGSA is still evolving. Foster (2002) described the basic idea of dynamic virtual organization and OGSA for resource sharing.
A traditional way of describing a local Grid is to provide multiple individual Grid service interfaces to the outside for integration and interaction. For example, a Weather Grid Service consists of a standard Grid service interface and an embedded Weather Web service invocation program. So does the stock Grid service. Figure 6 is a conceptual diagram of Universal Grid Service. This Universal Grid Service concept is defined in a Local Grid. It encapsulates all the Grid services deployed in this Grid by providing a universal interface and built-in business admission control unit as well as a self-aggregating component to other Grids. A Universal Grid service handler is responsible for accepting the service invocations or query requests and recreating multiple invocation or query commands as well as offloading them to different Grid services. The Universal Grid service concept can simplify the programming and integration model in a multi-Grid environment. Figure 6 shows an example. There are two regular Web services, namely weather Web service and stock Web service, which are encapsulated in the implementation of a universal Grid service. The goal of Universal Grid service is to provide one uniform interface with configurable capabilities.
Figure 6: Universal Grid Services.
As introduced in Zhang (2003c), Grid Solution Sphere which includes Physical Grid and Logical Grid is a reference Grid solution architecture. The comprehensive administration, resource provisioning, application integration, data sharing and activity monitoring are addressed in that reference Grid solution architecture. As an example, Grid service outsourcing solution deployed in a Hub style is also described in Zhang (2003c). It is noted that a peer-to-peer style Grid solution is very suitable for application or resource sharing and collaboration in a distributed environment. For example, "personal computer designers create Computer Aided Design (CAD) drawings in one part of a country, collaborating with other design team members in other parts of a country, who are designing different computer components. How can each group shares design files, accesses design changes, and provides modifications in a collaborative way?" (Zhang, 2003c).
The Universal Grid Service concept introduced in this chapter can be used to simplify the integration and management processes. From the integration point of view, the application developer does not need to know all the details on individual Grid services. The internal interaction sequence and data transformation have been pre-built in a Universal Grid Service. At the same time, it greatly eases the Grid services management in a real Grid solution because the individual Grid services are managed by a Universal Grid service. A Grid solution only needs to manage the higher-level Universal Grid services involved in this solution. Therefore, Universal Grid service acts as a middleware for effective and efficient integration and solution management.