Re: icap questions

From: Geetha Manjunath <>
Date: Mon, 15 Apr 2002 12:33:44 +0530

Hi there!
That's right, I posted an ICAP patch for squid-head last week. I also
plan to start a branch for ICAP on the squid developer base today.
Let me try and answer these questions w.r.t to the implementation and
its planned next steps.

> > 1. How does squid (or an ICAP client) know where and
> > which ICAP server to contact when it receives a
> > request from an HTTP client?

> Squid is configured with an ICAP server IP:port, similar to the
> cache_peer option. Content_filter?
> Multiple ICAP servers and ACL-based redirection need to be supported
> as well.

Ya, we plan to do something along these lines as one of the next steps
But, we can only give a single icap server name on command line in the
released version. (-i option .. I understand that this option clashes
with the NT port .. we need to change that )

Multiple icap servers are not in our current plan. As per current
* we want to configure squid with a single ICAP server and an icap mode
(one of 'respmod', 'reqmod', 'reqmod or respmod' , 'reqmod and
* The ICAP url can be used to direct the ICAP request to different icap
servers, if needed. An example request mod request is :
        REQMOD icap:// ICAP/1.0
* We define acl's - so that we can define the icap url to be used, and
ensure that 'certain' URLs are not sent for content filtering, and so

Any particular thoughts/syntax on this are welcome. We can also have
such discussions on the mailing list if

> > 2. How does squid (or an ICAP client) know a request
> > from an HTTP client requires request modification (REQMOD) or
> response modification (RESPMOD)?

> This can be a result of a matching ACL rule in Squid and/or a result
> of an internal ICAP server configuration.

I feel, the default action of squid should be to assume there **is** a
need for filtering (request or response is based on icap mode). The ACL
rule would tell it to bypass for a few URLs.

Further, on the icap server side, the server decides whether a
particular request (response) would need a modification or not based on
certain rules. These rules are specified in IRML (internet rule meta
lang) language (basically XML) and executed by the rule engine of the
ICAP server.... A python based implementation of this part is also
available on our project page (

Please feel free to discuss/comment upon specifics of this. You are also
welcome to join in the development effort of this ICAP client. A
couple of interested members have already joined in already.

and..sorry, this delay in reply is due to the weekend :-(

Thanks and regards
Mrs. Geetha Manjunath :-)
Technical Architect,
Hewlett Packard.
Received on Mon Apr 15 2002 - 01:00:54 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:15:10 MST