On 06/19/2013 09:02 AM, T Ls wrote:
Hi, we are using squid (S_{1,2,3}) to connect our sites to the internet via parent proxies (P_{1,2}), there is no direct line to the internet. The constellation looks something like this: (P_1) (P_2) | / \ /-----------------\ | | W A N | | | \-----------------/ | / \ (S_1) (S_2) (S_3) | | | (N_1) (N_2) (N_3) the mapping S_i <=> P_j is fix and I can't change it. In S_1 config, I have the line: cache_peer P_1 parent 80 0 no-query default If one parent fails (e.g. P_1), we force all clients in N_1 to use S_2 (by AD policy). This procedure works, but there are two major drawbacks: a) we have to make this switching manually (and also the swich back, after P_1 recovers) b) S_2 has to handle N_1+N_2 traffic What I want to do is: a) switch to alternative parents automatically b) in case of P_1-failure: distribute N_1-traffic over S_2 and S_3 c) in normal operation send all requests to P_1 and no requests to S_2 or S_3
wpad does a good job. I am not sure how it balances but the failover works fine. Marcus
Because of c), I can't declare S_{2,3} as sibling (as far as I understand the function of a sibling and the peer selection methodes), so I changed the S_1 config to: cache_peer P_1 parent 80 0 no-query cache_peer S_2 parent 80 0 no-query cache_peer S_3 parent 80 0 no-query I think, this fits to a) and b) (because a client request is send to FIRST_UP_PARENT), but this will not fit to c) perfectly (may be S_2 is FIRST_UP_PARENT, but it still has to fetch the data from P_2, so the data for N_1 passes the line of S_2 two times and this should not happen). Can basetime=x at the P_1-line make sure, that P_1 is always choosen in normal operation? Any other ideas? Thanks in advance Thomas