TCP Connection – Does It Really Take 3*RTT Time?

layer4networkingtcptransport-protocol

TCP takes 3 RTT time I have read from one stack overflow answer to make a connection with server. We know that TCP takes triple (Syn, Syn/Ack, Ack) to make a connection by 3-way handshake with server. But 3 RTT don't understand this.

Best Answer

The triple handshake take three single trips between the connection partners A and B:

  1. A->B: SYN
  2. B->A: SYN+ACK [A is fully synchronized after receiving B's SYN/ACK]
  3. A->B: ACK [A can already send data through the socket right after ACKing B's sequence number]

A round trip is both ways: A->B->A.

Assuming A->B and B->A delays are equal, the triple handshake takes exactly 1.5 RTT.