Le modèle client-serveur



Documents pareils
18 TCP Les protocoles de domaines d applications

1. Introduction à la distribution des traitements et des données

FileMaker Pro 13. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 13

CORBA. (Common Request Broker Architecture)

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Services OSI. if G.Beuchot. Services Application Services Présentation - Session Services Transport - Réseaux - Liaison de Données - Physique

Architectures Client-Serveur

FileMaker Pro 12. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 12

Plan du cours. Autres modèles pour les applications réparties Introduction. Mode de travail. Introduction

Microsoft Dynamics AX. Solutions flexibles avec la technologie Microsoft Dynamics AX Application Object Server

TUTORIEL RADIUS. I. Qu est-ce que RADIUS? II. Création d un groupe et d utilisateur

Systèmes répartis. Fabrice Rossi Université Paris-IX Dauphine. Systèmes répartis p.1/49

SOA : une brique de la 4 ième génération de l architecture informatique? Hervé Crespel Président du club urba-ea

NFP111 Systèmes et Applications Réparties

NFS Maestro 8.0. Nouvelles fonctionnalités

Travail collaboratif. Glossaire

Administration de systèmes

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

M1101a Cours 4. Réseaux IP, Travail à distance. Département Informatique IUT2, UPMF 2014/2015

Eliminer les zones d ombre et fournir une identité utilisateur sur le pare-feu dans un environnement client léger

Les applications Internet

Architectures web/bases de données

Chapitre VII : Principes des réseaux. Structure des réseaux Types de réseaux La communication Les protocoles de communication

MODULE I1. Plan. Introduction. Introduction. Historique. Historique avant R&T 1ère année. Sylvain MERCHEZ

LES FONCTIONS DE SURVEILLANCE DES FICHIERS

Nouvelles Plateformes Technologiques

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Intégration de systèmes client - serveur Des approches client-serveur à l urbanisation Quelques transparents introductifs

Cours CCNA 1. Exercices

ClariLog - Asset View Suite

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO)

Mise en œuvre des serveurs d application

Le e s tocka k ge g DAS,NAS,SAN

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Module BDR Master d Informatique (SAR)

Evidian IAM Suite 8.0 Identity Management

Introduction. Adresses

NetCrunch 6. Superviser

Software Engineering and Middleware A Roadmap

La surveillance centralisée dans les systèmes distribués

Déclarer un serveur MySQL dans l annuaire LDAP. Associer un utilisateur DiaClientSQL à son compte Windows (SSO)

La haute disponibilité de la CHAINE DE

TD sur JMS ) Qu est-ce qu un middleware orienté message (MOM)? Quelles différences faites-vous entre un MOM et JMS?

Journée CUME 29 Mars Le déport d affichage. Vincent Gil-Luna Roland Mergoil.

CORBA haute performance

Introduction. René J. Chevance

Module BD et sites WEB

Groupe Eyrolles, 2006, ISBN : X

Découvrez notre solution Alternative Citrix / TSE

Version 7.1. Pour Windows 2008, 2003, 2000, Vista, SEVEN, XP, Windows Mobile 5.x, 6.x / 2003, CE GUIDE TECHNIQUE

Gestion des identités Christian-Pierre Belin

NiceLabel pour Services Microsoft Windows Terminal Serveur et Citrix MetaFrame

Gestion répartie de données - 1

Manuel du client de bureau distant de KDE

Windows Server 2008 Sécurité ADMINISTRATION ET CONFIGURATION DE LA SECURITE OLIVIER D.

EMC AVAMAR. Logiciel et système de sauvegarde avec déduplication

Hébergement de sites Web

Fiabilisez la diffusion de vos messages!

La Qualité, c est Nous!

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

Tutorial Terminal Server sous

L annuaire et le Service DNS

Infrastructure RDS 2012

Sécurisation du réseau

Personnaliser le serveur WHS 2011

Services Réseaux - Couche Application. TODARO Cédric

Présentation Internet

Cisco Certified Network Associate

Le marché des périphérique mobiles

Architectures n-tiers Intergiciels à objets et services web

Le Network File System de Sun (NFS)

Configuration Matérielle et Logicielle AGORA V2

Activités professionnelle N 2

Service d'annuaire Active Directory

Easy as NAS Supplément Entreprises. Guide des solutions

Législation. Loi anti-terrorisme

Chapitre 7. Le Protocole SNMP 7.1 INTRODUCTION COMPOSANTES POUR L UTILISATION FONCTIONNEMENT LE PAQUET SNMPV1...

