分析几种TCP状态转换中的非正常转换

简介:  1、服务器从listen状态变成close状态的原因: 服务器在监听端口的时候,此时有些资源加载的有问题导致服务没开启,此时服务器会从listen状态变成closed状态。

 

1、服务器从listen状态变成close状态的原因:

 

服务器在监听端口的时候,此时有些资源加载的有问题导致服务没开启,此时服务器会从listen状态变成closed状态。

因此,服务器在初始化时候,最好不要打开联网的端口

 

 

2、服务器从listen状态转成syn sent状态的原因:

这个状态比较奇怪,服务器在监听的时候,却向其他地方发送消息。我本来是监听别人的,却主动去连接别人。

出现这种问题,是因为代码的编码有问题

 

 

3、RST状态

 

情况一:

比如说服务器要打开80端口,由于某种原因,我们并没有打开这个服务。应用程序默认寻找80端口,但是找不到对应的服务,此时底层会给服务发送一个RST

情况二:

请求超时时。当连接的处理时间超过了设定的时间,客户端或者服务端会给对方发送一个RST,表示不要连接了。着可能使我们的程序设置上有一些bug导致的。

情况三:

应用程序有bug。处理了一部分消息之后,程序误以为客户端出现问题,然后主动停掉了对于客户端的服务。此时处理了一半的消息就断了

情况四:

客户端有一段时间没有向服务器发送消息,此段时间内服务器重启了一下,客户端并不知情。此时客户端再次发送消息给服务器,服务器接受不了客户端发来的消息。此时,服务器会给客户端发送RST ,让链接重置。

相关文章
|
网络协议 C语言
Wireshark lua dissector 对TCP消息包合并分析
Wireshark lua dissector 对TCP消息包合并分析
838 0
|
网络协议
ACK的累加规则-wireshark抓包分析-不包含tcp头部、ip头部、数据链路层头部等。
ACK的累加规则-wireshark抓包分析-不包含tcp头部、ip头部、数据链路层头部等。
ACK的累加规则-wireshark抓包分析-不包含tcp头部、ip头部、数据链路层头部等。
|
网络协议 安全 测试技术
TCP 编程快速入门案例分析 | 学习笔记
快速学习 TCP 编程快速入门案例分析
TCP 编程快速入门案例分析 | 学习笔记
|
网络协议 Linux
TCP状态转换图文解说
TCP状态转换图文解说
286 0
TCP状态转换图文解说
|
网络协议
TCP协议的状态
TCP协议的状态
119 0
|
监控 网络协议 NoSQL
不为人知的网络编程(十一):从底层入手,深度分析TCP连接耗时的秘密
TCP的开销到底有多大,能否进行量化。一条TCP连接的建立需要耗时延迟多少,是多少毫秒,还是多少微秒?能不能有一个哪怕是粗略的量化估计?
649 0
不为人知的网络编程(十一):从底层入手,深度分析TCP连接耗时的秘密
|
Web App开发 网络协议 架构师
接口协议之抓包分析 TCP 协议
TCP 协议是在传输层中,一种面向连接的、可靠的、基于字节流的传输层通信协议。 ## 环境准备 对接口测试工具进行分类,可以如下几类: - 网络嗅探工具:tcpdump,wireshark - 代理工具:fiddler,charles,anyproxyburpsuite,mitmproxy - 分析工具:curl,postman,chrome Devtool - ## 抓包分析TCP协
|
Web App开发 网络协议 架构师
接口协议之抓包分析 TCP 协议
TCP 协议是在传输层中,一种面向连接的、可靠的、基于字节流的传输层通信协议。 ## 环境准备 对接口测试工具进行分类,可以如下几类: - 网络嗅探工具:tcpdump,wireshark - 代理工具:fiddler,charles,anyproxyburpsuite,mitmproxy - 分析工具:curl,postman,chrome Devtool - ## 抓包分析TCP协
|
Web App开发 网络协议 测试技术
接口协议之抓包分析 TCP 协议
接口协议之抓包分析 TCP 协议
|
机器学习/深度学习 JSON 缓存
TCP协议学习笔记、报文分析
TCP(Transmission Control Protocol传输控制协议)协议是基于IP协议,面向连接的、可靠的、基于字节流的传输层通信协议。
TCP协议学习笔记、报文分析