windows-server-2003 – 是什么原因导致winsock 10055错误?我该如何排除故障?

前端之家收集整理的这篇文章主要介绍了windows-server-2003 – 是什么原因导致winsock 10055错误?我该如何排除故障?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在调查一系列自定义应用程序(其中一些我们控制,有些不是)的winsock 10055错误的一些问题,并希望得到一些关于解决问题的技术的建议.
No buffer space available.
    An operation on a socket could not be performed because the system 
    lacked sufficient buffer space or because a queue was full.

从研究来看,非分页池和端口似乎是唯一可能导致此错误的资源.是否有其他资源可能导致10055错误

目前,我们在应用程序上设置了perfmon计数器,在大多数情况下,非页面缓冲池使用率看起来很低.打开TCP连接看起来很低,我不知道另一种监控端口的方法.

由于它只发生在生产中,我们无法使用更多的侵入性计数器.虽然听到其他解决方案仍然很有趣.我相信其他人可以使用这些信息.

是否有一些其他工具或程序可以推荐用于诊断哪个应用程序导致问题?

更新:

该平台是带有/ 3G开关的Windows Server 2003 x86.作为参考,x86通常具有256mb的NPP存储,/ 3G将其降低到128mb.通常,您希望避免此配置以避免NPP问题. (reference)

我们有一个申请来源.我写了相当精细的测试工具,试图重现这种行为无济于事.

如上所述,问题只发生在生产中.因此,避免了分组监视.我们目前有性能计数器设置,可以监控NPP,线程,网络流量等.由于perfmon的间隔是1秒,你可以在该窗口内进出微爆.然而,有一些主观证据表明这不是问题.

基本情况是连接的另一端表示由于10055错误导致代码关闭连接. NPP(和一般性能)在断开连接之前看起来稳定,这表明其他资源是原因.

更新:

我还要重申原始问题与诊断有关,而不是解决方案.关于导致10055错误的原因,我仍然没有明确的答案.检查驱动程序和硬件并重新安装操作系统很棒,但它回避了原来的问题.

根据谷歌的搜索,除其他外,拉姆短缺也可能导致这种情况.我通过Google观察到的以下一些错误情况是基本操作系统几乎无法访问RAM的低内存问题.我的猜测是,在缺乏ram的虚拟环境中,可以轻松地重新创建相同类型的问题.

更基本的故障排除问题很简单 – 您的生产环境有何不同?

您是否在Windows 2003 x64或Windows 2008中测试过该应用程序?

在问题的第二部分..

以下工具可用于故障排除和修复Winsock错误.

嗅探器:

http://www.wireshark.org/ 

垫片:

http://www.sstinc.com/winsock.html
http://www.win-tech.com/html/socktspy.htm

用于跟踪系统状态和资源的通用工具

http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx
http://technet.microsoft.com/en-us/sysinternals/bb896645

用于检测API调用的工具

http://www.apimonitor.com/
http://www.nektra.com/products/spystudio-api-monitor/

调试器

http://www.ollydbg.de/
http://www.immunitysec.com/products-immdbg.shtml

反转工具或反编译器

http://www.hex-rays.com/products/ida/index.shtml
http://www.hex-rays.com/products/decompiler/index.shtml

您的标准IDE和编译器

http://www.microsoft.com/visualstudio/en-us

以下是其他工具的列表:

http://www.sockets.com/devtools.htm

其他参考文献:

https://stackoverflow.com/questions/8118870/howto-debug-winsock-api-calls

http://brandon.fuller.name/archives/2007/01/24/19.44.29/

http://tangentsoft.net/< ----可能是最好的一个

猜你在找的Windows相关文章