泰安微网站建设凡客诚品线下店
news/
2025/9/27 11:59:03/
文章来源:
泰安微网站建设,凡客诚品线下店,沈阳定制型网站建设,做app得多少钱From: http://blog.csdn.net/wangfeng2500/article/details/7650062 在TCP层#xff0c;有个FLAGS字段#xff0c;这个字段有以下几个标识#xff1a;SYN, FIN, ACK, PSH, RST, URG. 其中#xff0c;对于我们日常的分析有用的就是前面的五个字段。
它们的含义是#x…From: http://blog.csdn.net/wangfeng2500/article/details/7650062 在TCP层有个FLAGS字段这个字段有以下几个标识SYN, FIN, ACK, PSH, RST, URG. 其中对于我们日常的分析有用的就是前面的五个字段。
它们的含义是
URG:Urget pointer is valid (紧急指针字段值有效)
SYN: 表示建立连接
FIN: 表示关闭连接
ACK: 表示响应
PSH: 表示有 DATA数据传输
RST: 表示连接重置。 其中ACK是可能与SYNFIN等同时使用的比如SYN和ACK可能同时为1它表示的就是建立连接之后的响应如果只是单个的一个SYN它表示的只是建立连接。TCP的几次握手就是通过这样的ACK表现出来的。但SYN与FIN是不会同时为1的因为前者表示的是建立连接而后者表示的是断开连接。RST一般是在FIN之后才会出现为1的情况表示的是连接重置。一般地当出现FIN包或RST包时我们便认为客户端与服务器端断开了连接而当出现SYN和SYNACK包时我们认为客户端与服务器建立了一个连接。PSH为1的情况一般只出现在 DATA内容不为0的包中也就是说PSH为1表示的是有真正的TCP数据包内容被传递。 TCP产生 RST响应的情况属于硬错误: 四次握手不是关闭 TCP连接的唯一方法. 有时,如果主机需要尽快关闭连接(或连接超时,端口或主机不可达)RST (Reset)包将被发送. 注意在由于RST包不是TCP连接中的必须部分, 可以只发送RST包(即不带ACK标记). 但在正常的TCP连接中RST包可以带ACK确认标记 1. syn发送到服务器主机但是目的端口并未运行。则产生一个ECONRFUSED错误。客户端立即返回。比如telnet 192.168.1.55 8889条件55主机在局域网上并且可达也可以换成可以到达的网络ip地址但是8889这个端口并未使用可能服务器已经关闭则服务器对方主机tcp内核发送一个rst相应给客户端于是客户端立即关闭。 注意一下如果输入的网络ip不可达的话客户端将会持续发送syn最后产生一个etimeout的错误大概75秒左右。这个时候客户端的默认网关(192.168.1.1 211.2.2.2)因为找不到下一路由路由器或者再过几跳的路由器会产生一个EHOSTUNREACH响应给客户端注意ENETUNREACH和EHOSTUNREACH通常被认为是一个错误因为ENETUNREACH一般当作已过时由于这是个软错误有可能是网络暂时不通造成的。客户端会重发syn直到超时。 所以会有 telnet 192.168.1.55 8888 主机存在但是端口未开ECONRFUSED错误立刻返回 telnet 192.168.1.56 * 主机不存在UNROUTETOHOST错误立刻返回 telnet 211.1.1.5 * 主机不存在etimeout错误 2. 最简单的情况服务器主动发送rst给客户端关闭连接。客户端read write直接返回rst错误。 3. 服务器收到一个不存在的连接返回rst响应。比如服务器重启之后先前的一个已连接的客户端毫不之情的情况下,这就是半闭连接跟半开连接最大的不同是半闭连接是不能使用的半开连接可以使用。 此时,如果客户端read的话接收缓冲无数据产生一个EPEERRST错误 如果客户端write的话且发送数据小于发送缓冲区剩余容量时第一次write成功第二次write或者read的时候就会产生一个EPEERRST的错误。因为write发送数据是直接把要发送的数据拷贝到内核的tcp发送缓冲区就立刻返回成功的。当然拷贝之前会先检查一下tcp连接有无错误。所以第二次发送或者接收的时候发现连接上已经有了EPEERRST的错误所以就返回错误话说回来第一次发送的数据实际上根本就没有发送成功对方根本就没接受它
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/919424.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!