Si applica a
Forefront Threat Management Gateway 2010 Enterprise Forefront Threat Management Gateway 2010 Standard

Sintomi

Un server che esegue Microsoft Forefront Threat Management Gateway (TMG) 2010 smetta di accettare nuove connessioni su un proxy web specifico o un listener web. Questo problema può verificarsi dopo alcune ore a diversi giorni di tempo di attività server.

Causa

Questo problema si verifica quando TMG non accetta nuove connessioni per il listener web. Questo riempie non appena la coda di backlog per il socket (AFD) driver di funzioni ausiliario. Dopo la coda di backlog è piena, il server viene avviato per reimpostare le nuove connessioni in ingresso. Se è possibile monitorare il server utilizzando Network Monitor in questo caso, è possibile notare un SYN, modello di ACK/RST per ogni nuovo tentativo di connessione.

Risoluzione

Per risolvere questo problema, installare cumulativo 5 per Forefront Threat Management Gateway (TMG) 2010 Service Pack 2.

Stato

Microsoft ha confermato che questo è un problema dei prodotti Microsoft elencati nella sezione "Si applica a".

Ulteriori informazioni

Dopo aver installato cumulativo 5, è necessario attivare la funzionalità di time out di inattività di accettare chiamate. A tale scopo, attenersi alla seguente procedura:

  1. Copiare lo script seguente nel blocco note e quindi salvare il file come SetAcceptIdleTimeout.vbs:

    'Define the constants needed.Const strVpsGUID = "{143F5698-103B-12D4-FF34-1F34767DEABC}"Const strVpsPropertyName = "AcceptIdleTimeout"Const Error_FileNotFound = &H80070002Set objArgs = wscript.Argumentsif objArgs.Count > 0 then    uAcceptIdleTimeout = objArgs(0)end ifif objArgs.Count <> 1 then    wscript.echo "Usage: SetAcceptIdleTimeout.vbs <timeout>"    wscript.echo    wscript.echo "Set async accept timeout to <timeout> value (in sec)"    wscript.echo "To disable async accept timeout set it to 0"    wscript.Quit 2end ifset objArray = CreateObject("FPC.Root").GetContainingArray()Set objVPSet = OpenVPSet(objArray, strVpsGUID)objVPSet.Value(strVpsPropertyName) = uAcceptIdleTimeoutobjArray.Save()objArray.RestartServices(1)function OpenVPSet(objParent, strVpsGUID)    Set objVPSets = objParent.VendorParametersSets    On Error Resume Next    Set OpenVPSet = objVPSets.Item(strVpsGUID)    ' Save the Err properties in case it needs to be re-raised    errNumber      = Err.Number    errSource      = Err.Source    errDescription = Err.Description    errHelpFile    = Err.HelpFile    errHelpContext = Err.HelpContext    On Error GoTo 0    if errNumber = Error_FileNotFound Then        Set OpenVPSet = objVPSets.Add(strVpsGUID)    Elseif errNumber < 0 Then        ' An error other than "file not found" occurred -- re-raise the error,        ' this time not under "On Error Resume Next"        Err.Raise errNumber, errSource, errDescription, errHelpFile, errHelpContext    End Ifend function

  2. Eseguire lo script su uno dei server TMG. Ad esempio per impostare il periodo di timeout su 5 minuti, eseguire da un prompt dei comandi amministrativo:

    cscript.exe SetAcceptIdleTimeout.vbs 300
  3. Per apportare questa modifica abbia effetto, riavviare il servizio firewall su tutti i membri di matrice.

Per annullare questa modifica, eseguire il comando seguente per impostare il timeout di inattività 0:

cscript.exe SetAcceptIdleTimeout.vbs 0

Riferimenti

Informazioni sulla terminologia utilizzata da Microsoft per descrivere gli aggiornamenti software.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.