суббота, 11 января 2014 г.

Windows 8. Тормозит сеть

  Еще прошлой весной, поставив на свой ПК Windows 8, я обнаружил, что скорость копирования по сети с нее была очень маленькая. Несколько килобайт в секунду. Изредка скорость поднималась до нормальных значений, но это было редко.
  Осенью я поставил на комп новейшую Windows 8.1. И под ней было то же самое. Очень низкая скорость копирования по сети с моего компьютера.
  Все это время проблема откладывалась мной в долгий ящик. Обе версии Windows были лицензионными, со всеми обновлениями.
  Недавно случайно заглянув в свои старый блокнот в разделе "Тормоза сети Windows 7, Vista" обнаружил решение.

Теория

  Проблема оказалась в реализации протокола TCP/IP. Начиная с Windows Vista были внедрены новые возможности автоматической конфигурации протокола TCP/IP. В процессе передачи файлов по сети Windows сама подстраивает параметры протокола исходя из реальной скорости связи. Оказалось, что на практике это часто тормозит скорость работы сети.
  В данной ситуации виновником тормозов оказалась возможность автонастройки окна приема ("window autotuning" по буржуйски). Больше теории можно посмотреть в статье Отключаем Recieve Window Auto-Tuning в Windows 7/Server 2008 и обсуждение в форуме медленно работает сеть на Windows 7. Особенно ответ Alekseev Sergey от 23.02.2012 20:33

Решение

  Решение оказалось в команде:
  netsh interface tcp set global autotuninglevel=
  Где после символа "равно" могут стоять параметры normal, restricted, highlyrestricted, disabled. Я не экспериментировал с ними, а сразу отключил автонастройку "netsh interface tcp set global autotuninglevel=disabled". И сразу скорость стала нормальной.
  Посмотреть текущее значение этого параметра можно командой "netsh interface tcp show global". У меня эта команда выдала:

Запрос активного состояния...

Глобальные параметры TCP
----------------------------------------------
Состояние масштабирования на стороне приема: enabled
Состояние разгрузки Chimney:    disabled
Состояние NetDMA:        disabled
Прямой доступ к кэшу (DCA):         disabled
Уровень автонастройки окна получения: disabled
Поставщик дополнительного компонента контроля перегрузки: none
Мощность ECN:                                      disabled
Метки времени RFC 1323:             disabled
Начальное RTO:                          3000
Состояние объединения сегментов приема: disabled
Устойчивость RTT без SACK: disabled
Максимум повторных передач SYN: 2

  Где "Уровень автонастройки окна получения" показывает то что мне надо.