сервер 2008 - 2003 медленная передача файлов с использованием cifs

сервер 2008 - 2003 медленная передача файлов с использованием cifs

Я только что попробовал скопировать файл через cifs (общий доступ к файлам Windows) между сервером 2003 R2 и новым сервером 2008 SP1, и скорость оказалась ужасной.

Это файл размером 300 МБ, который передается около 30 минут. Я получаю около 1-2 Мбит/с, и это на локальном коммутаторе.

Я попробовал инициировать передачу с обоих серверов, но результат оказался одинаковым.

Копирование с сервера 2003 на другой сервер 2003 занимает менее 1 минуты, так что проблема явно в сервере 2008.

Еще более странное поведение заключается в том, что если я одновременно копирую другой файл с сервера 2003 на другой сервер 2003, скорость передачи данных с сервера 2008 резко возрастает (примерно в 10 раз, но все равно остается низкой).

Через RDP-drivesharing я получаю полную скорость VPN, около 20 Мбит. Никакие другие сервисы, похоже, не страдают от задержек.

Я видел сообщение о том, что разгрузка TCP вызывает проблемы в Win2008. Может ли это быть связано?

решение1

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

Я наблюдал похожее поведение при передаче файлов, когда возникало несоответствие скорости/дуплексного режима между сетевой картой и коммутатором, иногда из-за проблем с автоопределением, а иногда из-за неправильной настройки одного или другого, или обоих.

решение2

Вы можете попробовать отключить автонастройку TCP:

netsh interface tcp set global autotuninglevel=disabled

Если это не поможет, включите его снова:

netsh interface tcp set global autotuninglevel=normal

Автонастройка TCP — это новая функция в стеке TCP/IP Vista и Windows 2008. Объем данных, которые вы можете отправить через TCP/IP, зависит (помимо прочего) от размера окна приема. В предыдущих версиях Windows размер окна приема был ограничен 64 КБ. При автонастройке размер окна динамически изменяется в зависимости от емкости и скорости соединения. Идея заключается в том, что это ускорит передачу данных.

Проблема в том, что эта функция может фактически привести к снижению скорости передачи данных, если клиентская операционная система или сетевое оборудование не поддерживают эту функцию должным образом (как описано в RFC 1323, TCP Extensions for High Performance).

В любом случае, возможно, проблема не в этом, но попробовать стоит.

решение3

Я только что решил похожую проблему в своей сети. Машина с Windows 2003 Server получалаужасный(~20 Кб/с) скорость чтения из общих папок на новом компьютере с Windows 2008 R2 (но как ни странно, в 2003 >> 2008 все было нормально, ~50+ Мб/с).

Некоторые из вещей, которые я пробовал...

  • Настройка autotuninglevel=disabled, как предложено выше
  • Отключение SMB 2, как описаноздесь
  • Тонкая настройка параметров дуплекса и управления потоком адаптеров, в основном на основеэта почтано предлагается в ряде мест

Ничто из этого не имело (положительного) эффекта.

Для меня решением оказалось отключение TCP-разгрузки (описаноздесь) добавив следующие ключи реестра...

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

Value = DisableTaskOffload
Type = DWORD
Data = 1

Value = EnableTCPChimney
Type = DWORD
Data = 0

Value = EnableTCPA
Type = DWORD
Data = 0

Value = EnableRSS
Type = DWORD
Data = 0

После перезапуска все передачи были запущены.

Из моего (ограниченного) понимания проблемы, она возникает только с определенными моделями сетевых карт (у меня Intel 82578DC) в коробке под управлением 2008 или Win 7, которая общается с коробкой под управлением 2003 или XP. В моем случае коробка 2003 была виртуальной машиной, работающей на VMware Server 2.0.2 (но я не знаю, имеет ли это значение).

Надеюсь, это кому-то поможет!

решение4

Моя первая догадка — проблема с оборудованием. Попробуйте использовать FTP или HTTP для передачи файла и посмотрите, будет ли это также медленно.

Дж.Р.

Связанный контент