3ウェイハンドシェイク
読み:スリーウェイハンドシェイク
外語:3WHS: 3-way handshake

 TCPでの通信確立を行なう手順のこと。
目次

概要
 通信を行なおうとするホストは、次の手順でコネクションを確立する。
  1. 通信先ホストに対してまずSYNパケットを送る。
  2. それを受け取った通信先ホストはそれに対するACKと、通信先ホストから通信元ホストへのSYNをSYN+ACKの形で送る。
  3. 最後に通信元ホストがそれに対するACKを返す。
 このように常に3つの手順を踏むことから、3ウェイハンドシェイクという。

特徴
 この方式の弱点は、通信先のホストは最後の手順が終了するまで、通信を行なおうとするホストの情報を保存しなければならないことである。
 保存できる数には限りがあるため、悪意ある者がひたすら通信先ホストに対しSYNパケットの送信だけを繰り返し、戻るSYN+ACKに対し応答をしなければ、通信先のホストで待機している接続待ちがやがて溢れてしまい正常に動作できなくなってしまう。このような攻撃手法をSYN Flooding Attackという。
 このセキュリティ問題の解決にはなっていないが、TCPで3ウェイハンドシェイクを簡略化するための「TCP Fast Open」(TFO)が策定中である。

再検索