Latência (engenharia) - Latency (engineering)

Latência de um ponto de vista geral é um atraso de tempo entre a causa e o efeito de alguma mudança física no sistema que está sendo observado. Lag , como é conhecido nos círculos de jogos , refere-se à latência entre a entrada de uma simulação e a resposta visual ou auditiva, muitas vezes ocorrendo por causa do atraso da rede em jogos online.

A latência é fisicamente uma consequência da velocidade limitada que qualquer interação física pode propagar. A magnitude dessa velocidade é sempre menor ou igual à velocidade da luz . Portanto, todo sistema físico com qualquer separação física (distância) entre causa e efeito experimentará algum tipo de latência, independentemente da natureza da estimulação a que foi exposto.

A definição precisa de latência depende do sistema que está sendo observado ou da natureza da simulação. Nas comunicações , o limite inferior de latência é determinado pelo meio que está sendo usado para transferir informações. Em sistemas de comunicação bidirecionais confiáveis , a latência limita a taxa máxima em que as informações podem ser transmitidas, pois geralmente há um limite na quantidade de informações que estão "em vôo" a qualquer momento. No campo da interação homem-máquina , a latência perceptível tem um forte efeito na satisfação do usuário e na usabilidade .

Comunicações

Os jogos online são sensíveis à latência (ou " lag "), uma vez que os tempos de resposta rápidos para novos eventos que ocorrem durante uma sessão de jogo são recompensados, enquanto os tempos de resposta lentos podem acarretar penalidades. Devido a um atraso na transmissão dos eventos do jogo, um jogador com uma conexão de Internet de alta latência pode mostrar respostas lentas, apesar do tempo de reação apropriado . Isso dá aos jogadores com conexões de baixa latência uma vantagem técnica.

Mercados capitais

Minimizar a latência é de interesse nos mercados de capitais , particularmente onde a negociação algorítmica é usada para processar atualizações de mercado e girar ordens em milissegundos. A negociação de baixa latência ocorre nas redes usadas por instituições financeiras para se conectar a bolsas de valores e redes de comunicação eletrônica (ECNs) para executar transações financeiras. Joel Hasbrouck e Gideon Saar (2011) medem a latência com base em três componentes: o tempo que a informação leva para chegar ao trader, a execução dos algoritmos do trader para analisar as informações e decidir um curso de ação, e a ação gerada para chegar à bolsa e ser implementado. Hasbrouck e Saar contrastam isso com a forma como as latências são medidas por muitos locais de negociação que usam definições muito mais restritas, como o atraso de processamento medido desde a entrada do pedido (no computador do fornecedor) até a transmissão de uma confirmação ( do computador do fornecedor). A negociação eletrônica agora representa 60% a 70% do volume diário na Bolsa de Valores de Nova York e a negociação algorítmica perto de 35%. A negociação por meio de computadores se desenvolveu a ponto de melhorias de milissegundos nas velocidades de rede oferecerem uma vantagem competitiva para as instituições financeiras.

Redes comutadas por pacotes

A latência da rede em uma rede comutada por pacotes é medida como unidirecional (o tempo desde a origem que envia um pacote até o destino que o recebe) ou como tempo de retardo de ida e volta (a latência unilateral da origem ao destino mais aquela -way latência do destino de volta à origem). A latência de ida e volta é mais frequentemente citada, porque pode ser medida a partir de um único ponto. Observe que a latência de ida e volta exclui a quantidade de tempo que um sistema de destino gasta processando o pacote. Muitas plataformas de software fornecem um serviço chamado ping que pode ser usado para medir a latência de ida e volta. O ping usa a solicitação de eco do protocolo ICMP ( Internet Control Message Protocol ), que faz com que o destinatário envie o pacote recebido como uma resposta imediata e, portanto, fornece uma maneira aproximada de medir o tempo de retardo de ida e volta. O ping não pode realizar medições precisas, principalmente porque o ICMP se destina apenas a fins de diagnóstico ou controle e difere dos protocolos de comunicação reais, como o TCP . Além disso, roteadores e provedores de serviços de Internet podem aplicar diferentes políticas de modelagem de tráfego a diferentes protocolos. Para medições mais precisas, é melhor usar um software específico, por exemplo: hping , Netperf ou Iperf .

