1

带有 SSLStream 的 Socket 服务器有时会拒绝来自客户端的新连接。

我使用了远程主机名端口,它说Connecting To host...

无法在端口 6002 上打开与主机的连接:连接失败

我用过netstat -a,我看到 TCP 状态为

TCP 0.0.0.0:6002 主机:0 监听

我也认为该服务也在监听tcpview

我在客户端看到的错误是connection refused with error code 10061.

同一个套接字服务器正在接受新连接,并且运行良好,没有任何问题。但一段时间后,上述问题发生了。它是随机的。

当我重新启动套接字时,它工作正常并接受连接,我不想经常这样做。因为这会断开已经连接的客户端。

有人可以帮我解决这个问题吗?

谢谢。

4

2 回答 2

0

你在哪里运行netstat?在服务器上?

  1. 尝试使用目标 IP 地址 127.0.0.1 从本地主机(从服务器本身)连接到套接字
  2. 对服务器的网络 IP 做同样的测试。

我的猜测是防火墙阻止了外部访问,或者中间的路由器阻止了连接。

于 2012-04-06T21:43:41.340 回答
0

它工作了一段时间,然后停止。我能想到的几个选项:

  1. 途中的一些防火墙会进行某种节流

  2. 您太快地打开和关闭太多连接。在这种情况下,您会耗尽客户端(通常)和/或服务器上的临时端口。如果您执行 netstat -a 您将看到很多处于 TIME_WAIT 状态的套接字,请在客户端和服务器上尝试此操作。这里的解决方案是重用连接(最好)。或者增加临时端口的数量(注册表设置)。但这只会带您到此为止。

  3. 您的服务器中有一个错误,它会在一段时间后停止接受新连接。

于 2012-04-06T22:27:06.910 回答