我正在做一个项目,服务器使用C,它需要发送心跳到客户端来检查其状态(使用tcp套接字),我想知道服务器端程序如何检测客户端是否已崩溃。
准确地说,在建立tcp连接的情况下,当服务器向客户端发送数据段时,它需要得到ack应答,如果客户端崩溃了怎么办,一次又一次地重新传输此数据段?我该如何处理这种情况,有人能给我举个例子吗?
谢谢。
发布于 2012-08-21 14:44:03
当您设计要在项目中使用的协议时,您可以随心所欲地执行此操作。通常,一方每X秒向另一端发送一条消息,另一端发送回复。如果未发送消息的一端在Y秒内没有接收到消息(其中Y大于X),则认为连接已失效。
基本上,如果您正在设计位于TCP之上的协议,则可以以任何您想要的方式完成此操作。请记住,TCP不会为您做这件事。
https://stackoverflow.com/questions/12049501
复制相似问题