Windows客户端和Linux服务器之间没有发生TCP握手

时间:2021-01-16 06:34:41

标签: java linux windows tcp onvif

我真的很头疼这个。

我正在通过测试工具针对一些测试用例运行 Java 服务器,但出现 Java 套接字超时异常。测试工具在 Windows 上运行,而我的服务器部署在 Raspbian 上。测试工具是黑盒所以我不知道它的实现。

根据我收集的信息,测试用例创建了一个客户端,向我的服务器发送一个 http 地址,比如 http://192.168.1.100:8080,我的服务器将在其中建立连接并将数据发送回它。端口号不是静态的。

我每次测试都验证了系统打开了端口。然后我将 Wireshark 放在测试工具的机器上,发现 Syn 数据包进入了机器,但 Syn/Ack 从未发送出去。 我正在使用 java httpURLConnection,但我也尝试创建一个 java 套接字,但两者都导致相同的结果并抛出套接字超时。

如果我使用测试工具在本地运行服务器,则不会出现此问题。让这个奇怪的是,它也发生在另一个应该通过测试的代码库中。

我不知道为什么它无法连接到端口。

更多信息:我正在研究 Onvif 设备控制器。 Onvif 本质上提供了视频流设备和客户端应用程序之间的通用接口。服务器需要符合 Onvif 规范并通过 Onvif 设备测试工具。

上述问题发生在与基本事件处理相关的测试用例中,它遵循 WS-BaseNotification 规范。serer 被赋予一个端点,以便它可以用来通知客户端。但是,鉴于我的套接字超时,我认为这不是模式解析问题。服务器在将任何数据写入输出流之前抛出异常。同样的问题发生在另一个应该通过测试工具的代码库中,但测试工具也报告未传递通知。

0 个答案:

没有答案