我有两台机器(PC),通过TCP/IP进行通信。我有一个简单的应用程序,它有服务器/客户端程序。
当我测量两台机器之间的通信速度时,从发送/接收消息得到400~500毫秒。
通过TCP/IP在两台机器之间的速度有限制吗?或者有什么最好的方法来加速交流?
任何评论对我都有帮助。
更新
这是我的TCP配置。数据只是10字节以下的字符串。

[5908] System SocketCommCoreUnit::ConfigureTcpSocket Tcp Socket configured:
[5908] System SocketCommCoreUnit::ConfigureTcpSocket   ExclusiveAddressUse False
[5908] System SocketCommCoreUnit::ConfigureTcpSocket   LingerState False, 0
[5908] System SocketCommCoreUnit::ConfigureTcpSocket   NoDelay False
[5908] System SocketCommCoreUnit::ConfigureTcpSocket   ReceiveBufferSize 8192
[5908] System SocketCommCoreUnit::ConfigureTcpSocket   ReceiveTimeout 0
[5908] System SocketCommCoreUnit::ConfigureTcpSocket   SendBufferSize 8192
[5908] System SocketCommCoreUnit::ConfigureTcpSocket   SendTimeout 0
[5908] System SocketCommCoreUnit::ConfigureTcpSocket   Ttl 128
[5908] System SocketCommCoreUnit::ConfigureTcpSocket   IsBound True

最佳答案

有一个名为nodelay的TCP选项。
Socket.nodelay
它是Nagle Algo开关。默认情况下,nagle algo在发送之前会缓冲一定数量的字节。对于低延迟的东西,你应该启用“nodelay”。

10-04 13:19