从上图看出:在TCP连接建立后并没有数据交互,10s后服务器主动发起关闭TCP流程,服务器进入FIN_WAIT_1状态,由于手机没有响应ACK消息,2s后服务器重发FIN/ACK消息; 根据TCP协议:当TCP收到对方发来的FIN报文时,发ACK确认此FIN报文,并通知应用进程连接正在关闭,TCP在发送完尚未处理的报文段后,发一个FIN报文给对方,然后等待对方对FIN的确认,收到确认后关闭连接。
通过上面的例子,我们看出TCP连接处于非正常的状态,即一方试图发送数据时连接会自动RESET,可以判断服务器已经关闭连接,而终端并不知道,当终端希望发送数据到服务器时,就会收到RESET信号,表示这个TCP链接有误,要中止当前连接。
欢迎光临 51学通信技术论坛 (http://51xuetongxin.com/bbs/) | Powered by Discuz! X2 |