Internet Cache Protocol

Internet Cache Protocol

The Internet Cache Protocol (ICP) is a protocol used for coordinating web caches. Its purpose is to find out the most appropriate location to retrieve a requested object from in the situation where multiple caches are in use at a single site. The goal is to use the caches as efficiently as possible, and to minimize the number of remote requests to the originating server.

Hierarchically, a queried cache can either be a parent, a child, a sibling.

Parents usually sit closer to the internet connection than the child. If a child cache cannot find an object, the query will be sent to the parent cache, which will fetch, cache, and pass on the request. While a parent server will resolve cache misses, a sibling will not. Siblings are caches of equal hierarchical status, whose purpose is to distribute the load amongst the siblings.

When a request comes into one cache in a cluster of siblings, ICP is used to query adjacent caches for the object being requested. If the adjacent cache has the object, it will be transferred from the adjacent cache, instead of being queried from the original server. This is often called a "near miss"--the object was not found in the cache (a "miss") but it was loaded from a nearby cache, instead of from a remote server.

The ICP protocol was designed to be lightweight in order to minimize round-trip time between caches. It is intended for unreliable but quick connections, using short time-outs before a cache starts to retrieve an object on its own. UDP is commonly used as delivery protocol.

The ICP protocol is described in RFC 2186, its application to hierarchical web caching in RFC 2187.

Web proxies that support ICP include:
* Squid cache
* Microsoft Proxy
* Cisco Content Engine
* ProxySG

HTCP, designed as a successor to ICP, attempts to handle various problems found in ICP deployments.

ICP message structure

A ICP message consists of two sections:
* Header
* Data

Header:Header length is fixed to 20-octets (Five 32-bit words).

Data:Data is of variable length, limited by the maximum ICP message size (including header) of 16,384 octets.

The ICP header consists of 8 fields, with 2 optional fields. The fifth and sixth field is optional (pink background in table) and appropriately named "options" and "option data".

External links

*RFC 2186 ICP version 2
*RFC 2187 Application of ICP version 2


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Look at other dictionaries:

  • Internet Cache Protocol — Fonction partage de cache répartis Sigle ICP Date de création septembre 1997 Port …   Wikipédia en Français

  • Internet Cache Protocol — ICP im TCP/IP‑Protokollstapel: Anwendung ICP Transport UDP Internet IP (IPv4, IPv6) Netzzugang Ethernet Token …   Deutsch Wikipedia

  • Internet Protocol Version 4 — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. IPv4 im TCP/IP‑Protokollstapel: Anwendung HTTP …   Deutsch Wikipedia

  • Internet Protocol — The Internet Protocol (IP) is a protocol used for communicating data across a packet switched internetwork using the Internet Protocol Suite (TCP/IP).IP is the primary protocol in the Internet Layer of the Internet Protocol Suite and has the task …   Wikipedia

  • Hyper Text Caching Protocol — Das HTCP (Hyper Text Caching Protocol) ist in ein von der Internet Engineering Task Force (IETF) standardisiertes Protokoll (RFC 2756) für HTTP Caches und gespeicherte Daten. Es dient effizienten Verwaltung und Überwachung eines Puffer Speichers… …   Deutsch Wikipedia

  • Cache Array Routing Protocol — Saltar a navegación, búsqueda El Cache Array Routing Protocol (ó bien, CARP), en español, Protocolo de selección de enrutamiento de cache, se utiliza en balanceo de carga HTTP requerido a través de múltiples servidores proxy de cache. Funciona… …   Wikipedia Español

  • Web cache — Web caching is the caching of web documents (e.g., HTML pages, images) in order to reduce bandwidth usage, server load, and perceived lag. A web cache stores copies of documents passing through it; subsequent requests may be satisfied from the… …   Wikipedia

  • Internet privacy — involves the right or mandate of personal privacy concerning the storing, repurposing, providing to third parties, and displaying of information pertaining to oneself via the Internet. Privacy can entail both Personally Identifying Information… …   Wikipedia

  • Internet Information Services — Screenshot of IIS Manager console of Internet Information Services 7 Developer(s) Microsoft Stable release …   Wikipedia

  • Internet Low Bit Rate Codec — (iLBC) is a royalty free [ [http://ilbcfreeware.org/documentation/gips iLBClicense.pdf Global IP Solutions iLBC Freeware Public License] ( [http://google.com/search?q=cache:ilbcfreeware.org/documentation/gips iLBClicense.pdf HTML] ) ] narrowband… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”