Web caching in a pervasive Computing world

publicité
Hella BENGAIDA
Metacomputing
21/02/2003
RAPPORT DE SECRETAIRE
Dans la séance du 21 février 2003 deux articles ont été présentés, le premier parle de cache
dans Internet, et des adaptations en fonction du client. Le second présente un ensemble
d’outils de programmations sur les grilles de calcul.
Web caching in a pervasive Computing world
Cet article est rédigé par Sven Buchholz et Alexander Schill, il propose une nouvelle
solution contre la congestion du réseau et l’ « overloading », dans les milieux pervasifs.
Dans ces milieux, il faut adapter la présentation des documents aux capacités des systèmes
d’information et de communication, c’est ce qu’on appelle adaptation de contenu.
Les travaux précédents ont tourné principalement autour de systèmes hiérarchiques de web
caching tel que le proxy caching, et présentaient certains problèmes tel que le stockage de
manière redondante des documents. Il fallait donc trouver des systèmes qui tiennent en
compte l’adaptation du contenu.
L’approche proposée par l’article est un système qui joint le web caching à l’adaptation du
contenu : « adaptation-aware web caching ». C’est une architecture de proxys caching
hiérarchiques et indépendants, qui permet de cacher des contenus adaptés, partiellement
adaptés ou génériques. Ce sont des services d’adaptation de contenu gérés par les proxys qui
font l’adaptation. Les proxys exploitent des relations entre des représentations différentes
d’un document pour le caching plus intelligent. L’adaptation est automatique, chaque proxy a
un service d’adaptation spécialisé en une certaine adaptation. Près du serveur l’adaptation est
générique, et près du client elle est spécifique orientée client. La communication horizontale
entre les proxys se traduit par l’échange des informations entre caches.
L’approche est intéressante car on s’intéresse au contenu sémantique du document à cacher,
mais elle n’a pas résolu les problèmes de sécurité, d’intégrité des documents : quand le proxy
fait une adaptation il modifie le document. Elle reste aussi une architecture hiérarchique donc
elle pose le problème de bottelneck au niveau haut de la hiérarchie. De plus les auteurs n’ont
pas pris en compte les méta données sur l’utilisateur et le document pour améliorer l’efficacité
du caching. On pourrait se demander également quand on parle de chemin entre client et
serveur de la problématique : Comment imagine-t-on ces adaptations dans des routeurs
« actifs », ou sont ils des traitements ? Sont-ils peu coûteux ou faut-il une machine robuste
pour gérer ceci ? Cette approche serait une application distribuée et non chaque machine fait
son adaptation !
Finalement cette approche n’est pas encore évaluée, elle reste un thème de recherche, et n’a
pas fait preuve d’expérimentations. Elle paraît également incomplète, au niveau des réflexions
sur comment router les proxys, les remplacer, comment se fait l’adaptation entre caches !
On peut finalement se poser la question sur le lien entre le web caching et le grid computing ?
On pense que le Grid computing et le pervasive computing vont converger dans le type de
services. On pense par exemple à l’adaptation de contenu répartis sur grille de calcul pour
médecin !
1
Une grille est une gestion répartie de calcul, l’idée d’adaptation de contenu et de gestion de
contenu est intéressante pour le Grid Computing. On pense que la manière de faire la grille et
la manière dont sera faite Internet dans quelques années sera presque la même à part bien sur
des notions de sécurité et d’intégrité. Dans l’adaptation le cache serait de plus en plus
intelligent, sécurisé (type de contenu, gestion de contenu), si ceci ne se fait pas, le client sera
« bombardé », et sera obligé de tout faire lui-même.
Programming the grid: Distributed software components, P2P
and grid web services for scientific applications
Cet article est rédigé par Dennis Gannon, Randall Bramley et Geoffrey Fox & al. Ils
proposent un ensemble de techniques qui peuvent améliorer les applications scientifiques sur
les grilles, à cause des difficultés posées par l’hétérogénéité des applications et des machines
et l’interaction complexe entre les services de la grille.
Une technique est l’architecture basée sur la notion de composant proche de la notion objet,
un composant étant une entité logicielle qui exécute une tâche simple. . Il implémente des
interfaces pour pouvoir interagir avec d’autres composants. Les autres techniques sont : les
services web, le Simple Object Access Protocol, l’Universal Description Discovery and
Integration et enfin le P2P.
Dans cet article les auteurs paraissent partir dans tous les sens sans converger vers une
solution finale. Il n y a ni expérimentations ni comparaison vraie avec l’existant déjà en
exploitation, tel que Globus ou Legion. On se demande aussi comment rendre un code
existant comme composant, de plus la fiabilité des composants est mise à l’épreuve : si une
application a besoin d’un composant qui n’est pas disponible !
Par ailleurs, l’article est assez pauvre, il paraît comme un article de synthèse, mais sans
d’autres articles il est difficile d’en sortir les principales idées. De plus il présente un modèle
orienté composant existant depuis longtemps( CORBA). On ne voit pas clairement ce qu’il
apporte justement par rapport à CORBA.
Toutefois, il contient une vision cohérente entre différents modes de programmations sur la
grille, et met en avant la mise en service de la grille. Les chercheurs de Globus ne se sont pas
posés des questions sur la programmation ils ne se sont intéressés qu’à l’aspect infrastructure.
Cet article essaie donc de faire le point sur ce type de programmation : Comment mélanger
des mécanismes de P2P et des mécanismes de client serveur ou d’interopérabilité de web
services ? Comment faut il les programmer ? La difficulté reste tout de même dans le lien
absent toujours entre ceux qui s’intéressent au haut niveau de la grille, à l’architecture et ceux
qui s’intéressent au concept de programmation.
2
Téléchargement