【问题标题】:Using (boost asio) TCP sockets: different send rate vs receive rate使用(提升 asio)TCP 套接字:不同的发送速率与接收速率
【发布时间】:2020-05-19 21:24:30
【问题描述】:

我正在使用 tcp 以 20hz 发送我的应用程序生成的数据。我看到接收器以不同的速率接收数据包,而是以突发(长和短)的形式接收数据包,突发之间的间隙可变。这是因为 TCP 拥塞控制还是其他原因?我可以改变一些东西以获得更顺畅的送达率吗?

【问题讨论】:

  • TCP 不是实时协议。这种行为是正常的。有许多措施,包括但不限于 Nagle 算法,以确保您所描述的事情发生。

标签: networking tcp boost-asio


【解决方案1】:

正如评论者所说,这是正常的。 STREAM 套接字类型正在缓冲。您可以通过设置no_delay 选项禁用Nagle's Algorithmhttps://www.boost.org/doc/libs/1_73_0/doc/html/boost_asio/reference/ip__tcp/no_delay.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-22
    • 2015-04-21
    • 2011-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多