DataLife Engine / Увеличиваем очередь TCP в Linux

Увеличиваем очередь TCP в Linux

Увеличиваем очередь TCP в Linux

Прежде всего, мы должны понимать, что сокет TCP в состоянии «LISTENING» имеет две независимые очереди:

В очереди SYN хранятся соединения, которые не получили ACK-пакет от клиента. т. е. (полуоткрытые соединения)

В очереди Accept хранятся уже установленные соединения «ESTABLISHED».

Ограничение SYN очереди раньше настраивалось изменением параметра ядра net.ipv4.tcp_max_syn_backlog, но теперь это не так. В настоящее время net.core.somaxconn ограничивает оба размера очереди.

Посмотреть текущий размер очереди можно командой:
sysctl -a | grep net.core.somaxconn

Чтобы изменить размер очереди, введите команду:
sysctl -w net.core.somaxconn=65535

Применить изменения после перезагрузки:
echo 'net.core.somaxconn=65535' >> /etc/sysctl.conf

Посмотреть количество сокетов в Accept очереди Recv-Q и размер бэклог-лимита Send-Q:
ss -tlpn

Посмотреть количество соединений в очереди SYN:
ss -n state syn-recv sport = :443 | wc -l

Посмотреть количество уже установленных соединений:
ss -n state established | wc -l
10-07-2021, 16:13
Вернуться назад