Состояние масштабирования на принимающей стороне Windows 7, что это такое

Обновлено: 21.11.2024

В этой статье описываются следующие функции TCP в Windows:

  • Размер окна TCP
  • Теперь поддерживаются параметры TCP
  • Масштабирование Windows — RFC 1323
  • Временная метка — RFC 1323
  • Защита от упакованных порядковых номеров (PAWS)
  • Выборочные подтверждения (SACKS) — RFC 2018
  • Поведение повторной передачи TCP и быстрая повторная передача

Функции TCP можно изменить, изменив записи в реестре.

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

Размер окна TCP

Размер окна приема TCP – это объем принимаемых данных (в байтах), который может быть буферизован во время соединения. Хост-отправитель может отправить только такое количество данных, после чего ему придется ждать подтверждения и обновления окна от хоста-получателя. Стек Windows TCP/IP предназначен для самонастройки в большинстве сред и использует более крупные размеры окна по умолчанию, чем в более ранних версиях.

Вместо использования жестко запрограммированного размера окна приема по умолчанию TCP настраивается на равные приращения максимального размера сегмента (MSS). MSS согласовывается во время установки соединения. Настройка окна приема на равные приращения MSS увеличивает процент полноразмерных сегментов TCP, используемых при массовой передаче данных.

Размер окна приема определяется следующим образом:

  1. Первый запрос на подключение, отправленный на удаленный хост, объявляет размер окна приема 16 КБ (16 384 байта).
  2. Когда соединение установлено, размер окна приема округляется до четного приращения MSS.
  3. Размер окна устанавливается в четыре раза больше MSS, до максимального размера 64 КБ, если не используется параметр масштабирования окна (RFC 1323).

См. раздел "Масштабирование Windows".

Для Ethernet-соединений размер окна обычно устанавливается равным 17 520 байт (16 КБ округляется до двенадцати сегментов по 1460 байт). Размер окна может уменьшиться при установке соединения с компьютером, который поддерживает расширенные параметры заголовка TCP, такие как выборочные подтверждения (SACKS) и временные метки. Эти два параметра увеличивают размер заголовка TCP до более чем 20 байтов, что приводит к меньшему количеству места для данных.

В предыдущих версиях Windows NT размер окна для соединения Ethernet составлял 8760 байт или шесть сегментов по 1460 байт.

Чтобы задать для размера окна получения определенное значение, добавьте значение TcpWindowSize в раздел реестра, относящийся к вашей версии Windows. Для этого выполните следующие действия:

Выберите «Пуск» > «Выполнить», введите Regedit и нажмите «ОК».

Разверните подраздел реестра, относящийся к вашей версии Windows:

Для Windows 2000 разверните следующий подраздел: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces

Для Windows Server 2003 разверните следующий подраздел: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

В меню "Правка" выберите "Создать" и выберите "Значение DWORD".

Введите TcpWindowSize в поле "Новое значение" и нажмите клавишу ВВОД

Выберите «Изменить» в меню «Правка».

Введите нужный размер окна в поле "Значение".

Действительный диапазон размера окна: 0–0x3FFFC000 в шестнадцатеричном формате.

Это значение отсутствует по умолчанию. Когда вы добавляете значение TcpWindowSize, оно переопределяет описанный выше алгоритм размера окна по умолчанию.

TcpWindowSize также можно добавить к ключу Parameters, чтобы установить размер окна глобально для всех интерфейсов.

Теперь поддерживаются параметры TCP

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

Существует два типа параметров TCP:

  1. Опция TCP, состоящая из одного октета, которая используется для указания конкретного типа опции.
  2. Опция TCP, состоящая из нескольких октетов, состоящая из типа опции, длины опции и последовательности октетов опции.

В следующем списке показаны тип, длина, имя и описание каждого параметра TCP.

Вид: 0
Длина: 1
Опция: Конец списка опций
Описание: Используется, когда требуется дополнение для последней опции TCP.

Тип: 1
Длина: 1
Опция: Нет операции
Описание: Используется, когда требуется заполнение и в одном пакете следуют дополнительные параметры TCP.

Вид: 2
Длина: 4
Опция: Максимальный размер сегмента
Описание: Указывает максимальный размер TCP-сегмента, который может быть отправлен по сети.

