Le système client/serveur et Types d’architectures réseaux

Le système client/serveur et Types d’architectures réseaux

I.3 Réseau informatique

I.3.1 Concepts réseau

Un réseau : Est un ensemble d’objets interconnectés les uns avec les autres. Il permet de faire circuler des éléments entre chacun de ces objets selon des règles bien définies35.

Définition d’extranet

Un réseau extranet est un réseau du type internet, dont la liste de sécurité est externalisée c’est-à-dire gérée par un organisme ou une entité externe aux utilisateurs. Par opposition, pour un réseau intranet, la liste de sécurité est gérée en interne.

La liste de sécurité est l’ensemble des données regroupant les identifiants (nom d’utilisateur (login), adresse IP, adresses MAC, clefs logiques ou physiques) autorisés à se connecter.

Définition d’intranet

Un intranet est un ensemble de services internet (par exemple un serveur web) interne à un réseau local, c’est-à-dire accessible uniquement à partir des postes d’un réseau local, ou bien d’un ensemble de réseaux bien définis, et invisible de l’extérieur.

Il consiste à utiliser les standards client-serveur de l’internet (en utilisant les protocoles TCP/IP), comme par exemple l’utilisation de navigateurs internet (client basé sur les protocoles HTTP) et des serveurs web (protocole HTTP), pour réaliser un système d’information interne à une organisation ou une entreprise36.

Type des réseaux

On distingue différents types de réseaux (privés) selon leur taille (en termes de nombre de machines), leur vitesse de transfert des données ainsi que leur étendue.

Les réseaux privés sont des réseaux appartenant à une même organisation. On fait généralement trois catégories de réseaux:

  • • LAN (Local Area Network)
  • • MAN (Métropolitain Area Network)
  • • WAN (Wide Area Network)

I.3.2 Présentation de l’architecture Client/Serveur

De nombreuses applications fonctionnent selon un environnement client/serveur, cela signifie que des machines clientes (des machines faisant partie du réseau) contactent un serveur, une machine généralement très puissante en termes de capacités d’entrée-sortie, qui leur fournit des services.

Ces services sont des programmes fournissant des données telles que l’heure, des fichiers, une connexion, etc.

Les services sont exploités par des programmes, appelés programmes clients, s’exécutant sur les machines clientes. On parle ainsi de client FTP, client de messagerie, …, lorsque l’on désigne un programme, tournant sur une machine cliente, capable de traiter des informations qu’il récupère auprès du serveur (dans le cas du client FTP il s’agit de fichiers, tandis que pour le client messagerie il s’agit de courrier électronique) 37.

I.3.2.1 Fonctionnement d’un système client/serveur

Un système client/serveur fonctionne selon le schéma suivant:

Schéma de fonctionnement d'un système client/serveur
Figure 3 : Schéma de fonctionnement d’un système client/serveur

  • • Le client émet une requête vers le serveur grâce à son adresse et le port, qui désigne un service particulier du serveur
  • • Le serveur reçoit la demande et répond à l’aide de l’adresse de la machine client et son port.

I.3.3 Types d’architectures réseaux

I.3.3.1 Architecture à 1-Tiers

Dans une approche d’application de type 1-tiers, les trois couches sont fortement et intimement liées, et s’exécutent sur la même machine. Dans ce cas, on ne peut pas parler d’architecture client-serveur mais d’informatique centralisée.

Dans un contexte simple utilisateur, la question ne se pose pas, mais dans un contexte multiutilisateurs, on peut voir apparaître deux types d’architectures mettant en œuvre des applications 1-tiers : des applications sur site central; des applications réparties sur des machines indépendantes communiquant par partage de fichiers.

I.3.3.2 Architecture à 2-Tiers

L’architecture à deux niveaux (aussi appelée architecture 2-tiers, tiers signifiant tierce partie) caractérise les systèmes clients/serveurs dans lesquels le client demande une ressource et le serveur la lui fournit directement.

Cela signifie que le serveur ne fait pas appel à une autre application afin de fournir le service38.

Architecture à 2-Tiers
Figure 4: Architecture à 2-Tiers.

Interroger BD Requêtes Niveau 2 Réponses Niveau 1 Résultats Client Serveur Base de données.

I.3.3.3 Architecture à 3-Tiers

Dans l’architecture à trois niveaux (appelée architecture 3-tiers), il existe un niveau intermédiaire, c’est-à-dire que l’on a généralement une architecture partagée entre :

  • > Un client, c’est-à-dire l’ordinateur demandeur de ressources, équipée d’une interface utilisateur (généralement un navigateur web) chargée de la présentation;
  • > Le serveur d’application (appelé également middleware), chargé de fournir la ressource mais faisant appel à un autre serveur
  • > Le serveur de données, fournissant au serveur d’application les données dont il a besoin.
