TCP Keep-Alive是双向的吗?

时间:2011-10-19 19:24:22

标签: ios node.js tcp

我在iPhone应用程序和NodeJS服务器之间使用tcp套接字连接来实时传输数据。当客户端连接到服务器时,我在套接字上启用“keep-alive”以帮助防止“静默”断开连接。

从服务器到客户端的keep-alive“ping”是否是单向的? tcp连接的客户端是否有任何固有的智能来检测ping是否停止到达?

1 个答案:

答案 0 :(得分:2)

如果您通过socket()在Unix套接字上使用TCP keepalive,那么服务器必须使用ACK进行响应,否则套接字将在超时和重试到达后认为连接已死。

链接的RFC讨论了顶级Keepalive:

http://tools.ietf.org/html/rfc1122#page-101