Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#51782 - [nginx] Enable TCP Fast Open for nginx

Attached to Project: Arch Linux
Opened by Avdija Ahmedhodzic (avdija) - Thursday, 10 November 2016, 13:40 GMT
Last edited by Bartłomiej Piotrowski (Barthalion) - Friday, 18 November 2016, 20:33 GMT
Task Type Feature Request
Category Packages: Extra
Status Closed
Assigned To Sébastien Luttringer (seblu)
Bartłomiej Piotrowski (Barthalion)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Hi,

Can you enable TCP Fast Open for nginx?
This task depends upon

Closed by  Bartłomiej Piotrowski (Barthalion)
Friday, 18 November 2016, 20:33 GMT
Reason for closing:  No response
Comment by Jan de Groot (JGC) - Thursday, 10 November 2016, 14:20 GMT
AFAIK Nginx already includes support for TFO. The define that is found all over the internet isn't needed on archlinux, as glibc defines TCP_FASTOPEN=23 already.
Comment by Avdija Ahmedhodzic (avdija) - Thursday, 10 November 2016, 14:26 GMT
nginx needs to be compiled with -DTCP_FASTOPEN=23 in order to provide support for TCP Fast Open. Our nginx does not provide that and I think that it would be nice addition.
Comment by Doug Newgard (Scimmia) - Thursday, 10 November 2016, 14:34 GMT
Did you bother to read what JGC wrote?
Comment by Avdija Ahmedhodzic (avdija) - Thursday, 10 November 2016, 14:44 GMT
sure, but did anyone test if TCP Fast Open actually works? You can enable it in nginx but connection will not be handled that way.
Comment by Doug Newgard (Scimmia) - Thursday, 10 November 2016, 14:52 GMT
Alright, but that's not what you said.
Comment by Jan de Groot (JGC) - Thursday, 10 November 2016, 14:56 GMT
glibc defines TCP_FASTOPEN=23 and the configure script detects that, so adding -DTCP_FASTOPEN=23 will not change anything in the nginx package. The client also needs to support TFO, both kernel and browser.
Comment by Avdija Ahmedhodzic (avdija) - Thursday, 10 November 2016, 18:02 GMT
OK, I am using latest kernel with:
[root@s5 ~]# cat /proc/sys/net/ipv4/tcp_fastopen
3

nginx config contains:
listen 80 fastopen=256;
listen [::]:80 fastopen=256;
listen 443 ssl http2 fastopen=256;
listen [::]:443 ssl http2 fastopen=256;

and yet, I am failing to verity that TFO is active:

[root@s5 ~]# grep '^TcpExt:' /proc/net/netstat | cut -d ' ' -f 87-92 | column -t
TCPOFOMerge TCPChallengeACK TCPSYNChallenge TCPFastOpenActive TCPFastOpenActiveFail TCPFastOpenPassive
686 15121 786 0 0 0
Comment by Bartłomiej Piotrowski (Barthalion) - Friday, 11 November 2016, 10:12 GMT
And how does that relate to what JGC said? "The client also needs to support TFO, both kernel and browser."

Loading...