Linux
tcp_keepalive 應用程序是否依賴於 Linux?
根據http://tldp.org/HOWTO/TCP-Keepalive-HOWTO/index.html,核心保活功能發生在作業系統級別,不需要應用程序顯式呼叫它。但是,我還閱讀了有關應用程序必須如何呼叫它(使用 SO_KEEPALIVE)才能實際使用核心功能的資訊。
此處 > Keep-alive 選項在 Linux 上無法用於傳出連接
有人可以澄清一下嗎?
謝謝!
除非明確打開應用程序套接字,否則不會發生這種情況。此外,它在您提到的 TCP Keepalive HOWTO 中明確說明:
請記住,即使在核心中配置了 keepalive 支持,它也不是 Linux 中的預設行為。程序必須使用 setsockopt 介面為其套接字請求保持活動控制。實現keepalive 的程序相對較少,但您可以按照本文件後面解釋的說明輕鬆為大多數程序添加keepalive 支持。