キープアライブ
表示
キープアライブ (keepalive) とは、コンピュータネットワークにおいて、2つの装置間の接続が有効であることを確認し、また、接続が切断されるのを防止するために、装置間で定期的に送信される通信のことである。
概要
[編集]キープアライブは、あらかじめ決められた周期で相手装置宛に送信される。キープアライブを送信した後に相手装置からの応答が返って来ない、または、相手装置からのキープアライブが長時間送られて来ない場合、接続が切断されたと判断して、通信回線を閉じたり、再度接続し直すなどの処理を行う。
また、キープアライブ機能は、接続を維持することをインターネット基盤に明示的に示すのにも使われる。
HTTPキープアライブ
[編集]→詳細は「HTTPの持続的接続」を参照
Hypertext Transfer Protocol (HTTP) は、クライアントとサーバの間の接続を維持するための明示的な手段をサポートしている。この機能は、HTTP 1.0では"Connection: Keep-alive"ヘッダを入れることで有効になったが、HTTP 1.1ではデフォルトで有効になっている[1]。
TCPキープアライブ
[編集]Transmission Control Protocol (TCP) キープアライブは拡張機能であり、デフォルトでは無効になっている[2]。キープアライブパケットは、空のデータを載せたパケットである。イーサネットでは、キープアライブパケットのフレーム長は60バイトであり、これに対する応答(これも空データである)は54バイトである[3]。キープアライブに関するパラメータは以下の3つである。
- Keepalive time : 無通信状態になってから最初のキープアライブパケットを送信するまでの時間。可変値であり、デフォルトは2時間である。
- Keepalive interval : キープアライブパケットに対する応答がなかった場合の、次のキープアライブパケットを送信するまでの時間。
- Keepalive retry : キープアライブパケット送信の最大回数。この回数だけ送信を試行しても応答がなかった場合、通信を切断する。
関連項目
[編集]脚注
[編集]- ^ “HTTP Keep Alive discourse by Jim Driscoll”. 2010年8月13日時点のオリジナルよりアーカイブ。2013年11月8日閲覧。
- ^ “Requirements for Internet Hosts - Communication Layers”. IETF (October 1989). November 8, 2013閲覧。
- ^ “File Session Traffic”. Microsoft TechNet. November 6, 2013閲覧。