Internet Content Adaptation Protocol
   HOME

TheInfoList



OR:

The Internet Content Adaptation Protocol (ICAP) is a lightweight
HTTP The Hypertext Transfer Protocol (HTTP) is an application layer protocol in the Internet protocol suite model for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web, ...
-like protocol specified in which is used to extend transparent
proxy server In computer networking, a proxy server is a server application that acts as an intermediary between a client requesting a resource and the server providing that resource. Instead of connecting directly to a server that can fulfill a request ...
s, thereby freeing up resources and standardizing the way in which new features are implemented. ICAP is generally used to implement virus scanning and content filters in transparent HTTP proxy caches.
Content adaptation Content adaptation is the action of transforming content to adapt to device capabilities. Content adaptation is usually related to mobile devices, which require special handling because of their limited computational power, small screen size, and ...
refers to performing the particular value added service (content manipulation) for the associated client request/response. ICAP concentrates on leveraging edge-based devices ( caching proxies) to help deliver
value-added service A value-added service (VAS) is a popular telecommunications industry{{cite web, url=http://www.prweb.com/releases/2013/11/prweb11284640.htm, title=Global Mobile Value Added Services (VAS) Market: Worldwide Industry Share, Investment Trends, Growth, ...
s. At the core of this process is a cache that will proxy all
client Client(s) or The Client may refer to: * Client (business) * Client (computing), hardware or software that accesses a remote service on another computer * Customer or client, a recipient of goods or services in return for monetary or other valuabl ...
transactions and will
process A process is a series or set of activities that interact to produce a result; it may occur once-only or be recurrent or periodic. Things called a process include: Business and management *Business process, activities that produce a specific se ...
them through
web server A web server is computer software and underlying hardware that accepts requests via HTTP (the network protocol created to distribute web content) or its secure variant HTTPS. A user agent, commonly a web browser or web crawler, initiate ...
s. These ICAP servers are focused on a specific function, for example, ad insertion,
virus A virus is a submicroscopic infectious agent that replicates only inside the living cells of an organism. Viruses infect all life forms, from animals and plants to microorganisms, including bacteria and archaea. Since Dmitri Ivanovsky's 1 ...
scanning, multi-AV scanning, content translation, language translation, or
content filtering An Internet filter is software that restricts or controls the content an Internet user is capable to access, especially when utilized to restrict material delivered over the Internet via the Web, Email, or other means. Content-control software dete ...
. Off-loading value-added services from web servers to ICAP servers allows those same web servers to be scaled according to raw HTTP throughput versus having to handle these extra tasks.


History

ICAP was proposed in late 1999 by Peter Danzig and John Schuster from Network Appliance. Don Gillies took over the project in the spring of 2000 and enhanced the protocol in three main ways: * To allow pipelined ICAP servers. One web page could be streamed through virus-scan, content-filtering, and language translation servers, quickly. * To support all 3 content encodings (content-length, chunked, and TCP-close) in HTTP 1.1. This replaced original store-and-forward protocol with continuous streaming of content through many servers at once. * To provide a feature called "content preview" that allowed the ICAP server to look at the first few hundred bytes of content before deciding to process the content or not. This was implemented by embedding the preview argument size in the ICAP webserver URL when configured on the ICAP client. Gillies prototyped the first ICAP client and server for the NetCache series of internet caches in mid-2000 (known as ICAP 0.9 protocol) and produced training materials for vendors. The client was written in C++ in the core of the NetCache server, and the demonstration ICAP Server was written in Perl and employed the Debian word-replacement filters to rewrite web pages, skipping over the HTML tags, and translating web pages into
Swedish Chef The Swedish Chef is a Muppet character that appeared on ''The Muppet Show''. He was originally performed by Jim Henson and Frank Oz simultaneously, with Henson performing the head and voice and Oz performing the character with real hands. The S ...
or Jive in real time. With knowledge learned from the prototyping experience, Gillies revised the IETF draft standard to make RPCs using only chunked encoding, greatly simplifying the ICAP protocol.


References


External links

*{{IETF RFC, 3507
ICAP Forum
(Sept 20, 2000) Internet protocols Application layer protocols