Les Clients Légers
Les Clients Légers Logiciel
Principe
Le principe général d'un client léger logiciel est de s'intercaler entre les serveurs d'applications d'une part et les clients (utilisateurs finaux) d'autre part. Le serveur va ainsi agir en tant que client lourd des applications qu'il gère. Au final, il ne fait que relayer une image de l'interface graphique du client lourd à ses client légers. En règle générale, le serveur se place sur le même site que les serveurs d'application. Il profite ainsi d'un accès local. Les clients légers sont quant à eux le plus souvent séparés via des liaisons à faible débit (comparé à un réseau local). Voici un schéma type d'implantation :
Microsoft® TSE
Depuis sa version NT4, Microsoft® propose dans ses éditions serveur, un service de bureau à distance (Terminal Services). Concrètement, l'installation du service permet d'ajouter des briques logicielles au modèle courant afin de rediriger la sortie écran à travers le réseau et de considérer les interactions de l'utilisateur (clavier/souris) comme étant locales. Pour cela, Microsoft® a introduit un nouveau protocole bâptisé RDP (Remote Desktop Protocol). Il encapsule, crypte et compresse les données avant de les envoyer sur le réseau dans une trame TCP classique. Sa version actuelle (2003) ne permet pas de l'utiliser de manière interactive, à savoir ne lancer qu'une application au lieu du bureau complet. Microsoft® a prévu ce mode de fonctionnement dans la prochaine version de son serveur (Longhorn). Voir l'article du TechNet pour plus de détails.
Citrix® MetaFrame
Le principal avantage de Citrix® MetaFrame vient du fait que depuis plus de 10 ans, Citrix® a accès à des parties du code source des systèmes d'exploitation de Microsoft®. Ainsi, ils ont pu développer leur propre protocole ICA (Independant Client Architecture), tout en s'assurant de ses performances et de son intégration dans le système. Le principe de fonctionnement reste équivalent à Terminal Services étant donné qu'il l'utilise pour fonctionner. Citrix® est en fait une surcouche de Terminal Services. Il propose un nombre important de services en plus, comme l'utilisation d'applications en mode seamless - c'est à dire une application qui s'exécute comme si elle était locale ; on ne la distingue pas d'une application locale (ie pas incluse dans une fenêtre de bureau à distace ...).
Unix/Serveur X
Sous Unix, le problème se pose différemment, puisqu'à la base, l'architecture graphique X est basée sur un modèle client/serveur. Il suffit donc de préciser l'adresse du serveur X vers qui les applications graphiques (clientes pour l'occasion) vont envoyer les requêtes d'affichage suivant le protocole X11. Le déport d'interface graphique X se fait généralement à travers un tunnel SSH pré-établi afin de crypter de bout en bout les communications. Dans le cas contraire, comme on peut le voir sur le schéma, les commandes X11 circulent en clair sur le réseau. Ici, l'application est lancée sur le serveur et affichée sur le client. Pour disposer d'une application X sur un client Windows®, il faut avoir :
- Un client SSH qui accepte le forward des paquets X11 (et évidemment, l'équivalent côté serveur)
- Un serveur X qui écoute, afin de pouvoir lui envoyer les requétes d'affichage
NoMachine NX
NoMachine NX est en quelques sortes, une alternative à Citrix® ; en effet, ce logiciel propose des fonctionnalités équivalentes (publication d'application, reprise de session ...). NoMachine reprend en fait exactement le même principe que le déport d'affichage X, sauf qu'il propose un client pour différentes plateformes, incluant un serveur X et un client SSH. Il suffit donc de lancer le client NoMachine pour pouvoir se connecter à un serveur et lancer une commande (qui peut être un gestionnaire de fenêtres ou simplement une application). Cette simplification d'utilisation apporte à NoMachine une plus grande pénétration du marché.Romain HALBARDIER - Ingénieurs 2000 - Informatique/Réseaux 3ème année - 2007