A handshake is the initial exchange of messages between two parties to establish a connection, agree on parameters, and authenticate before data transfer begins. TCP uses a 3-way handshake (SYN/SYN-ACK/ACK). TLS uses its own handshake on top of TCP. QUIC integrates both into a single handshake.
Handshakes establish shared state before communication can begin. The TCP 3-way handshake synchronizes sequence numbers and confirms bidirectional connectivity. The TLS handshake negotiates cipher suites, authenticates the server (and optionally the client), and establishes session keys. Every handshake consumes at least 1 RTT, which is why reducing handshake count is a primary goal of protocol optimization. QUIC's innovation was combining the transport and cryptographic handshake into a single 1-RTT exchange.
Round-Trip Time (RTT)
Round-Trip Time (RTT) is the time for a packet to travel from source to destination and a response to return. RTT determines how many round trips fit in a given time window. TCP handshakes, TLS negotiations, and DNS lookups each consume RTTs before data can flow.
SYN (Synchronize)
SYN is a TCP flag used to initiate a connection via the three-way handshake: SYN, SYN-ACK, ACK. The SYN packet carries the client's initial sequence number (ISN). SYN floods are a classic DDoS attack that exhausts server connection tables by sending SYNs without completing handshakes.