Triệu chứng
Máy chủ đang chạy Microsoft Forefront Threat Management Gateway (TMG) 2010 có thể ngừng nhận kết nối mới proxy web cụ thể hoặc nghe web. Vấn đề này có thể xảy ra sau một vài giờ đến vài ngày thời gian chạy máy chủ.
Nguyên nhân
Sự cố này xảy ra khi TMG ngừng nhận kết nối mới trên web nghe. Điều này sớm đầy hàng tồn đọng cho ổ cắm trình điều khiển (AFD) trình chức năng. Sau khi hàng tồn đọng đầy đủ, máy chủ khởi động lại kết nối mới đến. Nếu bạn giám sát máy chủ bằng cách sử dụng màn hình mạng trong trường hợp này, bạn có thể thấy một SYN ACK/RST mẫu cho mỗi lần kết nối mới.
Giải pháp
Để giải quyết vấn đề này, cài đặt Cập Nhật 5 Forefront Threat Management Gateway (TMG) 2010 gói dịch vụ 2.
Trạng thái
Microsoft đã xác nhận rằng đây là sự cố trong sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".
Thông tin
Sau khi bạn cài đặt Cập Nhật 5, bạn phải kích hoạt chức năng thời gian rỗi ra chấp nhận cuộc gọi. Để thực hiện việc này, hãy làm theo các bước sau:
-
Sao chép lệnh sau vào Notepad, và sau đó lưu tệp dưới dạng 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 -
Chạy tập lệnh trên một máy chủ TMG. Ví dụ: để đặt khoảng thời gian chờ 5 phút chạy sau từ dấu nhắc lệnh quản trị:
cscript.exe SetAcceptIdleTimeout.vbs 300
-
Để thực hiện thay đổi này có hiệu lực, khởi động lại dịch vụ tường lửa trên tất cả các thành viên của mảng.
Để hoàn tác các thay đổi này, chạy lệnh sau để đặt hết thời gian rỗi 0:
cscript.exe SetAcceptIdleTimeout.vbs 0
Tham khảo
Tìm hiểu về thuật ngữ Microsoft sử dụng để miêu tả các bản cập nhật phần mềm.