You are on page 1of 11

Modle client-serveur et architectures techniques n-Tiers

Une approche par la simulation


Proprits Intitul long Description

Exprimentation du modle client-serveur par la simulation et classe de terminale STG-GSI

Formation concerne BTS Services informatiques aux organisations Matire Prsentation

SI5 - Support des services et des serveurs Ce cours permet de mettre en place puis dobserver le fonctionnement dune architecture client-serveur au sein dun rseau. Le modle OSI, les notions de services rseau, de port TCP sont explicites travers la mise en oeuvre simule dun serveur web et dun SGBD. Terminale STG-GSI B. SERVICES FOURNIS PAR LE SYSTME DINFORMATION ET TECHNOLOGIES ASSOCIES 2. Lchange dinformations 2.1. Services et protocoles rseau - Rles et logique de mise en oeuvre des protocoles rseau. 3. Le recours aux applications 3.2 Architecture des applications - Coopration entre les applications : architecture client-serveur, serveur dapplication, mdiateur daccs aux donnes BTS Services informatiques aux organisations Caracteriser un service et le serveur associ

Notions

Objectifs

Comprendre le fonctionnement du client/serveur ( l'aide du simulateur) Mettre en place une architecture client / serveur 3 tiers Objectifs intermdiaires : Configurer un rseau local comportant 2 sous-rseaux (Couche 3 - Rseau) Comprendre la notion de port d'coute (Couche 4 - Transport) o Notion de port TCP o Notion de service associ un port o Notion de port par dfaut (port bien connu) Comprendre la notion de serveur d'application (Couche 7 - Application) o Notion de service : install / dmarr / configur o Notion d'applicatif client (navigateur, requteur SQL) Mettre en place une architecture client/serveur 3 tiers de type "universel" (simulation) o Installation / Configuration d'un serveur WEB o Installation / Configuration d'un serveur de bases de donnes o Mise en place d'un mini-site web avec accs une base de donnes pour simuler une architecture 3 tiers. Adressage IP, commutation, site web dynamique Didacticiel simulateur rseau de Sopireminfo version 3.0 Modle client-serveur, TCP, OSI, port dcoute, simulateur rseau David Duron v 1.0

Pr-requis Outils Mots-cls Auteur

Version

Date de publication Mai 2008

http://www.reseaucerta.org

-CERTA - juin 2011

Page 1/11

Premire partie - Mise en place du rseau local initial


Prambule

La socit DIGEC possde un service Marketing et un service Comptabilit. Elle est dote d'un rseau local comportant deux sous-rseaux, un rseau pour chaque service. Dans un souci de simplification, nous nous contenterons d'une dizaine de postes pour effectuer notre simulation. Le rseau du service Comptabilit - Composition : 4 postes, attribus Alice, Bob, Cathy et Dave - quipement rseau : un commutateur dot de 9 ports - Adressage IP : 192.168.100.0 / 24 Adresses attribues : 192.168.100.11 192.168.100.14 Le rseau du service Marketing - Composition : 6 postes, attribus Eric, Fany, Gaby, Herv, Irma et Jack - quipement rseau : un commutateur dot de 15 ports normaux - Adressage IP : 192.168.200.0 / 24 Adresses attribues : 192.168.200.15 192.168.100.20 Autre quipement : un routeur assure la liaison entre les deux rseaux. Les interfaces seront configures avec l'adresse la plus haute pour chacun des sous rseaux. Pour chaque test de votre configuration, effectuez les simulations en mode pas de dmonstration , puis en mode pas pas pour bien comprendre les mcanismes mis en uvre.

http://www.reseaucerta.org

-CERTA - juin 2011

Page 2/11

Mise en place de linfrastructure physique (Couche 1 et 2) et rseau (Couche 3)

192.168.100.11 / 24

192.168.100.14 / 24 192.168.200.15 / 24

192.168.200.20 / 24

192.168.100.254 / 24

192.168.200.254 / 24

NB : Ne pas oublier d'affecter la passerelle par dfaut chaque machine. Test de la configuration IP (Couche 3 IP) Pour vrifier la bonne configuration de l'inter-rseau, notamment du routage IP, effectuer quelques tests comme ceux-ci : Tester l'efficacit de la communication rseau (commande Ping) : o depuis le poste de Bob vers celui d'Alice o depuis le poste de Bob vers celui de Fany L'aller-retour se fait il correctement ? Ajout de deux postes SERVEURS Ajouter deux postes sur le rseau marketing. Ces postes joueront respectivement le rle de : serveur d'application web pour le premier : - Configuration du nom : Srv Web - Configuration IP : 192.168.200.1 / 24 serveur de base de donnes pour le second : - Configuration du nom : Srv BD - Configuration IP : 192.168.200.2 / 24 Ces deux serveurs doivent tre accessibles non seulement depuis le rseau du service Marketing, mais aussi depuis le rseau du service Comptabilit.

http://www.reseaucerta.org

-CERTA - juin 2011

Page 3/11

Le rseau obtenu est schmatis ci-dessous :

192.168.200.1 / 24

192.168.200.2 / 24

Deuxime partie - Mise en place du serveur WEB


Un serveur WEB est une machine sur laquelle le service HTTP est l'coute de requtes http en provenance du rseau. Lapplication cliente d'un serveur HTTP est gnralement un logiciel navigateur. Lorsqu'un utilisateur saisi une URL dans la barre d'adresse, il met une requte destination du service HTTP actif sur un serveur. Par dfaut, le service HTTP utilise le port 80, mais il est possible d'utiliser un autre port, soit pour des raisons de scurit, soit parce qu'un serveur assure ce service pour diffrents sites web. Nous allons effectuer les oprations suivantes : Mettre en place le service HTTP sur "Srv Web" Installer un navigateur sur le poste de Fany pour tester le bon fonctionnement du serveur WEB. Mise en place du serveur WEB En mode Transport, vrifier la liste des ports couts sur SrvWeb.
(clic droit sur SrvWeb, menu Tables, sous-menu Ports couts)

Cette liste devrait tre vide.

En mode Application, installer le service WEB sur SrvWeb en procdant de la manire suivante : o o o o Clic droit / Logiciels installes sur SrvWeb, Slectionner "Serveur http" dans la liste des logiciels serveurs, Cliquer sur "installer" Cliquer ensuite sur "administrer" pour vrifier le paramtrage par dfaut du service.

http://www.reseaucerta.org

-CERTA - juin 2011

Page 4/11

Vous notez dans la configuration du serveur http que : - par dfaut le service HTTP coute bien sur le port 80, - le service dmarre automatiquement. NB : Pour l'instant, on laisse de ct les informations de connexion un SGBD. Vrifier, en mode Transport, la liste des ports couts :
Dsormais, la machine SrvWeb est bien en coute sur le port 80.

Pour personnaliser notre serveur WEB, nous allons crire nos propres pages web, ou plutt modifier les pages WEB dj prsentes sur le serveur. Comme vous vous en doutez, les pages sont stocks sur le disque dur du serveur, plus prcisment dans le dossier c:\www.
Procder de la manire suivante (en mode application) : o o o Clic droit / Disque dur sur SrvWeb Slectionner le rpertoire hbergeant les pages web (c:\www), puis le fichier concern, Modifier la partie variable, par exemple comme suit pour la page f001.html :

Voici quelques propositions pour les 5 premires pages WEB (nous nous occuperons des autres ultrieurement) : Fichier f001.html f002.html f003.html f004.php f005.html Modification propose

http://www.reseaucerta.org

-CERTA - juin 2011

Page 5/11

Installation du navigateur sur le poste de Fany En mode Application, installer le navigateur WEB sur Fany en procdant de la manire suivante : o Clic droit / Logiciels installes sur Fany, o Slectionner "Navigateur" dans la liste des logiciels clients, o Cliquer sur "installer" Il n'y a pas de paramtre supplmentaire configurer pour ce logiciel. Tester le bon fonctionnement du navigateur WEB : o Clic droit / Navigateur sur "Fany" o Taper les URLs des pages HTML que vous avez modifies dans l'tape prcdente.

Exemple de rsultat (pour la page f001.html)

obtenu

Modification du port d'coute pour le service HTTP Nous avons constat : 1. Que le serveur WEB coute par dfaut sur le port 80 2. Que le navigateur contacte bien galement par dfaut le serveur WEB sur le port 80 (que l'on ne spcifie donc pas) puisque c'est le port habituel de destination pour une requte HTTP.
Configurer le serveur pour qu'il n'coute plus sur le port 80 mais le port 8080 par exemple : o o o o Clic droit / Logiciels installs sur SrvWeb Slectionner Serveur HTTP et cliquer sur Administrer Modifier le n de port d'coute et valider Verifier ensuite (en mode Transport) les ports couts sur SrvWeb :

