Simptome
Un server care execută Microsoft Forefront Threat Management Gateway (TMG) 2010 poate opri acceptarea conexiunilor noi pe un anumit web proxy sau web de ascultare. Această problemă poate apărea după câteva ore la câteva zile de server timpul de disponibilitate.
Cauza
Această problemă apare când TMG nu acceptă conexiuni noi de pe web de ascultare. Aceasta completează în curând coada de jurnal de aşteptare pentru soclul ancillary function driver (AFD). După coadă de jurnal de aşteptare este completă, serverul începe să reinițializați conexiuni noi. Dacă a monitoriza serverul utilizând Network Monitor în această situație, este posibil să observați o SYN, ACK/RST model pentru fiecare nou încercarea de conectare.
Rezolvare
Pentru a rezolva această problemă, instalați pachetul 5 pentru Forefront Threat Management Gateway (TMG) 2010 Service Pack 2.
Stare
Microsoft a confirmat că aceasta este o problemă cu produsele Microsoft enumerate în secţiunea „Se aplică la".
Mai multe informații
După ce instalați pachetul 5, trebuie să activați funcționalitatea de time out inactiv accepta apeluri. Pentru a face acest lucru, urmați acești pași:
-
Copiați următorul script în Notepad, și apoi salvați fișierul ca SetAcceptIdleTimeout.vbs:
'Define the constants needed.Const strVpsGUID = "{143F5698-103B-12D4-FF34-1F34767DEABC}"
Const strVpsPropertyName = "AcceptIdleTimeout"
Const Error_FileNotFound = &H80070002
Set objArgs = wscript.Arguments
if objArgs.Count > 0 then
uAcceptIdleTimeout = objArgs(0)
end if
if 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 2
end if
set objArray = CreateObject("FPC.Root").GetContainingArray()
Set objVPSet = OpenVPSet(objArray, strVpsGUID)
objVPSet.Value(strVpsPropertyName) = uAcceptIdleTimeout
objArray.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 If
end function
-
Executați scriptul pe unul din serverele TMG. De exemplu, pentru a seta perioada de inactivitate la 5 minute, executați următoarele dintr-un prompt de comandă administrator:
cscript.exe SetAcceptIdleTimeout.vbs 300
-
Pentru a efectua această modificare în vigoare, reporniți serviciul paravan de protecție pe toate matrice membri.
Pentru a anula această modificare, executaţi următoarea comandă pentru a seta inactivitate la 0:
cscript.exe SetAcceptIdleTimeout.vbs 0
Referințe
Aflați despre terminologia utilizată de Microsoft pentru a descrie actualizările de software.