TCP报文格式及三次握手详解二. TCP三次握手
为什么要三次?通俗一点来说,原因是:客户端和服务端要确认彼此都有收发的能力。第一次握手:客户端发出连接请求,服务端收到连接请求,至此,服务端知道客户端有发送能力。第二次握手:服务端收到第一次客户端发出的连接请求后,向其发出收到连接请求的响应和连接请求,至此,客户端知道服务端有发送能力和接收能力。第三次握手:客户端收到服务端对它第一次所请求的回应后,发送收到连接请求的响应,服务端收到后,至此,服务端知道客户端有接收能力。服务端和客户端都知道彼此有收发能力后,才可建立连接。