TCPの3ウェイハンドシェイクとは?てぃーしーぴーのすりーうぇいはんどしぇいく
TCPの3ウェイハンドシェイクとは、TCPが通信を開始するとき、SYN、SYN+ACK、ACKという3つのセグメントをやり取りして互いの初期シーケンス番号を通知し合う手順。番号がそろって初めてデータ転送に入り、以降は確認応答と再送で欠落を補う。相手が生きていて受信の用意があることを確かめる工程でもある。
最終更新:2026-10-06
この語が出る過去問を解く →背景
宛先が応答できるかを確かめずに送りつける設計では、届かないデータを延々と流し続けることになる。順序と欠落を管理するにも、双方が番号の起点を共有している必要があった。一方でこの手順は、応答を待つ間サーバ側が資源を確保するという性質を持ち、そこが後に攻撃の的になった。
具体例
接続できない原因の切り分けでは、SYNにRSTが返るなら宛先はそのポートを開けておらず、無応答なら経路上で破棄されている、と読み分けられる。nmapのSYNスキャンは最後のACKを返さずに止めることでこの違いだけを高速に集める。Wiresharkのキャプチャでも、先頭3行を見れば確立の成否が分かる。
試験での引っ掛け
「3往復」ではなく3つのセグメント、往復でいえば1.5往復。ACKを返さないSYNを大量に送るSYN Floodは、確保されたままの半開き接続で資源を枯らす攻撃で、SYN Cookieが対策になる。UDPにこの手順は無く、送信元を詐称できることが反射・増幅型攻撃の前提になる。
関連用語
出た過去問
出典:平成28年度 秋期 情報処理安全確保支援士試験 午前Ⅱ 問19(IPA)
TCPのコネクション確立方式である3ウェイハンドシェイクを表す図はどれか。
正解:要求元→要求先へSYN,要求先→要求元へSYN+ACK,要求元→要求先へACKの3回のやり取りで完了する図
要点:TCP確立はSYN・SYN+ACK・ACKの3往復手順
TCPの3ウェイハンドシェイクは、要求元がSYNを送り、要求先がSYNとACKを合わせた1つのセグメントで応答し、最後に要求元がACKを返す3回のやり取りで確立します。双方が初期シーケンス番号を送り、それぞれに確認応答が返るため、往復3回で済みます。
出典:平成30年度 秋期 情報処理安全確保支援士試験 午前Ⅱ 問18(IPA)
TCPのコネクション確立方式である3ウェイハンドシェイクを表す図はどれか。
正解:要求元→要求先:SYN。要求先→要求元:SYN+ACK。要求元→要求先:ACK。(メッセージ3回のやり取り)
要点:TCP確立はSYN・SYN+ACK・ACKの3回で完了
TCPのコネクションは、要求元のSYN、要求先からのSYNとACKを1つにまとめたセグメント、要求元のACKという3回のやり取りで確立します。双方が初期シーケンス番号を通知し、互いに確認応答を返すことを3回で済ませている点が要点です。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。