Section: Overall Objectives
Introduction
The possible access to computing resources over the Internet allows a new type of applications that use the power of the machines and the network. The transparent and efficient access to these parallel and distributed resources is one of the major challenges of information technology. It needs the implementation of specific techniques and algorithms to make heterogeneous processing elements communicate with each other, let applications work together, allocate resources and improve the quality of service and the security of the transactions.
Given the complex nature of these platforms, software systems have to rely on a layered model. Here, as a specific point of view for our project we will distinguish four layers as they are illustrated in Figure 1 . The infrastructure encompasses both hardware and operating systems. Services abstract infrastructure into functional units (such as resource and data management, or authentication) and thus allow to cope with the heterogeneity and distribution of the infrastructure.
Services form grounding bricks that are aggregated into middlewares. Typically one particular service will be used by different middlewares, thus such a service must be sufficiently robust and generic, and the access to it should be standardized. Middlewares then offer a software infrastructure and programing model (data-parallel, client/server, peer-to-peer, etc.) to the user applications. Middlewares may be themselves generic (e.g.,Globus), specialized to specific programming models (e.g.,message passing libraries) or specific to certain types of applications.