No entanto, em uma rede não comum, um pacote típico será encaminhado por vários links e gateways, cada um dos quais não começará a encaminhar o pacote até que ele tenha sido completamente recebido. Em tal rede, a latência mínima é a soma do atraso de transmissão de cada link, mais a latência de encaminhamento de cada gateway. Na prática, a latência mínima também inclui enfileiramento e atrasos de processamento. O atraso de enfileiramento ocorre quando um gateway recebe vários pacotes de origens diferentes indo para o mesmo destino. Como normalmente apenas um pacote pode ser transmitido por vez, alguns dos pacotes devem ser colocados em fila para transmissão, incorrendo em atraso adicional. Atrasos de processamento ocorrem enquanto um gateway determina o que fazer com um pacote recém-recebido. Bufferbloat também pode causar latência aumentada que é uma ordem de magnitude ou mais. A combinação de propagação, serialização, enfileiramento e atrasos de processamento geralmente produz um perfil de latência de rede complexo e variável.

A latência limita a taxa de transferência total em sistemas de comunicação bidirecionais confiáveis, conforme descrito pelo produto de atraso de largura de banda .

Fibra ótica

A latência na fibra óptica é em grande parte uma função da velocidade da luz , que é 299.792.458 metros / segundo no vácuo. Isso equivaleria a uma latência de 3,33  µs para cada quilômetro de comprimento do caminho. O índice de refração da maioria dos cabos de fibra óptica é de cerca de 1,5, o que significa que a luz viaja cerca de 1,5 vezes mais rápido no vácuo do que no cabo. Isso resulta em cerca de 5,0 µs de latência para cada quilômetro. Em redes metropolitanas mais curtas, pode ocorrer uma latência mais alta devido à distância extra em risers de construção e conexões cruzadas. Para calcular a latência de uma conexão, é necessário saber a distância percorrida pela fibra, que raramente é uma linha reta, pois ela deve percorrer contornos geográficos e obstáculos, como estradas e trilhos de trem, além de outros direitos de -caminho.

Devido a imperfeições na fibra, a luz se degrada à medida que é transmitida por ela. Para distâncias superiores a 100 quilômetros, amplificadores ou regeneradores são implantados. A latência introduzida por esses componentes precisa ser levada em consideração.

Transmissão via satélite

Os satélites em órbitas geoestacionárias estão distantes o suficiente da Terra para que a latência de comunicação se torne significativa - cerca de um quarto de segundo para uma viagem de um transmissor terrestre para o satélite e de volta para outro transmissor terrestre; quase meio segundo para comunicação bidirecional de uma estação terrestre para outra e depois de volta para a primeira. A órbita baixa da Terra às vezes é usada para reduzir esse atraso, às custas de um rastreamento de satélite mais complicado no solo e exigindo mais satélites na constelação de satélites para garantir uma cobertura contínua.

Áudio

Latência de áudio é o atraso entre a entrada de um sinal de áudio e a saída de um sistema. Contribuintes potenciais para a latência em um sistema de áudio incluem conversão analógico para digital , buffer , processamento de sinal digital , tempo de transmissão , conversão digital para analógico e a velocidade do som no ar.

Vídeo

Latência de vídeo refere-se ao grau de atraso entre o momento em que uma transferência de um stream de vídeo é solicitada e o momento real em que a transferência começa. As redes que apresentam atrasos relativamente pequenos são conhecidas como redes de baixa latência, enquanto suas contrapartes são conhecidas como redes de alta latência.

Fluxo de Trabalho

Qualquer fluxo de trabalho individual em um sistema de fluxos de trabalho pode estar sujeito a algum tipo de latência operacional. Pode até ser que um sistema individual tenha mais de um tipo de latência, dependendo do tipo de participante ou comportamento de busca de objetivos. Isso é melhor ilustrado pelos dois exemplos a seguir envolvendo viagens aéreas .

Do ponto de vista de um passageiro, a latência pode ser descrita como segue. Suponha que John Doe voe de Londres para Nova York . A latência de sua viagem é o tempo que leva para ir de sua casa na Inglaterra ao hotel em que está hospedado em Nova York. Isso é independente da capacidade da ligação aérea Londres-Nova York - se houvesse 100 passageiros por dia fazendo a viagem ou 10.000, a latência da viagem permaneceria a mesma.

