Internet Content Adaptation Protocol

L'Internet Content Adaptation Protocol (ICAP) est un protocole mis au point en 2000 par un consortium comprenant entre autres les sociétés Network Appliance, Akamai Technologies et Novell.

L'objectif du protocole est de fournir une interface générique pour la communication avec les solutions de filtrage de contenu sur Internet.

Historique

I-CAP a été introduit en 1999 par Peter Danzig et Jhon Schuster, puis développé par l'ICAP Forum, un groupement de sociétés technologiques[1]. Il est basé sur le protocole http[2].

Principe de fonctionnement

Le protocole ICAP, standardisé par la RFC 3507[3], définit une interface normalisée entre des équipements réseau jouant le rôle de client (serveur mandataire, pare-feu, passerelles de sécurité), et des équipements de services (serveurs ICAP) dont l'objectif est l'analyse et l'adaptation en temps réel des flux Web.

Inspiré par le protocole HTTP 1.1, dont il reprend certaines méthodes, le principe de fonctionnement du protocole ICAP est assimilable à une interface de type service Web comme SOAP. Cependant, son objectif étant l'analyse et l'adaptation des flux HTTP en temps réel, le protocole ICAP se distingue par les caractéristiques suivantes :

  • une implémentation dite légère, visant à minimiser la surcharge liée à l'encapsulation du trafic HTTP ;
  • un mode transactionnel simple, sans multiplexage ;
  • des fonctionnalités de prévisualisation des données (mode Preview) et d'interruption anticipée des traitements (réponses 204, 206) permettant de limiter les échanges entre les clients et serveurs ICAP.

D'un point de vue architectural, le protocole ICAP reprend les concepts spécifiés à l'IETF par le groupe de travail OPES (Open Pluggable Edge Services). Basée sur une architecture en étoile où le client ICAP, au centre, joue un rôle de routeur applicatif distribuant le trafic vers des services externes, l'architecture ICAP permet ainsi :

  • de dimensionner de manière indépendante les services et les équipements réseau ;
  • de gérer les notions de redondance et de répartition de charge.

Certains travaux ont cherché à étendre le support d'ICAP à des protocoles autres que le HTTP, en particulier le SMTP (pour le courrier électronique). Bien qu'implémentés par certains produits commerciaux comme WebWasher, ces travaux n'ont cependant jamais été normalisés et ont été abandonnés au profit d'autres normes comme le protocole OCP (Open Pluggable Edge Services Callout Protocol, RFC 4037[4]).

L'ICAP est considéré comme le plus représentatif des protocoles adaptatifs[5].

Une variante du protocole ICAP est appelée eCAP, avec "e" signifiant embeded: l'idée est de supprimer le besoin d'un serveur ICAP, pour le remplacer par des modules embaraqués, ce qui permet de limiter le besoin de bande passante[6].

Cas d'utilisation

Un fournisseur d'accès à Internet peut utiliser un mandataire (proxy) HTTP transparent et modifier le contenu web reçu par l'utilisateur via un serveur ICAP dans le but :

  • d'insérer de la publicité au sein de pages web ;
  • de détecter la présence de contenus malveillants et prévenir l'utilisateur en insérant une mise en garde et en supprimant le contenu suspect.

Notes et références

  1. Ubiquitous Computing, Ed. Edward Babkin, 2005 (ISBN 9789533074092) p. 68-69
  2. Content Networking in the Mobile Internet, 2004 (ISBN 9780471478287) p. 251
  3. (en) Request for comments no 3507
  4. (en) Request for comments no 4037
  5. Quality-Based Content Delivery Over the Internet, Xiang Li, Jianhua Li, 2011 (ISBN 9783642191466) p. 21-22
  6. Internet Infrastructure - Networking, Web Services, and Cloud Computing, Richard Fox, Wei Hao, 2017 (ISBN 9781351707176) p. 403

Voir aussi

Liens externes