Протокол адаптації Інтернет-контенту

Протокол адаптації Інтернет-контенту (Internet Content Adaptation Protocol, ICAP) — це легкий HTTP-подібний протокол, зазначений у RFC 3507, який використовується для розширення прозорих проксі-серверів, тим самим звільняючи ресурси та стандартизуючи спосіб впровадження нових функцій. ICAP зазвичай використовується для впровадження антивірусного сканування та фільтрів вмісту в прозорих кешуючих HTTP-проксі. Адаптація вмісту[en] відноситься до виконання конкретної послуги з доданою цінністю (маніпулювання вмістом) для відповідного запиту/відповіді клієнта.

ICAP зосереджується на використанні периферійних пристроїв (кешуючих проксі -серверів), щоб допомогти надати додаткові послуги. В основі цього процесу лежить кеш, який передає всі клієнтські транзакції та оброблятиме їх через веб-сервери. Ці сервери ICAP зосереджені на певній функції, наприклад, вставці реклами, скануванні на наявність вірусів, перекладі вмісту, мовному перекладі або фільтрації вмісту. Перенесення додаткових послуг з веб-серверів на сервери ICAP дозволяє масштабувати ці самі веб-сервери відповідно до вихідної пропускної здатності HTTP, а не виконувати ці додаткові завдання.

Використовує номер порта 1344 протоколу TCP.[1]

Історія ред.

ICAP був запропонований наприкінці 1999 року Пітером Данцігом і Джоном Шустером[2] з Network Appliance.[3] Дон Гілліс взяв на себе проект навесні 2000 року і покращив протокол трьома основними способами:

  • Щоб дозволити конвеєрні сервери ICAP. Одну веб-сторінку можна швидко передавати через сканування на віруси, фільтрацію вмісту та переклад мови.
  • Щоб підтримувати всі 3 кодування вмісту (довжина вмісту, фрагментованість та закриття з'єднання TCP) у HTTP 1.1. Це замінило оригінальний протокол зберігання та пересилання на безперервну потокову передачу вмісту через багато серверів одночасно.
  • Щоб забезпечити функцію під назвою «попередній перегляд вмісту», яка дозволила серверу ICAP переглянути перші кілька сотень байтів вмісту, перш ніж ухвалити рішення обробляти вміст чи ні. Це було реалізовано шляхом вбудовування розміру аргументу попереднього перегляду в URL-адресу веб-сервера ICAP під час налаштування на клієнті ICAP.

У середині 2000 року Гілліс створив прототип першого клієнта і сервера ICAP для серії інтернет-кешів NetCache[en] (відомий як протокол ICAP 0.9) і випустив навчальні матеріали для постачальників. Клієнт був написаний на C++ в ядрі сервера NetCache, а демонстраційний сервер ICAP був написаний на Perl і використовував фільтри заміни слів Debian для переписування веб-сторінок, пропускання тегів HTML і перекладу веб-сторінок Swedish Chef[en] або джайв-говору[en] в режимі реального часу.[4] Маючи знання, отримані з досвіду створення прототипів, Гілліс переглянув проект стандарту IETF, щоб зробити RPC з використанням лише фрагментованого кодування, значно спростивши протокол ICAP.[2]

Примітки ред.

  1. RFC 3507 - Internet Content Adaptation Protocol (ICAP).
  2. а б J. Elson; A. Cerpa (2003). [[[:Шаблон:Cite IETF/makelink]] Internet Content Adaptation Protocol (ICAP)]. IETF. doi:10.17487/RFC3507. Шаблон:Cite IETF/doctypes.
  3. Internet Content Adaptation Protocol (ICAP) (PDF). NetApp. 30 липня 2001.
  4. Gillies, Donald. ICAP Installation Instructions. UBC ECE Dept. Архів оригіналу за 4 березня 2016. Процитовано 4 січня 2016.

Посилання ред.