Jean-Baptiste Denis wrote:
On Fri, 20 Aug 2010 12:37:12 -0300, Leonardo Rodrigues wrote:
have you ever tried using tcp_outgoing_tos to mark your 'good' and
'bad' traffic and let Linux QoS system handles your QoS rules ??
thank you for your suggestion, but my connection to the outside world is
not managed by a linux box.
Anyway, even if it was the case, i need to inspect data at 7th level to
deal with QoS. I don't want to rely on port to manage my bandwidth. Of
course, it is a part of a global solution, but i need to inspect what
occurs on the http ports to manage bandwith at the http level (what site,
what content...).
It seems very difficult to me to translate the power of squid's acl into
a maintenable linux QoS configuration.
Linux is not required AFAIK. QoS is a networking standard that is
supported in various forms by many other modern systems and devices. So
your current gateway device may support it. It may be called QoS, TOS or
DiffServ.
Dynamic squid delay pool is exactly what i need today to deal with the
versatility of http trafic.
You seem to misunderstand the suggestion and how QoS relates to Squid.
The two features are exactly equivalent concepts operating on opposite
sides of Squid. Since you seem to understand delay_pools somewhat
better I'll describe QoS relative to them.
To setup delay_pools you have pre-configured set of pools with different
bandwidth available to each "pool".
To setup QoS you have a pre-configured system policy with different
bandwidths available to each "flow" (aka TOS/Diffserv mark/label value).
Both: Within squid.conf you configure some ACLs needed to match the
layer-7 HTTP requests as they go through Squid.
For delay_pools in squid.conf you use delay_access and the ACL to assign
each request from a client to a specific "pool", or not.
For QoS in squid.conf you use tcp_outgoing_tos and the ACL to assign
each request to backend servers to a specific "flow", or not.
From what I've seen, without actively using them myself, both processes
can change their assigned bandwidth policy mid-stream if the ACL tests
within Squid detect a change of request.
In later releases you also may use qos_flows directive to assign TOS
labels on replies as they go back to clients based on whether they were
cached or which type of peer they came from.
Amos
--
Please be using
Current Stable Squid 2.7.STABLE9 or 3.1.7
Beta testers wanted for 3.2.0.1