PORTAIL DE GESTION DES SERVICES INFORMATIQUES

Les nouveautés d AppliDis Fusion 4 Service Pack 1

Mettre en place un accès sécurisé à travers Internet

BD réparties. Bases de Données Réparties. SGBD réparti. Paramètres à considérer

IN SYSTEM. Préconisations techniques pour Sage 100 Windows, MAC/OS, et pour Sage 100 pour SQL Server V16. Objectif :

FORMATION CXA01 CITRIX XENAPP & WINDOWS REMOTE DESKTOP SERVICES

Mise en route d'une infrastructure Microsoft VDI

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Pré-requis techniques

UCOPIA EXPRESS SOLUTION

Fiche Technique. Cisco Security Agent

SÉCURISATION DES CONNEXIONS À DISTANCE SUR LES RÉSEAUX DE CONTRÔLE

VLAN Virtual LAN. Introduction. II) Le VLAN. 2.1) Les VLAN de niveau 1 (Port-based VLAN)

Cours 13. RAID et SAN. 2004, Marc-André Léger

Les Architectures Orientées Services (SOA)

L ADMINISTRATION Les concepts

Windows 2000 Server Active Directory

ORACLE 10G DISTRIBUTION ET REPLICATION. Distribution de données avec Oracle. G. Mopolo-Moké prof. Associé UNSA 2009/ 2010

Fiche technique RDS 2012

Environnements de Développement

Présentation de Active Directory

Transcription:

Le modèle client-serveur Olivier Aubert 1/24

Sources http://www.info.uqam.ca/~obaid/inf4481/a01/plan.htm 2/24

Historique architecture centralisée terminaux passifs (un seul OS, systèmes propriétaires) traitements au niveau du serveur 3/24

Architecture répartie réseaux, ordinateurs plus puissants, OS ouverts interfaces et API standard (RFC) traitement effectué en partie sur les clients Serveur OS BD Requête Réponse Règles Réseau d entreprise Windows Applications Mac Applications Clients UNIX Applications 4/24

Le modèle Client : processus demandant l exécution d une opération à un autre processus par envoi de message contenant le descriptif de l opération à exécuter et attendant la réponse de cette opération par un message en retour. Serveur : processus accomplissant une opération sur demande d un client, et lui transmettant le résultat. Requête : message transmis par un client à un serveur décrivant l opération à exécuter pour le compte du client. Réponse : message transmis par un serveur à un client suite à l exécution d une opération, contenant le résultat de l opération. 5/24

Types d architecture client-serveur Le modèle : Un client, plusieurs serveurs : Processus client Système Application Processus système Système Client Serveur Serveur Plusieurs clients, un serveur : Hardware Hardware Client Maître Client Client Serveur Un client, un serveur : Client Serveur Esclave Esclave 6/24

C/S orienté client ou serveur Client lourd stocke les données et les applications localement. Le serveur stocke les fichiers mis à jour Le client effectue une bonne partie du traitement Le serveur est plus allégé Serveur lourd On effectue plus de traitements sur le serveur : transactions, groupware, etc Déploiement plus aisé Client léger Client à fonctionnalité minimale (terminaux X, périphérique réseau (Network Appliance), ordinateur réseau (network computer)) Beaucoup de charge sur le serveur et le réseau 7/24

Dialogue client-serveur Primitives de service : SendRequest() ReceiveResponse() ReceiveRequest() SendResponse() Serveur Client Requête Réponse SendRequest() SendResponse() ReceiveResponse() ReceiveRequest() Session Transport Session Transport Réseau 8/24

Messages client-serveur Trois grands types de message : REQ, REP et ACK Autres types possibles : AYA (Are You Alive), BUSY (ordinateur temporairement occupé), ERR (Erreur), etc. 9/24

Échange de messages Dans un environnement hétérogène, on doit effectuer une présentation adéquate des données. Traduction des données (XDR (Sun), ASN.1 (CCITT), etc) Assemblage des paramètres émis et des résultats (marshalling) Désassemblage des paramètres reçus et des résultats (unmarshalling) Traduction Assemblage Présentation Session Présentation Session Traduction Désassemblage Transport 10/24

Modes de dialogue Mode synchrone n utilise pas de file d attente les messages sont émis aussitôt mode bloquant (ex. RPC) Mode asynchrone utilise une file d attente mode non bloquant favorise le multitâche (ex. FIFO, email) 11/24

