即便在网络状况非常好,且不存在拥塞、重传或历史链接问题的理想情况下,TCP三次握手通常也不能简化为两次握手。这是因为三次握手不仅仅是为了应对网络问题,它还解决了一些关键的协议设计问题,尤其是确保双方都准备好进行数据传输,并且同步序列号。
TCP三次握手的核心目的在于双向确认通信双方的接收能力。在第二次握手时,服务器只是让客户端知道“我已经准备好接收你的数据”;而第三次握手则是客户端告诉服务器“我知道你已准备好接收我的数据,同时请注意,我也已准备好接收你的数据”。如果只有两次握手,则无法确保这种双向确认。