Вид: 3
Длина: 3
Опция: Опция масштабирования окна
Описание: Определяет коэффициент масштабирования, который будет использоваться при использовании окон размером более 64 КБ.

Вид: 8
Длина: 10
Опция: Отметка времени Опция
Описание: Используется для расчета времени приема-передачи (RTT) передаваемых пакетов.

Вид: 4
Длина: 2
Опция: TCP SACK разрешен
Описание: Информирует другие хосты о том, что выборочные подтверждения разрешены.

Вид: 5
Длина: Варьируется
Опция: Опция TCP SACK
Описание: Используется хостами для определения того, были ли получены неправильные пакеты.

Масштабирование Windows

Для более эффективного использования сетей с высокой пропускной способностью можно использовать больший размер окна TCP. Поле размера окна TCP управляет потоком данных и ограничено 2 байтами или размером окна 65 535 байт.

Поскольку поле размера не может быть расширено, используется коэффициент масштабирования. Масштаб окна TCP — это параметр, используемый для увеличения максимального размера окна с 65 535 байт до 1 гигабайта.

Опция масштабирования окна используется только во время трехэтапного установления связи TCP. Значение масштаба окна представляет собой число битов, на которое нужно сдвинуть влево 16-битное поле размера окна. Значение масштаба окна может быть установлено от 0 (без смещения) до 14.

Чтобы рассчитать истинный размер окна, умножьте размер окна на 2^S, где S – значение масштаба.

Если размер окна составляет 65 535 байт с коэффициентом масштабирования окна 3.
Истинный размер окна = 65 535*2^3

Истинный размер окна = 524280

Следующая трассировка сетевого монитора показывает, как используется параметр масштабирования окна:

Размер окна, используемый в фактическом трехэтапном рукопожатии, не является масштабируемым размером окна в соответствии с разделом 2.2 RFC 1323:

"Поле окна в сегменте SYN (например, [SYN] или [SYN,ACK]) само никогда не масштабируется."

Это означает, что первый пакет данных, отправленный после трехэтапного рукопожатия, представляет собой фактический размер окна. При наличии коэффициента масштабирования всегда используется начальный размер окна 65 535 байт. Затем размер окна умножается на коэффициент масштабирования, указанный в трехстороннем рукопожатии. В таблице ниже представлены границы коэффициента масштабирования для различных размеров окна.

< /th> < tr> < td>4 < td>16 776 960
Коэффициент масштабирования Значение масштаба Исходное окно Масштабирование окна
0 1 65535 или меньше 65535 или меньше
1 2 65535 131 070
2 65535 262,140
3 8 65535 524,280
4 16 65535 1,048,560
5 32 65535 2,097,120
6 64 65535 4,194,240
7 128 65535 8,388,480
8 256 65535
9 512 65535 33 553 920
10 1024 65535 67 107 840
11 2048 65535 134 215 680
12 4096 65535 268, 431 360
13 8192 65535 536 862 720
14 16384 65535 1,073,725,440

Если размер окна в реестре указан как 269000000 (269M) в десятичном формате, коэффициент масштабирования во время трехэтапного рукопожатия равен 13. Коэффициент масштабирования 12 допускает размер окна только до 268 431 360 байт (268M).

Исходный размер окна в этом примере будет рассчитываться следующим образом:
65 535 байт с коэффициентом масштабирования окна 13.
Истинный размер окна = 65535*2^13
Истинный размер окна = 536 862 720

Когда значение размера окна добавляется в реестр и его размер превышает значение по умолчанию, Windows пытается использовать значение масштаба, соответствующее новому размеру окна.

Значение Tcp1323Opts в следующем разделе реестра можно добавить для управления масштабированием окон и отметкой времени:

На панели инструментов выберите "Пуск" > "Выполнить", а затем введите Regedit, чтобы запустить редактор реестра.

В редакторе реестра выберите «Изменить», выберите «Создать» и выберите «Параметр DWORD».

В поле "Новое значение" введите Tcp1323Opts , нажмите клавишу ВВОД, а затем в меню "Правка" выберите "Изменить".

Эта запись реестра управляет временными метками RFC 1323 и параметрами масштабирования окна. Временные метки и масштабирование окна включены по умолчанию, но ими можно управлять с помощью флаговых битов. Бит 0 управляет масштабированием окна. Бит 1 управляет отметками времени.

Временные метки

