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 esclave) ;
- 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 maître) ;
- 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.