Windows 10 上的 CORBA 客户端连接到服务器所需的时间不同,具体取决于 IP 地址的数量

问题描述 投票:0回答:1

我正在学习 SCADA 系统 TANGO-Controls。称为 DeviceServer 的基本组件在启动时通过 CORBA 向数据库服务器请求配置。

我的 TestDeviceServer 在 Windows 10 上运行,有两个网卡,一张用于具有自动 DHCP 配置的大学网络,另一张用于具有多个静态 IP 地址的测试网络。数据库服务器在 VirtualBox 6.1 Ubuntu 20.04 VM 中运行。 VM 通过网桥连接到两个网络。 DevServer 应通过测试网卡访问数据库服务器。在我的例子中,有一个特殊的环境变量:

TANGO_HOST=192.168.50.13:10000
,带有虚拟机的本地 IP。

我的问题是,使用的 IP 地址越多,与数据库服务器的连接建立速度就会大大减慢,即大约每个 IP 地址 6 秒。 如果我断开 NIC1 的连接并只留下一个 IP 地址用于连接到 VM,则连接会立即建立。

我想知道该行为的发生是由于 CORBA 特性还是由于网络配置。我已按 IP4 指标优先考虑静态测试 NIC,但没有成功。停用 Windows 防火墙也没有帮助。

当数据库服务器在真实的 Ubuntu 22.04 PC 上运行时,会发生相同的行为。

windows-10 corba windows-10-desktop windows-networking tango-controls
1个回答
0
投票

该问题与 CORBA 无关。 我们发现问题在于 TANGO 解析主机名的方式,请参阅这里。延迟来自 Windows API

INT WSAAPI getnameinfo()

我们找到了一个简单的解决方案:在 NIC IP4 设置中启用 LMHOST 查找,并在 主机文件(

…\windows\system32\drivers\etc\hosts\
):

例如

192.168.50.222 our.pc.de
192.168.2.222  our.pc.de

重新启动网卡。

© www.soinside.com 2019 - 2024. All rights reserved.