Дома у Windows 7 и Windows 10 собственный клиент для общего доступа к Windows работает плохо. Он подключен к серверу Samba через гигабитный коммутатор. Скорость чтения составляет около 60 МБ / с, в то время как запись на сервер достигает приемлемой пропускной способности 114 МБ / с.
Теоретический максимум составляет 125 МБ / с (1000 Мбит / 8 байт), и неоптимальная производительность чтения беспокоит меня в течение длительного времени.
Установка выглядит следующим образом:
Client: Server:
- Windows 10 - Linux 4.1.12
- Ethernet: Intel I218-LM (gigabit) - Ethernet: Realtek RTL8111/8168/8411
- Samba 3.6.25
Switch:
- Cheap but solid 8-port gigabit switch by Netgear (2007)
При попытке решить эту проблему в Интернете можно найти устаревшие предложения по настройке сервера samba. Я обнаружил, что изменение параметров сокета и параметров чтения и записи не имеет заметного улучшения:
/etc/samba/smb.conf
; useless tweaks for a home network 2014-2015. oversized buffers do not help...
[global]
read size = 365536
read prediction = true
socket options = IPTOS_LOWDELAY TCP_NODELAY SO_RCVBUF=158192 SO_SNDBUF=158192
write raw = yes
read raw = yes
Сравнительный анализ пропускной способности сети с помощью iperf (cygwin) дал примерно 930 Мбит / с. К сожалению, производительность сети (диспетчер задач) никогда не указывает на насыщение канала выше 560 Мбит, в то время как CrystalDiskMark считывает данные с подключенного сетевого ресурса.
В качестве последней попытки решить проблему, я загрузил Knoppix на компьютере с Windows-клиентом, чтобы смонтировать и протестировать общий ресурс:
mount -o user=foo //192.168.1.3/data /mnt/remote
iozone -o -r 4m -s 1200mb -i{0,1}
Это привело к результатам, близким к физическому пределу. Есть ли у вас какие-либо предложения по устранению этой проблемы?