Linux socket recv返回-1,errno 110连接超时

时间:2017-07-22 09:50:11

标签: c++ c

正确建立连接,一段时间后出现。 有谁知道为什么?

2 个答案:

答案 0 :(得分:3)

错误ETIMEDOUT的{​​{3}}个州:

  

连接建立期间连接超时,或者由于活动连接上的传输超时。

此错误的原因可能很多,具体取决于您使用的套接字类型。

如果我们假设您使用的是TCP套接字:

int tcp_socket = socket(AF_INET, SOCK_STREAM, 0);

这可能意味着您的通信伙伴没有及时发送确认。

答案 1 :(得分:1)

如果你在connect()上得到这个,这意味着远程主机没有响应连接请求,原因是防火墙或网络连接问题,例如拉线。

如果在已建立的TCP连接上得到此信息,则表示远程主机未在主机的超时时间内确认从主机发送的TCP段,这表示死机,死连接或电缆拉线。