Re: Squid 2.2.STABLE2 & choice of parent [updated second patch]

From: Web server manager <webadm@dont-contact.us>
Date: Fri, 4 Jun 1999 16:42:51 +0100 (BST)

After a couple of weeks during which I've been busy with other things, I've
started looking at Squid again, which leads on to a question and a
suggestion in relation the various patches you sent for Squid 2.2.STABLE2 in
relation to choice of parents when using "prefer_direct off".

QUESTION: It looks as though only one of the patches was included in Squid
2.2.STABLE3. Will the others be included in a future version, or are they
considered too esoteric to include in the standard release? [To me, they
seem like corrections for significant shortcomings in the unpatched server
that should be relevant to anyone using "prefer_direct off".]

I haven't yet tried the "missing" patches with 2.2.STABLE3, but I imagine
the should apply unmodified or with minor adjustments, so it shouldn't be a
problem that they aren't included - but I'd like to see them in the standard
version in future rather than having to maintain them as local patches.

SUGGESTION: problems with one of our parent caches - resulting in ICP RTTs
of 4-5 seconds (compared to 1-200ms for the others) made me realise that an
additional configuration option is directive (or a redefinition of an
existing directive).

Specifically, when using dynamic choice of ICP timeout, there needs to be a
way to set a maximum dynamically-chosen timeout; a dynamic timeout of 6-7
seconds is far too long, when it results from a misbehaving parent (or
parent with network problems) that should actually be excluded from
selection because it is so slow.

Two "obvious" approaches occur to me:

(a) Add a new directive "dynamic_icp_query_timeout [on|off]" and redefine
icp_query_timeout to be the maximum timeout when dynamic timeouts are
enabled (with 0, currently meaning "use dynamic timeouts", implying either
an unlimited timeout as now, or a built-in default that's as large as people
are likely to be happy waiting.] Or,

(b) Leave icp_query_timeout defined as at present, but add a
"maximum_icp_query_timeout" directive which sets the maximum dynamic timeout
if icp_query_timeout is zero.

What do you think of the proposal? [It is relevant to the parent-routing
patches, but it would apply in general to all ICP queries, hence of wider
benefit/relevance.]

It should be easy to add a test to limit the timeout to the source code, but
I am not familiar with how to add new directives, so I cannot easily
contribute a patch to do this (plus I might implement one of the options
when you'd prefer the other).

                                John Line

-- 
University of Cambridge WWW manager account (usually John Line)
Send general WWW-related enquiries to webmaster@ucs.cam.ac.uk
Received on Tue Jul 29 2003 - 13:15:58 MDT

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