网络内核参数net.ipv4.tcp_syn_retries的含义和效果测试

1 概述:

1.1 名词解释

client发送sync包,可能会在网络链路中丢失,也有可能server端因为各种原因未及时处理或者无法处理,则client要进行重新发送sync包,而这重试的次数就是由/proc/sys/net/ipv4/tcp_syn_retries来决定,默认是6。第一次发送sync包,会进行1s的超时等待,第二次发送sync包,会进行2s的超市等待,如此类推,公式是2的N次方。图片来自极客时间。

网络内核参数net.ipv4.tcp_syn_retries的含义和效果测试_第1张图片

1.2 环境准备

版本信息如下:
a、操作系统:centos 7.6
b、docker:20.10.5


2 验证测试:

2.1 在第一个xshell窗口执行命令

tcpdump -i lo -n port 80

2.2 在第二个xshell窗口执行命令

systemctl restart docker
systemctl restart iptables
docker run -d --net=host --rm nginx:latest
iptables -I INPUT -p tcp --dport 80 --syn -j DROP
telnet 127.0.0.1 80

2.3 在第一个xshell窗口观察抓包结果

在这里插入图片描述

你可能感兴趣的:(linux,linux)