http://www.reseaucerta.org

-CERTA - juin 2011

Page 6/11

Accs au serveur WEB sur le port 8080


Vrifier que le serveur ne rpond plus sur le port par dfaut (80)

Si on ne spcifie pas le port par dfaut, c'est le port 80 qui est utilis

autrement dit l'URL http://192.168.200.1 est quivalente l'URL http://192.168.200.1:80

Vrifier que le serveur rpond bien sur le port par 8080 (il faut obligatoirement le spcifier, le navigateur ne peut pas le deviner)

Pour se dispenser de spcifier le port dans la partie suivante, revenir l'tat antrieur : coute du serveur WEB sur le port 80.

Installation du navigateur sur le poste de Bob


Le fait que le poste o se situe le navigateur soit dans le mme rseau IP que le serveur WEB est sans importance. Pour vous en assurer, installez un navigateur sur le poste de Bob (rseau comptabilit) et recommencez les mmes manipulations.

http://www.reseaucerta.org

-CERTA - juin 2011

Page 7/11

Troisime partie - Mise en place du SGBDR


Un serveur de base de donnes est une machine sur laquelle un SGBDR est l'coute de requtes de type SQL. Le client d'un SGBDR est un applicatif, comme un requteur SQL par exemple. Le simulateur implmente un requteur SQL qui permettra de tester des requtes SQL simples. Par dfaut, le SGBDR du simulateur utilisera le port 1403, mais il est possible d'utiliser un autre port. Nous allons effectuer les oprations suivantes : Mettre en place le service SGBDR sur "SrvBD" Installer un requteur SQL sur le poste de Jack pour tester le bon fonctionnement du SGBDR. Installation du SGBDR sur le serveur "SrvBD" En mode Transport, vrifier la liste des ports couts sur SrvBD.
(clic droit sur SrvWeb, menu Tables, sous-menu Ports couts)

