TCP三次握手过程中,请求建立连接的主机在收到ACK后,真实的数据包比第三个握手包先到,该包如何处理?
TCP三次握手过程中,请求建立连接的主机在收到第二个握手数据包后,发送第三个握手包ACK,紧接着就发送真实的数据,若由于网络原因,真实的数据比第三个握手包先到目的机,之后,该真实的数据包应如何处理?目的机丢弃还是忽略?
我要回答
问题答案
3次握手是指HTTP SYNC(UL)->HTTP SYNC ACK(DL)->HTTP ACK(UL)吗?
回答者:darius 回答时间:2010-10-08 13:22
TCP建立连接的过程通常被称为三次握手
1)SYN_SENT (syn sent)
发起方发送一个设置了SYN标志的TCP数据包和初始化序列号(Initial Sequence Number, ISN)以及端口号给接收方,这常被叫做SYN数据包或SYN报文
连接的状态被称做SYN_SENT
2)SYN_RCVD (syn recieved)
接收方收到请求,给发起方发送一个设置了SYN与ACK标志位的TCP数据包做为应答,另外设置一个比客户机发送来的ISN大1个单位的ISN值,这常被称为SYN_ACK数据包或SYN_ACK报文
这时连接的状态称做SYN_RCVD
3)ESTABLISHED
发起方然后发送一个带有ACK应答和增1后的ISN标志来确认SYN_ACK
至此,完成了三次握手, 此时的连接状态为连结成功: ESTABLISHED
1)SYN_SENT (syn sent)
发起方发送一个设置了SYN标志的TCP数据包和初始化序列号(Initial Sequence Number, ISN)以及端口号给接收方,这常被叫做SYN数据包或SYN报文
连接的状态被称做SYN_SENT
2)SYN_RCVD (syn recieved)
接收方收到请求,给发起方发送一个设置了SYN与ACK标志位的TCP数据包做为应答,另外设置一个比客户机发送来的ISN大1个单位的ISN值,这常被称为SYN_ACK数据包或SYN_ACK报文
这时连接的状态称做SYN_RCVD
3)ESTABLISHED
发起方然后发送一个带有ACK应答和增1后的ISN标志来确认SYN_ACK
至此,完成了三次握手, 此时的连接状态为连结成功: ESTABLISHED


