如何确保或保持套接字存活?

时间:2011-12-02 04:26:11

标签: linux sockets

这是一个非常开放的问题"如何确保或保持套接字存活?"

我害怕我必须说"抱歉"这个悬而未决的问题。但我还是想问一些想法。

如何为应用程序提供端到端的解决方案,使应用程序知道两端的资源有限?

这里有任何解决方案或建议。

1 个答案:

答案 0 :(得分:1)

我认为你的意思是TCP套接字。

你不能保证它在任何时候都活着。如果启用SO_KEEPALIVE不能执行您想要的操作,则需要在应用程序协议中执行自定义keepalive数据包。

对于isntance,某些协议具有可以使用的“NOOP”命令。

在Linux下(但不一定是其他操作系统),你可以在每个套接字的基础上修改SO_KEEPALIVE使用的keepalive间隔(参见man 7 tcp)