Ранее стек TCP/IP использовал одну выборку на окно данных, отправляемых для расчета времени приема-передачи (RTT).Таймер (таймер повторной передачи) был установлен при отправке пакета до получения подтверждения. Например, если размер окна составлял 64 240 байт (44 полных сегмента) в сети Ethernet, только один из каждых 44 пакетов использовался для пересчета времени приема-передачи. При максимальном размере окна 65 535 байт такой частоты дискретизации было достаточно. Используя масштабирование окна и максимальный размер окна 1 гигабайт, этой частоты дискретизации RTT недостаточно.

Теперь параметр TCP Timestamp можно использовать для сегментов (данных и ACK), которые стек считает подходящими, для выполнения таких операций, как:

Используя эти данные, можно точно рассчитать RTT для больших размеров окна. RTT используется для расчета интервалов повторной передачи. Для оптимальной пропускной способности необходимы точные значения RTT и времени ожидания повторной передачи.

Когда в сеансе TCP используется метка времени TCP, инициатор сеанса отправляет параметр в своем первом пакете трехэтапного установления связи TCP (пакет SYN). После этого любая из сторон может использовать параметр TCP во время сеанса.

Временные метки TCP (TSopt):

Kind = 8 Length = 10 Значение TS (Tsval) Эхо-ответ TS (Tsecr)
1 байт 1 байт 4 байта 4 байта

Поле параметров метки времени можно просмотреть в трассировке сетевого монитора, развернув поле параметров TCP, как показано ниже:

Защита от упакованных порядковых номеров (PAWS)

Поле порядкового номера TCP ограничено 32 битами, что ограничивает количество доступных порядковых номеров. В сетях с высокой пропускной способностью и при передаче больших объемов данных можно использовать перенос порядковых номеров до того, как пакет пройдет по сети. При отправке данных по сети со скоростью один гигабайт в секунду (Гбит/с) порядковые номера могут переноситься всего за 34 секунды. Если пакет задерживается, потенциально может существовать другой пакет с тем же порядковым номером. Чтобы избежать путаницы с повторяющимися порядковыми номерами, метка времени TCP используется как расширение порядкового номера. Пакеты имеют текущие и текущие метки времени. Старый пакет имеет более раннюю отметку времени и отбрасывается.

Выборочные подтверждения (SACK)

В Windows появилась поддержка функции повышения производительности, известной как выборочное подтверждение или SACK. SACK особенно важен для соединений, использующих большие размеры окна TCP. До SACK получатель мог подтвердить только последний порядковый номер непрерывного потока данных, который был получен, или «левый край» окна приема. При включенном SACK приемник продолжает использовать номер ACK для подтверждения левого края окна приема, но он также может отдельно подтверждать другие блоки полученных данных. SACK использует параметры заголовка TCP, как показано ниже.

SACK использует два типа параметров TCP.

Параметр TCP Sack-Permitted используется только в пакете SYN (во время установления TCP-соединения), чтобы указать, что он может выполнять выборочный ACK.

Вторая опция TCP, TCP Sack Option, содержит подтверждение для одного или нескольких блоков данных. Блоки данных идентифицируются с использованием порядкового номера в начале и в конце этого блока данных. Он также известен как левый и правый край блока данных.

Тип 4 – это вариант TCP, разрешенный Sack. Тип 5 — это опция TCP Sack. Длина — это длина в байтах этой опции TCP.

Tcp SACK разрешен:

Вид = 4 Длина = 2
1 байт 1 байт

Параметр TCP SACK:

Kind = 5 Length = Variable
1 байт Левый край первого блока на правый край первого блока
.
От левого края N-го блока до правого края N-го блока

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

Значение SackOpts в следующем разделе реестра можно изменить, чтобы контролировать использование выборочных подтверждений:

  1. На панели инструментов выберите "Пуск" > "Выполнить", а затем введите Regedit, чтобы запустить редактор реестра.
  2. Найдите и выберите указанный выше раздел в редакторе реестра, а затем выберите «Изменить» в меню «Правка».
  3. Введите нужное значение в поле "Значение".

Действительное двоичное значение — 0 или 1, значение по умолчанию — 1. Этот параметр определяет, включена ли поддержка выборочного подтверждения (SACK — RFC 2018).

Следующая трассировка сетевого монитора показывает, что узел подтверждает все данные до порядкового номера 54857341, а также данные, начиная с порядкового номера 54858789-54861685.Отсутствуют данные с 54857341 по 54858788.

