Мой спящий процесс принимает TCP-соединения?

Мой спящий процесс принимает TCP-соединения?

После отправки сигнала STOP процессу он перестает работать как положено, но все еще принимает TCP-соединения. Так он вообще работает?

решение1

После того, как процесс Unix привязывает IP-адрес и порт к потоковому сокету, ядро ​​начинает принимать TCP-соединения для этого адреса/порта и продолжает до тех пор, пока сокет не будет отвязан или закрыт. Процесс получает доступ к соединениям через системный вызов accept(), но соединения происходят независимо. После первоначального TCP-рукопожатия соединение простаивает до тех пор, пока не будет вызван accept(), и процесс не начнет использовать подключенный сокет. Ядро также примет, буферизует и подтвердит системно-специфический объем данных перед вызовом accept().

Таким образом, соединения устанавливаются, но никакой реальной активности (отправки почты, обслуживания веб-страниц и т. д.) не происходит, пока процесс остановлен.

Связанный контент