TCP Fast Open,以下简称TFO,即TCP快速打开,是TCP连接的一种简化握手手续的拓展,用于提高两端点间连接的打开速度
正常情况下,服务端和客户端相互建立连接需要握手三次,这会导致延时,启用 TFO 后,如果验证成功,它可以在三次握手最终的ACK包收到之前就开始发送数据,这样便减少了连接延迟
需要注意的是,TFO只是 降低了握手阶段的延迟,至于握手成功后数据传递的速度,和 TFO 没有关系
首先检查一下服务器现在的状态
cat /proc/sys/net/ipv4/tcp_fastopen
将会返回一个数字,分别代表:
更改设置的方法为:执行并在/etc/rc.local中添加
echo 'net.ipv4.tcp_fastopen=3' > /etc/sysctl.d/98-tcp_fastopen.conf
测试客户端是否正常启用TFO:
运行几次curl --tcp-fastopen www.google.com
再运行ip tcp_metrics show | grep "fo_cookie"
如果有输出,则配置正确
打开网站配置文件,在listen xxx后加上fastopen=[快速打开队列最大长度]
This website uses cookies.