TCP 3 way handshake
from TCP
3 way
clientがserverにSYNパケットを送信
接続の要求をする
受け取ったserverは、それを了承するSYN-ACKパケットをclientに送信
受け取ったclientは、接続開始を表すACKパケットをserverに送信
その後、通信相手との通信が開始される
TCPの接続時は「3 way handshake」という3ステップの手順を踏みます。
TCPのヘッダにはフラグを格納する部分があり、これを利用して「SYN」や「ACK」などの信号をやり取りします。
1. クライアントがサーバーにSYNパケットを送信
2. サーバーは、それを了承するACKと、サーバー側からのSYNを一緒に送信
3. クライアントはサーバーから送られてきたSYNに対するACKを返す
これで1対1の通信を確立し、その後データのやりとりができます。
https://hpbn.co/assets/diagrams/eefa1170a673da0140efe1ece7a2884b.svg
【画像引用元】Networking 101: Building Blocks of TCP - High Performance Browser Networking (O'Reilly)
ちなみにSYNとは「synchronize(同期)」のことで、ACKは「acknowledgement(了承)」の略です。