TCP リセット セグメント制御について
TCP リセット セグメント制御
TCP ヘッダーには、リセット(RST)フラグというフラグが含まれます。TCP セグメントは、参照される接続の条件を満たしていないセグメントが到着するたびに、RST フラグとともに送信されます。たとえば、接続要求が宛先ポートで受信されたにもかかわらず、そのポートでリッスンしているプロセスがない場合、TCP セグメントは RST フラグとともに送信されます。
この動作は、ホスト間通信用に RFC 793 の伝送制御プロトコルで定義され、さまざまなベンダーによって実装されています。ただし、ホスト間のネットワークにあるネットワーク デバイスに関しては、セッション(ハーフオープン、アイドル、ハーフクローズ)のクリア時に、デバイスが接続の発信側、受信側、またはその両方に TCP RST セグメントを送信する必要があるかどうかを判別するための特定の規則が定義されていません。一部のデバイスはセッションのクリア時に送信側と受信側の両方のポートに TCP RST セグメントを送信しますが、TCP RST セグメントを送信せずにセッション テーブルのセッションを暗黙的に削除するデバイスもあります。
TCP リセット セグメント制御機能は、ハーフクローズ、ハーフオープン、またはアイドル セッションに対して、セッションがクリアされるときに TCP RST セグメントを送信する必要があるかどうかを設定するメカニズムを提供します。
ハーフオープン セッションは TCP 同期(SYN)セグメントによって開始された未確立のセッションで、TCP スリーウェイ ハンドシェイクのみが発生し、タイマーが開始されるため、不完全です。
TCP は、接続の一端で出力を終了すると同時に、接続のもう他端からデータを受信し続ける機能を提供します。この TCP 状態は、ハーフクローズと呼ばれます。セッションは最初の TCP FIN セグメントを受信し、タイマーが起動すると、ハーフクローズ状態になります。セッションがタイム アウトになる前に別のセグメントを受信した場合、タイマーが再開されます。
ハーフオープンおよびハーフクローズのセッションのタイムアウト値は、それぞれ tcp synwait-time コマンドと tcp finwait-time コマンドを使用して設定できます。デフォルトのタイムアウト値は 30 秒です。
アイドル セッションは、2 つのデバイス間でアクティブで、長時間どちらのデバイスからもデータが送信されていない TCP セッションです。アイドルセッションのタイムアウト値は、tcp idle-time コマンドを使用して設定できます。アイドル セッションのデフォルトのタイムアウト値は 3600 秒です。
TCP セッションでタイムアウトが発生し、セッションがクリアされると、TCP RST セグメントが送信され、セッションに TCP リセット セグメント制御が設定されている場合に限り、セッションがリセットされます。