我看到内部网上两台主机之间连接失败(称为客户端和服务器)。TCP在传输中丢失时可以重新传输握手吗?
在两台机器上使用netstat,我看到相应的端口号,其中服务器端处于SYN_RECV状态,并且客户端处于SYN_SENT中。
我的理解是服务器已经用SYN,ACK响应客户端的SYN,但是这个数据包已经丢失。握手中断,套接字连接处于未完成状态,并在20-45秒后看到客户端超时。
我的问题是,TCP是否为服务器提供了一段时间后重传SYN,ACK的方法?这是个好主意还是坏主意?
更多有关系统详情:两端RHEL5,ssh成功,ping失败100%,traceroute成功。客户端建立在OpenOrb(Java)上,服务器是Mico(C++)。