Opérations bloquantes Le processus se bloque jusqu à ce que l opération se termine. read() Appel Lecture Copie dans le tampon Retour Serveur Client 12/24

Opérations non bloquantes Par événements Par signaux read() Appel WOULDBLOCK Appel WOULDBLOCK Appel Retour Attente des données Copie dans le tampon Serveur signal() handler() read() Activer SIGIO Retour Signal SIGIO Appel Retour Attente des données Copie dans le tampon Client Serveur Client 13/24

Conception d une application c/s Dans une application client-serveur, il faut décider de l emplacement des composantes de : présentation : interfaces textuelles ou graphiques, interactions, entrée des données, validation, etc. logique d application : traitements associés à l application accès aux données : stockage et accès aux données (base de données, serveur web, etc) 14/24

Modèle client-serveur à deux niveaux Modèle de Gartner pour les systèmes à deux niveaux (2-tiers) : Présentation Présentation Présentation Présentation Présentation Client Données Présentation Serveur Données Données Données Données Données BD Données Transactions Présentations Présentations réparties distantes réparties distantes réparties Classe 1 Classe 2 Classe 3 Classe 4 Classe 5 15/24

Client-serveur à trois niveaux Modèle de Gartner pour les systèmes à trois niveaux (3-tiers) : Présentation Présentation Présentation Présentation Client Données Serveur de milieu Données Serveur Données Données Données Données 16/24

Le middleware Traduction officielle : intersticiel Assure les connexions entre les serveurs de données et les outils de développement sur les postes client Ensemble de services logiciels construits au dessus d un protocole de transport afin de permettre l échange de requêtes et des réponses associées entre client et serveur de manière transparente. Les services du middleware sont un ensemble de logiciels répartis qui existe entre l application, l OS et les services réseaux sur un nœud du réseau. 17/24

Types de middleware Général Protocoles de communication, répertoires répartis, services d authentification, service de temps, RPC, etc Services répartis de type NOS (Networked OS) : services de fichiers, services d impression. Spécifique de BD : ODBC, IDAPI, EDA/SQL, etc de groupware : MAPI, Lotus Notes d objets : CORBA, COM/DCOM,.NET 18/24

Composantes du middleware Les canaux Services de communications entre composants et applications : RPC (synchrone), ORB (synchrone), MOM (Message Oriented Middleware) (asynchrone) Services de support de communication : SSL, annuaires (LDAP) Les plate-formes Serveurs d applications qui s exécutent du côté serveur Offrent les canaux de communication Assurent la répartition, l équilibrage de charge, l intégrité des transactions, etc Exemple : architecture web-tier 19/24

Place du middleware Processus client Middleware client Services ;locaux Services reseau OS et hardware Protocole Requete Reponse Protocole reseau Processus serveur Middleware serveur Services ;locaux Services reseau OS et hardware Exemples : Les services primitifs (émulateurs de terminaux, transfert de fichier, mail, etc) Services de bases (RPC, etc) Services intégrés (DCE, OS répartis) Objets distribués (CORBA, COM/DCOM, etc) World Wide Web 20/24

Services du middleware Middleware de service specifique SQL/API, TxRPC, Mail, ORB/COM Gestion repartie CMIP, SNMP OS Reseau Repertoire, RPC, NFS, Securite Transport TCP/IP, IPX/SPX, NetBIOS, SNA Reseau, Liaison, Physique 21/24

Fonctions d un middleware procédure d établissement de connexion exécution des requêtes récupération des résultats procédure de fermeture de connexion initiation des processus sur différents sites services de répertoire (nommage) accès aux données à distance gestion des accès concurrents sécurité et intégrité monitoring terminaison des processus mise en cache des résultats mise en cache des requêtes 22/24

Le modèle RPC RPC : Remote Procedure Call Client Application Serveur RPC Procedure Appel procedure Retour procedure Retour procedure Execution procedure Souche client Souche serveur Assemblage Desassemblage Assemblage Desassemblage SendRequest()ReceiveResponse() SendResponse()ReceiveRequest() 23/24

Transparence Transparence des réseaux : support de plusieurs types de réseaux (WAN, LAN, etc) et de protocoles (TCP/IP, SNA, etc) Transparence aux serveurs : support de plusieurs types de serveur (SGBD (Oracle, Sybase, SQL Server, etc)) Transparence des données : traductions des formats de données (XDR, ASN.1, etc) Transparence de la localisation : utilisation d un service de répertoire 24/24