我们目前在 Windows 上运行的自行编写的服务器应用程序遇到问题(发生在不同版本上)。服务器侦听 TCP 端口,接受连接,交换一些数据,然后再次关闭连接。大约有 100 个客户端不时连接。
有时服务器停止工作:日志文件显示连接仍然被接受,但在第一次读取尝试时发生套接字错误(10054 - 对等连接重置)。我认为这不是客户问题,因为它突然停止对所有客户工作。
现在我们发现,同样的问题出现在我们的旧服务器软件上,甚至是用另一种编程语言编写的。所以它似乎不是我们程序中的错误 - 我认为它必须是某种操作系统/防火墙问题?当然,防火墙已被停用,这还没有解决问题。
有什么想法可以研究吗?Wireshark 日志将很快跟进。
日志摘录(时间戳、线程 ID、消息)
11:37:56.137 T#3960 Connection from 10.21.13.3
11:37:56.138 T#3960 Client Exception: Socket Error # 10054
Connection reset by peer.
11:37:56.138 T#3960 ClientDisconnected
11:38:00.294 T#4144 Connection from 10.21.13.3
您可以看到异常几乎在连接被接受的同时发生,在这种情况下,客户端会在几秒钟后重新连接。