Qual é a diferença entre `Latency` e` Round Trip Time`?


14

A comunidade Golang fornece um site de demonstração HTTP / 2 para comparar o desempenho entre HTTP 1.1 e HTTP / 2.

Podemos escolher diferentes latency, por exemplo, latência de 0s, latência de 30ms, latência de 200ms.

  1. É latencyuma terminologia da ciência da computação?
  2. O que isso significa?
  3. Qual é a diferença entre latencye Round Trip Time?

insira a descrição da imagem aqui


Esta pergunta e resposta podem ajudá-lo a entender.
Ron Maupin

Alguma resposta o ajudou? Nesse caso, você deve aceitar a resposta para que a pergunta não apareça para sempre, procurando uma resposta.
Ron Maupin

Respostas:


20

Latência de rede é quanto tempo leva para que algo enviado de um host de origem alcance um host de destino. Existem muitos componentes para a latência, e a latência pode realmente ser diferente de A para B e B para A.

O tempo de ida e volta é o tempo que leva para uma solicitação enviada de uma origem para um destino e para a resposta voltar à fonte original. Basicamente, a latência em cada direção, mais o tempo de processamento.


10

"Latência" pode significar coisas diferentes. Geralmente, é um atraso de algum tipo - a latência do aplicativo é o tempo de reação de um aplicativo (da entrada à saída), a latência da rede, o atraso para obter um pacote do ponto A ao B e assim por diante.

"Tempo de ida e volta" é mais ou menos bem definido como o atraso da rede do ponto A ao B e vice-versa. Essa é a soma de todos os atrasos de codificação, enfileiramento, processamento, decodificação e propagação em ambas as direções. Essencialmente, é o atraso em que A pode estar esperando uma resposta de B para uma solicitação que requer muito pouco processamento.

Muitas vezes, o tempo de ida e volta é comparado ao tempo de ping entre A e B. O tempo de ping pode fornecer um bom valor para o RTT efetivo, mas também pode ser outra coisa, devido a possíveis diferenças de roteamento e processamento entre os pacotes ICMP usados por ping e aqueles para os pacotes de protocolo realmente usados.

No seu caso, "latência" significa um atraso artificial no servidor HTTP que é adicionado além dos atrasos já presentes. Portanto, se você tiver um tempo efetivo de ida e volta de 50 ms para o servidor e selecionar "200 ms de latência", poderá esperar uma resposta a uma solicitação dentro de 250 ms (mais a sobrecarga de processamento no servidor).


4

Para adicionar um pouco de plano de fundo às outras respostas, é preciso lembrar que a latência da rede pode variar significativamente e afetar a experiência do usuário.

Uma das fontes mais óbvias de latência da rede é a distância: os sinais que transportam seus dados viajam mais ou menos à velocidade da luz; portanto, quanto maior a distância percorrida do cliente para o servidor, maior a latência. A comunicação entre dois computadores conectados por um cabo Ethernet levará alguns milissegundos. A comunicação com um servidor através do oceano levará dezenas ou centenas de milissegundos. A comunicação que passa por um satélite geoestacionário leva centenas de milissegundos.

Isso é claramente visível ao executar um ping, que mede o tempo de ida e volta, que neste caso é muito próximo da soma da latência nas duas direções.

Algumas outras coisas que influenciam a latência:

  • o número de links / saltos: na maioria dos casos, um pacote precisa ser totalmente recebido antes de poder ser enviado no próximo link. Isso adiciona um pouco de latência em cada salto;
  • a taxa de transferência desses links: quanto mais lento o link, mais tempo leva para o pacote completo passar e, portanto, ser encaminhado no próximo link;
  • a carga desses links: se um link estiver cheio, o pacote poderá ter que ser colocado na fila de espera até ser enviado;
  • para links com retransmissão local, a taxa de erro no link: quanto maior a taxa de erro, maiores as chances de o pacote precisar ser reenviado.

A latência pode ter um forte efeito na experiência do usuário (ou não):

  • o caso mais conhecido é a latência que afeta jogadores de MMORPGs e outros jogos online.
  • qualquer coisa interativa onde a interação é controlada do outro lado é afetada pela latência. Telnet / ssh, área de trabalho remota, são todos afetados pela latência.
  • a comunicação por voz é afetada pela latência e, com alta latência, você acaba interrompendo as pessoas o tempo todo.
  • os protocolos de transferência de arquivos mais antigos também sofriam de latência, pois não implementavam janelas deslizantes, e o remetente teve que esperar o pacote chegar ao destino e o reconhecimento para retornar antes de enviar o próximo.

Mesmo em casos não interativos, a latência pode ter um efeito (ilustrado no exemplo do OP): quando há muitos arquivos pequenos para download, a latência pode resultar em um tempo total de carregamento mais alto se o protocolo precisar aguardar um arquivo ser baixado completamente antes de iniciar o download do próximo, comparado a um protocolo que permitiria o envio de várias solicitações de uma só vez, e as respostas sendo enviadas sem interrupção entre arquivos sucessivos.


4

Tempo de viagem de ida e volta (RTT) é o tempo que leva para um pacote ir do terminal de envio ao terminal de recebimento e voltar. Existem muitos fatores que afetam o RTT, incluindo atraso na propagação, atraso no processamento, atraso na fila e atraso na codificação. Esses fatores geralmente são constantes para um determinado par de terminais de comunicação. Além disso, o congestionamento da rede pode adicionar um componente dinâmico ao RTT.

RTT e ping são iguais?

O tempo de ida e volta e o tempo de ping são frequentemente considerados sinônimos. Embora o tempo de ping possa fornecer uma boa estimativa de RTT, ele difere no fato de a maioria dos testes de ping ser executada dentro do protocolo de transporte usando pacotes ICMP. Por outro lado, o RTT é medido na camada de aplicação e inclui o atraso de processamento adicional produzido por protocolos e aplicativos de nível superior (por exemplo, HTTPS).

E quanto à RTT e à latência da rede?

A latência da rede está intimamente relacionada, mas diferente do RTT. Latência é o tempo que leva para um pacote ir do terminal de envio para o terminal de recebimento. Muitos fatores podem afetar a latência de um serviço. A latência não é explicitamente igual à metade do RTT, porque o atraso pode ser assimétrico entre quaisquer dois pontos de extremidade fornecidos. O RTT inclui atraso no processamento no ponto final de eco.

Dê uma olhada nesta postagem do blog em RTT para obter mais informações.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.