Solução de problemas de desempenho do Samba (compartilhamentos do Windows) em uma Intel NIC

0

Em casa, um cliente nativo de compartilhamento de janelas no Windows 7 e no Windows 10 tem um desempenho ruim. Está conectado a um servidor Samba através de um switch gigabit. A taxa de leitura está em torno de 60 MB / s, enquanto as gravações no servidor atingem uma taxa de transferência aceitável de 114 MB / s.

O máximo teórico é de 125 MB / s (1000 Mbit / 8 bytes) e a performance de leitura abaixo do ideal está me incomodando há muito tempo.

A configuração é a seguinte:

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)

Ao tentar resolver isso, pode-se encontrar sugestões dated on-line sobre ajustes no servidor samba. Descobri que alterar as opções de soquete e ler e gravar os parâmetros não apresentava nenhuma melhoria notável :

/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

O benchmarking do throughput da rede com iperf (cygwin) rendeu aproximadamente 930 Mbit / s. Infelizmente, o desempenho da rede (gerenciador de tarefas) nunca indica a saturação do link acima de 560 MBit enquanto o CrystalDiskMark está lendo o compartilhamento de rede montado.

Como última tentativa de resolver o problema, inicializei o Knoppix na máquina cliente do Windows para montar e comparar o compartilhamento:

mount -o user=foo //192.168.1.3/data /mnt/remote
iozone -o -r 4m -s 1200mb -i{0,1} 

Isso produziu resultados próximos ao limite físico. Você tem alguma sugestão para solucionar esse problema?

    
por Ярослав Рахматуллин 29.11.2015 / 02:57

1 resposta

1

O problema pode estar relacionado às configurações do driver TCP ou Ethernet nas janelas.

Uma fonte relata que a desativação desses parâmetros ajuda:

  • Descarregamento de soma de verificação IPv4
  • Large Send Offload Version 2
  • TCP Checksum Offload
  • UDP Checksum Offload

Eu posso confirmar essas descobertas e, além disso, descobri que as configurações indicadas abaixo também ajudam:

  • espaçamento entre quadros adaptáveis - > fora
  • pacote jumbo - > 9014 bytes
  • moderação de interrupções - > desativado
  • taxa de moderação de interrupções - > fora

Ajustar as configurações do driver da NIC melhorou significativamente o desempenho:

Configuraçõesdoadaptadorderede

ControlPanel->Network->changeadaptersettings->right-click>properties->advanced

Documentaçãorelevanteeencadeamentodefórum:

por 29.11.2015 / 02:57