Composing and Deploying Grid Middleware Web Services Using Model Driven Architecture
Lecture Notes in Computer Science
Rapid advances in networking, hardware, and middleware technologies are facilitating the development and deployment of complex grid applications, such as large-scale distributed collaborative scientific simulation, analysis of experiments in elementary particle physics, distributed mission training and virtual surgery for medical instruction. These predominantly collaborative applications are characterized by their very high demand for computing, storage and network bandwidth requirements. Grid
... applications require secure, controlled, reliable, and guaranteed access to different types of resources, such as network bandwidth, computing power, and storage capabilities, available from multiple service providers. Moreover, they demand multiple, simultaneous end-to-end quality of service (QoS) properties, such as delay guarantees, jitter guarantees, security, scalability, reliability and availability guarantees, and bandwidth and throughput guarantees, for their effective operation. Existing grid infrastructure middleware, such as Globus, ICENI, and Legion, offer simplified application programming interfaces (APIs) for deploying grid applications. However, grid applications using these APIs become tightly coupled to their respective middleware infrastructure creating an impediment to interoperability, portability, maintenance and extensibility. Moreover, existing grid infrastructure middleware offer only the means and not the solutions for reserving and securely accessing resources. Thus, the onus of actually reserving and provisioning these different resources while also ensuring end-to-end QoS still lies on the grid applications. These low-level concerns increase the accidental complexities incurred developing complex grid applications. A promising solution to remedy these problems is to use the Model-Integrated Computing (MIC) paradigm to model the resource and QoS requirements of grid applications and integrate it with grid component middleware. MIC tools can perform feasibility analysis of the application's resource and QoS requirements and determine the right resource provisioning strategies. The MIC tools can subsequently synthesize, assemble and deploy QoS-enabled grid middleware components configured with the resource reservation and service provisioning strategies tailored to the needs of the grid application, while also delivering end-to-end QoS. Moreover, MIC tools can also be used to expose the deployed grid middleware as a Web service thereby decoupling grid applications from any particular middleware API. The paper provides three contributions to the study of a model-driven approach to assembling and deploying QoS-enabled grid middleware capable of provisioning resources and delivering QoS end-to-end to grid applications. First, we describe our Grid component middleware called GriT, which is based on the Object Management Group's (OMG) CORBA Component Model (CCM). Second, we explain how we are using the OMG Model Driven Architecture (MDA), which is a standardization of the MIC technology, to develop a tool called CoSMIC. CoSMIC is used to simplify composition of semantically compatible components of GriT to provide end-to-end QoS and resource guarantees to grid applications. Third, we show how the CoSMIC tools expose the deployed GriT middleware as a Web service that enables grid applications to use ubiquitous web protocols, such as Session Initiation Protocol (SIP) to create, join, or leave collaborative grid applications.