Solução de problemas de velocidade de rede - A pesquisa antiga

18

Estou procurando ajuda com o que tenho certeza de que é uma questão antiga. Eu encontrei-me em uma situação de anseio para entender o rendimento da rede mais claramente, mas não consigo encontrar informações que faz com que ele "clique"

Temos alguns servidores distribuídos geograficamente, executando várias versões do Windows. Supondo que sempre usamos um host (um desktop) como fonte, ao copiar dados desse host para outros servidores em todo o país, vemos uma alta variação na velocidade. Em alguns casos, podemos copiar dados a 12MB / s de forma consistente, em outros, estamos vendo 0,8 MB / s. Deve-se notar, depois de testar 8 destinos, parece que estamos sempre em 0,6-0,8MB / s ou 11-12 MB / s. No edifício em que estamos principalmente preocupados, temos uma conexão OC-3 com nosso ISP.

Eu sei que há muitas variáveis em jogo, mas acho que esperava que os especialistas aqui ajudassem a responder algumas perguntas básicas para ajudar a reforçar minha compreensão.

1.) Para máquinas mais antigas, executando o Windows XP, o servidor 2003, etc, com uma placa Ethernet de 100Mbps e 72 ms de latência típica, o som de 0,8 MB / s é razoável? Ou você acha que lento o suficiente para indicar um problema?

2.) A clássica "velocidade matemática mais rápida" de "throughput = janela TCP / latência" é, no nosso caso, calculada para 0,8 MB / s (64Kb / 72 ms). Meu entendimento é que é um limite superior; que você nunca esperaria alcançar (devido à sobrecarga) e muito menos ultrapassar essa velocidade. Em alguns casos, porém, estamos vendo velocidades de 12,3 MB / s. Existem aceleradores Steelhead espalhados pela rede, aqueles poderiam ser responsáveis por uma taxa de transferência tão alta?

3.) Tem sido sugerido que o uso SMB vs. SMB2 poderia explicar as diferenças de velocidade. De fato, como esperado, as capturas de pacotes mostram ambos sendo usados dependendo das versões do SO em jogo, como seria de se esperar. Eu entendo o que determina se o SMB2 está sendo usado ou não, mas estou curioso para saber que tipo de ganho de desempenho você pode esperar com o SMB2.

Meu problema parece ser simplesmente a falta de experiência e, mais importante, a perspectiva, em termos de quais são e não são velocidades de rede razoáveis. Alguém poderia ajudar a transmitir contexto / perspectiva?

    
por Univ426 01.06.2012 / 15:38

3 respostas

2

Muitos comentários e usuários ofereceram ótimos conselhos aqui. Alguns deles chegaram muito perto do que eu estava procurando, mas também tive a sorte de me encontrar com um veterano da Rede de nossa empresa que ajudou a esclarecer as coisas. Eu pensei que eu iria postar minhas descobertas / entendimentos aqui para o benefício dos outros. Por favor, sinta-se à vontade para me corrigir se isso parecer errado:

1.) A taxa de transferência máxima de uma única sessão TCP com 72ms de latência e 64k de janela está em torno de 0,8 MB / s, tornando a velocidade razoável para uma única sessão, como as que realizamos com robocopy. / p>

2.) Essa diferença de velocidade parece se reduzir à eficácia do método de transferência. No nosso caso, estávamos usando Robocopy e Repliweb. Descobri que o robocopy usa uma única sessão TCP, enquanto o Repliweb pode abrir várias sessões para enviar dados.

3.) Pesquisa do site da Microsoft mostra SMB2 como tendo um ganho de desempenho considerável sobre SMB1. No entanto, houve problemas em alguns casos em como o sistema operacional negocia qual protocolo usar, portanto, deve-se estar ciente de ambos: a) quais casos o SMB2 pode ser usado, eb) se ou O SMB2 não está realmente sendo utilizado com base em capturas de rede.

Atualmente, parece que o Wire-shark pode determinar o uso do protocolo SMB2.

Espero que isso ajude. Mais uma vez, meu entendimento é bastante rudimentar aqui, sinta-se à vontade para expandir.

    
por 05.06.2012 / 18:01
4

A fórmula matemática a que você está se referindo é, na verdade, a maneira de determinar as configurações de tamanho de janela de transmissão mais eficientes para o TCP, não a largura de banda real disponível. O TCP usa um mecanismo chamado janelas deslizantes que permite o ajuste das velocidades de transmissão com base nas condições da rede. A ideia é que um transmissor TCP envie mais e mais dados sem exigir uma confirmação do receptor. Se houver perda de dados, a quantidade de dados enviados entre confirmações diminui, diminuindo também a largura de banda efetiva.

A fórmula em questão realmente determina o tamanho ideal dessa janela de transmissão TCP com base na latência e na latência de ida e volta entre um determinado par de hosts. A idéia é ter uma janela dimensionada de tal forma que a quantidade de dados "em vôo" corresponda ao que é conhecido como o produto de atraso de largura de banda. Por exemplo, se você tiver 50 megabits por segundo (6,25 megaBYTES) e uma latência média de ida e volta de 100 ms, você terá 6,25 * 0,1 = 625 kilobytes de dados. Esse seria o valor que o TCP negociaria (se configurado corretamente). Como as características de latência e largura de banda dos seus links variam, o mesmo acontece com o tamanho da janela.

O que você precisa é de uma ferramenta de gerenciamento de largura de banda como iperf (gratuito) em execução na origem e em seus vários destinos. Isso deve lhe dar uma ideia da quantidade real de taxa de transferência possível (independente de outros aplicativos), além de fornecer algumas informações sobre a latência. Executar um ping estendido entre hosts também fornecerá uma ideia geral das características de latência. Quando você tiver esses dados, você terá uma ideia melhor do que deve estar vendo até o throughput.

BTW - O uso de qualquer tipo de otimizador de rede local geralmente incorpora compressão de dados, otimização TCP, armazenamento em cache, etc. Embora seja prático, pode obscurecer a natureza dos links subjacentes. Uma vez que você tenha uma idéia da largura de banda bruta / atraso (e perda de pacotes, potencialmente), você pode dar uma olhada mais de perto para certificar-se de que seus vários hosts estão configurados para aproveitar adequadamente a largura de banda disponível.

    
por 01.06.2012 / 22:15
2

Tente "ping -l 8092" ou FTP ou HTTP para verificar se é um problema SMB.

Primeiro de tudo: que mídia você usa para conectar computadores? O que nos "100mpbs"? Ethernet? Você não pode usá-lo para computadores "distribuídos geograficamente", certo?

No caso de roteadores "vpn over Internet" entre seus computadores, é possível usar links diferentes: um é rápido, outro não. Eles podem escolher o link com base em muitos parâmetros.

Por favor, descreva sua rede.

Isso pode ser um problema de MTU também: vários links podem ter MTUs diferentes.

    
por 01.06.2012 / 16:33