Re: [squid-users] squid 3.x expected max throughput

From: Amos Jeffries <>
Date: Thu, 11 Apr 2013 23:13:56 +1200

On 11/04/2013 10:48 p.m., Youssef Ghorbal wrote:
> On Apr 11, 2013, at 12:13 PM, Amos Jeffries <> wrote:
>> On 11/04/2013 12:23 a.m., Youssef Ghorbal wrote:
>>> I was aware of that page.
>>> As you said, it's often RPS so it's not relevant for me.
>> It is more relevant than you seem to think. Squid processing overheads are tied tightly to the request parsing and ACL testing processes. These are relatively fixed overheads for each request regardless of the request size.
> Thank you for the explanation. It confirms what I was expecting myself.
> What I meant, is that in my case I have ONE big object (the infamous >1G file) and 1 client and I want to know what to expect on the troughput point of view.
> As kinkie said, in my scenario, Squid is basically a network pipe. the overhead (ACL parsing etc is done one time)
> Maybe, the question here is how does Squid handle data buffers, or at which rate does it perform server reads on the one side and to client writes on the other.

Well, in absence of any other loading it would be one read per packet
just like you (or was it someone earlier) are seeing. With an internal
event call passing the buffered data through Squid to write the same
amount on the output. The "select" loop speed varies with a maximum loop
time held around 10ms and decreasing if packets arrive faster.

You will have to try to follow the code to understand the buffers
unfortunately. I'm still learning thet part myself. For CONNECT requests
its easy, the input buffer is the output buffer - one fread() causes
fwrite() on the same buffer. For other requests is varies as Store
systems are also involved which may (or may not) cause a file I/O to
occur in the middle or a bufffer copy (I'm not sure here).


>> IIRC the 50Mbps traffic was on average HTTP request traffic objects in a medium sized ISP - we do not have any good detaisl on what that average was though. With very little extra overheads the same proxy on same hardware might also reach 100Mbps. All that is required is the avg object size to go from, for example, 16KB to 32KB which are both within the bounds of "average HTTP traffic" sizes (11-63KB).
> Yousef
Received on Thu Apr 11 2013 - 11:14:01 MDT

This archive was generated by hypermail 2.2.0 : Thu Apr 11 2013 - 12:00:03 MDT