Как получить BACKLOG для прослушивания сокета

У меня есть слуховой сокет на порту 80 на Linux-сервере ubuntu.

tcp    0  0 0.0.0.0:80      0.0.0.0:*   LISTEN  12248/nginx

Есть ли способ получить значение backlog этого сокета (значение backlog, которое было отправлено вызову listen())?

Я знаю, что я мог бы просмотреть конфигурацию nginx, но файл конфигурации можно было бы изменить без перезагрузки nginx с новой конфигурацией, поэтому аргумент backlog в конфигурации и в действительном вызове LISTEN может отличаться.

Ответ 1

ss -lt дает это значение в столбце Send-Q.

Ответ 2

Нет стандартного API TCP для получения отставания. В этом нет необходимости. Вы создали сокет, вы поместили его в состояние прослушивания, вы должны знать, какое задание вы указали. Th система имеет право корректировать ее вверх или вниз, но даже тогда нет ничего полезного, что вы можете сделать с этой информацией в своем приложении.