ICAP: The Internet Content Adaptation Protocol

Jeremy Elson, Alberto Cerpa


The ICAP protocol is aimed at providing simple object-based content vectoring for HTTP services. ICAP is, in essence, a lightweight protocol for executing a remote procedure call on HTTP messages. It allows ICAP clients to pass HTTP messages to ICAP servers for some sort of transformation or other processing (adaptation). The server executes its transformation service on messages and sends back responses to the client, usually with modified messages. Typically, the adapted messages are either HTTP requests or HTTP responses. ICAP is a request/response protocol similar in semantics and usage to HTTP/1.1. Despite the similarity, ICAP is not HTTP, nor is it an application protocol that runs over HTTP. This means, for example, that ICAP messages can not be forwarded by HTTP surrogates.




Jeremy Elson, Alberto Cerpa, "ICAP: The Internet Content Adaptation Protocol," Request for Comments (RFC) 3507, pp. 1--49, Internet Engineering Task Force (IETF), April, 2003.


  author =       "Jeremy Elson and Alberto Cerpa",
  title =        "{ICAP}: The Internet Content Adaptation Protocol",
  journal =      "Request for Comments (RFC) 3507",
  year =         "2003",
  pages =        "1--49",
  month =        apr,
  publisher =    "Internet Engineering Task Force (IETF)",
  URL =          "http://www.andes.ucmerced.edu/papers/Elson03b.pdf",
  cited =        "94",


This paper is copyright © 2003 by its authors. Permission to make digital or hard copies of part or all of this work for personal use is granted without fee provided that copies are not made or distributed for profit or commercial purposes. New copies must bear this notice and the full citation on the first page. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission of the authors.