TCP incoming requests Traffic Normalization

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

TCP incoming requests Traffic Normalization

Ahmad Alzaeem

Hello Folks .

I have about 10x sources or different ip addresses  and sending requests to squid  .

imagine we have 10 servers and sending burst in sometimes due to nature of Traffic  ….i have a sensitive APP on squid that must be equalized to handle only 50 req/sec . “ No more “

i just want to equalize all incoming requests which can be in some seconds 60  , 40 , 90 , 100 , 50 to have steady 50 req/sec on squid equally and even if we need to delay some packs  its ok , just keep squid handle 50 req/sec  of those incoming requests no  more .

i know squid can limit connections and Drop connections above threshold , but i need only to discipline and Buffer and try to decrease dropped requests as possible and normalize all incoming requests to be steady 50 req/sec inside squid whatever there is burst outside or higher than 50 .

So again just need to apply that on “ new requests “ not on already “ established “ connections .

Let me know Guys if squid can do something like that or we need 3rd party outside squid .


Kind regards

_______________________________________________
squid-users mailing list
[hidden email]
http://lists.squid-cache.org/listinfo/squid-users
Reply | Threaded
Open this post in threaded view
|

Re: TCP incoming requests Traffic Normalization

Alex Rousskov
On 1/13/20 5:36 AM, Ahmad Alzaeem wrote:

> just need to apply that on “ new requests “ not on already “ established “ connections

You can probably do this using an external ACL. The program implementing
your external ACL can delay incoming requests to make sure that the
aggregate served request rate is at most 50/s. You will need to write
that program or find something suitable on the web.

For more details, look for "acl aclname external" and perhaps "external
ACL" in squid.conf.documented. The API for the external ACL program
(called "helper") is described at
https://wiki.squid-cache.org/Features/AddonHelpers#Access_Control_.28ACL.29

N.B. One connection may carry many HTTP requests. To implement the limit
correctly, you will need to clarify whether the limit should apply to
new requests on established connections. The external ACL helper can
support any answer to that question, but its code will be different
depending on your answer.

Alex.
_______________________________________________
squid-users mailing list
[hidden email]
http://lists.squid-cache.org/listinfo/squid-users