懂视

三报文握手,假设第一次超时,连接已释放,服务器端会不会反复发

2024-11-13 08:09:13

会。客户端的SYN迟迟没有到达服务器端,此时客户端超时后,会重新发送一次连接,重发的这次服务器端收到了,且应答客户端了,连接建立了。但是建立后,第一个SYN也到达服务端了,这时服务端会认为这是一个新连接,会再给客户端发送一个ACK,这个ACK当然会被客户端丢弃。但是此时服务器端已经为这个连接分配资源了,而且服务器端会一直维持着这个资源,会造成浪费。所以第一次超时,连接已释放,服务器端会反复发。