| ブログ - 最新エントリ |
最新エントリ配信 |
最新エントリ
2007/04/18
|
カテゴリ: Miscellaneous :
執筆者: unix (4:39 pm)
|
TCPのコネクション確立も、何も通信が無いときの動きも 今まで説明しました。きちんと送信側が送信したにも関わらず 途中でパケットがなくなってしまうことがあります。 TCPセッション中にデータを送信しますが、そのデータの 入ったパケットが相手に届く間に消えてなくなった場合 送り元がもう一度送りなおすんです。 ※どうやって届いているのか否かの判断をしているかは今後機会があれば説明します。 その「送りなおす」つまり再送の間隔を決めるのが tcp_retries1 tcp_retries2 という2つのパラメータなんです。 まず送ったのに届かないと判断した場合はtcp_retries1の値(デフォルト3回)に 従って、設定された値の回数だけ再送します。 デフォルト値では3秒から8分の間になります。 そしてそれでも消失してしまうなら、ネットワークとして 問題ありという判断になり、ルートの更新などが行われます。 そして、さらに今度はtcp_retries2のパラメータの値(デフォルト15回)に 従って再送ができなければセッションを切断します。 【変更する場合】 ●[再起動したら無効になる方法] # echo 5 > /proc/sys/net/ipv4/tcp_retries1 # echo 2 > /proc/sys/net/ipv4/tcp_retries2 ●[再起動しても有効になる方法] # vi /etc/sysctl.conf net.ipv4.tcp_keepalive_probes = 5 net.ipv4.tcp_keepalive_intvl = 2 を追記 # sysctl -w ←変更を反映 # sysctl -p ←確認 |











