
为什么需要第三次握手
为了防止没有/垃圾的连接浪费TCP请求, 某一些被丢弃的请求可能也会建立TCP连接
为什么要四次挥手
因为服务端要等待资源传输完之后才能发送FIN, 所以要将ACK和FIN分开来
为什么需要最后的超时等待
1.等待所有的旧数据包传输完毕
2.防止ack丢失
为什么超时等待的时间是2MSL
因为最后一个ack可能会丢失导致服务端无法关闭连接, 这时服务端会重新发送一个FIN, 这一来一回就是2MSL

为了防止没有/垃圾的连接浪费TCP请求, 某一些被丢弃的请求可能也会建立TCP连接
因为服务端要等待资源传输完之后才能发送FIN, 所以要将ACK和FIN分开来
1.等待所有的旧数据包传输完毕
2.防止ack丢失
因为最后一个ack可能会丢失导致服务端无法关闭连接, 这时服务端会重新发送一个FIN, 这一来一回就是2MSL