[squid-users] ICP link load-balancing... without ICP?

From: BAARDA, Don <don.baarda@dont-contact.us>
Date: Thu, 5 Jul 2001 13:29:44 +0930

G'day squid-users,

We have several upstream parent proxies on different links. Our links are
low-bandwidth, and the upstream proxies have heaps of bandwidth. Hence, hit
or miss, it doesn't really matter which upstream proxy we use, what matters
most is we use the one on the least loaded link.

We have been using ICP to nicely load-balance the links, combined with a
low-ish ICP timeout and round-robin on all the parents. This meant that we
used ICP to load balance until all parents exceeded the ICP timeout, then we
fall back to round-robin. The beauty of this is we load-balance until all
links are saturated, then use round-robin to minimise the latency.

The problem is, some of the ba@#$#ard upstream proxies have started to deny
or block ICP. One is using an icp_deny acl because we are getting ICP_DENIED
responses, and the other seems to have outright firewalled it. They don't
seem to be prepared to be cooperative about it. I've tried using the UDP
echo port trick, but it's turned off too. Interestingly, our Squid doesn't
fetch for an ICP_DENIED response, but it still marks that parent as up and
uses it when our Squid falls back to round-robin.

I'm at the point where I'm about to write an ICP to ICMP converter so that
our Squid's ICP requests go out to the peers as ICMP and get converted on
the way back into ICP_MISS. Before I go through the effort of doing this,
has any one else got any thoughts, ideas whatever on a solution?

ABO
Received on Wed Jul 04 2001 - 21:59:10 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 17:01:01 MST