Do ponto de vista do pessoal de operações de vôo, a latência pode ser totalmente diferente. Considere o pessoal dos aeroportos de Londres e Nova York. Apenas um número limitado de aviões é capaz de fazer a viagem transatlântica, portanto, quando um pousar, eles devem prepará-lo para a viagem de volta o mais rápido possível. Pode levar, por exemplo:

  • 35 minutos para limpar um avião
  • 15 minutos para reabastecer um avião
  • 10 minutos para carregar os passageiros
  • 30 minutos para carregar a carga

Supondo que o acima seja feito consecutivamente, o tempo mínimo de retorno do avião é:

35 + 15 + 10 + 30 = 90

Porém, a limpeza, o reabastecimento e o carregamento da carga podem ser feitos ao mesmo tempo. Os passageiros só podem ser carregados após a conclusão da limpeza. A latência reduzida, então, é:

35 + 10 = 45
15
30
Latência mínima = 45

As pessoas envolvidas na parada estão interessadas apenas no tempo que leva para suas tarefas individuais. Quando todas as tarefas são realizadas ao mesmo tempo, no entanto, é possível reduzir a latência para a duração da tarefa mais longa. Se algumas etapas tiverem pré-requisitos, será mais difícil executar todas as etapas em paralelo. No exemplo acima, o requisito de limpar o avião antes de carregar passageiros resulta em uma latência mínima mais longa do que qualquer tarefa única.

Mecânica

Qualquer processo mecânico encontra limitações modeladas pela física newtoniana . O comportamento das unidades de disco fornece um exemplo de latência mecânica. Aqui, é o tempo de busca de tempo para o braço atuador ser posicionado acima da trilha apropriada e, em seguida, a latência de rotação para os dados codificados em um prato para girar de sua posição atual para uma posição sob a cabeça de leitura e gravação do disco .

Hardware de computador e sistemas operacionais

Os computadores executam instruções no contexto de um processo . No contexto de multitarefa de computador , a execução do processo pode ser adiada se outros processos também estiverem em execução. Além disso, o sistema operacional pode agendar quando executar a ação que o processo está comandando. Por exemplo, suponha que um processo ordene que a saída de tensão de uma placa de computador seja definida como alto-baixo-alto-baixo e assim por diante a uma taxa de 1000 Hz. O sistema operacional programa o processo para cada transição (alto-baixo ou baixo-alto) com base em um relógio de hardware, como o High Precision Event Timer . A latência é o atraso entre os eventos gerados pelo relógio do hardware e as transições reais de tensão de alta para baixa ou de baixa para alta.

Muitos sistemas operacionais de desktop têm limitações de desempenho que criam latência adicional. O problema pode ser atenuado com extensões e patches em tempo real, como PREEMPT_RT .

Em sistemas embarcados, a execução de instruções em tempo real geralmente é suportada por um sistema operacional em tempo real .

Simulações

Em aplicativos de simulação, latência se refere ao atraso de tempo, frequentemente medido em milissegundos , entre a entrada inicial e a saída claramente discernível para o aluno do simulador ou sujeito do simulador. A latência às vezes também é chamada de atraso de transporte . Algumas autoridades distinguem entre latência e atraso de transporte usando o termo latência no sentido de atraso de tempo extra de um sistema além do tempo de reação do veículo que está sendo simulado, mas isso requer conhecimento detalhado da dinâmica do veículo e pode ser controverso.

Em simuladores com sistemas visuais e de movimento, é particularmente importante que a latência do sistema de movimento não seja maior do que a do sistema visual, ou podem ocorrer sintomas de enjôo no simulador . Isso ocorre porque, no mundo real, os sinais de movimento são aqueles de aceleração e são rapidamente transmitidos ao cérebro, normalmente em menos de 50 milissegundos; isso é seguido alguns milissegundos depois por uma percepção de mudança na cena visual. A mudança de cena visual é essencialmente uma mudança de perspectiva ou deslocamento de objetos como o horizonte, que leva algum tempo para se acumular em quantidades discerníveis após a aceleração inicial que causou o deslocamento. Um simulador deve, portanto, refletir a situação do mundo real, garantindo que a latência de movimento seja igual ou menor que a do sistema visual e não o contrário.

Veja também

Referências

Leitura adicional

links externos