[squid-users] Changing available bandwidth for *existing*connections based on time of day?

2011-01-26 Thread Scott Lehman
Hi,

I need to control bandwidth for many logical groups of hosts based on time, but 
want to change the available bandwidth while a download is in progress (which 
can take an hour or more).  

My initial plan was to:
-use external ACLs to tag requests from each logical host group
-use time-based ACLs to select the appropriate delay pool

The only catch is that the ACLs only appear to be evaluated at request 
processing time (reasonable).  I'm basically hoping re-evaluate which pool a 
long-running request belongs in, or change the pool parameters over time.

Is something like this possible with Squid?   

My searches haven't turned up much so far (dynamic delay pool patch looked 
different), and my only idea is to restart Squid with a different config and 
hope clients can resume where they left off.

Any pointers appreciated, even if it's not an all-Squid solution.

Thanks,

Scott


  


Re: [squid-users] Changing available bandwidth for *existing*connections based on time of day?

2011-01-26 Thread Amos Jeffries
On Wed, 26 Jan 2011 18:27:56 -0800 (PST), Scott Lehman wrote:
 Hi,
 
 I need to control bandwidth for many logical groups of hosts based on
 time, but want to change the available bandwidth while a download is in
 progress (which can take an hour or more).  
 
 My initial plan was to:
 -use external ACLs to tag requests from each logical host group
 -use time-based ACLs to select the appropriate delay pool
 
 The only catch is that the ACLs only appear to be evaluated at request
 processing time (reasonable).  I'm basically hoping re-evaluate which
pool
 a long-running request belongs in, or change the pool parameters over
time.
 
 Is something like this possible with Squid?   
 
 My searches haven't turned up much so far (dynamic delay pool patch
looked
 different), and my only idea is to restart Squid with a different config
 and hope clients can resume where they left off.

With delay pools that is pretty much the only solution not involving code
changes to Squid.
If you want to do such changes a regular event every N seconds
(configurable) that re-evaluates ll active client delay pools would seem to
be useful.

QoS alternatives to delay pools exist in all the current releases of
Squid. tcp_outgoing_tos can set a TOS marking for system traffic control to
use based on ACL. The timing and grouping may be more possible at the
system packet handling level.

Amos


Re: [squid-users] Changing available bandwidth for *existing*connections based on time of day?

2011-01-26 Thread Jason Healy
On Jan 26, 2011, at 9:27 PM, Scott Lehman wrote:

 My searches haven't turned up much so far (dynamic delay pool patch looked 
 different), and my only idea is to restart Squid with a different config and 
 hope clients can resume where they left off.
 
 Any pointers appreciated, even if it's not an all-Squid solution.

I'm struggling with a similar planning issue here... my best thought so far is 
to try and get Squid to mark connections with TOS and then rely on other 
software to shape the connections (iptables or my openbsd firewall).  Those 
support time-based rules (or, for PF, an easy way to reset state info), so the 
time-based shaping could be a little granular.

Haven't quite gotten around to trying any of this, but that's what I was 
thinking about.  I'm happy to hear what others have tried...

Jason

--
Jason Healy|jhe...@logn.net|   http://www.logn.net/