【问题标题】:Is TCP Keepalive necessary for a busy TCP socket?繁忙的 TCP 套接字是否需要 TCP Keepalive?
【发布时间】:2013-12-29 07:57:06
【问题描述】:

在这篇介绍文章中:http://tldp.org/HOWTO/TCP-Keepalive-HOWTO/overview.html

它指出TCP保持活动的原因是:

  • 防止因网络不活动而断开连接
  • 检测死节点

所以在我的应用程序中,有一个繁忙的 TCP 套接字。数据包经常在两个对等点之间来回发送 - 因此有大量设置了 ACK 标志的数据包。

应用程序协议使用其他方法来检测死节点。

对于上述情况是否还需要 TCP keepalive?

【问题讨论】:

  • TCP keepalives 默认每两小时发送一次。这不会完成你的第一个要点。这个想法只是为了检测死去的同伴。

标签: sockets networking tcp ip


【解决方案1】:

没有。 TCP keepalive 实际上是一个 0 字节长的 tcp 数据包。如果您可以确定您的应用协议,则不需要它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-30
    • 2015-05-18
    • 2013-11-16
    • 2013-05-10
    • 2012-05-04
    • 2012-01-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多