TCP connection count in resource monitor

Antony Maxwin 281 Reputation points
2021-09-16T07:15:03.673+00:00

HI
I have two web servers , in this servers when the TCP count reaches above 500, then users feels difficulty to login,
so my question is what is this tcp connection denotes, why its suddenly fallen to 10 after the count reaches above 500?
what is the TCP request does support per second in a performance load test scenario, why TCP count does not going up to 1000
PIC 1
below 500
132599-kbpasbelow500.jpg

pic 2
TCP above 500

132614-kbpasabove500.jpg

i have changed the registery parameters to support maximum number of connections , but still we are facing issues when it reaches above 500.
so what this 500 denotes

Windows Server
Windows Server
A family of Microsoft server operating systems that support enterprise-level management, data storage, applications, and communications.
12,171 questions
Windows Network
Windows Network
Windows: A family of Microsoft operating systems that run across personal computers, tablets, laptops, phones, internet of things devices, self-contained mixed reality headsets, large collaboration screens, and other devices.Network: A group of devices that communicate either wirelessly or via a physical connection.
654 questions
0 comments No comments
{count} votes

Accepted answer
  1. Antony Maxwin 281 Reputation points
    2021-10-07T16:29:33.673+00:00

    HI
    After several searches i found that there is a congestion window mechanism running in TCP level , in the above screen shots you can see that there is a number near to TCP connections , and this number indicates the size of TCP window(congestion) . read the below article for your knowledge.

    Blockquote

    In TCP, the congestion window is one of the factors that determines the number of bytes that can be sent out at any time. The congestion window is maintained by the sender and is a means of stopping a link between the sender and the receiver from becoming overloaded with too much traffic. This should not to be confused with the sliding window maintained by the sender which exists to prevent the receiver from becoming overloaded. The congestion window is calculated by estimating how much congestion there is on the link.

    When a connection is set up, the congestion window, a value maintained independently at each host, is set to a small multiple of the MSS allowed on that connection. Further variance in the congestion window is dictated by an additive increase/multiplicative decrease (AIMD) approach. This means that if all segments are received and the acknowledgments reach the sender on time, some constant is added to the window size. When the window reaches ssthresh, the congestion window increases linearly at the rate of 1/(congestion window) segment on each new acknowledgement received. The window keeps growing until a timeout occurs. On timeout:

    Congestion window is reset to 1 MSS.
    ssthresh is set to half the congestion window size before the timeout.
    slow start is initiated.

    Blockquote

    https://en.wikipedia.org/wiki/TCP_congestion_control

    Thanks to all who give supports on this search.

    regards
    Antony Maxwin

    0 comments No comments

2 additional answers

Sort by: Most helpful
  1. Limitless Technology 39,371 Reputation points
    2021-09-16T13:59:58.683+00:00

    Hello @Antony Maxwin

    I have seen that you opened a previous thread about it, will add it here for reference of other users: https://learn.microsoft.com/en-us/answers/questions/482793/tcpip-cuncurrent-connections.html

    Considering that you have already increased the number of ports and Max Wait, this seems like a network bottleneck. Don't always believe the ocupation due to "Resource Manager" as often it doesn't refresh the TCP Max connections graph in real time so the limit may be still applied correctly.

    However if you prefer to continue looking into modifying the system, there are other registry chains that you can verify:

    [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters]
    TcpNumConnections = 0x00fffffe (default)

    [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters]
    MaxUserPort = 5000 (Default = 5000, Max = 65534)
    More Info MS KB196271
    More Info MS KB319502
    More Info MS KB319504
    More Info MS KB328476
    More Info MS KB836429

    [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters]
    MaxFreeTcbs = 2000 (Default = depending on RAM memory, but usual Pro user = 1000, Server=2000)

    [HKEY_LOCAL_MACHINE \System \CurrentControlSet \services \Tcpip \Parameters]
    MaxHashTableSize = 512 (Default = 512, Range = 64-65536)

    More Info MS KB151418
    More Info MS KB224585

    [HKEY_LOCAL_MACHINE \System \CurrentControlSet \services \Tcpip \Parameters]
    TcpTimedWaitDelay = 120 (Default = 240 secs, Range = 30-300)
    More Info MS KB137984
    More Info MS KB149532
    More Info MS KB832954

    HKEY_LOCAL_MACHINE \System \CurrentControlSet \services \Tcpip \Parameters]
    MaxFreeTWTcbs = 1000 (Default = 1000 sockets)

    [HKEY_LOCAL_MACHINE \System \CurrentControlSet \services \Tcpip \Parameters]
    KeepAliveTime = 1800000
    More Info MS KB140325

    Hope this helps to improve your performance,
    Best regards,


  2. Antony Maxwin 281 Reputation points
    2021-09-22T16:12:09.667+00:00

    i have configured all the registry settings ,
    but in the resource monitor still the value reaches only up to 500 and after 500 users feels issues.
    so what does this 500 means ,
    when i check the established connection count through cmd (netstat -n | find /c /i "established") it shows up to 1000 connections,
    so my question is in resource monitor what is this TCP connection means and what is the count near to tcp connection denots

    0 comments No comments