在客户端,sftp 应用程序向 ssh 服务器端口 22 发送一些数据包。
SFTP 应用程序向 TCP 发送数据包,从以太网捕获我们可以看到 sftp 数据包从应用程序发送到 TCP 和 TCP 发送到数据包到服务器,但 TCP 没有从服务器收到 TCP ACK,所以 TCP 在几秒钟后再次发送数据包但仍然没有响应从服务器..
似乎服务器没有收到来自客户端的数据包。
客户端 SFTP 连接在选择中等待 TCP recv,超时时间为 120 秒,在 120 秒后应用程序从选择中获得超时并关闭 SFTP 操作并出现超时错误。
在捕获中,我可以看到 TCP 多次重新传输数据包,但无法接收服务器 TCP ACK。
场景: 1. 超时仅在某个时候发生。2. 在这个问题之后,下一个 SFTP opration[upload] 在同一台服务器上成功。3. 看来网络没有问题,因为下一次上传工作正常。4.客户端和服务器都有SOLARIS OS 5.我们无法在我们的实验室环境中重现此问题 6.此问题仅在真实客户网络中发生。7. Appln是C语言的。SSH 服务器是 Open SSH 服务器。
我想知道: 1.我们如何找到TCP没有recv ACK repply form Server的原因。2. solaris 中的任何 TCP 系统设置是否会导致此问题。3. 请提供任何信息,以便我们解决此问题。