TCP 3向握手中的服务器响应


Answers:


2

一段时间后,客户端将等待SYN数据包。

相关RFC是http://www.faqs.org/rfcs/rfc793.html

三向握手的主要原因是为了防止旧的重复连接启动引起混乱。为了解决这个问题,已经设计了一种特殊的控制消息,复位。如果接收方TCP处于非同步状态(即SYN-SENT,SYN-RECEIVED),则在接收到可接受的重置后将返回LISTEN。如果TCP处于同步状态之一(已建立,FIN-WAIT-1,FIN-WAIT-2,CLOSE-WAIT,CLOSING,LAST-ACK,TIME-WAIT),它将中止连接并通知其用户。我们在下面的“半开”连接中讨论后一种情况。

RFC允许服务器使用单独的ACK和SYN,但请注意,这些可以组合为单个数据包。实际上,我相信所有常见的实现都将服务器SYN和ACK结合在一起。

...

史蒂文斯(Stevens)†具有状态转换图。这表明客户端将超时到CLOSED状态,并且大概将尝试重新建立连接。

如果任一端在到达连接已建立状态之前已接收到数据包,则它们将分别处于SYN_SENT或SYN_RCVD,并且将发送复位(RST),并且(我认为)将移至CLOSED或LISTEN状态。

†ISBN 0-201--63346-9

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.