学习笔记-TCP连接状况解析

小微 科技学习笔记-TCP连接状况解析已关闭评论118字数 924阅读模式
摘要前面两篇详细地给大家介绍过了TCP的三次握手和四次挥手流程(学习笔记-TCP三次握手, 学习笔记-TCP四次挥手 ),本文主要是介绍在TCP连接过程中的各种状态变化。状态介绍CLO...

前面两篇详细地给大家介绍过了TCP的三次握手以及四次挥手流程(学习笔记-TCP三次握手, 学习笔记-TCP四次挥手 ),

状况介绍

CLOSED:表示初始状况。文章源自微观生活(93wg.com)微观生活-https://93wg.com/6621.html

LISTEN:表示服务器端的某个SOCKET处于,可以接受连接了。文章源自微观生活(93wg.com)微观生活-https://93wg.com/6621.html

SYN_RCVD:这个状况表示接受到了SYN,在正常情况下,这个状况是服务器端的SOCKET在树立TCP连接时的会话进程中的一个中间状况,很短暂,基本上用netstat你是很难看到这类状况的,除了非你特地写了一个客户端,故意将三次TCP握手进程中最后一个ACK报文不予发送。因而这类状况时,当收到客户端的ACK报文后,它会进入到ESTABLISHED状况。文章源自微观生活(93wg.com)微观生活-https://93wg.com/6621.html

SYN_SENT:这个状况与SYN_RCVD一唱一和,当客户端SOCKET执行CONNECT连接时,它首先发送SYN,因而也随即它会进入到了SYN_SENT状况,并等待服务端的发送中的第2个报文。SYN_SENT状况表示客户端已发送SYN报文。文章源自微观生活(93wg.com)微观生活-https://93wg.com/6621.html

ESTABLISHED:表示连接已经树立了。文章源自微观生活(93wg.com)微观生活-https://93wg.com/6621.html

FIN_WAIT_1:这个状况要好好解释一下,其实FIN_WAIT_1以及FIN_WAIT_2状况的真正含意都是表示等待对方的FIN。而这两种状况的区分是:FIN_WAIT_1状况其实是当SOCKET在ESTABLISHED状况时,它想主动关闭连接,向对方发送了FIN报文,此时该SOCKET即进入到FIN_WAIT_1状况。而当对方回应ACK报文后,则进入到FIN_WAIT_2状况,固然在实际的正常情况下,不管对方何种情况下,都应当马上回应ACK报文,所以FIN_WAIT_1状况通常为比较难见到的,而FIN_WAIT_2状况还有经常常可以用netstat看到。文章源自微观生活(93wg.com)微观生活-https://93wg.com/6621.html

FIN_WAIT_2:上面已经详细解释了这类状况,实际上FIN_WAIT_2状况下的SOCKET,表示半连接,也即有一方请求close连接,但此外还告知对方,我暂时还有点数据需要传送给你,稍后再关闭连接。文章源自微观生活(93wg.com)微观生活-https://93wg.com/6621.html

TIME_WAIT:表示收到了对方的FIN,并发送出了ACK报文,就等2MSL后便可回到CLOSED可用状况了。文章源自微观生活(93wg.com)微观生活-https://93wg.com/6621.html

以上就是微观生活(93wg.com)关于“学习笔记-TCP连接状况解析”的详细内容,希望对大家有所帮助!文章源自微观生活(93wg.com)微观生活-https://93wg.com/6621.html 文章源自微观生活(93wg.com)微观生活-https://93wg.com/6621.html

继续阅读
 
小微
  • 版权声明: 本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们(管理员邮箱:81118366@qq.com),情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
  • 转载请务必保留本文链接:https://93wg.com/6621.html