JAVA 里关于几个 SocketTimeoutException 对应TCP的状态 for linux

在建立 connect 过程中

a. Connection refused: connect 对应的Linux C error : ECONNREFUSED

是指的syn包发送, 对方没有对syn ack, 但在你设置的timeout时间里收到了对方的 reset的包

b. Connection timed out 对应的Linux C error: ETIMEDOUT

指的是syn包发送,对方没有syn ack, 但你设置的timeout的时间里没有收到对方的任何包,包括reset.

 

分析:对方的listen queue可能满了

 

 

connect 过程中

a. Read timed out/Write time out

发送包,没有得到对方的ack,重试几次后,发Reset的包。

你可能感兴趣的:(java,c,linux,tcp)