What is the grid?

Németh Zsolt <zsnemeth@sztaki.hu>

MTA SZTAKI


Distributed computing may be accomplished via traditional environments such as the de facto standard PVM and MPI or with emerging software frameworks termed computational grids. In both cases the goal is to manage processes and resources and provide a coherent view towards the application by virtually unifying distributed resources into an abstract layer.

While the conventional systems are well understood and utilised in numerous applications, grids are relatively new (as of 1999 - "there are no existing grids yet"). Grids are aimed at sharing geographically distributed resources in a well controlled, secure and mutually fair way but there is no clear definition for grids. Some definitions are based on the features of the grid (geographically distributed, heterogeneous, high-performance, etc.) some others are based on the components of the grid (services, layers, interfaces, protocols, etc.) All these approaches attempt to define the grid as how it is constructed and how it works.

The analysis presented in the paper focuses on what a grid must provide. Neither the features of a system nor simply the presence of any of the grid services make a distributed system grid-like. Rather, grids are semantically different from other, conventional distributed systems in two points: they provide user and resource abstraction.

The paper presents an informal comparison of conventional distributed environments and grids at different levels of abstraction and tries to point out the essential differences. A novel, semantic definition for grids is suggested that is orthogonal to all previous, technical definitions.