|
|
|
因为我现在就碰到这个问题.查找了一下论坛,很多朋友都有碰到问题,但最后都是无果而终.虽然现在还没有解决问题,但已经有进展,共享出来,大家一起讨论.<br>
<br>
关于10054,10053,10060的错误<br>
<br>
10054:Wed 2005-07-13 10:43:46: Winsock Error 10054 Connection was reset by the other side!<br>
<br>
10053:Mon 2005-07-11 14:41:14: Winsock Error 10053 Software caused a connection abort.<br>
<br>
10060:Mon 2005-07-11 12:29:44: Winsock Error 10060 The connection timed out.<br>
<br>
MDaemon的官方解释<br>
<br>
WSAECONNABORTED (10053) Software caused connection abort <br>
<br>
A connection abort was caused internal to your host machine. The software caused a connection abort because there is no space on the socket's queue and the socket cannot receive further connections.<br>
<br>
WinSock description: The error can occur when the local network system aborts a connection. This would occur if WinSock aborts an established connection after data retransmission fails (receiver never acknowledges data sent on a datastream socket). <br>
<br>
TCP/IP scenario: A connection will timeout if the local system doesn't receive an (ACK)nowledgement for data sent. It would also timeout if a (FIN)ish TCP packet is not ACK'd (and even if the FIN is ACK'd, it will eventually timeout if a FIN is not returned). <br>
<br>
WSAECONNRESET (10054) Connection reset by peer <br>
<br>
A connection was forcibly closed by a peer. This normally results from a loss of the connection on the remote socket due to a timeout or a reboot. <br>
<br>
User suggestions: Some network systems have commands to report statistics. In this case, it might be possible to check the count of TCP RST packets received, or ICMP Port Unreachable packets. See other suggestions under WSAECONNABORTED. <br>
<br>
WSAETIMEDOUT (10060) Connection timed out <br>
<br>
A connect or send request failed because the connected party did not properly respond after a period of time. (The timeout period is dependent on the communication protocol.) <br>
<br>
Check the obvious first: check that the destination address is a valid IP address. If you used a hostname, did it resolve to the correct address? If the hostname resolution uses a local host table, it is possible you resolved to an obsolete address. Can you ping that hostname? <br>
<br>
Do you have a router configured? Is the router up and running? (You can check by pinging it, and then ping an address on the other side of it.) Try a traceroute to the destination address to check that all the routers are functioning. <br>
<br>
Check your subnet mask. If you don't have the proper subnet mask, your network system may treat a local address as a remote address (so it forwards addresses on the local subnet to the router, rather than broadcasting an ARP request locally), or vice versa. <br>
<br>
我还找到一个另外的解释<br>
Q.Why do I keep getting the message error Writing to Socket?<br>
A.If dial-up networking is uninstalled and then re-installed WITHOUT reapplying the NT service pack, MDaemon works fine.<br>
<br>
If you reapply SP4 (or SP5) like you should do after a DUN reinstall then you will instantly get the ''''Error writing to socket'''' when sending large messages. You then have to reinstall dial-up networking.<br>
<br>
我的环境是win 2003 SP1 + MD7.23英文版,放在win 2003 SP1 +ISA 2003 SP1 防火墙后.<br>
<br>
我的问题是一些大的邮件发不出去,而且不是所有的,有些可以发出.出现上面三个winsock错误.这些发不出的邮件,如果发不带附件的小邮件,就可以出去.<br>
<br>
开始时,我怀疑是DNS的问题,测试后排除.想想也不应该是DNS的问题,因为小邮件发送没问题.<br>
<br>
怀疑是不是ISA有限制?解除ISA所有过滤和连接数限制,也是不行.<br>
查看MD中的Active的Sessions,发现这些大邮件是开始是正常发送,过一会就停住,然后就出现10054或10060的错误.<br>
<br>
没办法,抓包看看..发现下面的信息<br>
<br>
IP: .1.............. = Cannot fragment datagram<br>
<br>
<br>
搜索一下,发现微软的MS05-019的更新会引起这个问题,<br>
<a target=_blank href=http://support.microsoft.com/kb/898060/>http://support.microsoft.com/kb/898060/</a><br>
<br>
试着按微软的解决方法试,有效果,但问题还是没有彻底解决.<br>
<br>
但我想这应该是问题所在.现在只好等等微软的新补丁出来.<br>
<br>
不知道各位有没有这个问题,把解决过程发出来,大家一起分享一下. |
|