1 / 27

Web Cache Interaction and ICP Protocol Overview

This article provides an overview of web cache hierarchies, the Internet Caching Protocol (ICP), and its behavior and usage patterns in web caching. It also includes a hands-on section and bibliography for further reference.

jblaine
Download Presentation

Web Cache Interaction and ICP Protocol Overview

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web Cache Hierarchies and Internet Caching Protocol (ICP) Web cache interaction; behavior and use of ICP

  2. Content • Web Caching and Cache Hierarchies • Description of ICP Overview • Behavior of ICP-enabled caches • ICP and Web Caching Usage patterns • Bibliography and Hands-on Section

  3. Web Caches • Hardware (ProxySG, Cisco) as well as software-only products • Caching content • reduces user latency and network congestion • distributes load

  4. By ICP Hierarchies: Parents and Siblings

  5. Avoiding Loops • Forwarding MISSes to other caches may cause infinite loops • To avoid - distinguish between parents and siblings.

  6. ICP Overview • ICP sends the following message types

  7. ICP (Internet Cache Protocol) • Harvest cache project • ICP was originally developed as a component of the Harvest cache project • Cache hierarchy • A set of child caches share a common parent cache • Child caches forward requests to their parents for documents they do not have • ICP Query Algorithm • By default, Squid sends ICP_QUERY message to each peer

  8. ICP (Internet Cache Protocol) 1. ICP_HIT(Local Cache) 2. ICP_HIT(Sibling Cache) 3. ICP_HIT(Parent Cache) 4. Direct Retrieval

  9. ICP Package Structure • ICP sends the following message types: • ...

  10. ICP is used to exchange hints about the existence of URLs in neighbor caches. • Caches exchange ICP queries and replies to gather information to use in selecting the most appropriate location from which to retrieve an object.

  11. HIT and MISS • ICP is primarily used in a cache mesh to locate specific Web objects in neighboring caches. • One cache sends an ICP query to its neighbors. The neighbors send back ICP replies indicating a "HIT" or a "MISS."

  12. UDP Protocol • In current practice, ICP is implemented on top of UDP, but there is no requirement that it be limited to UDP. • Failure to receive a reply message most likely means the network path is either congested or broken. In either case we would not want to select that neighbor. As an indication of immediate network conditions between neighbor caches, ICP over a lightweight protocol such as UDP is better than one with the overhead of TCP.

  13. ICP processing (sequence diagram)‏ • An ICP query/reply exchange needs to occur quickly (1-2s). A cache cannot wait longer than that before beginning to retrieve an object. • Failure to receive a reply from a cache may indicate a network or system failure. The ICP reply may include information that could assist selection of the most appropriate source from which to retrieve an object.

  14. Opcode Version Message Length ICP Packet • The ICP message format consists of a 20-octet fixed header plus a variable sized payload (see Figure 1). NOTE: All fields must be represented in network byte order Request Number Options Option Data Sender Host address Payload

  15. ICP Opcodes

  16. History • 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]. [3] Bowman M., Danzig P., Hardy D., Manber U., Schwartz M., and Wessels D., "The Harvest Information Discovery and Access System", Internet Research Task Force - Resource Discovery, http://harvest.transarc.com/.

  17. ICP's Alternatives • Most likely, you'll use one or more of Squid's intercache protocols to assist in communicating with the other caches or proxies.The newer protocols are • Cache Digests, • Hypertext Caching Protocol (HTCP), • Cache Array Routing Protocol (CARP).

  18. Comparison with HTCP • Drawbacks of ICP. Any advantages?

  19. How the end-users are affected? • May get "cannot forward" errors? ... Faster access • How are the Web clients affected by ICP? • Proxy configuration • May get "cannot forward" errors • Changed performance.

  20. Performance estimates • netdb - run to see, what it costs to forward

  21. What if something goes down? • Cache behavior; alive/dead links (does Squid notice that?)

  22. ICP Problems • ICP is not scalabe for larger number of proxies: http://pages.cs.wisc.edu/~cao/papers/summary-cache/node4.html

  23. Content • Web Caching and Cache Hierarchies • Description of ICP Protocol • Behavior of ICP-enabled caches • ICP and Web Caching Usage patterns • Hands-on Section and Bibliography

  24. Using ICP with Squid

  25. Hands-on Section Configuring Web Cache Hierarchies

  26. Bibliography

More Related