Рекомендуемые параметры протокола TCP/IP для каналов глобальной сети с размером MTU менее 576 байт


Аннотация


Обновление для системы безопасности MS05-019 изменяет поведение системы при проверке запросов протокола ICMP (Internet Control Message Protocol) и защищает систему от атаки, использующей данный протокол. Однако в определенных случаях данное обновление для системы безопасности может вызывать нарушения в работе сети. В статье описываются три способа, позволяющие предотвратить возникновение подобных нарушений.

Введение


В статье описываются рекомендуемые параметры протокола TCP/IP для каналов глобальной сети (WAN), использующих размер MTU менее 576 байт.

Дополнительная информация


Важно! В данный раздел, метод или задачу включены действия по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому такие действия необходимо выполнять очень внимательно. Для дополнительной защиты необходимо создать резервную копию системного реестра. При возникновении неполадок можно восстановить реестр. Дополнительные сведения о создании резервной копии и восстановлении реестра см. в следующей статье базы знаний Майкрософт:
322756 Создание резервной копии, редактирование и восстановление реестра Windows XP и Windows Server 2003


Обновление для системы безопасности MS05-019 изменяет поведение системы при проверке запросов протокола ICMP (Internet Control Message Protocol) и устанавливает минимальное значение параметра MTU равное 576 байт. Это позволяет предотвратить атаку, использующую протокол ICMP. Данная атака может уменьшать величину параметра MTU до очень малых значений, что вызывает значительное снижение производительности.

Однако ограничение минимального размера MTU 576 байтами может негативно повлиять на работу с некоторыми каналами глобальной сети (например со спутниковыми каналами). Подобные каналы могут использовать размер MTU менее 576 байт, что может приводить к сбоям в работе сети. Чтобы определить, вызваны ли сбои рассмотренной выше проблемой, следует проанализировать сетевой трафик с помощью средства «Сетевой монитор» или аналогичных средств. Если компьютер не может подключиться к какому-либо узлу, и при отправке пакетов этому узлу отправитель получает сообщение протокола ICMP «destination unreachable», которое указывает, что очередной узел маршрута использует значение MTU меньшее, чем 576 байт, значит, причиной сбоев может являться рассмотренная выше проблема.



В этих случаях для устранения проблемы используйте следующие рекомендации.

Примечание. Рекомендации, приведенные в данной статье, должны применяться только для устранения рассматриваемой проблемы, поскольку они могут приводить к снижению производительности сети.

Способ 1. Включите обнаружение «черных дыр» PMTU (Path Maximum Transfer Unit)

Если в системе включена возможность обнаружения «черных дыр» PMTU, то протокол TCP начнет отправлять пакеты без установленного бита «не фрагментировать». Протокол TCP будет пытаться отправлять эти пакеты в тех случаях, когда после нескольких попыток передачи пакета система не получает подтверждение приема. Если в результате будет получено подтверждение приема пакета, максимальный размер пакета (MSS) будет уменьшен, а на следующих пакетах подключения будет установлен бит «не фрагментировать».



Этот метод является предпочтительным, поскольку размер пакетов уменьшается только для сегментов, при работе с которыми возникают проблемы. Включение обнаружения «черных дыр» увеличивает максимальное количество повторных передач, выполняемых для отдельного пакета.

Чтобы включить возможность обнаружения «черных дыр» PMTU, выполните следующие действия.
  1. Выберите в меню Пуск пункт Выполнить, введите команду regedit и нажмите кнопку ОК.
  2. Найдите и выделите следующий раздел реестра:



    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  3. В меню Правка выберите пункт Создать, а затем Параметр DWORD.
  4. Введите EnablePMTUBHDetect и нажмите клавишу ВВОД.
  5. В меню Правка выберите команду Изменить.
  6. В поле Значение введите 1 и нажмите кнопку ОК.
  7. Закройте редактор реестра и перезапустите компьютер.

Способ 2. Отключите возможность определения PMTU

Если отключить возможность определения PMTU, протокол TCP будет отправлять пакеты с размером MTU 576 байт и со снятым флагом «не фрагментировать». Это позволит маршрутизаторам перед отправкой пакетов выполнять их фрагментацию.



Применение данного метода влияет на все отправляемые пакеты. В большинстве случаев при размере пакета, равном 576 байт, производительность сети будет оставаться на приемлемом уровне. Однако производительность будет ниже, чем в сети, в которой включен режим определения PMTU, а узлы маршрута поддерживают передачу пакетов, размер которых может превышать 576 байт.


Чтобы отключить возможность определения PMTU, выполните следующие действия.
  1. Выберите в меню Пуск пункт Выполнить, введите команду regedit и нажмите кнопку ОК.
  2. Найдите и выделите следующий раздел реестра:



    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  3. В меню Правка выберите пункт Создать, а затем Параметр DWORD.
  4. Введите EnablePMTUDiscovery и нажмите клавишу ВВОД.
  5. В меню Правка выберите команду Изменить.
  6. В поле Значение введите 0 и нажмите кнопку ОК.
  7. Закройте редактор реестра и перезапустите компьютер.

Способ 3. Вручную установите значение MTU для сетевого интерфейса

Если вручную установить значение MTU для сетевого интерфейса, то это значение будет использоваться вместо значения по умолчанию. Размер MTU — это максимальный размер пакета (в байтах), который может быть передан транспортным протоколом по используемой сети.



Применение данного метода влияет на все отправляемые пакеты и может значительно снизить производительность сети (в зависимости от указываемого размера MTU).


Чтобы установить значение MTU для сетевого интерфейса, выполните следующие действия.
  1. Выберите в меню Пуск пункт Выполнить, введите команду regedit и нажмите кнопку ОК.
  2. Найдите и выделите следующий раздел реестра:



    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\<ID for network interface>
  3. В меню Правка выберите пункт Создать, а затем Параметр DWORD.
  4. Введите MTU и нажмите клавишу ВВОД,
  5. В меню Правка выберите команду Изменить.
  6. В поле Значение укажите размер MTU и нажмите кнопку ОК.
  7. Закройте редактор реестра и перезапустите компьютер.

Ссылки


Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:

898060 После установки обновления безопасности MS05-019 или пакета обновления 1 (SP1) для Windows Server 2003 могут возникнуть сбои в связи между клиентами и серверами через сеть

Для получения дополнительных сведений о протоколе TCP/IP посетите веб-узел Microsoft TechNet по адресу:
Overview of networking and TCP/IP (обзор принципов взаимодействия по сети и протокола TCP/IP)
http://technet2.microsoft.com/windowsserver/ru/library/be2b68c1-a279-417b-976a-16601b98447a1049.mspx?mfr=true