UNICORE

UNICORE (UNiform Interface to COmputing REsources) is a Grid computing technology that provides seamless, secure, and intuitive access to distributed Grid resources such as supercomputers or cluster systems and information stored in databases. UNICORE was developed in two projects funded by the German ministry for education and research (BMBF). In various European-funded projects UNICORE has evolved to a full-grown and well-tested Grid middleware system over the years. UNICORE is used in daily production at several supercomputer centers worldwide. Beyond this production usage, UNICORE serves as a solid basis in many European and international research projects. The UNICORE technology is open source under BSD licence and available at SourceForge, where new releases are published on a regular basis.

Contents

History

The concept of Grid computing was first introduced in the book "The Grid: Blueprint for a New Computing Infrastructure" at the end of 1998. Already in 1997, the development of UNICORE was initiated to enable German supercomputer centers to provide to the users a vertically integrated Grid middleware solution as a "ready to use" alternative for the Globus Toolkit. The first prototype of UNICORE was developed in the German UNICORE project, while the foundations for the current production version were laid in the follow-up project UNICORE Plus, which ended in 2002.

Follow-up projects proceeded at European level which extended the functionality and worked towards providing implementations of OGF standards. These resulted in the release of UNICORE 6, a fully web-services enabled release, on 28 August 2007.

UNICORE-Related Projects

Architecture

The architecture of UNICORE consists of three layers, namely user, server, and target system tier. The user tier is represented by the UNICORE Client, a Graphical User Interface (GUI) that exploits all services offered by the underlying server tiers. Abstract Job Objects (AJO), the implementation of UNICORE's job model concept, are used to communicate with the server tier. An AJO contains platform and site independent descriptions of computational and data related tasks, resource information, and workflow specifications. The sending and receiving of AJOs and attached files within UNICORE is managed by the UNICORE Protocol Layer (UPL) that is placed on top of the Secure Socket Layer (SSL) protocol. The user of an UNICORE Grid does not need to know how these protocols are implemented, as the UNICORE Client assists the user in creating complex, interdependent jobs. For more experienced users a Command Line Interface (CLI) is also available. Both, the UNICORE Client and CLI, provide the functionalities to create and monitor jobs that can be executed on any UNICORE site (Usite) without requiring any modifications, including data management functions like import, export, or transfer of files from one target system to another. In addition, the UNICORE plugin technology allows the creation of application-specific interfaces inside the UNICORE client.

As the single secure entry point the Gateway controls the access to a Usite by accepting and authenticating all requests for server functionality. The Gateway forwards incoming requests to the underlying Network Job Supervisor (NJS) of a Vsite (UNICORE Virtual site) for further processing. A Vsite identifies a particular set of Grid resources at a Usite and is controlled by a NJS. UNICORE supports different system architectures and gives an organization full control over its resources. Vsites may consist of a single supercomputer or a Linux cluster. If more than one resource is operated by an organization there can be one Vsite for each resource inside one Usite. The NJS incarnates an abstract job description received in an AJO to a target system specific job. The target system tier consists of the Target System Interface (TSI), which interfaces with the underlying local resource management system.

Security Model

The security within UNICORE relies on the usage of permanent X.509 certificates issued by a trusted Certification Authority (CA). These certificates are used to provide a single sign-on in the UNICORE client, i.e. no further password requests are handed to the user. In addition the certificates are used for authentication and authorization, including the mapping of UNICORE user certificates to local accounts, e.g. Unix uid/gid, and for signing AJOs, which are sent over SSL based communication channels across 'insecure' internet links. Using X.509 certificates is one example for the consideration of well-known standards, e.g. released by the Global Grid Forum (GGF), within the UNICORE architecture. In addition, UNICORE meets the Open Grid Services Architecture (OGSA) concept following the paradigm of 'everything being a service'.

UNICORE in Research & Production

Many European and international research projects base their Grid software implementations on UNICORE, e.g. EUROGRID, GRIP, OpenMolGRID, VIOLA, or the Japanese NaReGI project. These projects extended or are extending the set of core UNICORE functions, including new features specific to their research or project focus. The goals of such projects are not only limited to the computer science community. Other scientific domains such as bioengineering or computational chemistry are also using UNICORE as the basis for their work and research, like in the OpenMolGRID or Chemomentum project. The idea of "everything being a service" combined with the achievements of the Grid community led to stateful Web Services which enable a new approach to the design of modern Grid architectures. The integration of Web Services techniques and UNICORE is the main goal of the UniGrids project to realise an architecture of loosely-coupled UNICORE components while keeping its 'end-to-end' nature and strong security. The expertise and experience gained in developing the UNICORE software is contributed to the NextGRID project, which develops an architecture for future generation Grids.

All components of the UNICORE technology are open source software under BSD license and can be downloaded from the SourceForge repository. An online installation guide including a certificate assistant, a user manual, and example jobs help users getting started. Today UNICORE is successfully used in production environments, e.g. within the John von Neumann-Institute for Computing (NIC) to access a 1312-processor IBM p690 supercomputer and a Cray XD1 cluster system. The users of these resources come from a broad field of scientific domains including e.g. astrophysics, quantum physics, medicine, biology, computational chemistry, and climatology. Within the European DEISA project leading HPC centers in Europe joined to deploy and operate a pervasive, distributed, heterogeneous, multi-tera-scale supercomputing platform. UNICORE is used as the Grid middleware to access the DEISA resources.

References

External links