Protokół adaptacji treści internetowych

  Internet Content Adaptation Protocol ( ICAP ) to lekki protokół podobny do HTTP , określony w RFC 3507 , który służy do rozszerzania przezroczystych serwerów proxy , uwalniając w ten sposób zasoby i standaryzując sposób wdrażania nowych funkcji. Protokół ICAP jest zwykle używany do implementacji skanowania antywirusowego i filtrów zawartości w przezroczystych pamięciach podręcznych proxy HTTP. Adaptacja treści odnosi się do wykonywania określonej usługi o wartości dodanej (manipulowanie treścią) dla powiązanego żądania/odpowiedzi klienta.

ICAP koncentruje się na wykorzystaniu urządzeń brzegowych ( serwerów proxy buforujących ), aby pomóc w świadczeniu usług o wartości dodanej . U podstaw tego procesu leży pamięć podręczna, która będzie pośredniczyć we wszystkich klientów i przetwarzać je za pośrednictwem serwerów sieciowych . Te serwery ICAP koncentrują się na określonej funkcji, na przykład wstawianiu reklam, antywirusowym , skanowaniu multi-AV, tłumaczeniu treści, tłumaczeniu języków lub filtrowaniu treści . Przeniesienie usług o wartości dodanej z serwerów sieciowych na serwery ICAP umożliwia skalowanie tych samych serwerów sieciowych zgodnie z surową przepustowością HTTP zamiast konieczności obsługiwania tych dodatkowych zadań.

Historia

ICAP został zaproponowany pod koniec 1999 roku przez Petera Danziga i Johna Schustera z Network Appliance . Don Gillies przejął projekt wiosną 2000 roku i udoskonalił protokół na trzy główne sposoby:

  • Aby zezwolić na potokowe serwery ICAP. Jedna strona internetowa może być szybko przesyłana strumieniowo przez serwery antywirusowe, filtrujące zawartość i tłumaczące języki.
  • Aby obsługiwać wszystkie 3 kodowania treści (długość treści, fragmentacja i zamknięcie protokołu TCP) w HTTP 1.1. Zastąpiło to oryginalny protokół przechowywania i przekazywania ciągłym strumieniowaniem treści przez wiele serwerów jednocześnie.
  • Udostępnienie funkcji zwanej „podglądem treści”, która umożliwiła serwerowi ICAP przejrzenie pierwszych kilkuset bajtów treści przed podjęciem decyzji o przetworzeniu treści. Zostało to zaimplementowane przez osadzenie rozmiaru argumentu podglądu w adresie URL serwera WWW ICAP, gdy jest on skonfigurowany na kliencie ICAP.

Gillies opracował prototyp pierwszego klienta i serwera ICAP dla serii internetowych pamięci podręcznych NetCache w połowie 2000 r. (znany jako protokół ICAP 0.9) i wyprodukował materiały szkoleniowe dla dostawców. Klient został napisany w języku C++ w rdzeniu serwera NetCache, a demonstracyjny serwer ICAP został napisany w języku Perl i wykorzystywał filtry wymiany słów Debiana do przepisywania stron internetowych, pomijania znaczników HTML i tłumaczenia stron internetowych na szwedzki język Chef lub jive w czasie rzeczywistym. Wykorzystując wiedzę zdobytą podczas tworzenia prototypów, Gillies zrewidował projekt standardu IETF, aby RPC używały tylko fragmentarycznego kodowania, znacznie upraszczając protokół ICAP.

Linki zewnętrzne