0

我有 2 台机器(PC)通过 TCP/IP 进行通信。我有一个简单的应用程序,它有服务器/客户端程序。

当我测量两台机器之间的通信速度时,我从发送/接收消息中得到了 400 ~ 500 毫秒。

是通过 TCP/IP 限制 2 台机器之间的速度吗?或者有什么最好的方法来加快沟通?

任何评论都会对我有所帮助。

更新

这是我的 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
4

1 回答 1

5

有一个名为 NoDelay 的 tcp 选项。

套接字.nodelay

它是 Nagle-Algo 开关。默认情况下,Nagle-Algo 在发送之前会缓冲一定数量的字节。对于低延迟的东西,你应该启用“nodelay”。

于 2013-08-02T07:19:41.927 回答