Это мой сценарий:
-Рабочая станция1: CPU i7-3770 / 16 ГБ оперативной памяти / материнская плата Gigabyte Z77-D3H / Crucial CT256MX100SSD1 Sysyem Disk / сетевой адаптер Intel X540-T1 / Windows 7 64bit -Workstation2: CPU i7-950 / 12 ГБ оперативной памяти / материнская плата ASUS P6X58D-E / Crucial CT256MX100SSD1 Sysyem Disk / Сетевой адаптер Intel X540-T1 / Windows 7 64bit
-Коммутатор HP procurve 2920 с двумя двойными картами расширения 10 Gigabit Ethernet.
Оба кабеля utp имеют длину Cat6 менее 15 метров и подключаются напрямую от каждой рабочей станции к коммутатору HP. Оба сетевых адаптера, похоже, связаны со скоростью 10 Гбит / с.
Я тестирую производительность сети с помощью iperf:
-workstation1: iperf -s
-workstation2: iperf -c <workstation1 ip>
Я получаю около 1 Гбит в секунду вместо 10 Гбит в секунду. Так есть ли какой-нибудь шаг, который я делаю неправильно? Есть информация о сетевых ограничениях Windows 7? Спасибо.
ОБНОВЛЕНО - NTttcp тесты
C: \ NTttcp-v5.28 \ x64> NTttcp.exe -s -m 8, *, 192.168.1.20 -l 128k -a 2 -t 15
Авторские права Версия 5.28
Сетевая активность прогрессирует ...
Thread Time(s) Throughput(KB/s) Avg B / Compl ====== ======= ================ ============= 0 15.001 38661.956 131072.000 1 14.999 38257.484 131072.000 2 14.998 53989.065 131072.000 3 14.998 38336.845 131072.000 4 14.999 38086.806 131072.000 5 15.000 37563.733 131072.000 6 14.997 56408.082 131072.000 7 15.000 52292.267 131072.000 ##### Totals: ##### Bytes(MEG) realtime(s) Avg Frame Size Throughput(MB/s) =========== =========== ============== ================ 5179.250000 15.000 1459.696 345.283 >Throughput(Buffers/s) Cycles/Byte Buffers ===================== ============== ========== 2762.267 6.912 41434.000 >DPCs(count/s) Pkts(num/DPC) Intr(count/s) Pkts(num/intr) ============= ============= =============== ============== 13668.933 1.633 22030.933 1.013 >Packets Sent Packets Received Retransmits Errors Avg. CPU % ============= ================ =========== ====== ========== 3720525 334723 4364 0 10.179
Попробуйте показанные предложения Вот
- Вам нужны RSS (масштабирование на стороне приема), LSO (разгрузка больших отправлений / сегментов), масштабирование окна TCP (автонастройка) и TCP Chimney (для Windows), опционально RSC (объединение на стороне приема), настроенные и настроенные правильно.
Даже современные процессоры не могут обрабатывать 10 ГБ операций чтения на одном ядре процессора, поэтому RSS требует настройки как минимум с 4 физическими ядрами процессора (RSS не работает с логическими ядрами с гиперпоточностью), возможно 8, в зависимости от процессора, для распределения нагрузки приема. через несколько процессоров. Вы можете сделать это через PowerShell (Windows) с помощью командлета Set-NetAdapterRss.
пример команды для 4-х физических процессов ядра с Hyerpthreading (0,2,4,6 - физические, 1,3,5,7 - логические .... в значительной степени практическое правило) Set-NetAdapterRss -Name "" - NumberOfReceiveQueues 4 -BaseProcessorNumber 0 -MaxProcessorNumber 6 -MaxProcessors 4 -Enabled
LSO устанавливается в драйверах сетевой карты и / или PowerShell. Это позволяет Windows / Linux / любой другой системе создавать большой пакет (скажем, 64 КБ - 1 МБ) и позволять аппаратному обеспечению сетевого адаптера выполнять сегментацию данных по значению MSS. Это снижает использование процессора на хосте и ускоряет передачу, поскольку аппаратное сегментирование выполняется быстрее, а ОС должна выполнять меньше работы.
RSC устанавливается в Windows или Linux и на сетевой карте. Это противоположно LSO. Маленькие фрагменты принимаются сетевым адаптером и превращаются в один большой пакет, который отправляется в ОС. Снижает нагрузку на процессор на принимающей стороне.
В то время как TCP Chimney имеет плохую репутацию в мире 1 ГБ, он сияет в мире 10 ГБ. Установите для него значение «Автоматически» в Windows 8 + / 2012 +, и он будет работать только в сетях 10 ГБ при определенных обстоятельствах.
Масштабирование окна TCP (автоматическая настройка в мире Windows) абсолютно необходимо. Без него окна TCP никогда не станут достаточно большими, чтобы поддерживать высокую пропускную способность для соединения 10 Гб.
- Включите Jumbo-кадры 9K (некоторые говорят «нет», некоторые говорят «да» ... действительно зависит от оборудования, поэтому проверьте оба варианта).
На моем оборудовании критически важным было включение jumbo-кадров. Также обратите особое внимание на настройку объединения IRQ.