IIS文件下载挂起/超时 - sc-win32-status = 64 [英] IIS file download hangs/timeouts - sc-win32-status = 64

查看:597
本文介绍了IIS文件下载挂起/超时 - sc-win32-status = 64的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

对于为什么在尝试通过HTTP下载文件时,可能会出现挂起的任何想法?




  • 服务器是IIS 6

  • 正在下载的文件是一个二进制文件,而不是一个网页

  • 几个客户端挂起,包括TrueUpdate和FlexNet web更新软件包以及使用响应流执行基本HttpWebRequest / HttpWebResponse逻辑的定制.NET应用程序

  • 成功时的IIS日志文件签名为200 0 0(sc-status sc -substatus sc-win32-status)

  • 如果失败,错误签名是200 0 64

  • sc-win32-状态64是指定网络名称不再可用

  • 我可以点击URL,并每次成功下载(也许一些重试逻辑正在发生)



在这一点上,似乎有一些与我的服务器有趣的东西,它抛出这些错误,或者thi s只是正常的网络行为,我需要使用(或写)更有弹性的客户端。



任何想法?

解决方案

您的问题可能是您的回复评论中推荐的ISP的低级联网问题。我遇到类似的问题,IIS和一些神秘的200 0 64行出现在日志文件中,这是我发现这个帖子。为了纪录,这是我对sc-win32-status = 64的理解;如果我错了,我希望有人能纠正我。




  • sc-win32-status 64表示指定的网络名称不再可用。

  • 在IIS向客户端发送最终响应后,它会等待客户端的ACK消息。

  • 有时客户端将重置连接,而不是将最后的ACK发送回服务器。这不是一个正常的连接关闭,所以IIS记录64代码以指示中断。

  • 许多客户端将在完成连接后重置连接,以释放插槽而不是将其留在TIME_WAIT / CLOSE_WAIT中。

  • 代理可能比个人客户更频繁地执行此操作。


Any thoughts on why I might be getting tons of "hangs" when trying to download a file via HTTP, based on the following?

  • Server is IIS 6
  • File being downloaded is a binary file, rather than a web page
  • Several clients hang, including TrueUpdate and FlexNet web updating packages, as well as custom .NET app that just does basic HttpWebRequest/HttpWebResponse logic and downloads using a response stream
  • IIS log file signature when success is 200 0 0 (sc-status sc-substatus sc-win32-status)
  • For failure, error signature is 200 0 64
  • sc-win32-status of 64 is "the specified network name is no longer available"
  • I can point firefox at the URL and download successfully every time (perhaps some retry logic is happening under the hood)

At this point, it seems like either there's something funky with my server that it's throwing these errors, or that this is just normal network behavior and I need to use (or write) a client that is more resilient to the failures.

Any thoughts?

解决方案

Perhaps your issue was a low level networking issue with the ISP as you speculated in your reply comment. I am experiencing a similar problem with IIS and some mysterious 200 0 64 lines appearing in the log file, which is how I found this post. For the record, this is my understanding of sc-win32-status=64; I hope someone can correct me if I'm wrong.

  • sc-win32-status 64 means "The specified network name is no longer available."
  • After IIS has sent the final response to the client, it waits for an ACK message from the client.
  • Sometimes clients will reset the connection instead of sending the final ACK back to server. This is not a graceful connection close, so IIS logs the "64" code to indicate an interruption.
  • Many clients will reset the connection when they are done with it, to free up the socket instead of leaving it in TIME_WAIT/CLOSE_WAIT.
  • Proxies may have a tendancy to do this more often than individual clients.

这篇关于IIS文件下载挂起/超时 - sc-win32-status = 64的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