Na mesma LAN / WAN, tenho um servidor Windows 2012 executando o IIS 7.5 e um servidor Debian (wheezy) executando o Nginx 1.4.5. Ambos os servidores estão conectados à mesma LAN / WAN.
Quando eu faço o download de um arquivo de 10 MB do servidor debian sobre o wan (internet), curl
informa uma velocidade média de download de 1157k . Usando o mesmo arquivo, na mesma rede, mas no servidor Windows, o Curl reporta uma velocidade média de download de 3588k . A execução do script várias vezes mostra que a velocidade média de download do servidor debian tem grandes variações, às vezes eu obtenho somente 400k , enquanto o servidor Windows é bastante estável.
Testar na LAN ao invés da WAN me dá melhor desempenho, mas o servidor do Windows tem um desempenho muito melhor lá também. O servidor Windows está em produção e tem uma certa quantidade de carga, enquanto o servidor debian não tem carga além dos meus testes.
Lado do cliente, se eu capturei o tráfego TCP usando o wireshark, não estou muito familiarizado com a captura do tcp, mas descobri que o tamanho da janela TCP do debian é menor que o do Windows.
Debian:
Window size value: 913
Calculated window size: 14608
Window size scaling factor: 16
Windows:
Window size value: 256
Calculated window size: 65536
Window size scaling factor: 256
- Eu tentei o Apache em vez do Nginx e isso não mudou nada.
- Experimentei outro guia "Linux tcp tuning" na Internet, sem nenhum impacto perceptível.
- O tempo de ping é equivalente para os dois servidores.
- Não há SSL / TLS envolvido.
Eu não sei para onde ir a partir daqui.
Alguém tem algum conselho para investigar ou corrigir esse problema?