【发布时间】:2014-04-04 06:18:51
【问题描述】:
我们在同一台机器上运行 TCP 服务器客户端架构,客户端连接 127.0.0.1:30008 上的服务器。我们看到的是有一段时间 TCP 连接被服务器重置。我们可以清楚地看到,在 tcpdump 跟踪中,RST 标志是由服务器发送的。客户端代码是python,服务端代码是C。
是什么导致服务器发送这个 RST 平面? ,这个设置已经运行了几个月没有任何问题,所以我们很惊讶地看到现在发生了什么。
TCP 服务器通过另一个 UDP 端口从其他服务器获取数据,并通过 TCP 端口 30008 传输到客户端,客户端在 while 循环中侦听服务器端口。想知道,UDP 连接不会发生这种 Connection RST 问题吗?
有时我们可以看到服务器正在关闭套接字,因此客户端收到异常“传输端点已关闭”,是什么导致了这种情况发生。客户与此问题有任何关系吗?
我查看了互联网以查看解决方案,我只能看到这可能是由于服务器和客户端之间存在一些路由器,但在我的情况下,情况并非如此。
请帮我弄清楚服务器发生了什么。
EDIT- 这是示例 tcptrace(“tcpdump -r actuall_trace.pcap”的输出)。 tcpdump.log - 您可以在文件末尾看到 RST 标志。此文件包含一个完整的从开始到结束的通信跟踪。
谢谢。
【问题讨论】:
-
您能否发布一个净化版本(即没有个人或机密信息)在导致 RST 期间的数据包捕获?
-
我不能把 tcpdump 跟踪文件放在这里,我可以添加屏幕截图或“tcpdump -r dump.pcap”的输出。够了吗?
-
上传到某个网站并在此处发布链接可能吗?确保其中没有任何机密内容!
-
@cnicutar 更新了问题的链接到已清理的跟踪文件,它只有元数据。