"/proc/sys/net/ipv4/tcp_keepalive_time"はLinuxのクライアントとサーバーの両方に影響しますか?

"/proc/sys/net/ipv4/tcp_keepalive_time"はLinuxのクライアントとサーバーの両方に影響しますか?

Keep Aliveを使用してSOAPベースのWebサービス設定を公開して使用するLinux上で実行されるシステムがあります。 Linuxで「/proc/sys/net/ipv4/tcp_keepalive_time」を設定してTCP接続保持タイムアウト値を変更すると、このLinuxシステムで実行されているTCPクライアントとサーバーに影響しますか?

追加情報:我々はapache karaf(servicemix)にデプロイされたapache camel-cxfエンドポイントを使用してSOAPベースのWebサービスを公開して使用します。

答え1

TCP keepaliveに対するLinuxカーネル組み込みサポートの影響みんなKeepalive TCPソケットを有効にします。

ただし、TCPキープアライブはデフォルトで有効になっていません。アプリケーションはsetsockoptこのインタフェースを使用してソケットのキープアライブ制御を明示的に要求する必要があります。

netstatオプションと一緒にコマンドを使用して、特定のソケットでkeepaliveが有効になっていることを確認できます-o, --timers

ここに示すように、同じプロセスは2つのモードで異なるネットワークソケットを開くことができます。

# netstat -anpo | grep 8999
tcp        0      0 10.10.171.44:48744         10.10.139.30:8999          ESTABLISHED 18232/java          keepalive (83.39/0/0)

# netstat -anpo | grep 8009
tcp        0      0 10.10.171.44:8009          10.10.171.42:40947         ESTABLISHED 18232/java          off (0.00/0/0)

関連情報