Поведение повторной передачи TCP и быстрая повторная передача

Повторная передача TCP

В качестве проверки нормального поведения повторной передачи TCP запускает таймер повторной передачи, когда каждый исходящий сегмент передается в Интернет-протокол (IP). Если подтверждение для данных в заданном сегменте не получено до истечения таймера, то сегмент передается повторно.

Тайм-аут повторной передачи (RTO) постоянно корректируется в соответствии с характеристиками соединения с помощью расчетов сглаженного времени приема-передачи (SRTT), как описано в RFC 793. Таймер для данного сегмента удваивается после каждой повторной передачи этого сегмента. Используя этот алгоритм, TCP настраивается на обычную задержку соединения.

Быстрая повторная передача

TCP повторно передает данные до истечения таймера повторной передачи в некоторых случаях. Наиболее распространенной причиной является функция, известная как быстрая повторная передача. Когда получатель, поддерживающий быструю повторную передачу, получает данные с порядковым номером, отличным от текущего ожидаемого, некоторые данные, вероятно, были потеряны. Чтобы проинформировать отправителя об этом событии, получатель немедленно отправляет ACK с номером ACK, установленным в соответствии с порядковым номером, который он ожидал. Это будет продолжаться для каждого дополнительного прибывающего TCP-сегмента. Когда отправитель начинает получать поток ACK, подтверждающий один и тот же порядковый номер, сегмент может быть отброшен. Отправитель немедленно повторно отправит сегмент, который ожидает получатель, не дожидаясь истечения таймера повторной передачи. Эта оптимизация значительно повышает производительность, когда пакеты часто теряются.

По умолчанию Windows повторно отправляет сегмент при следующих условиях:

  • Он получает три подтверждения для одного и того же порядкового номера: одно подтверждение и два дубликата.
  • Порядковый номер отстает от текущего.

Этим поведением можно управлять с помощью параметра реестра TcpMaxDupAcks.

Значение TcpMaxDupAcks в следующем разделе реестра можно изменить, чтобы контролировать количество ACK, необходимое для запуска быстрой повторной передачи:

  1. На панели инструментов выберите "Пуск" > "Выполнить", а затем введите Regedit, чтобы запустить редактор реестра.
  2. Найдите и выберите указанный выше раздел в редакторе реестра, а затем выберите «Изменить» в меню «Правка».
  3. Введите нужное значение в поле "Значение".

Действительный диапазон: 1–3, значение по умолчанию – 2.

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

В этой статье представлено решение проблемы, из-за которой TCP-трафик останавливается после включения как масштабирования на стороне приема, так и общего доступа к подключению к Интернету.

Применимо к: Windows Vista, Windows Server 2003
Исходный номер базы знаний: 927168

Описание проблемы

После включения масштабирования на стороне приема и общего доступа к подключению к Интернету TCP-трафик прекращается. Например, команда ping не работает.

Эта проблема возникает, если на компьютере установлена ​​одна из следующих операционных систем:

  • Windows Server 2003 с установленным пакетом обновления 1 (SP1) и масштабируемым сетевым пакетом Windows Server 2003
  • Windows Server 2003 с пакетом обновления 2 (SP2)
  • Windows Vista

Причина

Эта проблема возникает из-за того, что масштабирование на стороне приема и общий доступ к подключению к Интернету являются взаимоисключающими.

Разрешение

Чтобы устранить эту проблему, отключите масштабирование на стороне приема или общий доступ к подключению к Интернету. Не включайте масштабирование на стороне приема и общий доступ к подключению к Интернету одновременно.

Как отключить масштабирование на стороне приема в Windows Server 2003

Чтобы отключить масштабирование на стороне приема в драйвере сетевого адаптера в Windows Server 2003, выполните следующие действия:

  1. Нажмите «Пуск», выберите «Выполнить», введите ncpa.cpl и нажмите «ОК».
  2. Щелкните правой кнопкой мыши объект сетевого адаптера и выберите "Свойства".
  3. Нажмите «Настроить», а затем перейдите на вкладку «Дополнительно».
  4. В списке "Свойство" нажмите "Масштабирование на стороне приема", нажмите "Отключить" в списке "Значение", а затем нажмите "ОК".
  5. Повторите шаги 2–4 для каждого объекта сетевого адаптера.