Cette liste devrait tre vide.

Installer le SGBDR sur SrvBD.


(clic droit sur SrvWeb, menu Logiciels installs)

o o o

Slectionner SGBDR Cliquer sur "installer" Cliquer ensuite sur "administrer" pour visualiser les diffrents possibilits de configuration de ce service.

Noter le port d'coute par dfaut pour ce service.

Affecter un mot de passe l'utilisateur de la base de donnes.

Renommer la table en "ARTICLE".

Etudier la structure de la table exemple.

Examiner le contenu de la table exemple.

http://www.reseaucerta.org

-CERTA - juin 2011

Page 8/11

Installation du requteur SQL Installer le logiciel client de la base de donnes sur le poste de "Jack".
(clic droit sur Jack, menu Logiciels installs) o Slectionner Requeteur SQL o Cliquer sur "installer" o Cliquer ensuite sur configurer pour vrifier qu'il est bien configur pour se connecter sur le port 1403 :

Noter qu'il est possible de dfinir la connexion par dfaut, pour viter de saisir les paramtres lors de l'utilisation du requteur.

Utilisation du requteur SQL Lancer le requteur SQL :


o clic droit / Requteur SQL sur "Jack" o Saisir les paramtres de connexion (si ncessaire) et cliquer sur connecter o Une fois la "Connexion effectue", tester diffrentes requtes (cf. ci-dessous) :

Requte de comptage du nombre de lignes

Projection sur tous les champs

Projection sur un champ DESIG (nom erron)

Projection sur le champ DESIGNATION

