Why TCP needs a Three-Way Handshake (And why Two isn’t enough)

The third ACK looks like an extra step until you discover the problem it solves.