This article was previously published under Q113576
This article has been archived. It is offered "as is" and will no longer be updated.
If a Windows NT TCP/IP Winsock server application (for example, MicrosoftNT SQL Server) is bombarded with multiple simultaneous TCP\IP connectionrequests, it quickly begins to reject requests by replying with a TCP\IPReset Frame.
The symptom may be difficult to detect. If you trace this problem with aprotocol analyzer you will see that the 7th or 8th TCP SYN connectionrequest frames are replied to with TCP Reset bit set, which tells thesending station that the frame was received but the server did not havethe resources to process the connection request.
This might show up as a delayed or slower connection. The client shouldattempt the connection again after waiting for a timeout (so you don'tsee an error) but this can slow the connection in certain types of systems.
A Winsock application accepts connections on a port by calling a Listen()function, which has a Backlog parameter specifying the maximum length ofthe pending-connection queue. The Winsock specification defines the maximumListen() backlog at 5 and when this is exceeded, TCP/IP issues a Reset.
In Windows NT 3.1 Service Pack 3 the backlog limit has been increased from5 to 60, Socket applications now can accept 60 simultaneous connectionrequests without issuing a reset.
In Windows NT 3.5x the backlog limit has been increased to 100. In WindowsNT Server version 4.0 the backlog limit has been increased to 200. InWindows NT Workstation version 4.0 the backlog limit has been kept at theWinsock specification of 5.
NOTE: This fix applies only to the MAXIMUM allowed Listen() Backlog.Each Winsock application must request its own Listen() Backlog queuelength.
Microsoft has confirmed this to be a problem in Windows NT and Windows NTAdvanced Server version 3.1. This problem has been corrected in the latestU.S. Service Pack for Windows NT and Windows NT Advanced Server version3.1. For information on obtaining the Service Pack, query on the followingword in the Microsoft Knowledge Base (without the spaces):