Как определить, включено ли масштабирование на стороне приема в Windows Vista

Чтобы определить, включено ли масштабирование на стороне приема в Windows Vista, введите в командной строке следующую команду:
netsh interface tcp show global

Вывод будет выглядеть следующим образом:

Как отключить масштабирование на стороне приема в Windows Vista

Чтобы отключить масштабирование на стороне приема, необходимо ввести в командной строке следующую команду:
netsh interface tcp set global rss=disabled

Исправьте это для меня

Если вы хотите, чтобы мы сделали это за вас автоматически, нажмите ссылку Исправить эту проблему. Затем нажмите «Выполнить» в диалоговом окне «Загрузка файла» и следуйте инструкциям этого мастера.

Этот мастер может быть только на английском языке; однако автоматическое исправление работает и для других языковых версий Windows.

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

Статус

Microsoft подтвердила, что это проблема продуктов Microsoft, перечисленных в разделе "Относится к".

В этой статье описываются функции разгрузки TCP Chimney, масштабирования на стороне приема (RSS) и прямого сетевого доступа к памяти (NetDMA), которые доступны для протокола TCP/IP в Windows Server 2008.

Применимо к: Windows Server 2012 R2
Исходный номер базы знаний: 951037

Обзор разгрузки TCP Chimney

TCP Chimney Offload — это сетевая технология, которая помогает переносить нагрузку с ЦП на сетевой адаптер во время передачи данных по сети. В Windows Server 2008 функция разгрузки TCP Chimney позволяет сетевой подсистеме Windows переносить обработку соединения TCP/IP на сетевой адаптер, который включает специальную поддержку обработки разгрузки TCP/IP.

Разгрузка TCP Chimney доступна во всех версиях Windows Server 2008 и Windows Vista. И соединения TCP/IPv4, и соединения TCP/IPv6 могут быть разгружены, если сетевой адаптер поддерживает эту функцию.

Как включить и отключить разгрузку TCP Chimney в Windows Server 2008

Разгрузка TCP Chimney может быть включена или отключена в следующих двух местах:

  • Операционная система
  • Страница дополнительных свойств сетевого адаптера

Разгрузка TCP Chimney будет работать, только если она включена в обоих местах. По умолчанию разгрузка TCP Chimney отключена в обоих этих местах. Однако OEM-установки могут включать разгрузку TCP Chimney в операционной системе, в сетевом адаптере или как в операционной системе, так и в сетевом адаптере.

Как настроить разгрузку TCP Chimney в операционной системе

Чтобы включить разгрузку TCP Chimney, выполните следующие действия:

  1. Используйте учетные данные администратора, чтобы открыть командную строку.
  2. В командной строке введите команду netsh int tcp set global chimney=enabled и нажмите клавишу ВВОД.

Чтобы отключить разгрузку TCP Chimney, выполните следующие действия:

  1. Используйте учетные данные администратора, чтобы открыть командную строку.
  2. В командной строке введите команду netsh int tcp set global chimney=disabled и нажмите клавишу ВВОД.

Чтобы определить текущий статус разгрузки TCP Chimney, выполните следующие действия:

  1. Используйте учетные данные администратора, чтобы открыть командную строку.
  2. В командной строке введите команду netsh int tcp show global и нажмите клавишу ВВОД.

Как настроить разгрузку TCP Chimney на сетевом адаптере

Чтобы включить или отключить разгрузку TCP Chimney, выполните следующие действия:

  1. Откройте Диспетчер устройств.
  2. В разделе "Сетевые адаптеры" дважды щелкните нужный сетевой адаптер.
  3. На вкладке "Дополнительно" нажмите "Включено" или "Отключено" в поле рядом с записью разгрузки TCP.

Разные производители могут использовать разные термины для описания разгрузки TCP Chimney на странице дополнительных свойств сетевого адаптера.

Как TCP Chimney Offload сочетается с другими программами и службами

Когда технология TCP Chimney Offload переносит обработку TCP/IP для данного TCP-подключения на выделенный сетевой адаптер, она должна сосуществовать с другими программами или службами, которые полагаются на службы более низкого уровня в сетевой подсистеме. В следующей таблице показано, как разгрузка TCP Chimney сосуществует с другими программами и службами.