NB : Vous remarquez divers allers-retours pour montrer qu'un jeu d'enregistrements peut ncessiter plusieurs trames (mme si dans la ralit ce n'est pas forcment une par ligne).
http://www.reseaucerta.org -CERTA - juin 2011 Page 9/11

Quatrime partie Mise en place de l'architecture 3 tiers


On parle de client/serveur N-tiers quand plusieurs applications collaborent entre elles en communiquant pour rpondre aux besoins des utilisateurs. Une application qui offre un service est dite serveur , une application qui sollicite un service est dite cliente . Lapplication cliente envoie une requte lapplication serveur, laquelle rpond en retournant au client un rsultat. Gnralement, une architecture N-tiers sur le plan logiciel correspond une architecture matrielle de type N-tiers, c'est--dire faisant intervenir N machines. Concrtement, pour le cas qui nous occupe, nous allons mettre en place l'infrastructure classique correspondant au client/serveur WEB appel parfois client/serveur universel : - Un navigateur sollicite en tant que client HTTP le service HTTP fourni par un serveur WEB. - Le serveur WEB ne se contente pas de renvoyer des pages ; il effectue un traitement, il excute des programmes cods en langage PHP, ASP, etc pour produire des pages. A ce titre il peut tre considr comme un serveur d'application. - Le serveur WEB peut avoir besoin de donnes pour alimenter les pages qu'il construit. A ce titre il est client d'un SGBDR : il sollicite le service fourni par un SGBDR qui va excuter les requtes transmises par le serveur WEB. - Le SGBDR fournit donc bien un service Le simulateur permet de mettre en place une architecture de ce type :

URL Traitement SrvWeb


(serveur HTTP, serveur dapplication)

SQL BD Donnes SrvBD


(serveur de Base de donnes)

Page
Poste de

Fany

Nous allons effectuer les oprations suivantes : Configurer le serveur WEB comme client du serveur de bases de donnes. Modifier l' "application WEB" pour qu'elle accde la base de donnes contenant la table ARTICLE. Cette modification va consister en fait adapter le code des pages PHP. Tester le bon fonctionnement de l'enchanement des requtes HTTP et SQL en appelant la page PHP depuis le poste de Fany.

Configurer SrvWeb comme client du service BD de SrvBD


En mode Application, vrifier la configuration du serveur HTTP : Elle permet de spcifier sur quel port le serveur de Base de donnes sera contact. Nous utilisons le port 1403. Dans la ralit, il s'agirait sans doute plutt de configurer un alias de base de donnes associ une source ODBC propre au type de SGBD utilis (logiciel mdiateur).

http://www.reseaucerta.org

-CERTA - juin 2011

Page 10/11

Modifier la page PHP accdant la base de donnes. Il faut modifier la page PHP pour indiquer : o L'adresse IP du serveur de base de donnes auquel on veut se connecter (192.168.200.2), o Le login et le mot de passe de l'utilisateur accdant la base de donnes (root / mdp), o Le nom de la table laquelle on souhaite accder (ARTICLE). En mode Application, accder au disque dur du serveur WEB (SrvWeb) et modifier la page f008.php comme suit :

Cette page permet de renvoyer les articles dont le code est situ entre deux valeurs. La page f007.html est un formulaire permettant prcisment : - de saisir la plage de codes souhaite - de lancer ensuite la page f008.php Pour tester la page PHP accdant la base de donnes : o Lancer le navigateur sur le poste de Fany o Appeler la page f007.html o Saisir les codes voulus et cliquer sur submit pour obtenir le rsultat de l'appel de la page f008.php.
Appel de la page f007.html, Saisie des codes A et B dans la page HTML, submit La page PHP renvoie seulement 2 articles sur 3 car le code du 3me article est "C" et n'appartient pas l'intervalle.

NB : Noter bien le fonctionnement des changes : la machine "Fany" appelle la page HTML qui lui est retourne. Le clic sur submit dclenche la demande de la page PHP qui elle-mme va faire appel au SGBDR et donc ncessiter plusieurs aller-retour entre SrvWeb et SrvBD avant que SrvWeb ne puisse retourner la page WEB rsultant du traitement du code PHP.
http://www.reseaucerta.org -CERTA - juin 2011 Page 11/11

You might also like