Requêtes Requêtes

Architecture 3-Tiers
Figure 5: Architecture 3-Tiers.

Niveau1 Client; Niveau2 Serveur d’application; Niveau3Serveur de BD; Résultats Résultats BD

Le système client/serveur

. Les niveaux de l’architecture 3-tiers
1) Client

Dans un réseau informatique un client est l’ordinateur et le logiciel qui envoient des demandes à un serveur.

L’ordinateur client est généralement un ordinateur personnel ordinaire, équipés de logiciels relatifs aux différents types de demandes qui vont être envoyées, comme par exemple un navigateur web, un logiciel client pour le World Wide Web.

2) Serveur

Dans un réseau informatique, un serveur est à la fois un ensemble de logiciels et l’ordinateur les hébergeant dont le rôle est de répondre de manière automatique à des demandes envoyées par des clients ordinateur et logiciel via le réseau.

Les serveurs sont d’usage courant dans les centres de traitement de données, les entreprises, les institutions, et le réseau Internet, où ils sont souvent un point central et sont utilisés simultanément par de nombreux utilisateurs pour stocker, partager et échanger des informations. Les différents usagers opèrent à partir d’un client: ordinateur personnel, poste de travail, ou terminal.

Le World Wide Web, la messagerie électronique et le partage de fichiers sont quelques applications informatiques qui font usage de serveurs.

3) Serveur de base de données

Lorsque le nombre d’enregistrements par table n’excède pas le million, et que le nombre d’utilisateurs varie de une à quelques personnes, un micro-ordinateur actuel de bonnes performances, un logiciel système pour poste de travail, et un SGBD « bureautique » suffisent.

Si ces chiffres sont dépassés, ou si le temps de traitement des données devient prohibitif, il faut viser plus haut. Le micro-ordinateur doit être remplacé par un serveur de BDD, dont les accès aux disques durs sont nettement plus rapides. Le logiciel système client doit être remplacé par un logiciel système serveur (donc multiutilisateurs), et le SGBD bureautique par un SGBD prévu pour les grosses BDD multi-clients.

Ceci dit, la structure d’une grosse base n’est pas différente de celle d’une petite, et il n’est pas nécessaire de disposer d’un « mainframe » (une grosse machine) gérant des milliers de milliards d’octets pour apprendre à se servir des BDD. Ce n’est pas parce qu’il gère un plus grand volume de données qu’un SGBD possède plus de fonctionnalités.

. Limites de l’architecture 3-tiers

L’architecture trois-tiers a corrigé les excès du client lourd en centralisant une grande partie de la logique applicative sur un serveur HTTP. Le poste client, qui ne prend à sa charge que la présentation et les contrôles de saisie, s’est trouvé soulagé et plus simple à gérer.

En revanche, le serveur HTTP constitue la pierre angulaire de l’architecture et se trouve souvent fortement sollicité : il est difficile de répartir la charge entre client et serveur.

On se retrouve confronté aux épineux problèmes de dimensionnement serveur et de gestion de la montée en charge rappelant l’époque des mainframes. De plus, les solutions mises en œuvre sont relativement complexes à maintenir et la gestion des sessions est compliquée, mais reste possible.

Les contraintes semblent inversées par rapport à celles rencontrées avec les architectures deux-tiers : le client est soulagé, mais le serveur est fortement sollicité.

Le juste équilibre de la charge entre client et serveur semble atteint avec la génération suivante : les architectures n-tiers.

I.3.3.4 Comparaison entre l’architecture 2-tiers et 3-tiers

L’architecture à deux niveaux est donc une architecture client/serveur dans laquelle le serveur est polyvalent, c’est-à-dire qu’il est capable de fournir directement l’ensemble des ressources demandées par le client.

Dans l’architecture à trois niveaux par contre, les applications au niveau serveur sont délocalisées, c’est-à-dire que chaque serveur est spécialisé dans une tâche (serveur web/serveur de base de données par exemple). L’architecture à trois niveaux permet :

  • • Une plus grande flexibilité/souplesse;
  • • Une sécurité accrue car la sécurité peut être définie indépendamment pour chaque service, et à chaque niveau.
  • • De meilleures performances, étant donné le partage des tâches entre les différents serveurs.

_________________________
35 www.commentcamarche.com/initiation/concept.html
36 Idem.
37 Ibidem
38 Ibid.

D'autres étudiants ont aussi consulté
Abonnez-vous!
Inscrivez-vous gratuitement à la Newsletter et accédez
à des milliers des mémoires de fin d’études !
Rechercher
Commentaires

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *