Solved

Error from IIS 6: Unable to read data from the transport connection: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full.

Posted on 2013-10-27
2
1,162 Views
Last Modified: 2013-10-29
Hello,

I have two Windows 2003 Servers that run our asp.net applications under IIS 6.  Our web app generates SQL Reporting Service reports for the client users.  When a client machine requests a report with a large amount of data, they will receive an error when hitting Server A but it works fine when performing the same request on Server B. Note: reports with a small amount of data work fine on both servers.

The error received is:
Unable to read data from the transport connection: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full.

This will happen from several different client machines where the report get served to them fine when hitting Server B, but the same user hits Server A and receives the error above.

There must be some configuration difference between the two web servers, but I am at a loss as to what it could be.

Any ideas?

Thanks,
John
0
Comment
Question by:JCanepa
2 Comments
 
LVL 28

Accepted Solution

by:
becraig earned 500 total points
ID: 39604725
There are a few known issues for this, however since you are running the same app on both servers it is possible it might be an issue with consumption of ephemeral ports.

SYMPTOMS
If you try to set up TCP connections from ports that are greater than 5000, the local computer responds with the following WSAENOBUFS (10055) error message:
An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full.

RESOLUTION
To increase the maximum number of ephemeral ports, follow these steps:

    Start Registry Editor.
    Locate the following subkey in the registry, and then click Parameters:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
    On the Edit menu, click New, and then add the following registry entry:
    Value Name: MaxUserPort
    Value Type: DWORD
    Value data: 65534
    Valid Range: 5000-65534 (decimal)
    Default: 0x1388 (5000 decimal)
    Description: This parameter controls the maximum port number that is used when a program requests any available user port from the system. Typically, ephemeral (short-lived) ports are allocated between the values of 1024 and 5000 inclusive. After the release of security bulletin MS08-037, the behavior of Windows Server 2003 was changed to more closely match that of Windows Server 2008 and Windows Vista. For more information about Microsoft security bulletin MS08-037, click the following article numbers to view the articles in the Microsoft Knowledge Base:
    951746 MS08-037: Description of the security update for DNS in Windows Server 2008, in Windows Server 2003, and in Windows 2000 Server (DNS server-side): July 8, 2008
    951748 MS08-037: Description of the security update for DNS in Windows Server 2003, in Windows XP, and in Windows 2000 Server (client side): July 8, 2008
    953230 MS08-037: Vulnerabilities in DNS could allow spoofing
    Exit Registry Editor, and then restart the computer.

Note An additional TCPTimedWaitDelay registry parameter determines how long a closed port waits until the closed port can be reused.

Reprinted from:
http://support.microsoft.com/kb/196271
0
 

Author Closing Comment

by:JCanepa
ID: 39610412
This resolved my problem.  Thanks!
0

Featured Post

Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

Join & Write a Comment

This document covers how to connect to SQL Server and browse its contents.  It is meant for those new to Visual Studio and/or working with Microsoft SQL Server.  It is not a guide to building SQL Server database connections in your code.  This is mo…
Setting up a Microsoft WSUS update system is free relatively speaking if you have hard disk space and processor capacity.   However, WSUS can be a blessing and a curse. For example, there is nothing worse than approving updates and they just have…
Access reports are powerful and flexible. Learn how to create a query and then a grouped report using the wizard. Modify the report design after the wizard is done to make it look better. There will be another video to explain how to put the final p…
In this tutorial you'll learn about bandwidth monitoring with flows and packet sniffing with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're interested in additional methods for monitoring bandwidt…

706 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now