11 ICAP and Content Adaptation
ICAP (Internet Content Adaptation Protocol, RFC 3507) lets a proxy hand an HTTP request or response to an external ICAP server to be inspected or modified (“adapted”), and then continue with the result. BIG-IP uses it to offload specialized content work away from both the web servers and itself.
ICAP in one line
BIG-IP pauses an HTTP message, sends it to an ICAP server for scanning or modification, and forwards the returned version. ICAP servers listen on TCP 1344.
Why use it
- Antivirus scanning of uploads and downloads.
- DLP (data leak prevention) on outgoing content.
- Language translation of content without loading the web servers.
- Ad insertion, content filtering, image transcoding.
How it works on BIG-IP
Client → Standard VS (HTTP profile + Request Adapt and/or Response Adapt profile)
│
├──► Internal VS (ICAP profile) ──► ICAP pool (ICAP servers)
│
└──► Normal pool (web servers)
- The standard VS has an HTTP profile plus a Request Adapt and/or Response Adapt profile.
- Request Adapt → before sending the request to the web pool, BIG-IP sends it to an internal virtual server.
- The internal VS has an ICAP profile and a pool of ICAP servers — load balanced and monitored like any other pool.
- The ICAP server returns the original or modified message, or blocks it.
- Response Adapt does the same with the server’s response before it reaches the client.
Key points
- The VS type that gives access to the ICAP servers is Internal — it’s not reachable directly by clients.
- The ICAP profile defines the ICAP URI, preview size and headers.
- If the ICAP pool is down, the Service Down Action of the Request/Response Adapt profile decides what happens: Ignore (let traffic through unadapted — fail-open), Reset or Drop (fail-closed).
- Reference: BIG-IP LTM Implementations — Configuring Content Adaptation via ICAP.
Self-check
Q1 — When using an ICAP pool, what type of virtual server provides access to the ICAP servers?
Respuesta
An Internal virtual server.
Q2 — Your web app goes global in 15 languages and translation must not load the web servers. What type of server would do the translation?
Respuesta
An ICAP server.
Q3 — Which profiles on the standard VS send traffic to ICAP?
Respuesta
Request Adapt and/or Response Adapt (plus the HTTP profile).