Eu tenho um servidor web com uma conexão atual de 100Mbit e meu provedor oferece uma atualização para 1Gbit. Entendo que isso se refere à taxa de transferência, mas quanto maiores os pacotes, mais rapidamente eles podem ser transmitidos, portanto, esperaria uma ligeira diminuição no tempo de resposta (por exemplo, ping). Alguém já comparou isso?
Exemplo (servidor de 100mbit a 100mbit) com carga de 30 bytes:
> ping server -i0.05 -c200 -s30
[...]
200 packets transmitted, 200 received, 0% packet loss, time 9948ms
rtt min/avg/max/mdev = 0.093/0.164/0.960/0.093 ms
Exemplo (servidor de 100mbit a 100mbit) com carga de 300 bytes (abaixo da MTU):
> ping server -i0.05 -c200 -s300
[...]
200 packets transmitted, 200 received, 0% packet loss, time 10037ms
rtt min/avg/max/mdev = 0.235/0.395/0.841/0.078 ms
Então, de 30 a 300 a média. aumento da latência de 0,164 a 0,395 - eu esperaria que esse aumento fosse mais lento para uma conexão de 1gibt a 1gbit. Eu até esperaria que 100mbit a 1gbit fosse mais rápido, se a conexão fosse através de um switch que primeiro espere até receber todo o pacote.
Atualização: Por favor, leia os comentários das respostas com cuidado! A conexão não está saturada e eu não acho que esse aumento de velocidade seja importante para os humanos para uma solicitação, mas trata-se de muitas solicitações que se somam (Redis, Banco de Dados etc.).
Em relação à resposta de @LatinSuD :
> ping server -i0.05 -c200 -s1400
200 packets transmitted, 200 received, 0% packet loss, time 9958ms
rtt min/avg/max/mdev = 0.662/0.866/1.557/0.110 ms
fonte
Respostas:
A única maneira de diminuir consideravelmente a latência é se o link atual de 100Mbit estiver saturado. Se não estiver saturado, você provavelmente não notará nenhuma alteração.
Além disso, sua suposição de que o link de 1 Gbit será capaz de suportar pacotes maiores está incorreta. O tamanho máximo do pacote é determinado pela MTU dos vários dispositivos ao longo do caminho que o pacote segue - começando pela NIC do servidor, até a MTU do computador do cliente. Em aplicativos de LAN internos (quando você tem controle sobre todos os dispositivos ao longo do caminho), às vezes é possível aumentar a MTU, mas nessa situação, você está praticamente preso à MTU padrão de 1500. Se você enviar pacotes maiores que isso acabará ficando fragmentado, diminuindo o desempenho.
fonte
SIM gbit tem uma latência mais baixa, pois:
MAS a melhoria só é apreciável se os pacotes tiverem um determinado tamanho:
Portanto, se você tiver um aplicativo muito sensível à latência (4ms vs. 0,8ms, ida e volta para 20kb) e exigir a transferência de pacotes maiores, alternar entre 100mbit e gbit poderá reduzir a latência, mesmo que você use muito menos que os 100mbit / s em média (= o link não está saturado permanentemente).
Servidor (100mbit) -> Switch (gbit) -> Servidor (100mbit):
Servidor (gbit) -> Alternar (gbit) -> Servidor (gbit):
= em média, em vários servidores, redução de 80% na latência para ping de 20kb
(Se apenas um dos links for gbit, você ainda terá uma redução de latência de 5% para ping de 20kb.)
fonte
Eu acho que você tem um equívoco fundamental sobre a latência da banda e a "velocidade". A velocidade é uma função da largura de banda e latência. Por exemplo, considere uma remessa de dados em DVDs enviados para o país levando 3 dias para chegar. Compare isso com o envio de dados pela Internet. A internet possui uma conexão de latência muito menor, mas para corresponder à "velocidade" da conexão com a remessa, você teria que receber 9,6 MB por segundo ( exemplo de referência desta fonte ).
No seu caso, a atualização para uma largura de banda maior permitiria atender a usuários simultâneos, mas não melhoraria a latência para nenhum usuário individual.
fonte
Você está olhando o mundo através de um buraco de alfinete. Um teste válido de diferenças de latência em velocidades diferentes seria entre duas NICs idênticas conectadas com um cabo de conexão cruzada. Defina as velocidades de matemática das placas de rede de 10mb, 100mb e 1000mb. Isso mostrará que praticamente não há diferença de latência nas diferentes velocidades. Todos os pacotes viajam na mesma velocidade do fio, independentemente da largura de banda máxima usada. Depois de adicionar switches com armazenamento e encaminhamento, tudo muda. O teste de latência através de um switch deve ser feito com apenas duas conexões com o switch. Qualquer outro tráfego pode afetar a latência do seu teste. Mesmo assim, o comutador pode rolar os logs, ajustar os contadores de tipo de pacote, atualizar o relógio interno, etc. Tudo pode afetar a latência.
Sim, mudar de 100mb para 1gb pode ser mais rápido (menor latência) devido a alterações de hardware, NIC diferente, switch diferente, driver diferente. Vi mudanças maiores na latência do ping devido a diferenças de driver do que quaisquer outras alterações; largura de banda, comutadores, NICs de descarregamento, etc.
O comutador seria a próxima maior mudança com corte significativamente mais rápido que armazenar e encaminhar para testes de transmissão única. No entanto, uma chave de armazenamento e encaminhamento bem projetada pode ultrapassar a chave de corte no desempenho geral sob alta carga. Nos primeiros dias do gigabit, vi switches de backplane de 10mb de alto desempenho com latência menor do que os switches baratos de gigabit.
Os testes de ping são praticamente irrelevantes para a análise de desempenho ao usar a Internet. São testes rápidos para ter uma idéia aproximada do que está acontecendo no transporte no momento do teste. O teste de desempenho da produção é muito mais complicado do que apenas um ping. Switches de alto desempenho são computadores e sob alta carga se comportam de maneira diferente - altere a latência.
Ter uma NIC mais lenta, ou uma NIC configurada para uma velocidade mais lenta, poderia realmente ajudar um servidor com rajadas simultâneas, limitando a entrada para o servidor usando o cache dos switches. Uma única retransmissão pode negar qualquer diminuição na latência. Normalmente, os níveis de tráfego de média a alta carga são importantes, e não testes de ping únicos. por exemplo, o antigo e lento Sun Ultrasparc (latência mais alta para um único ping) supera a nova área de trabalho de gigabit barata usada como servidor de desenvolvimento quando menos de 70% da carga de largura de banda de 100mb. A área de trabalho possui NIC de gb mais rápida, conexão gb-gb mais rápida, memória mais rápida, mais memória, disco mais rápido e processador mais rápido, mas não apresenta um desempenho tão bom quanto o hardware / software ajustado da classe de servidor. Isso não quer dizer que um servidor sintonizado atual executando gb-gb não seja mais rápido que o hardware antigo, capaz de lidar com cargas de rendimento maiores. Há apenas mais complexidade na questão de "
Descubra se o seu provedor está usando comutadores diferentes para as conexões 100mb vs. 1gb. Se eles usassem o mesmo backplane do switch, eu pagaria pelo aumento apenas se os níveis de tráfego excederem a largura de banda mais baixa. Caso contrário, você poderá descobrir que, em pouco tempo, muitos outros usuários passarão para o gigabit e os poucos usuários restantes no comutador antigo agora terão um desempenho mais alto - menor latência, durante altas cargas no comutador (carga geral do comutador, não apenas nos servidores) )
Exemplo de maçãs e laranjas: O provedor de serviços de Internet local forneceu um novo switch para serviços agrupados, DSL e telefone. Inicialmente, os usuários viram um aumento no desempenho. O sistema foi vendido em excesso. Agora, os usuários que permanecem no comutador antigo têm desempenho consistente mais alto. Durante a madrugada, os usuários do novo sistema são mais rápidos. À noite, sob alta carga, os antigos clientes do switch superam claramente o novo sistema sobrecarregado.
Latência mais baixa nem sempre se correlaciona com entrega mais rápida. Você mencionou o MySQl nas 20 solicitações para servir uma única página. Esse tráfego não deve estar na mesma NIC que a página solicita. Mover todo o tráfego interno para uma rede interna reduzirá colisões e contagens totais de pacotes na NIC de saída e proporcionará ganhos maiores que o ganho de latência 0,04 ms de um único pacote. Reduza o número de solicitações por página para reduzir a latência de carregamento da página. Comprima as páginas, html, css, javascript, imagens para diminuir o tempo de carregamento da página. Essas três alterações fornecerão ganhos gerais maiores do que pagar pela largura de banda que não está sendo usada para obter uma redução de latência de 0,04 ms. O ping precisa ser executado 24 horas e ter uma média para ver a mudança real da latência. Agora, os comutadores inteligentes fazem a otimização do tipo RTSP adaptável, com pequenos aumentos de largura de banda inicial e grandes transferências otimizadas. Dependendo do tamanho da página (gráficos, html / css / javascript grande), você poderá ver as latências / largura de banda da conexão inicial muito mais baixas / mais altas que uma página grande ou transferências de página inteira. Se parte da sua página estiver transmitindo, você poderá ver um desempenho drasticamente diferente entre a página e o fluxo.
fonte
Vamos assumir pacotes de 300 bytes (se você usá-
-s 300
lo, seria realmente maior por causa dos cabeçalhos).0.024ms é aproximadamente o tempo real necessário para enviar o quadro (sem contar o tempo médio de acesso nem os cabeçalhos).
Em uma sequência de ping-pong, levaria o dobro do tempo (0,048 ms), mais o tempo para o sistema operacional processar a consulta.
Isso significa para mim que sua latência é causada por 90% de vários fatores de sobrecarga. Não tenho certeza se você verá muita diferença com o Gb. Uma diferença provavelmente inferior a 1 ms não será perceptível em um servidor da web.
Enfim, você poderia tentar com um pacote realmente grande como 1400 bytes?
fonte
Isso depende do tipo de switch ao qual você está se conectando. Em alguns fornecedores (como Crisco ... quero dizer Cisco), os pacotes ICMP retornam à CPU ( gag ).
Você pode achar que um teste melhor seria realizar um teste host-a-host usando um link de 100 Mbps e 1 Gbps (ou seja, não um teste de host para switch ou host para roteador).
No final do dia, a latência diminuirá para a taxa de encaminhamento no switch e para os detalhes da arquitetura do switch (onde os ASICs são colocados na placa, como o bloqueio é tratado entre as placas de linha, etc.). Boa sorte com seu teste.
fonte