UNIXしま専科

TCPのキープアライブ時のプローブについて

投稿日時 2007-4-10 11:46:28
執筆者 unix
TCPのセッションを「確立したまま」にする時間が

tcp_keepalive_time

であることを説明しましたが、

このtcp_keepalive_timeの時間(デフォルト2時間)が来ると
どうなるかというと

tcp_keepalive_probes
tcp_keepalive_intvl

という2つのパラメータの値が効いてきます。


tcp_keepalive_probesに指定したデフォルト9回の無通信のTCPセッションに対して
定期的に検査をします、その間隔はというとtcp_keepalive_intvlで指定した
デフォルト75秒になります。

つまり最高で

9回x75秒=675秒(約11分)

経過し相手から反応が無ければ接続を切ります。

tcpのkeepalive関係をまとめると

┌───────────┬─────────────┐
│生存時間 │プローブ │
├───────────┼─────────────┤
│tcp_keepalive_time │tcp_keepalive_probes(9回) │
│(2時間) │tcp_keepalive_intvl(75秒) │
└───────────┴─────────────┘


【変更する場合】
●[再起動したら無効になる方法]
# echo 5 > /proc/sys/net/ipv4/tcp_keepalive_probes
# echo 2 > /proc/sys/net/ipv4/tcp_keepalive_intvl
●[再起動しても有効になる方法]
# vi /etc/sysctl.conf

net.ipv4.tcp_keepalive_probes = 5
net.ipv4.tcp_keepalive_intvl = 2
を追記

# sysctl -w  ←変更を反映
# sysctl -p  ←確認




UNIXしま専科にて更に多くのブログを読むことができます。
http://unix-study.com

このブログのURL
http://unix-study.com/modules/weblog/details.php?blog_id=87