Networking Essentials medium
Why does establishing a new HTTPS connection often take 1-2 extra Round Trip Times (RTT) compared to plain HTTP?
- A Because HTTPS requires a significantly larger initial TCP window size to accommodate the complex cryptographic metadata required for secure communication.
- B Because the TLS handshake (including certificate exchange and key agreement) must occur *after* the TCP handshake but *before* the first HTTP request is sent.
- C Because HTTPS application servers are inherently slower at processing incoming connections due to the high-overhead required for real-time data decryption.
- D Because the AES-GCM encryption algorithm adds significant computational latency to every single byte transmitted from the server's network interface.
Answer: B. Because the TLS handshake (including certificate exchange and key agreement) must occur *after* the TCP handshake but *before* the first HTTP request is sent.
Establishing a secure connection is a multi-step process. First, the standard TCP '3-way handshake' occurs (1 RTT). Only then can the TLS handshake begin. In TLS 1.2, this requires two additional round-trips for the client and server to agree on encryption algorithms and exchange public keys. While modern TLS 1.3 reduces this to just 1 RTT (and even 0-RTT for resumed sessions), the total startup time is still significantly higher than plain HTTP. This initial delay is a major reason why developers use CDNs to terminate TLS closer to the user, effectively shortening the RTT distance and speeding up the 'First Byte' delivery.
One system design question a day, with spaced repetition so the ones you miss come back.
Get the appRelated questions
- What is the downside of enabling 'Sticky Sessions' (Session Affinity) on a Load Balancer?
- In WebRTC (P2P Mesh), why is a STUN server required?
- What is the fundamental difference between a Network Switch and a Router?
- In Cloud Networking (AWS), what is the limitation of VPC Peering compared to a Transit Gateway?
- Which protocol is ideal for real-time multiplayer gaming positions or Voice over IP (VoIP), and why?
- What is the purpose of the 'Time To Live' (TTL) field in an IP packet?