Understanding TCP's 3-Way Handshake

TCP’s 3 way handshake is how a client and server set up a reliable connection and synchronize sequence numbers before sending real data. =g=It uses SYN → SYN ACK → ACK.=g= [‌:cite[1]{ln=1}‌] 1) Client → Server: SYN Th...

TCP’s 3 way handshake is how a client and server set up a reliable connection and synchronize sequence numbers before sending real data. =g=It uses SYN → SYN ACK → ACK.=g= [‌:cite[1]{ln=1}‌] 1) Client → Server: SYN The client sends a SYN packet to start the connection. [‌:cite[1]{ln=1}‌] 2) Server → Client: SYN ACK The server responds with SYN ACK , acknowledging the client’s SYN and also indicating it’s ready to establish the connection. [‌:cite[1]{ln=1}‌] 3) Client → Server: ACK The client sends the final ACK , completing the handshake. =g=After this, both sides have established the connection and synchronized sequence numbers in both directions.=g= [‌:cite[1]{ln=1}‌] Key takeaway: the handshake isn’t “data transfer” — it’s the setup step that ensures both ends agree on the connection state and sequencing before TCP starts carrying application payloads. [‌:cite[1]{ln=1}‌]