Web Protocols

TCP (Transmission Control Protocol)

The reliable transport under most of the web: a three-way handshake, guaranteed in-order delivery, retransmission and congestion control. Rock-solid, but its strict ordering causes head-of-line blocking.

What it is

TCP establishes a connection with a SYN / SYN-ACK / ACK three-way handshake, then delivers bytes reliably and in order, retransmitting anything lost and adapting its send rate with congestion control. HTTP/1.1 and HTTP/2 run on TCP, usually with TLS layered on top.

Head-of-line blocking

Because TCP guarantees order, a single lost segment stalls delivery of everything after it — even independent HTTP/2 streams. QUIC sidesteps this by giving each stream its own delivery.

Why it matters

  • Its reliability guarantees are what let HTTP assume an ordered, lossless byte stream.
  • Its handshake and ordering costs are exactly what QUIC and HTTP/3 were designed to reduce.

Common mistakes

  • Ignoring the extra TCP+TLS round trips when optimising first-byte latency.
  • Assuming TCP ordering is free — on lossy links it causes noticeable stalls.

How WebInspect checks this

  • WebInspect measures connection setup timings (TCP handshake, TLS) in its performance analysis.