Introduction
L'architecture client/serveur désigne un mode de communication entre plusieurs ordinateurs d'un réseau qui distingue un ou plusieurs postes clients du serveur : chaque logiciel client peut envoyer des requêtes à un serveur. Un serveur peut être spécialisé en serveur d'applications, de fichiers, de terminaux, ou encore de messagerie électronique.
Caractéristiques d'un serveur :
- il est passif (ou maître) ;
- il est à l'écoute, prêt à répondre aux requêtes envoyées par des clients ;
- dès qu'une requête lui parvient, il la traite et envoie une réponse.
Caractéristiques d'un client :
- il est actif (ou esclave) ;
- il envoie des requêtes au serveur ;
- il attend et reçoit les réponses du serveur.
Le client et le serveur doivent bien sûr utiliser le même protocole de communication. Un serveur est généralement capable de servir plusieurs clients simultanément.
Un autre type d'architecture réseau est le poste à poste (ou peer-to-peer en anglais), dans lequel chaque ordinateur ou logiciel est à la fois client et serveur.