First the server sends a SYN + ACK packet with a specially encoded initial
sequence number, or cookie, that includes a hash of the TCP headers from the
client’s initial SYN packet, a timestamp, and the client’s Maximum Segment
Size (MSS). Then when it receives the client’s response, the server can check the
sequence number and create the necessary state only if the client’s sequence
number is the cookie value plus one. Because the cookie uses a hash involving