Self-Adjustment for Service Provisioning in Grids

Self-Adjustment for Service Provisioning in Grids

Daniel M. Batista (University of Campinas, Brazil) and Nelson L.S. da Fonseca (University of Campinas, Brazil)
DOI: 10.4018/978-1-61520-686-5.ch021


The fluctuation in resource availability, as well as the uncertainties in relation to requirements for applications, call for the implementation of grids that self-adjust resource allocations to avoid degradation in the quality of service provided for those applications. Various proposals have been made for grid systems that will react to changes in resource availability, which are the key for the creation of service-oriented grids. The purpose of this chapter is to present the main characteristics which are necessary for these systems to provide quality of service. Twelve grid systems are described, highlighting their differences and presenting their strong and weak points for the construction of service-oriented grids. The chapter also presents open research questions.
Chapter Preview


Grids are systems, not subject to a central controller, that use open and standard protocols in the coordination of resources; their main objective is the provision of services or resources for applications (Foster, 2002). Thanks to such grids, research projects involving different areas of knowledge have emerged (Bethel et al., 2003; CERN, 2007; ESG, 2008]), and the uniqueness of these have led to the coinage of the term e-Science (e-Science, 2008) to describe the collaborative research that is now possible worldwide.

Grids are environments that provide services, rather than isolated resources, and they can be easily understood when applications that require simultaneous resource allocations are considered. Specific allocations must be made so that the final service offered by the grid meets the overall requirements of applications, such as minimum bandwidth and maximum delay.

Grids are usually classified as to services offered. Skillicorn (2002) presents the following classification: computational grids, which support high-performance processing; access grids, which provide specialized resources, such as scientific instruments shared by specific organizations; data grids, which furnish access to data sets measured in Terabytes via networks and datacentric grids. It should be clear, however, that the same grid can be used for more than one type of service.

Quality of Service (QoS) requirements and the consequent satisfaction of users have guided the search for mechanisms that will enable the creation of grids furnishing non-trivial QoS requirements. Without such mechanisms, grids would provide only best effort services.

Unlike conventional multiprocessing systems confined to local networks, grids extend throughout various domains and provide diverse services. Moreover, the lack of a central controller, the heterogeneity of resources, constant changes in the capacity available and uncertainties in application requirements make the management of grids a challenging activity.

As there are no guarantees that the capacity available will remain unchanged as time goes by, the monitoring of the state of resources and procedures for reacting to changes are major issues to be addressed by the provision of services in grids. Without mechanisms to monitor and to take reactive actions, there is no guarantee that the application requirements can be properly met. The cyclic procedure of monitoring and reaction represents the core of a self-adjustment system for resource allocation. In the literature, there are several proposals for mechanisms for use in the process of self-adjustment in grids (Wolski, Spring & Hayes, 1999, Buyya, Abramson & Giddy, 2001, Allen et al., 2001, Huedo, Montero & Llorent, 2002, Vadhiyar & Dongarra, 2003, Lowekamp, 2003, Montero, Huedo & Llorente, 2003, Al-Ali, Hafid, Rana & Walker, 2003, Sundararaj, Gupta & Dinda, 2004, Sun & Wu, 2005, Blythe et al., 2005, Prodan & Fahringer, 2005). Many of the solutions are specific for a small set of applications or are specific for grids that provide only one type of service (Montero et al., 2003, Sundararaj et al., 2004, Blythe et al., 2005, Prodan & Fahringer, 2005).

Key Terms in this Chapter

Scheduling: Procedure which defines the resources that will be used for application tasks, as well as the intervals of time in which these resources will be used;

Fluctuation: Variation in the capacity to provide resources for grid applications as time passes;

Migration: Transfer of the codes and data of a task from one grid resource to another;

Task: Smallest unit for the execution of an application on a grid;

Self-Adjustment System: System which monitors grid resources and application execution and which reacts to events potentially leading to degradation of performance;

Uncertainties: Incorrect information about application requirements and / or the capacity of resources available;

Robustness: Ability of a grid system to maintain a given quality of service for an application, despite fluctuations and uncertainties.

Grid: System using both open and standard protocols in the coordination of resources that are not subject to central control, with the goal of providing services or resources for applications (Foster, 2002);

Complete Chapter List

Search this Book: