Imprimer tout le livreImprimer tout le livre

cours Architecture client serveur

Consigne: Ce document contient l'essentiel de ce qu'il faut lire pour réaliser les activités dans cette séquence du cours.

- Chaque étudiant est invité à le lire et à se l'approprier avant de réaliser les activités prévues

Site: Touch By SukaJanda01
Cours: Developpement web dynamique avec PHP
Livre: cours Architecture client serveur
Imprimé par: Visiteur anonyme
Date: jeudi 1 mai 2025, 10:48

1 Présentation de l’architecture client serveur:

De nombreuses applications fonctionnent selon l'architecture client/serveur qui dispose de deux entités reliées par un réseau (intranet, internet, ...) . Chaque entité englobe l'aspect hardware (machine) et software (logiciel). Une machine cliente execute une application cliente qui interagit avec une application serveur qui tourne sur une machine serveur et qui lui fournit un service.

1.1 Exemples de schémas client-serveur

Schéma classique client serveur

Applications clients et serveurs sur une seule machine

2 Dialogue client-serveur

Pour dialoguer et se comprendre une application cliente et une application serveur utilisent un ensemble de règles communes(les protocoles) et suivent un modèle de communications (OSI, TCP/IP, ...).

2.1 La couche application et ses protocoles

Elle englobe les protocoles applicatifs et permet de relier une application au réseau. Une application cliente sur une machine cliente utilise un protocole compatible à celui utilisé par l'application serveur avec qui elle veut dialoguer.
(1) Exemples de protocoles applicatifs
HTTP: (HyperText Transfer Protocol) développé pour le Web il permet de transferer des documents (au format HTML pour la plupart) d'un serveur vers un client. FTP : (File Transfer Protocol), est utilisé pour l'échange de fichiers situés sur deux ordinateurs distants.

SMTP: (Simple Mail Transfer protocol) est utilisé pour transférer le courrier électronique vers les serveurs de messagerie. POP: (Post Office Protocol) permet de récupérer les courriers électroniques situés sur un serveur de messagerie.
IMAP: (Internet Message Access Protocol) permet comme POP de récupérer les courriers électroniques sur un serveur de messagerie mais en laissant les courriers sur le serveur.

2.2 Exemple d’applications serveur et clientes

Applications serveur

Applications clientes

serveurs HTTP(s) : Apache, IIS, Tomcat, Zope, Jboss, Jetty, …

Navigateurs (IE, Nescape, Firefox, Opera,…), Aspirateurs site, robot, …

serveurs FTP : Filezilla server, Pure-FTPd, PFTP, …

Filezilla client, SmartFTP, FTP expert,…

serveurs IMAP : Cyrus Imap, hMailServer, Mdaemon, …

Kmail, Thunderbird, Mail, Outlook, Lotus, …

Serveurs SMTP : SMTP Server, MySMTP, Easy SMTP Server, …

2.3 Connection à 
un 
serveur

Pour envoyer des requêtes à un serveur, un client a besoin de plus ou moins d'informations selon le
type de serveur (web, ftp, ssh, mysql, ...):
L'adresse IP: Le client doit connaître l'adresse IP de la machine qui heberge l'application serveur. Généralement un nom est associé à l'adresse IP via un serveur DNS (Domain Name Server). Données d'authentification : Pour certaines connections un login et un mot de passe sont demandés par le serveur. Exemple des serveurs de base de données (mysql, postgres, oracle, ...), ftp (accès anonyme possible), imap, ...
Port : Plusieurs instances de serveurs peuvent tourner sur une machine (section 1.1) mais chacune d'elle ne s'interesse qu'aux requêtes qui lui sont déstinées. Pour cela une application cliente et une application serveur se mettent d'accord sur un numéro entier appelé port exclusivement utilisé par l'application serveur sur la machine. L'adresse IP permet d'identifier de manière unique un ordinateur dans un réseau et le port permet d'identifier une application serveur unique sur une machine. A chaque application serveur est attribuée un numéro de port par défaut : smtp(25), http (80), https (443) ftp (21), ssh (22), dns (53), ldap (389), mysql (3306)... Il est possible par configuration de changer ce port par défaut.