< /tr>
Программа или служба Работает вместе с разгрузкой TCP Chimney Ожидаемое поведение, когда включены и служба, и разгрузка TCP Chimney
Брандмауэр Windows Да Если брандмауэр настроен на разрешение определенного соединения TCP, Стек /IP разгрузит это TCP-подключение к сетевому адаптеру.
Сторонний брандмауэр Зависит от реализации Некоторые брандмауэры поставщики решили реализовать свой продукт таким образом, чтобы TCP Chimney Offload можно было использовать во время работы службы брандмауэра. Обратитесь к документации брандмауэра, чтобы узнать, поддерживает ли используемый вами продукт разгрузку TCP Chimney.
Политика безопасности протокола Интернета (IPsec) Нет Если в системе применяется политика IPsec, стек TCP/IP не будет пытаться разгрузить какие-либо соединения TCP. Это позволяет уровню IPsec проверять каждый пакет для обеспечения требуемой безопасности.
Служба объединения сетевых адаптеров (эта услуга также известна как служба балансировки нагрузки и аварийного переключения. Обычно она предоставляется OEM-производителем.) Реализация- специфично Некоторые OEM-производители решили внедрить свои решения для объединения сетевых адаптеров, чтобы они сосуществовали с разгрузкой TCP Chimney. См. документацию по службе объединения сетевых адаптеров, чтобы определить, можно ли использовать разгрузку TCP Chimney вместе с этой службой.
Виртуализация Windows (технология Hyper-V) Нет Если вы используете технологию Microsoft Hyper-V для запуска виртуальных машин, ни одна операционная система не сможет воспользоваться преимуществами разгрузки TCP Chimney.
Мониторинг сети такие инструменты, как Network Monitor и Wireshark Для конкретной реализации Некоторые инструменты сетевого мониторинга могут сосуществовать с TCP Chimney, но не могут отслеживать разгруженные соединения.
Служба балансировки сетевой нагрузки (NLB) Нет Если вы настраиваете службу NLB на сервере, стек TCP/IP не разгружает TCP соединений.
Служба кластера Да Однако обратите внимание, что соединения TCP с использованием драйвера Network Fault Tolerant (NetFT.sys) разгружаться не будет. NetFT используется для отказоустойчивой связи между узлами кластера.
Служба преобразования сетевых адресов (NAT) (также известная как служба общего доступа к Интернету) Нет Если эта служба установлена ​​и запущена, стек TCP/IP не разгружает подключения.

Как определить, работает ли разгрузка TCP Chimney

Если в операционной системе и сетевом адаптере включена разгрузка TCP Chimney, стек TCP/IP пытается разгрузить подходящие TCP-подключения к сетевому адаптеру. Чтобы узнать, какие из установленных в настоящее время TCP-соединений в системе разгружены, выполните следующие действия:

Используйте учетные данные администратора, чтобы открыть командную строку.

Введите команду netstat -t и нажмите клавишу ВВОД.

Вы получаете вывод, похожий на следующий:

В этом выводе второе соединение разгружено.

Как включить и отключить RSS в Windows Server 2008

Чтобы включить RSS, выполните следующие действия:

  1. Используйте учетные данные администратора, чтобы открыть командную строку.
  2. В командной строке введите команду netsh int tcp set global rss=enabled и нажмите клавишу ВВОД.

Чтобы отключить RSS, выполните следующие действия:

  1. Используйте учетные данные администратора, чтобы открыть командную строку.
  2. В командной строке введите команду netsh int tcp set global rss=disabled и нажмите клавишу ВВОД.

Чтобы определить текущий статус RSS, выполните следующие действия:

  1. Используйте учетные данные администратора, чтобы открыть командную строку.
  2. В командной строке введите команду netsh int tcp show global и нажмите клавишу ВВОД.

При использовании команды для включения RSS вы получаете следующее сообщение:

По умолчанию RSS включен.

Как включить и отключить NetDMA в Windows Server 2008

Чтобы включить или отключить NetDMA, выполните следующие действия:

Нажмите "Пуск", выберите "Выполнить", введите regedit и нажмите "ОК".

Найдите следующий подраздел реестра и щелкните его:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

Дважды щелкните запись реестра EnableTCPA.

Если такой записи реестра не существует, щелкните правой кнопкой мыши "Параметры", выберите "Создать", щелкните "Параметр DWORD", введите EnableTCPA и нажмите клавишу ВВОД.

