RFC 2187 (rfc2187) - Page 2 of 24
Application of Internet Cache Protocol (ICP), version 2
Alternative Format: Original Text Document
RFC 2187 ICP September 1997
8.2. Parents, Siblings, Hits and Misses......................... 16
8.3. Different Roles of ICP..................................... 17
8.4. Protocol Design Flaws of ICPv2............................. 17
9. Security Considerations...................................... 18
9.1. Inserting Bogus ICP Queries................................ 19
9.2. Inserting Bogus ICP Replies................................ 19
9.3. Eavesdropping.............................................. 20
9.4. Blocking ICP Messages...................................... 20
9.5. Delaying ICP Messages...................................... 20
9.6. Denial of Service.......................................... 20
9.7. Altering ICP Fields........................................ 21
9.8. Summary.................................................... 22
10. References................................................... 23
11. Acknowledgments.............................................. 24
12. Authors' Addresses........................................... 24
1. Introduction
ICP is a lightweight message format used for communicating among Web
caches. ICP is used to exchange hints about the existence of URLs in
neighbor caches. Caches exchange ICP queries and replies to gather
information for use in selecting the most appropriate location from
which to retrieve an object.
This document describes the implementation of ICP in software. For a
description of the protocol and message format, please refer to the
companion document (RFC 2186). We avoid making judgments about
whether or how ICP should be used in particular Web caching
configurations. ICP may be a "net win" in some situations, and a
"net loss" in others. We recognize that certain practices described
in this document are suboptimal. Some of these exist for historical
reasons. Some aspects have been improved in later versions. Since
this document only serves to describe current practices, we focus on
documenting rather than evaluating. However, we do address known
security problems and other shortcomings.
The remainder of this document is written as follows. We first
describe Web cache hierarchies, explain motivation for using ICP, and
demonstrate how to configure its use in cache hierarchies. We then
provide a step-by-step description of an ICP query-response
transaction. We then discuss ICP interaction with firewalls, and
briefly touch on multicasting ICP. We end with lessons with have
learned during the protocol development and deployement thus far, and
the canonical security considerations.
ICP was initially developed by Peter Danzig, et. al. at the
University of Southern California as a central part of hierarchical
caching in the Harvest research project[3].
Wessels & Claffy Informational