Сжатие диапазона - это сжатие отдельной части веб-содержимого. Сжатие диапазона требуется для чтения PDF-файлов в том случае, если программа не имеет встроенной поддержки сжатия.

Поскольку службы Internet Information Services (IIS) не поддерживают сжатие диапазона, не следует включать эту функцию в сетях с серверами IIS Однако, поскольку сервер Шлюз Microsoft Forefront Threat Management поддерживает сжатие диапазона, можно включить данную функцию между двумя Forefront TMG-серверами.

К примеру, если в главном офисе стоит веб-сервер, можно отключить сжатие диапазона во внутренней сети главного офиса, но включить его во внешней сети между главным офисом и филиалами. Таким образом, сжатие диапазона будет использоваться между офисами.

Примечание.
В спецификации RFC, описывающей протокол HTTP, не объясняется, как управлять набором сжатого содержимого с заголовками диапазонов (заголовки HTTP для запроса диапазонов содержимого). Из-за этой неопределенности в RFC по умолчанию IIS не сжимает запросы на диапазон. IIS возвращает диапазон из сжатого файла в том случае, если установлен специальный флаг. Однако вначале IIS сжимает файл целиком, а затем возвращает запрошенный диапазон. Для имитации этих действий Forefront TMG-сервер должен получить весь файл, сжать его и затем вернуть заданный диапазон. Если файл большой и диапазон находится в его конце, может возникнуть ошибка отказа в обслуживании. Для защиты от этой ошибки в Forefront TMG применяется отличный от IIS подход.

По умолчанию сервер Forefront TMG не сжимает запрос на диапазон. Для поддержки сжатия запросов на диапазон сервер Forefront TMG использует особое свойство сетевых элементов, которое показывает, разрешено ли сжатие диапазона. Если да, то сервер Forefront TMG запрашивает сжатие. При получении сжатого ответа сервер Forefront TMG всегда осуществляет распаковку. При ответе клиенту, запросившему сжатие диапазона, сервер Forefront TMG сжимает данные до передачи их клиенту.

Описание процесса сжатия в Forefront TMG.

  1. Клиент запрашивает сжатие диапазона.

  2. Настройки в филиале не разрешают клиенту запрашивать сжатие. Однако сервер Forefront TMG в филиале настроен на запрашивание сжатия и сжатия диапазона, и поэтому посылает в главный офис запрос на сжатие диапазона.

  3. Сервер Forefront TMG главного офиса получает запрос. Поскольку клиенту (серверу Forefront TMG филиала) разрешены запросы на сжатие, сервер Forefront TMG посылает запрос на веб-сервер. Однако поскольку сервер Forefront TMG в главном офисе настроен на запрет запросов на сжатие диапазона, ответ веб-сервера содержит несжатый диапазон.

  4. Когда сервер Forefront TMG главного офиса получает ответ, он возвращает его серверу Forefront TMG филиала. Поскольку сервер Forefront TMG филиала запрашивал сжатие, сервер Forefront TMG главного офиса сжимает данные перед отправкой серверу филиала.

  5. Сервер Forefront TMG филиала получает ответ со сжатием диапазона. Сервер Forefront TMG производит распаковку и передает несжатые данные клиенту в филиале.

  6. Сжатие диапазона не устанавливается через пользовательский интерфейс. Администратор должен редактировать XML-файл вручную и установить флажок CompressRange.

Примечание.
Ответы с диапазоном не сохраняются в кэше Forefront TMG.