我正在使用Java程序将一些XML数据从远程客户端计算机发送到我们的服务器。我已经独立检查了整个系统的各个组件,并发现:
curl --header 'content-type: text/xml;charset=UTF-8' --data @5.xml -X POST http://myserver.com/updates但那也挂了。所以,我得出结论,问题不在于Java部分,而在于网络本身。
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp6 0 6250 192.168.1.50:32771 www.xxx.yyy.zzz:80 ESTABLISHED并且客户端系统长时间保持此状态,显示在发送队列中等待几千个字节。我已经同时检查了服务器日志,并且没有等待在那里读取的字节。状态也显示为ESTABLISHED,因此我必须得出结论,TCP握手很顺利。我有点被困在这里。
我还可以在哪里找出造成这个问题的原因?客户端和服务器上的操作系统都是Ubuntu 10.04
更新 显然,问题不仅限于HTTP帖子。我将请求的XML部分转储到一个文件中,并尝试使用FTP和SCP将其复制到服务器。这两次尝试都失败了。所以,目前的情况是:
更新2 当我遇到http://www.ethereal.com/faq.html#q11.1时,请忽略有关校验和的更新,并验证客户端确实正在接收具有正确校验和的TCP数据包。