1 Introduction
Jini est une technologie, promue par Sun Microsystems, qui s'appuie sur un environnement
Java pour créer un système réparti, fournissant des services. Le système réparti y est en fait
organisé en fédérations de services. Une fédération est définie comme un ensemble
de services associés pour réaliser une tâche. Le service, lui, est l'entité de base, qui
s'appuie sur le réseau pour réaliser une tâche quelconque. Il peut prendre n'importe quelle
forme (logicielle, matérielle, canal de communication, ...).
Le but de Jini est notamment :
- De permettre aux utilisateurs de partager des ressources sur un réseau
- De faciliter l'accès aux ressources du réseau, quelle que soit la location
de l'utilisateur ou du service
- De simplifier le déploiement et la mise en oeuvre d'un réseau.
Pour cela, le système Jini s'appuie sur :
- Des composants qui fournissent une infrastructure pour fédérer les
services dans un environnement distribué. Cette infrastructure permet
d'ajouter, retirer, localiser et accéder à des services.
- Un modèle de programmation qui permet le développement de services
distribués fiables, conforme à l'architecture Jini, c’est-à-dire s'organisant
en fédérations par exemple.
Ainsi un client utilise l'infrastructure pour localiser et contacter les
services désirés. Puis, grâce au modèle de programmation, il utilise ces
services pour réaliser une tâche quelconque.
Le principe de base de Jini est de rassembler un environnement distribué en
un système apparaissant comme unique à l'utilisateur. Cette transparence doit
s'affranchir du réseau. Toutefois les problèmes classiques des réseaux, comme la
bande passante, peuvent se révéler critiques. L'une des hypothèses de base des
concepteurs de Jini est que la bande passante est suffisante. De même, chaque
composant doit être équipé d'une machine virtuelle Java (JVM), ou être connecté
à une JVM via un proxy. Ceci peut être lourd en termes de consommation
CPU et de mémoire par exemple.