Submit a ticketCall us

Have You Auto Renewed? If not, you're missing out.
The SolarWinds Renewal Program comes with a host of benefits including the most recent product updates, 24/7 technical support, virtual instructor-led training and more. Experience all of this with the convenience of Auto Renewal, and never worry about missing any of these great benefits. Learn More.

Home > Success Center > Server & Application Monitor (SAM) > Application monitor using port 443 periodically goes down

Application monitor using port 443 periodically goes down

Updated November 10, 2017

Overview

An application monitor is going up and down periodically. Application monitors that are susceptible to this error: 

 • AppInsight for IIS

 • HTTP/HTTPS monitor

 • Form Login Monitor

 

You may find the following error in the Application logs: 

ERROR SolarWinds.APM.Probes.HTTP.HttpProbeBase`1 - WebException caught.
System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted X.X.X.X:443
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at SolarWinds.APM.Probes.HTTP.HttpClientHelper.GetWebResponse(WebRequest request)
   at SolarWinds.APM.Probes.HTTP.HttpClientHelper.GetWebResponseFromUri(Uri address, IStopwatch stopwatch)
   at SolarWinds.APM.Probes.HTTP.HttpClientHelper.Download(Uri address, IStopwatch stopwatch, Encoding encoding)
   at SolarWinds.APM.Probes.HTTP.HttpProbeBase`1.ProbeInternal(ProbeInformation probeInfo, HttpMonitorResult result)

Environment

  • Windows (generic)
  • All SAM versions

 

Cause 

TCP port connections are staying in a TIME_WAIT state which prevents the socket pair from being reused. 

Resolution

To avoid exhausting the TCP/IP stack, decrease the time required to dispose of the dead (TIME_WAIT) connection(s) in the registry. In most cases, these connections are no longer reusable and a quick turn-over makes the system behave much faster.

  1. On the Orion polling engine, start the Registry Editor, for example, go to Start > Run, and enter regedit.exe.
  2. Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters.
  3. Create a TcpTimedWaitDelay value by following the below steps.
    1. Highlight a parameter in the pane on the right.
    2. In the Edit menu, click New > DWORD (32-bit) Value.
    3. Enter the name TcpTimedWaitDelay (capitalization matters).
    4. Right-click the new key > Modify.
    5. Select the Decimal radio button.
    6. Enter a value between 30 and 240.

      Value data: 120 (decimal) works for most customers.


      image.png
  4. Close Windows Registry Editor and reboot the server for the change to take effect. 

TCP now releases closed connections and reuses their resources when the time you specified for the TcpTimedWaitDelay elapses. 

 

 

 

 

Last modified

Tags

Classifications

Public