スリーウェイハンドシェイク 【three-way handshaking】 3ウェイハンドシェイク

概要

スリーウェイハンドシェイク(three-way handshaking)とは、IPネットワーク上でTCPによる接続(コネクション)を確立するための手順。パケットの送受信を3回行うことからこのように呼ばれる。

TCPTransmission Control Protocol)はIPHTTPなどの間にあるトランスポート層通信規約プロトコル)の一つで、通信相手との間にコネクションconnection)と呼ばれる論理的な伝送路を形成し、信頼性の高い通信を行うことができる。

スリーウェイハンドシェイクではまず最初に、接続を要求する側(クライアント)がランダムに決めた整数である「シーケンス番号」を記載した「SYNパケット」(TCPヘッダSYNフラグがオンに設定されたパケット)を相手方に送る。

次に、接続を受ける側(サーバ)は、ランダムに決めたシーケンス番号と、相手方から受け取ったシーケンス番号に1を加えた「ACK番号」(確認応答番号)を記載した「SYN+ACKパケット」(SYNフラグACKフラグがオンになったパケット)を返信する。

最後に、クライアントサーバから受け取ったシーケンス番号に1を加えた値をACK番号として記載した「ACKパケット」(ACKフラグがオンになったパケット)を送信することで接続の確立が完了する。以降は、この手続きで共有したシーケンス番号ACK番号を用いて、互いに送信したデータが相手方に正しく着信したかどうかを確認しながら通信を行う。

(2024.7.8更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。