Search squid archive

Re: poor mans load balancing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 8/02/2012 11:20 p.m., Carsten Ralle wrote:
we run a special installation using three DSL lines in parallel using
the following layout with two squid servers
Is there a configuration (preferably without ICP) to transparently use
all three lines in parallel for a connection (e.g. HTTP/FTP-download or
data streaming) ?
http://wiki.squid-cache.org/Features/AclRandom
Amos, thanks for pointing me to your feature.

May be I got this wrong, but as far as I understand the feature, it
"only" changes traffic from a cache to the upper next parent cache.

No. The feature is only an ACL which produces a random true/false result. How you use itin the config determine what happens.

* use it on cache_peer_access and it is relevant to which peer gets used (or not). Balancing load over different upstream peers

* use it on tcp_outgoing_address and it determines what IP address Squid sends from. With appropriate OS routes that could mean Squid triggering each TCP connection to take a different line randomly.

Both of these are useful in different ways to load balance traffic.


What I was looking for is a "line sharing" the other way around
(downstream traffic):

   client ->  Cache1 ->  line  ->  Cache2 ->  Webserver    (>Request)
          <- Cache1<- lines<- Cache2<------'        (<Reply)
                        ^
                        |
                 line sharing needed

Did I get this right or is there a way to configure Cache2 to use
separate lines for downstream traffic using your random ACLs ?

Individual IP packets can take paths like that because each one is separately address with source and destination details.

HTTP does not work that way. The reply MUST come back on the same TCP connection the requests went out on. Squid can vary the IP address it uses, and trigger different routing for that whole connection request/reply sequence. But that is as far as Squid can go.

The MTCP bonding stuff Andrew pointed you at works down at the TCP level so all the Squid layer is aware of is a larger capacity single "line". Far more efficient than anything Squid could do.

Amos


[Index of Archives]     [Linux Audio Users]     [Samba]     [Big List of Linux Books]     [Linux USB]     [Yosemite News]

  Powered by Linux