Diagnosticando operações de rede extremamente lentas

1

A rede: * Um PC com Windows 7 com 2 NICs - um conectado a um hub ethernet antigo - o outro à Internet - com o compartilhamento de internet ativado * Um Apple iMac conectado ao hub, utilizando com sucesso o ICS para acessar a Internet.

Meu problema: usando o Mac, copiar da internet é rápido. No entanto, se eu me conectar a um SMB: compartilhar no PC com Windows 7 e tentar copiar qualquer coisa > alguns kb a operação de cópia é terrivelmente lenta com a minha placa de rede usando o painel de controle do Windows 7 mostrando ~ .1% de utilização.

As NICs são 100Mbs e mostram uma taxa de transferência 10x maior (agora ~ 1%) se eu baixar arquivos grandes pela Internet usando o Mac.

WTF?

    
por Chris Becke 18.05.2010 / 17:16

1 resposta

1

Apenas um palpite, mas é rápido para testar. Tente fazer isso no seu Mac:

sysctl net.inet.tcp.delayed_ack

... e observe o que é reportado. Será um número inteiro, provavelmente o valor 2 ou 3. Depois de gravar como foi definido anteriormente, tente defini-lo como zero:

sudo sysctl -w net.inet.tcp.delayed_ack=0

... desmonte todos os volumes montados em SMB e monte-os novamente para estabelecer novas conexões TCP. Em seguida, tente novamente o teste de cópia de arquivo e veja se a velocidade foi significativamente melhorada.

Eu encontrei situações em que o algoritmo TCP Delayed Ack do Mac OS X era menos que o ideal, então pode ser bom fazer esse teste para descartá-lo rapidamente.

Parte da minha hipótese é que, ao fazer uma transferência de arquivos local, o Windows é o ponto de extremidade TCP, então você está lidando com a pilha TCP do Windows. Se houver um problema de interoperabilidade de ajuste TCP entre o seu Mac e o Windows, você o verá lá. Por outro lado, quando sua máquina Windows está fazendo o Compartilhamento de Conexão com a Internet, ela está apenas transmitindo seu tráfego TCP, não agindo como um ponto final da conexão, então o comportamento será diferente.

    
por 18.05.2010 / 18:08