fbpx
Wikipedia

Internet Cache Protocol

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

Operation Edit

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

Parents usually sit closer to the internet connection than the child. If a child cache cannot find an object, the query usually will be sent to the parent cache, which will fetch, cache, and pass on the request. 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 the siblings for the object being requested. If the sibling has the object, it will usually be transferred from there, instead of being queried from the original server. This is often called a "near miss" — the object is not found in the cache (a “miss”) but is 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. This approach can reduce numbers of server retrievals, and also prevent the storage of multiple copies of an instance of data, but leads to the potential drawback of increased intercache communication, which can slow the system down.[1]

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

Proxies Edit

Web proxies that support ICP include:

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

ICP message structure Edit

An 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”.

ICP Header
Bit offset Bits 0–7 8–15 16-31
0 Opcode Version Message Length
32 Request number
64 Options
96 Option Data
128 Sender Host Address
160+  
Data
 

References Edit

  1. ^ Davison, Brian D. "A Web Caching Primer" (PDF). Retrieved 16 February 2014. publisher|IEEE
  2. ^ a b c d e f g h i j k Inter Cache Communication Protocols, Ingrid Melve

External links Edit

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

internet, cache, protocol, based, protocol, used, coordinating, caches, purpose, find, most, appropriate, location, retrieve, requested, object, situation, where, multiple, caches, single, site, function, caches, efficiently, possible, minimize, number, remote. The Internet Cache Protocol ICP is a UDP based protocol used for coordinating web caches Its purpose is to find out the most appropriate location to retrieve a requested object in the situation where multiple caches are in use at a single site The function of ICP is to use the caches as efficiently as possible and to minimize the number of remote requests to the originating server Contents 1 Operation 2 Proxies 3 ICP message structure 4 References 5 External linksOperation EditHierarchically a queried cache can either be a parent or a sibling Parents usually sit closer to the internet connection than the child If a child cache cannot find an object the query usually will be sent to the parent cache which will fetch cache and pass on the request 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 the siblings for the object being requested If the sibling has the object it will usually be transferred from there instead of being queried from the original server This is often called a near miss the object is not found in the cache a miss but is 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 This approach can reduce numbers of server retrievals and also prevent the storage of multiple copies of an instance of data but leads to the potential drawback of increased intercache communication which can slow the system down 1 The ICP protocol is described in RFC 2186 its application to hierarchical web caching in RFC 2187 Proxies EditWeb proxies that support ICP include CACHEbox Cisco CacheEngine 2 Cisco Content Engine DeleGate 2 Harvest project 2 Traffic Server 2 Mirror Image 2 MOWS 2 NetCache 2 Netscape Proxy Server 2 Novell BorderManager FastCache 2 ProxySG Squid 2 SkyCache 2 HTCP designed as a successor to ICP attempts to handle various problems found in ICP deployments ICP message structure EditAn ICP message consists of two sections Header DataHeader 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 ICP Header Bit offset Bits 0 7 8 15 16 310 Opcode Version Message Length32 Request number64 Options96 Option Data128 Sender Host Address160 Data References Edit Davison Brian D A Web Caching Primer PDF Retrieved 16 February 2014 publisher IEEE a b c d e f g h i j k Inter Cache Communication Protocols Ingrid MelveExternal links EditRFC 2186 ICP version 2 RFC 2187 Application of ICP version 2 nbsp This Internet related article is a stub You can help Wikipedia by expanding it vte Retrieved from https en wikipedia org w index php title Internet Cache Protocol amp oldid 1054190328, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.