Обновлено 09.10.2014
Этот вопрос похож на Необъяснимая низкая скорость гигабитной сети но поскольку по прошествии 5 лет последний все еще остается без ответа, и я думаю, что могу добавить более подробную информацию, я задаю еще один вопрос по этой теме.
У нас есть 2 сервера хранения DELL PowerVault NX200. Оба имеют встроенный двойной гигабитный сетевой адаптер Broadcom BCM5716 (из которого я использую только один порт). Эти серверы хранения поставляются с Windows Server 2008 Storage Basic SP2, который я недавно переустановил и обновил до последней версии.
Недавно мы столкнулись с низкой скоростью сети с серверов. Я раньше не тестировал скорость соединения, поэтому не могу сказать, какая была «нормальная» пропускная способность. Однако сейчас это определенно очень медленно.
Пропускная способность с обоих серверов составляет около 5-6 Мбит / с.. Это было измерено с помощью нескольких прогонов Iperf в течение дня. Пропускная способность ДО серверов составляет около 90 Мбит / сек.
Другие инструменты и методы дают такие же результаты (например, ttcp или копирование файлов с помощью Windows Explorer, Teracopy, ...). Я буду придерживаться результатов Iperf, чтобы исключить как можно больше нерелевантных компонентов (например, SMB).
Я пробовал несколько вещей, но ничего не помогло.
Использование новых сетевых кабелей. У меня нет инструментов для правильного тестирования качества кабелей, но я получаю более высокие скорости, используя те же кабели на других компьютерах.
Использование другой сетевой карты (BCM5709), которая отлично работает на другом сервере Windows 2008 R2.
Отключение всех других компьютеров и оставление серверов изолированными на коммутаторе.
Подключение серверов к другому коммутатору не улучшило ситуацию.
Удаление любого переключателя и подключение NIC напрямую к NIC.
Обновление драйверов и программного обеспечения сетевой карты до последних версий от QLogic.
Изменение параметров сетевой карты для каждого режима «Скорость и дуплекс». «Автосогласование» всегда приводило к максимальной скорости, которую я мог получить от него.
То же самое для других параметров NIC, таких как размер Jumbo-пакета (для соответствия поддержке коммутатора). В большинстве случаев это ничего не меняло, а когда менялось, становилось только хуже.
Я также перепробовал все netsh interface tcp set global
параметры, в том числе autotuninglevel
которые многие предлагают оставить инвалидами.
Настройка TCPWindowSize
в реестре. Этот параметр игнорируется в Windows 2008.
Загрузка в CentOS 6. На CentOS LiveCD все нормально. Вероятно, виноват Windows, драйвер или настройки, а не сетевой адаптер, переключатели или кабели.
Мне удалось воспроизвести большую часть результатов Масштабирование окна TCP в Windows Слишком раннее достижение плато. Принудительное использование окна TCP также приводит к гораздо более высокой скорости во время тестов Iperf. Похоже, что масштабирование окна TCP в Windows не работает должным образом при передаче.
Между двумя серверами .12 NIC вручную настроен на полнодуплексный режим 100 Мбит / с:
[ 4] local 192.168.1.14 port 51535 connected with 192.168.1.12 port 5001
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-15.1 sec 640 KBytes 348 Kbits/sec
[ 4] local 192.168.1.14 port 5001 connected with 192.168.1.12 port 50498
[ 4] 0.0-10.3 sec 6.00 MBytes 4.90 Mbits/sec
Между двумя серверами .12 NIC вручную настроен на полудуплекс 100 Мбит / с (те же результаты для "Авто"):
[ 4] local 192.168.1.14 port 51541 connected with 192.168.1.12 port 5001
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-10.2 sec 6.38 MBytes 5.23 Mbits/sec
[ 4] local 192.168.1.14 port 5001 connected with 192.168.1.12 port 50509
[ 4] 0.0-10.3 sec 6.12 MBytes 4.99 Mbits/sec
Иногда странные сбои в сети могут быть вызваны сетевыми фильтрами (особенно сторонним брандмауэром и / или антивирусным программным обеспечением).
Вы можете проверить, какие фильтры установлены (в PowerShell):
ls 'HKLM:\SYSTEM\CurrentControlSet\Control\Network\{4d36e974-e325-11ce-bfc1-08002be10318}' |
% { $_.GetValue('Description') } |
sort
или вручную с помощью regedit.
Также проверьте синхронизацию DPC (отложенного вызова процедуры) драйверов сетевого адаптера во время теста iperf. http://www.thesycon.de/deu/latency_check.shtml
Также попробуйте запустить iperf (или, желательно, ntttcp) при петлевом соединении.
это может быть проблема с управлением потоком как на нике, так и на коммутаторе, см. следующую статью и убедитесь, что вы отключили управление потоком как на нике, так и на коммутаторе.