You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "David Carlin (JIRA)" <ji...@apache.org> on 2014/01/23 22:47:39 UTC
[jira] [Updated] (TS-2524) Reevaluate default
proxy.config.net.listen_backlog
[ https://issues.apache.org/jira/browse/TS-2524?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Carlin updated TS-2524:
-----------------------------
Description:
Leif mentioned in TS-2395 that he was having some problems related to proxy.config.net.listen_backlog.
According to this article:
http://blog.dubbelboer.com/2012/04/09/syn-cookies.html
the kernel takes the backlog value, adds 1 and rounds up to the nearest power of 2. It sets max queue length to the log2 value of this number.
This is why backlog of 511 results in max queue length of 9 (what you want) where as setting backlog to 512 expecting a max queue length of 9 you end up with 10.
The above article mentions that nginx and apache set a default backlog of 511.
We have a systemtap script that shows current queue length and max queue length, I never see a max queue length greater than 15 (32768 connections) even when I set proxy.config.net.listen_backlog to 2^16 or 2^16 -1 so its interesting that using -1 made a difference for you.
was:
Leif mentioned in TS-2395 that he was having some problems related to proxy.config.net.listen_backlog.
According to this article:
http://blog.dubbelboer.com/2012/04/09/syn-cookies.html
the kernel takes the backlog value, adds 1 and rounds up to the nearest power of 2. It sets max queue length to the log2 value of this number.
This is why backlog of 511 results in max queue length of 9 (what you want) where as setting backlog to 512 expecting a max queue length of 9 you end up with 10.
The above article mentions that nginx and apache set a default backlog of 511.
We have a systemtap script that shows current queue length and max queue length, I never see a max queue length greater than 15 (32768 connections) even when I set proxy.config.net.listen_backlog to 2^16 or 2^16 -1 so not sure why 2^16-1 made a difference for you. Isn't this value in records config of type INT (signed) so it can't be more than 2^15 anyways?
> Reevaluate default proxy.config.net.listen_backlog
> --------------------------------------------------
>
> Key: TS-2524
> URL: https://issues.apache.org/jira/browse/TS-2524
> Project: Traffic Server
> Issue Type: Bug
> Components: Network
> Reporter: David Carlin
>
> Leif mentioned in TS-2395 that he was having some problems related to proxy.config.net.listen_backlog.
> According to this article:
> http://blog.dubbelboer.com/2012/04/09/syn-cookies.html
> the kernel takes the backlog value, adds 1 and rounds up to the nearest power of 2. It sets max queue length to the log2 value of this number.
> This is why backlog of 511 results in max queue length of 9 (what you want) where as setting backlog to 512 expecting a max queue length of 9 you end up with 10.
> The above article mentions that nginx and apache set a default backlog of 511.
> We have a systemtap script that shows current queue length and max queue length, I never see a max queue length greater than 15 (32768 connections) even when I set proxy.config.net.listen_backlog to 2^16 or 2^16 -1 so its interesting that using -1 made a difference for you.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)