首页/系统/Linux 内核与性能调优速查/TCP_NODELAY 与交互延迟
网络栈调优98 条

TCP_NODELAY 与交互延迟

小请求响应型连接可开启 TCP_NODELAY, 避免发送端攒包等待与延迟确认叠加造成额外往返。

C 用例

C 用例
int one = 1;
setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, &one, sizeof(one));
大吞吐连接通常不需要; 应用侧合并写请求往往比全局关闭 Nagle 更有效。

易错点

  • 对所有连接一刀切开后, 小包数量明显上升
  • 用它解决应用层逐字节写导致的性能问题

数据来源与参考

  • man 7 tcp
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