Latência da rede: definição, causas e práticas recomendadas
Manter a latência da rede no mínimo é uma prioridade para os resultados financeiros de qualquer negócio de TI. Latência e tempos de carregamento lentos são um obstáculo para os clientes, portanto, se você não fornecer aos usuários uma experiência livre de latência, um de seus concorrentes certamente o fará.
Este artigo é um guia completo sobre latência de rede que cobre tudo o que há para saber sobre uma das principais causas da má experiência do usuário (UX). Continue lendo para saber por que as empresas investem pesadamente em infraestrutura para reduzir a latência da rede e veja o que é necessário para garantir tempos de resposta de rede ideais.
O que é latência em rede?
A latência (ou atraso) da rede mede o tempo que um dispositivo cliente leva para enviar dados ao servidor de origem e receber uma resposta. Em outras palavras, a latência da rede é o atraso entre o momento em que o usuário realiza uma ação (como clicar em um link) e o momento em que chega uma resposta do servidor.
Mesmo processos que parecem instantâneos apresentam algum atraso. Digamos que um usuário esteja comprando em um site de comércio eletrônico. Clicar no botãoAdicionar ao carrinho desencadeia a seguinte cadeia de eventos:
- O navegador inicia uma solicitação aos servidores do site (o relógio de latência começa agora).
- A solicitação de dados se move pela Internet, alternando entre switches e roteadores para chegar ao servidor.
- A solicitação chega ao servidor web do site.
- O servidor responde à solicitação com informações relevantes.
- A resposta dos dados viaja de volta pela Internet, fazendo as mesmas “paradas” ao longo do caminho.
- A resposta chega ao navegador, que adiciona o item ao carrinho.
Garantir que esses tipos de comunicação ocorram o mais rápido possível tornou-se um KPI de negócios vital. Quanto mais próxima a latência estiver de zero, mais rápida e responsiva sua rede se tornará, e você fornecerá uma melhor experiência do usuário. Existem dois níveis gerais de latência de rede:
- Baixa latência de rede (desejável): Pequenos atrasos levam a taxas de carregamento e resposta rápidas.
- Alta latência de rede (não desejável): A alta latência diminui o desempenho e causa gargalos na rede.
Cada caso de uso possui padrões de latência diferentes. Por exemplo, um aplicativo para videochamadas requer baixa latência, enquanto um servidor de e-mail pode operar dentro de uma faixa de latência mais alta. Sinais comuns de alta latência incluem:
- Sites que carregam lentamente ou não carregam.
- Interrupções na transmissão de vídeo e áudio.
- Os dados demoram muito para serem enviados (por exemplo, um e-mail com um anexo grande).
- Os aplicativos continuam congelando.
- O acesso a servidores ou aplicativos baseados na web é lento.
Interessado em aprender sobre segurança de rede? Aqui estão dois pontos de partida ideais: nossa introdução à segurança de rede e um guia para segurança de infraestrutura de rede.
Latência x largura de banda x taxa de transferência
Latência, largura de banda e taxa de transferência são três métricas intimamente relacionadas que juntas determinam a velocidade de uma rede:
- A latência da rede mede quanto tempo leva para um computador enviar uma solicitação e receber uma resposta.
- Largura de banda é a quantidade máxima de dados que pode passar pela rede a qualquer momento.
- A taxa de transferência é a quantidade média de dados que passam pela rede durante um período específico.
A diferença mais significativa entre os três é que a latência é uma métrica baseada no tempo, enquanto a largura de banda e a taxa de transferência medem a quantidade de dados.
Embora cada conceito seja independente, você não deve considerar latência, largura de banda e taxa de transferência isoladamente. Os três afetam-se mutuamente e estão altamente relacionados - se uma rede fosse um cano de água, cada conceito desempenharia um papel vital no transporte de água:
- A largura de banda seria a largura do tubo.
- A latência seria a velocidade com que a água se move pelo cano.
- A vazão seria a quantidade de água que passa durante um tempo especificado.
Um bom desempenho de rede requer largura de banda adequada, bom rendimento e baixa latência. Você não pode ter um (ou dois) dos três e esperar uma alta velocidade de rede.
Alguns administradores usam latência e ping de forma intercambiável, o que é conceitualmente errado. O Ping mede o tempo que os dados levam para passar do usuário para o servidor, uma métrica que revela um pouco menos da metade da latência real da rede.
Por que a latência da rede é importante?
A latência da rede impacta diretamente um negócio (e seus resultados financeiros), pois afeta a forma como os usuários interagem com os serviços fornecidos. Os clientes têm pouca ou nenhuma paciência com atrasos, como mostram os seguintes números:
- Um em cada quatro visitantes abandona um site que leva mais de 4 segundos para carregar.
- Quase 46% dos usuários não revisitam um site com desempenho insatisfatório.
- Mais de 64% dos compradores eletrônicos não repetem compras em um site lento.
- Cada segundo de atraso no tempo de carregamento reduz a satisfação do cliente em 16%.
- Cada tempo de carregamento de dois segundos resulta em quase 10% menos usuários.
- Quase 50% dos usuários dizem que desinstalariam um aplicativo se ele “funcionasse lentamente regularmente”.
Além de maior conversão e menores taxas de rejeição, as redes de baixa latência melhoram a agilidade de uma empresa e permitem reações rápidas às mudanças nas condições e demandas do mercado.
A latência da rede é mais importante em alguns casos de uso do que em outros. Garantir a velocidade da rede de alto nível não é fundamental para aplicativos de música ou navegação casual. A baixa latência é vital para casos de uso que envolvem grandes volumes de tráfego ou têm baixa tolerância a atrasos, como:
- Aplicativos interativos de videoconferência e reuniões online.
- Casos de uso de jogos online (especialmente aqueles executados na Internet sem um servidor dedicado para jogos).
- Aplicativos em mercados financeiros com negociação de alta frequência.
- Transmissão de eventos ao vivo.
- Veículos autônomos.
- Aplicativos responsáveis por medir a pressão de tubulações em plataformas de petróleo.
- Aplicativos de nuvem híbrida espalhados por salas de servidores locais, nuvem e locais de borda.
Planejando fazer alterações em sua rede para melhorar a latência? Realize uma auditoria de segurança de rede após a atualização para garantir que novos recursos e ajustes não introduzam explorações na rede.
Como medir a latência da rede?
Os administradores de rede medem a latência analisando a comunicação entre o dispositivo cliente e o data center que armazena o servidor host. Existem duas métricas para medir a latência da rede:
- Tempo até o primeiro byte (TTFB): TTFB mede o tempo entre o momento em que um cliente envia uma solicitação e quando o primeiro byte de dados chega ao servidor de origem. TTFB é uma das principais métricas de capacidade de resposta do servidor.
- Round Trip Time (RTT): RTT (também chamado Round Trip Delay (RTD)) é o tempo que um pacote de dados leva para viajar do navegador do usuário até um servidor de rede e voltar novamente.
Os administradores normalmente medem TTFB e RTT em milissegundos (ms), mas algumas redes de latência ultrabaixa exigem análise em nanossegundos (ns ou nsec). Alguns dos fatores de maior impacto para TTFB e RTT são:
- A distância entre o dispositivo cliente e o servidor web.
- Meio de transmissão (cabo de cobre, fibra óptica, wireless, satélite, etc.).
- O número de saltos de rede (quanto mais roteadores ou servidores intermediários processam uma solicitação, maior latência você deve esperar).
- Largura de banda disponível e os níveis de tráfego atuais.
Existem três métodos principais para medir a latência da rede:
- Ping (testa a acessibilidade de um host em uma rede IP e revela aproximadamente metade do valor da latência da rede).
- Traceroute (testa a acessibilidade e rastreia o caminho que os pacotes percorrem para chegar ao host).
- MTR (My Traceroute é uma mistura mais aprofundada dos métodos Ping e Traceroute).
Traceroute é a maneira mais fácil de medir a latência. Abra o prompt de comando e digite tracert
seguido do endereço de destino que deseja testar, como fazemos aqui:
Depois de digitar o comando, você verá uma lista com todos os roteadores no caminho da rede que leva ao servidor de destino. Você também obterá um cálculo de tempo em milissegundos para cada salto de rede.
Aumente o diagnóstico da sua rede aprendendo como executar o traceroute no Linux, Windows e macOS.
Causas da latência da rede
Aqui estão as causas mais comuns de latência de rede:
- Distância: A distância entre o dispositivo que envia a solicitação e o servidor é a principal causa da latência da rede.
- Tráfego pesado: muito tráfego consome largura de banda e leva à latência.
- Tamanho do pacote: grandes cargas de rede (como aquelas que transportam dados de vídeo) demoram mais para serem enviadas do que as pequenas.
- Perda de pacotes e jitter: uma alta porcentagem de pacotes que não conseguem chegar ao destino ou muita variação no tempo de viagem dos pacotes também aumenta a latência da rede.
- Problemas relacionados ao usuário: um sinal de rede fraco e outros problemas relacionados ao cliente (como falta de memória ou ciclos lentos de CPU) são culpados comuns por trás da latência.
- Muitos saltos de rede: um grande número de saltos de rede causa latência, como quando os dados precisam passar por vários ISPs, firewalls, roteadores, switches, balanceadores de carga, sistemas de detecção de intrusões, etc.
- Edições de gateway: a latência da rede aumenta se muitos nós de gateway editarem o pacote (como alterar contagens de saltos no campo TTL).
- Problemas de hardware: equipamentos desatualizados (especialmente roteadores) são uma causa comum de latência de rede.
- Erros de DNS: um servidor de sistema de nomes de domínio com defeito pode tornar a rede lenta ou causar erros 404 e caminhos incorretos.
- Tipo de conexão à Internet: diferentes meios de transmissão têm diferentes capacidades de latência (DSL, cabo e fibra tendem a ter atraso baixo (na faixa de 10 a 42 ms), enquanto o satélite tem latência mais alta).
- Malware: infecções por malware e ataques cibernéticos semelhantes também tornam as redes mais lentas.
- Sites mal projetados: uma página que carrega conteúdo pesado (como muitas imagens HD), carrega arquivos de terceiros ou depende de um banco de dados de back-end superutilizado tem desempenho mais lento do que um site bem otimizado .
- Serviço de hospedagem na web ruim: a hospedagem compartilhada geralmente causa latência, enquanto servidores dedicados normalmente não sofrem atrasos.
- Atos de Deus: Chuvas fortes, furacões e tempestades perturbam os sinais e levam ao atraso.
Uma maneira de corrigir permanentemente os problemas relacionados à latência do seu aplicativo é implantar um servidor de borda - as soluções de computação de borda do Phoenix NAP permitem que você implante hardware mais próximo da fonte de dados (ou usuários) e reduza drasticamente seus RTTs.
Como reduzir a latência da rede?
Aqui estão os métodos mais eficazes para reduzir a latência da rede:
- Use modelagem de tráfego, qualidade de serviço (QoS) e alocação de largura de banda para priorizar o tráfego e melhorar o desempenho de segmentos de rede de missão crítica.
- Use o balanceamento de carga para evitar congestionamento e descarregar o tráfego para partes da rede com capacidade para lidar com a atividade adicional.
- Garanta que os usuários e aplicativos da rede não usem largura de banda desnecessariamente e coloquem pressão na rede.
- Use servidores de borda para reduzir a quantidade de dados que precisam viajar da borda da rede até o servidor de origem. Dessa forma, a maior parte do processamento de dados em tempo real ocorre próximo à fonte dos dados, sem enviar tudo para o servidor central.
- Use uma CDN para armazenar conteúdo em cache em vários locais do mundo e fornecê-lo rapidamente aos usuários. A CDN armazena dados mais perto dos usuários finais, para que as solicitações não precisem viajar até o servidor de origem.
- Reduza o tamanho do conteúdo para melhorar o desempenho do site e do aplicativo. Os métodos comuns incluem minimizar o número de recursos de bloqueio de renderização, reduzir o tamanho das imagens e usar a minificação de código para reduzir o tamanho dos arquivos JavaScript e CSS.
- Otimize o servidor do Sistema de Nomes de Domínio para evitar lentidão na rede.
- Considere criar sub-redes (agrupar endpoints que se comunicam com frequência) para reduzir a latência na rede.
- Configure uma página para carregar estrategicamente determinados ativos primeiro para melhorar o desempenho percebido da página. Uma técnica comum é carregar primeiro a área acima da dobra de uma página. Dessa forma, o usuário final começa a interagir com a página antes que o restante dela termine de carregar.
- Certifique-se de que seu banco de dados backend não deixe o site lento com tabelas grandes, cálculos complexos, campos longos e uso indevido de índices.
- Use HTTP/2 para reduzir a latência carregando simultaneamente vários elementos de página.
- Confie em ferramentas de rede para rastrear a latência e resolver problemas relacionados ao atraso (sniffing de pacotes, análise NetFlow, monitoramento SNMP, monitoramento CBQoS, etc.).
- Mantenha todos os softwares atualizados com os patches mais recentes (não se esqueça de ficar de olho nas atualizações do roteador e do modem).
Seus recursos de nuvem estão causando muita latência? Embora a edge computing possa ajudar, às vezes a melhor solução é recorrer à repatriação na nuvem e trazer as cargas de trabalho das nuvens públicas para servidores bare metal.
Manter a latência da rede sob controle é essencial para sua experiência do usuário
Você não pode eliminar a latência da rede, mas deve fazer esforços para minimizar o atraso e mantê-lo sob controle. Conexões rápidas e responsivas impactam diretamente a geração de leads e as taxas de retenção de usuários, tornando os investimentos na redução da latência uma decisão óbvia para quem busca maximizar o lucro.