Чтобы включить NetDMA, введите 1 в поле "Значение" и нажмите "ОК".

Чтобы отключить NetDMA, введите 0 в поле "Значение" и нажмите "ОК".

Если запись реестра EnableTCPA не существует, включите функцию NetDMA.

Отказ от ответственности за стороннюю информацию

Обсуждаемые в этой статье сторонние продукты производятся компаниями, независимыми от Microsoft. Microsoft не дает никаких гарантий, подразумеваемых или иных, в отношении производительности или надежности этих продуктов.

Спасибо за ответ.

Исходя из моего опыта, начиная с Windows Vista и Windows 7, для повышения производительности TCP введена автоматическая настройка приема TCP. Если автонастройка включена, TCP автоматически включит параметр масштабирования окна TCP и выберет коэффициент масштабирования в соответствии с уровнем автонастройки. В таблице ниже показано соответствие между уровнем автонастройки и коэффициентом масштабирования.

отключено = коэффициент масштабирования 0

сильно ограничено = коэффициент масштабирования 2

ограничено = масштабный коэффициент 4

нормальный = коэффициент масштабирования 8

экспериментальный = масштабный коэффициент 14

Однако при включенной функции автоматической настройки окна приема более старые маршрутизаторы, старые брандмауэры и старые операционные системы несовместимы с функцией автоматической настройки окна приема, поскольку эти старые устройства не соответствуют стандарту RFC 1323. Эвристика TCP или функция автонастройки диагностики определяет, находится ли неисправное устройство на пути от вашего компьютера. кроме того, при включенной эвристике коэффициент масштабирования окна для исходящего соединения может варьироваться в зависимости от состояния соединения. WSD будет активно отслеживать состояние соединения, благодаря чему он может определить соответствующий коэффициент масштабирования для соединения. Как правило, он создает профиль для каждого соединения с определенным пунктом назначения и портом, а затем записывает состояние каждого соединения в направлении одного и того же пункта назначения, например, если предыдущее соединение, для которого была представлена ​​опция масштабирования окна, завершается сбросом удаленным узлом, WSD зарегистрирует результат и заставит стек TCP отключить параметр масштабирования окна, когда впоследствии будет предпринята другая попытка к тому же месту назначения, а затем отреагирует в соответствии с результатом. Симптом в трассировке является одним из примеров вышеописанного поведения, поскольку TCP-соединение с тем же назначением было сброшено в прошлом. вы также можете воссоздать тот же симптом следующим образом:

<р>2. Перезапустите службу сервера на удаленном сервере, и она по существу сбросит установленное соединение, и вы можете найти сброс TCP в трассировке сниффа.

<р>3. В Windows 7 попробуйте снова подключиться к удаленному серверу через порт 445. вы обнаружите, что коэффициент масштабирования окна TCP отключен, поскольку WSD пытается сделать попытку без параметра масштабирования и посмотреть, имеет ли это значение.

На самом деле WSD будет учитывать различные комбинации сценариев, таких как полоса пропускания/состояние удаленного однорангового узла/состояние локального подключения и т. д., чтобы определить наилучшее значение параметра масштабирования. мне трудно предоставить более подробную информацию об алгоритме, поскольку на данный момент это проприетарная реализация в Windows. Но эффект от включения эвристики TCP заключается в том, что вы можете увидеть разные коэффициенты масштабирования, применяемые даже для одного и того же пункта назначения. отключение эвристики гарантирует, что Windows всегда будет использовать коэффициент масштабирования по умолчанию для подключения независимо от состояния назначения.

Принимая во внимание вышеизложенное, следуйте приведенным ниже способам, чтобы клиент Windows 7 использовал коэффициент масштабирования окна 8 для каждого TCP-соединения:

<р>1. Выполните команду, netsh int tcp show global и убедитесь, что уровень автонастройки окна получения установлен на нормальный

<р>2. Отредактируйте реестр, чтобы отключить эвристику масштабирования окна

Путь значения: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters

Тип значения: DWORD

Имя значения: EnableWsd

Тип значения: DWORD

Имя значения: TcpAutotuning

<р>4. Перезагрузите компьютер, чтобы изменения вступили в силу.

<р>5. Ожидается, что коэффициент масштабирования окна TCP будет установлен на 8 для каждого соединения TCP после внесения вышеуказанных изменений.

Читайте также: