Groupe
VP-GL
Cours
en-ligne
Gestion d'un site
Web
Plan du
cours
Serveurs
Proxy
Serveurs mandataires ("Proxy")
-
Proxy = logiciel servant d'intermédiaire entre un client WWW (Netscape,
Mosaic, etc.) et le reste de l'Internet. Il faut bien entendu que le client
soit configuré pour avoir connaissance du proxy.
-
Très utile lorsqu'un site se trouve derrière une "barrière
anti-feu" (firewall)
-
Quel que soit le protocole d'une URL, le client communique avec le serveur
proxy via le protocole HTTP et c'est le serveur proxy qui communiquera selon
le protocole ad-hoc avec le serveur à distance qui est mentionné
dans l'URL
-
Il est généralement possible de configurer le client pour qu'il
accède à certains serveurs sans passer par le proxy (par exemple
pour accéder à des serveurs qui se trouveraient dans l'enceinte
du mur pare-feu)
-
Le serveur proxy gère généralement un cache disque qui
permet d'éviter plusieurs accès externes lorsque plusieurs
utilisateurs du proxy accèdent aux mêmes documents (il est question
de 20-40% d'économie au niveau du trafic externe)
-
Les serveurs proxy peuvent être configurés en une hiérarchie
permettant à un proxy "local" d'avoir accès à des proxys
"frères" et des proxys "parents". Lorsque le proxy local doit fournir
un document qu'il n'a pas dans son cache, il demande d'abord à ses
proxys "frères" s'ils ont le document en question. Si un d'eux l'a,
il le fournira au proxy local qui, à son tour, le fournira à
la machine cliente. Si aucun des proxys frères n'a le document, le
proxy local s'adresse alors à un proxy "parent", lequel procèdera
de façon similaire en relayant la requête au niveau
hiérarchique supérieur. La requête peut ainsi remonter
de proxy en proxy (local, régional, national, continental) jusqu'à
ce qu'un proxy ait le document demandé, ou que le document n'est pas
dans le domaine d'un des proxys parents, ou que le dernier proxy sollicité
n'ait pas de proxy parent. Si le document n'a pas été
trouvé dans le cache d'un des proxys, le dernier proxy contacté
s'adressera directement au site mentionné dans l'URL et fournira
alors le document reçu à son descendant direct qui le lui a
demandé, lequel le retransmettra à son descendant direct et
ainsi de suite, jusqu'à ce que le document parvienne à
l'utilisateur qui l'aura initialement demandé.
-
Un proxy ne transmet une requête à un de ses proxys parents
que si le document demandé est encore du ressor du ou des parents
en question. P.ex. un document résidant sur un serveur suisse et
demandé par un utilisateur suisse ne sera jamais demandé au
proxy national, ni au proxy continental. Le proxy local va interroger ses
"frères" proxys locaux suisses et, en cas de réponse
négative, va directement demander au serveur (suisse) où
réside le document. Si un utilisateur suisse demande un document
résidant sur un serveur français, la requête va
potentiellement être transmise au serveur proxy suisse de niveau national,
lequel pourra éventuellement interroger son "frère" français
de niveau national. Si ce dernier n'a pas le document dans son cache, le
serveur proxy national (suisse) enverra la requête au serveur
français où le document réside et transmettra ensuite
le document au serveur proxy local de l'utilisateur, lequel transmettra enfin
le document à l'utilisateur. Ce n'est que pour des requêtes
provenant d'Europe et pour des documents ne résidant pas sur un serveur
européen que le serveur proxy au niveau européen interviendra.
-
Un serveur proxy est généralement configuré pour ne
pas vérifier ailleurs que dans son cache si la copie se trouvant dans
son cache est suffisamment récente (TTL=Time To Live, souvent de l'ordre
de cinq minutes). Cela vaut même pour des réponses contenant
des messages d'erreur. P.ex. si un proxy a eu un "timeout" lors de l'accès
à un document, pendant un certain laps de temps, une nouvelle
requête pour le même document recevra le message d'erreur se
trouvant dans le cache, même si le site où réside le
document est de nouveau accessible.
-
Internet draft: Web Cache Coordination Protocol V1.0
(copie
locale)
-
Internet draft: Cachebusting - cause and prevention
(copie
locale)
-
Cooperative Hierarchical
Object Caching (CHOC - projet européen pour un réseau
de proxys coopérants)
-
Squid Internet Object
Cache. Voir aussi
SQUID mailing list archive.
-
ircache mailing list
archive.
-
La Cache page de SingNet (beaucoup
de pointeurs utiles vers des sources d'information en relation avec les proxys)
-
Internet Draft draft-ietf-wrec-taxonomy-03.txt:
Internet
Web Replication and Caching Taxonomy
-
Internet Draft draft-ietf-wrec-known-prob-01.txt:
Known
HTTP Proxy/Caching Problems
-
RFC 2186: Internet Cache Protocol
(ICP), version 2, voir aussi le site
Internet Cache Protocol
-
RFC 2756: Hyper Text Caching Protocol (HTCP/0.0)
-
Lessons
Learned Administering Netscape's Internet Site (protégé
par mot de passe), par Michael Baentsch, Lothar Baum, Georg Molter, Steffen
Rothkugel et Peter Sturm (copie locale accessible
sans mot de passe uniquement depuis la Suisse). Attention: document PDF
nécessitant Acrobat Reader.
-
Caching Proxies:
Limitations and Potentials, Marc Abrams, Charles R. Standridge,
Ghaleb Abdulla, Stephen Williams, Edward A. Fox,
4ème
conférence WWW.
-
Performance
Engineering of the World Wide Web: Application to Dimensioning and Cache
Design, Jean-Chrysostome Bolot, Philipp Hoschka;
5ème
conférence WWW
Bertrand Ibrahim
Dernière modification: 20.02.01
Site Hosting: Bronco