unix网络编程1 5.4问题
在5.12节中我们使用netstat命令通过查看套接字状态验证了连接终止序列的前两个分节(来自服务器的FIN和来自客户的对该分节的ACK)已经发送。
该序列的后两个分节(来自客户的FIN和来自服务器的对该分节的ACK)会交换吗?
答案:
连接终止序列的最后两个分节并不发送。我们杀掉服务器子进程之后,客户向服务器发送数据导致服务器TCP响应以一个RST,这个RST使得连接中止,并防止连接的服务器端(执行主动关闭的那一端)经历TIME_WAIT状态。
连接中断之后,RST导致不再进行正常的四次握手过程。