Measuring Round-Trip Response Latencies Under Asymmetric Routing

Este artigo apresenta o PIRATE, uma abordagem passiva que estima a latência de resposta do lado do cliente analisando pares de tráfego causal mesmo com cabeçalhos criptografados, alcançando uma precisão de 1% e permitindo que um balanceador de carga reduzisse a latência de cauda em 37%.

Bhavana Vannarth Shobhana, Yen-lin Chien, Jonathan Diamant, Badri Nath, Shir Landau Feibish, Srinivas Narayana

Publicado 2026-03-05
📖 4 min de leitura☕ Leitura rápida

Each language version is independently generated for its own context, not a direct translation.

Imagine que você é o gerente de um restaurante muito famoso e lotado. O seu maior problema não é a comida, mas sim quanto tempo os clientes ficam esperando para receber seus pedidos. Se demorar muito, eles ficam irritados e vão embora.

Para resolver isso, você precisa medir o tempo de espera. Mas aqui está o problema: você não pode perguntar a cada cliente "quanto tempo você esperou?" (isso é chato e eles podem mentir). Você também não pode colocar um cronômetro na mesa de cada um (muito caro e invasivo).

O que você faz então? Você coloca um observador discreto (um "detetive") escondido no corredor, entre a cozinha e a sala.

O Problema: O Caminho de Volta é Diferente

O grande desafio moderno é que, em muitos restaurantes (servidores de internet), o caminho que o pedido faz para chegar à cozinha é diferente do caminho que a comida faz para voltar à mesa.

  • Pedido: Cliente -> Corredor -> Cozinha.
  • Comida: Cozinha -> Caminho Secreto -> Mesa (sem passar pelo corredor do observador).

Isso é chamado de roteamento assimétrico. O observador vê o pedido sair, mas nunca vê a comida chegar. Como ele sabe quanto tempo a comida levou?

Além disso, a cozinha está usando "caixas fechadas" (criptografia). O observador não consegue ler o que está escrito nos pedidos ou nas respostas. Ele só vê caixas passando.

A Solução: O Projeto "Pirate"

Os pesquisadores criaram um sistema chamado Pirate (Pirata). A ideia deles é genial e usa uma lógica simples: o tempo que passa entre um pedido e o próximo pedido.

A Analogia do "Pisca-Pisca" (Causal Pairs)

Imagine que o cliente é um pouco ansioso. Ele só faz o segundo pedido (pedir a sobremesa) depois que o primeiro pedido (o prato principal) chega na mesa.

O observador no corredor não vê a comida chegar. Mas ele vê o cliente fazer o pedido 1. Ele espera... espera... e então vê o cliente fazer o pedido 2.

O Pirate diz: "Se o cliente só pediu a sobremesa porque o prato principal chegou, então o tempo que passou entre o pedido 1 e o pedido 2 é, quase exatamente, o tempo que a cozinha demorou para preparar e entregar o prato principal!"

Isso é chamado de Par Causal. O segundo pedido é "causado" pela chegada da resposta do primeiro.

O Desafio: O Ruído e as "Pausas"

Mas e se o cliente estiver distraído? E se ele demorar 5 minutos para decidir a sobremesa porque está olhando o celular (isso é o "tempo de pensamento")? Ou se a cozinha envia 10 pratos de uma vez e o cliente pede tudo junto?

O Pirate usa uma regra inteligente: O Grande Espaço de Tempo.

  • Quando o cliente envia vários pedidos rápidos (como um "burst" de dados), eles chegam no corredor com intervalos curtos (ex: 1 milissegundo entre um e outro).
  • Quando a cozinha demora para responder, o cliente para de pedir. Quando a resposta finalmente chega, o cliente faz o próximo pedido.
  • O Pirate observa: "Olha! Houve um intervalo de 1 milissegundo, outro de 1 milissegundo... e então, de repente, um intervalo de 500 milissegundos! Esse grande intervalo é a 'pausa' onde a comida estava sendo preparada."

O Pirate não olha para um único intervalo. Ele olha para todos os intervalos durante um período e cria um "mapa de frequência". Ele ignora os intervalos curtos (ruído) e foca nos intervalos longos e consistentes que representam o tempo real de espera. É como se ele dissesse: "A maioria das vezes, o cliente espera 2 segundos entre pedidos. Isso é o tempo da cozinha."

Por que isso é incrível?

  1. Não precisa de ajuda: O Pirate funciona apenas olhando o tráfego que sai do cliente. Não precisa instalar nada no servidor, nem no celular do cliente, nem descriptografar nada.
  2. Funciona em qualquer lugar: Funciona mesmo se o caminho de volta for diferente (roteamento assimétrico) e mesmo se as caixas estiverem trancadas (criptografia).
  3. Melhora o serviço: O artigo mostrou que, ao usar o Pirate para dizer ao "gerente do restaurante" (o balanceador de carga) qual cozinha está mais lenta, eles conseguiram reduzir o tempo de espera dos clientes mais lentos (os "caudas" da distribuição) em 37%.

Resumo em uma frase

O Pirate é um detetive que, sem precisar ver a comida chegar, descobre quanto tempo a cozinha demorou apenas medindo o tempo que o cliente leva para pedir a próxima coisa depois que a anterior chega, ignorando as distrações e focando nos padrões de espera reais.

Isso permite que os serviços de internet (como sites e apps) se ajustem sozinhos para ficar mais rápidos, sem precisar pedir ajuda a ninguém.