Info 2i�meann�e |
C
lient
S
erveur en
I
ntranet
|
septembre2002 |
Internet / intranet / infranet

I. Internet
Les échanges se font en utilisant le protocole IP
I.1 Applications classiques simples
I.2 Les applications récentes sur Internet.
- Les applications de recherche d'informations sur le Web
(moteurs d'indexation et de recherche) deviennent indispensables.
Le langage HTML permet difficilement d'extraire automatiquement
l'information contenue dans une page, et un nouveau langage XML
(extensible mark-up language) émerge pour palier ce défaut.
C'est toujours un langage de balises, mais de nouvelles balises
peuvent être définies dans un document; un document XML se compose
de 2 parties:
- une partie définissant une structure logique appelée DTD
(document type definition)
- l'information proprement dite exprimée en utilisant cette
structure.
- Il y a quelques années, les applications audio et vidéo, trop
gourmandes en quantités d'octets à transférer, ne pouvaient être
utilisées en temps réel; des techniques de forte compression et
l'augmentation de la capacité du réseau ont permettent actuellement,
les communications audio et vidéo.
Codages et compression JPEG (joint photographics experts
group): l'information est comprimée avec plus ou moins de perte
d'information; la décompression est plus ou moins longue suivant
l'algorithme utilisée.; on peut avoir plusieurs modes de compression
en même temps (MPEG-2 MPEG-4).
- La téléphonie sur Internet: VOiP (voice on IP) prend de l'essor
car le média de transport est d'un prix de revient très bas.
- Les applications multipoints utilisées par exemple pour des
conférences ou du travail en groupe, commencent à être possible en
utilisant des routeurs 'multicast' et un réseau spécialisé MBONE
(multicast backbone); les protocoles permettant la dispersion et
l'acheminement des paquets IP entre routeurs évoluent pour augmenter
la sécurité des transferts.
- Internet va aussi être utilisé en masse par le commerce
électronique, et de multiples services orientés vers les particuliers.
1.3 Services Web
Un service Web est une application utilisable à distance, par l'intermédiaire
d'Internet; si nécessaire un système de facturation adapté doit être prévu.
Un inconvénient à l'essor des services Web en entreprise, réside dans la
dépendance vis à vis d'un fournisseur extérieur.
Il est possible, et sera de plus en plus fréquent, qu'un service utilise un
autre service; dans ce cas comment se fait la communication, c'est-à-dire
comment appeler un service, lui passer des informations et récupérer les
résultats?
Une application XML, appelée WSDL (web service description language),
permet de formaliser ces échanges.
Les protocoles utilisés dans des applications distribuées, et qui sont en
concurrence avec les services Web, sont: Corba, DOM et Java RMI.
- Exemple
Un site LL, "librairie en ligne" propose à ses clients l'expédition des
commandes, mais aussi le suivi en ligne de celles-ci. Quand un client
s'adresse à LL, il y aura un dialogue, en temps réel, entre LL et ses
prestataires:
- à la commande pour choisir le prestataire le moins cher ou le plus
rapide suivant le lieu de résidence du client;
- lors des interrogations ultérieures du client vers LL: le client
suit l'expédition mais ne s'adresse pas à l'expéditeur, car il ne
le connaît pas. Il est alors nécessaire que LL communique avec
l'expéditeur en précisant les références du colis, que le client n'a
pas à connaître.
-
Il faut que les applications 'Relation client' chez LL et 'Suivi de colis'
chez les expéditeurs communiquent en temps réel, quand le client s'adresse
au site Internet de LL.
- Dialogue entre applications
Modèle d'architecture distribuée bâti sur XML et RPC s'affranchissant des
coupe-feu par l'utilisation de HTTP.
A l'heure actuelle, il manque des mécanismes transactionnels.
Appel ou interface du service sont décrits dans le langage WSDL
(application XML); ces descriptions sont regroupées dans des annuaires
UDDI.
Sécurisation des échanges: chiffrage, authentification de l'expéditeur.
Enchaînement des processus (workflow) à normaliser (WFSL workflow service
language)
- Logiciels à développer
Si le service est autonome, il se développe avec les outils standards.
S'il fait appel à d'autres services, situés sur des machines extérieures
à l'entreprise, il faudra gérer la communication entre services (appel
et récupération des résultats) ainsi que l'enchaînement des services.
De plus il faut, après installation du service, évaluer sa fréquentation,
son utilisation, son prix de revient ... et gérer son évolution.
- Article introductif aux services Web:
Décision, Micro & réseaux n°487, nov.2001
I.4 Sécurité
Indispensable pour les transactions bancaires ou le commerce
électronique; solutions techniques:
- SSL (secure socket layer) implanté entre le client et le serveur
HTTP, s'appuie sur des algorithmes de chiffrement
- SHTTP (secure HTTP)
- IPSec permet un cryptage des trames circulant entre serveur et
serveur ou poste client, permettant de créer des réseaux privés dits
virtuels.
I.5 Bilan
- + faible coût
- + homogénéité
- + beaucoup d'information
- - performances quelquefois limitées (saturation, temps d'attente)
- - changements trop rapides dans les technologies
II. Intranet
Ce mot recouvre à la fois le réseau de communications interne à une
entreprise et le système d'informations mis en place en utilisant ce
réseau. Ce système doit être accessible par le personnel en tout lieu
de la même façon.
Des services de sécurité, de gestion, d'administration et
d'évolution du réseau sont nécessaires, et doivent se faire dans la
transparence pour les utilisateurs; l'augmentation des lignes de
communications haut débit autorise la continuité de service en cas
de pannes de certains appareillages.
Un regroupement d'informations ou entrepôt de données permet le partage
de tout le savoir de l'entreprise.
L'architecture client-serveur est utilisée depuis longtemps mais,
comme pour Internet, la partie client est réduite au rôle du navigateur
et la communication aux serveurs de données et de traitements passe
par l'intermédiaire de serveurs http.
L'installation de nouvelles applications et la maintenance des
applications existantes est facilitée par cette centralisation.
Le réseau d'entreprise peut être sans lien avec Internet, ou relié à
Internet par l'intermédiaire d'un fournisseur d'accès, ce qui empêche
les données internes d'être publiées. Enfin le réseau d'entreprise peut
posséder une adresse Internet et autoriser l'accès depuis l'extérieur
à certaines données locales, par l'intermédiaire de logiciel et
matériel spécialisé: les coupe-feux (firewall).
III. Infranet
Ces réseaux, à l'échelle individulle (PAN personnal area network) sont
destinés à gérer les équipements personnels: PC de bureau, PC portables,
fax, téléphones mobiles, mobiles WAP, machines domestiques, consoles
de jeu ... en utilisant des lignes de communication ou des liaisons
radio.
IV. Protocole HTTP, version 1.0 ou 1.1
Ce protocole est utilisé pour les échanges entre un navigateur (le
client), et un serveur Web. A partir de la version 1.0 des données au
format de type MIME peuvent être fournies par le serveur. A partir de
la version 1.1 la connexion n'est pas nécessairement fermée à la fin
de la réponse du serveur.
Le schéma ci-dessous montre comment la requête, émise par l'exécutable
coté client, passe à travers une machine (proxy) qui peut l'analyser
avant de l'envoyer sur le réseau, puis passe à travers une deuxième
machine (souvent un pare-feu) avant d'arriver au serveur Web
proprement dit.
-
Si la machine proxy fait office de cache, et qu'elle a la
ressource demandée par la requête, celle-ci n'est pas envoyée sur
le réseau et la réponse est fournie directement par la fonction de
cache.
exécutable client |
requête == > |
|
réseau: proxy passerelle tunnel
|
|
requête == > |
exécutable serveur |
netscape internet.explorer |
réponse < == |
|
|
réponse < == |
apache internet server |
Ce shéma montre également, comment la réponse transite par le
pare-feu, avant d'être sur le réseau.
IV.1 Requête
La requête du client contient 4 parties:
- une entête indiquant la
méthode, la ressource demandée et la version du protocole comme
ci-dessous:
GET /index.html HTTP/1.0
- des informations sur le client, qui seront présentées
comme une suite de lignes contenant chacune un nom de champ et
sa valeur. Par exemple:
User-Agent: libwww/5.1
Accept: image/gif, image/x-xbitmap, image/jpeg
- une ligne vide
- le corps de la requête qui peut être vide.
Par exemple avec un navigateur et un formulaire utilisant la méthode
POST , l'entité contient les informations tirées des champs
du formulaire remplis par un utilisateur.
IV.2 Réponse
La réponse du serveur contient également quatre parties:
- une entête contient un ligne
d'état, comme par exemple:
HTTP/1.0 200 OK
- des informations supplémentaires sur la réponse, la ressource
et le serveur. Exemple
Server: Apache/1.3.6 (Unix) PHP/3.0.7
Last-Modified: Mon, 17 MAY 1999 15:46:21 GMT
Content-Length: 10352
Connection: close
Content-Type: text/html; charset=iso8859-1
- une ligne vide.
- le corps de la réponse, à savoir les données du document.
IV.3 Quelques serveurs HTTP
Quelques serveurs http: Apache, Microsoft iis, Netscape enterprise,
Java web server, Oracle web server
Le rôle premier du serveur HTTP est de traiter le protocole HTTP,
mais avec l'aspect dynamique de l'information, fournir une simple
page HTML n'est plus le seul rôle du serveur.
Un serveur fonctionne toujours avec des modules
complémentaires qui peuvent d'ailleurs être, en taille, plus gros que
lui. Le serveur HTTP ne sert que de relai, qui décode la
requête, puis l'envoie à un module qui la traite; la réponse du module
transite à nouveau par le serveur HTTP qui l'enveloppe pour la
mettre au format HTTP avant de l'envoyer sur le réseau.
Il existe des modules sollicités pour interpréter des fichiers textes
(fichiers *.asp, *.php, *.jsp) et des modules qui vont exécuter ou
interpréter des traitements (modules CGI, classes java-servlets, ...).
V. Site Web
Une définition peut être: ensemble de fichiers accessibles en utilisant
un serveur Web (ou serveur Http), implanté sur une machine qui possède
une adresse Internet.
- Dans les premiers temps de l'Internet, le serveur se limitait à
récupèrer les fichiers écrit en langage Html, référencés par les Url et
à les renvoyer directement. On avit des pages statiques.
- Depuis le contenu des fichiers s'est enrichi; on trouve:
- du texte écrit en langage HTML
- le texte en langage Html et des instructions Javascript (ou Vbscript)
- le texte en langage Html, les instructions Javascriptt(ou Vbscript) et des
appels à des classes Java appelées applets.
- Actuellemnt les pages sont dynamiques: l'Url founie par
le client ne désigne plus nécessairement un fichier 'texte'; elle
peut désigner:
- un exécutable communiquant avec le serveur HTTP par CGI
(common gateway interface), écrits en C, ou Perl, ou ...
- une page contenant du code interprété par le serveur (ASP
ou active server page, PHP, JSP ou java server page), ou par un
module annexé au serveur.
- une classe Java, appelée servlet, interprétée par un
module 'JServ' (machine java activée par le serveur HTTP), exécutée
suite à une requête GET ou POST, ou par la balise SERVLET.
Dans ce cas, le serveur, éventuellement assisté d'autres
modules, élabore la 'page' retournée au client.
Enumérons un certains nombres d'activités liées à un site Web.
- définir une norme de présentation pour les pages du site, et une
ligne éditoriale; maintenir le site: vérifier le contenu des pages,
actualiser ...
- donner les outils aux auteurs des pages pour avoir une
présentation uniforme des pages, gérer les protections d'accès à
travers le serveur; gérer les autorisations d'accès aux informations
protégées
- analyser l'intérêt du site (statistiques des pages lues, des
pages utilisées pour accéder au site ...), évaluer la charge dans
le temps, lire le courrier et y répondre ...
- programmer un nouveau service (avec C, Perl, Php, Java, Asp,
Jsp, Plsql, ...):
- nécessitant l'accès à une base locale
- nécessitant l'accès à un autre serveur Web (réservation de place d'avion)
- actualiser une base locale
VI. Techniques du Web présentées sur ce site
2. Ecriture de pages html
3. Programmation du coté du serveur web
Programation en java:
les servlets et un
moteur (sur un serveur web);
cours d'amphi

Annexes
Voici, en complément, quelques éléments
d'actualité en 2002 sur
le Web ainsi qu'un
glossaire
de quelques termes liés aux réseaux et au Web.
Tout un site: http://www.creation-site-internet.info/jdbc.htm
Références

Mise � jour: 12/15/2016 09:52:12 | |  |
Roger Astier
. . .
mel(roger.astier@free.fr), tel(), fax()